You are on page 1of 58

Abstract

Diagnosis of Parkinson’s disease (PD) is mainly based on motor symptoms and

can be supported by imaging techniques such as the single photon emission


computed tomography (SPECT) or M-iodobenzyl-guanidine cardiac scintiscan
(MIBG), which are expensive and not always available. In this review, we
analyzed studies that used machine learning (ML) techniques to diagnose PD
through resting state or motor activation electroencephalography (EEG) tests.
Methods: The review process was performed following Preferred Reporting
Items for Systematic Reviews and Meta-Analyses (PRISMA) guidelines. All
publications previous to May 2020 were included, and their main characteristics
and results were assessed and documented. Results: Nine studies were included.
Seven used resting state EEG and two motor activation EEG. Subsymbolic
models were used in 83.3% of studies. The accuracy for PD classification was
62–99.62%. There was no standard cleaning protocol for the EEG and a great
heterogeneity in the characteristics that were extracted from the EEG. However,
spectral characteristics predominated. Conclusions: Both the features introduced
into the model and its architecture were essential for a good performance in
predicting the classification. On the contrary, the cleaning protocol of the EEG,
is highly heterogeneous among the different studies and did not influence the
results. The use of ML techniques in EEG for neurodegenerative disorders
classification is a recent and growing field.
CHAPTER 1

INTRODUCTION

1.1 OVERVIEW OF PROJECT

Parkinson’s disease (PD) is the second most common neurological disease after
Alzheimer’s disease, affecting 2–3% of the population older than 65 years of
age . It is characterized by the loss of dopaminergic neurons in the substantia
nigra . The diagnosis of PD relies on the presence of motor symptoms
(bradykinesia, rigidity and tremor at rest ). However, autopsy and neuroimaging
studies indicate that the motor signs of PD are a late manifestation that is
evident when the degree of degeneration of dopaminergic neurons is 50–70%
[4,5]. There are a wide variety of techniques in the field of neurology that are
used individually or in combination to support the clinical diagnosis.
Commonly used techniques include image-based tests (single photon emission
computed tomography (SPECT), M-iodobenzyl-guanidine cardiac scintiscan
(MIBG)), however, these are costly and are not always accessible.
Electroencephalography (EEG) is a non-invasive technique that records the
electrical activity of the pyramidal neurons of the brain, giving an indirect
insight of their function with a great time resolution. It has been widely used to
study epileptic disorders and is a widely accessible and low-cost technique.
Visual EEG analysis is the gold standard for clinical EEG interpretation and
analysis, but the information processing techniques allow for the extraction of
different characteristics that can be of help when characterizing neurological
diseases

1.2 About the Project

Machine learning is a discipline of artificial intelligence that develops


algorithms with the capacity to generalize behaviors and recognize hidden
patterns in a large amount of data, defined by Arthur Samuel as the “field of
study that gives computers the ability to learn without being explicitly
programmed” [9]. ML techniques can be classified into two categories
depending on the type of processing that is carried out: symbolic processing,
which uses formal languages, logical orders,

and symbols, and subsymbolic processing, which is designed to estimate


functional relationships between data. Within ML techniques, artificial neural
networks (ANN) are those whose architecture is based in multiple-layer
hierarchical models that can learn representations of data with multiple levels of
abstraction. However, they require a large amount of input data and a careful
training process. All these techniques are receiving increasing interest from the
medical domain, where they have been mostly used in image analysis [10],
although in recent years, their application has spread to other areas.
CHAPTER 2

SYSTEM ANALYSIS

2. ANALYSIS OVERVIEW

System analysis is used in every field where something is developed. It is


a process of identifying our project goals and purposes and to create the
systems and procedures that will achieve them in an efficient way.

The system analysis and designing are two main process before
developing the project because if these two step go wrong then the entire
project may go wrong because wrong design leads us to the wrong product
or system development.

2.1 EXISTING SYSTEM:

There is no lab or imaging test that is recommended or definitive for


Parkinson’s disease. However, in 2011, the U.S. Food and Drug
Administration approved an imaging scan called the DaTscan. This
technique allows doctors to see detailed pictures of the brain’s dopamine
system.A DaTscan involves an injection of a small amount of a radioactive
drug and a machine called a single-photon emission computed tomography
(SPECT) scanner, similar to an MRI.
The drug binds to dopamine transmitters in the brain, showing where in
the brain dopaminergic neurons are. (Dopaminergic neurons are the source
of dopamine in the brain; a loss of dopamine is what leads to Parkinson’s.)

The results of a DaTscan can’t show that you have Parkinson’s, but they
can help your doctor confirm a diagnosis or rule out a Parkinson’s mimic.

Disadvantages

 No proper testing Mechanism


 Doctors ca also prone to error

2.2 Proposed System

Gradient boosting algorithms is used to classify the datasets. The accuracy


of the project is calculated and hence the result is determined. The project
will study the data of the symptoms of the patients and then predict the
stroke. The project will read various sets of data. The disease produces a
neuron which can be traced by the system. The system will give the output
on a scale of 10 and then the result can be produced.

Advantages:-

 The can predict the Patient disease and the level of risk
 The saved model can also be fit in MRI devices as it can predict the
patient disease in report itself and can skip the doctor for result.
2.3 FEASIBILITY STUDY

Preliminary investigation examine project feasibility, the likelihood the


system will be useful to the organization. The main objective of the feasibility
study is to test the Technical, Operational and Economical feasibility for adding
new modules and debugging old running system. All system is feasible if they
are unlimited resources and infinite time. There are aspects in the feasibility
study portion of the preliminary investigation:

 Technical Feasibility

 Operation Feasibility

 Economical Feasibility

TECHNICAL FEASIBILITY

The technical issue usually raised during the feasibility stage of the
investigation includes the following:

 Does the necessary technology exist to do what is suggested?

 Do the proposed equipment's have the technical capacity to hold the data
required to use the new system?

 Will the proposed system provide adequate response to inquiries,


regardless of the number or location of users?

 Can the system be upgraded if developed?

 Are there technical guarantees of accuracy, reliability, ease of access and


data security?

Earlier no system existed to cater to the needs of ‘Secure Infrastructure


Implementation System’. The current system developed is technically feasible.
It is a browser based user interface for audit workflow. Thus it provides an easy
access to the users. The database’s purpose is to create, establish and maintain a
workflow among various entities in order to facilitate all concerned users in
their various capacities or roles. Permission to the users would be granted based
on the roles specified. Therefore, it provides the technical guarantee of
accuracy, reliability and security. The software and hard requirements for the
development of this project are not many and are already available or are
available as free as open source. The work for the project is done with the
current equipment and existing software technology. Necessary bandwidth
exists for providing a fast feedback to the users irrespective of the number of
users using the system.

OPERATIONAL FEASIBILITY

The analyst considers the extent the proposed system will fulfill his
departments. That is whether the proposed system covers all aspects of the
working system and whether it has considerable improvements. We have found
that the proposed “Secure file transaction” will certainly have considerable
improvements over the existing system.

ECONOMIC FEASIBILITY

The proposed system is economically feasible because the cost involved


in purchasing the hardware and the software are within approachable. Working
in this system need not required a highly qualified professional. The operating-
environment costs are marginal. The less time involved also helped in its
economical feasibility.
CHAPTER 3

SYSTEM REQUIREMENT

3. REQUIREMENT

System requirement explains or describes the requirement of developing


the projects. The requirement is divides into two categories, first is hardware
requirements and configuration and second software requirements and
configuration. This is a pre-development process which is needed to be verified
before staring the project because if they doesn’t match then the project
outcomes may have issues or the development process may be delay and
interpreted in between.
3.1 HARDWARE REQUIREMENT

 Processor : i3 or Above

 Mother Board : Intel Family Motherboard

 RAM : 8 GB and Above

 Hard Disk : 300GB GB or Above

 Ethernet Card : 1Mbps Ethernet Card

 Other Accessories : Keyboard & Optical Mouse

3.2 SOFTWARE REQUIREMENT

 Front End : Flask , Python

 Back End : Tensorflow, Keras, Scikit Learn

 Operating System : Windows 8.1 or Above

 Development Tool : Jupyter Notebook, Visual Studio Code


CHAPTER 4

SOFTWARE SPECIFICATION

LSTM [Long short-term memory]

Long short-term memory (LSTM) is an artificial recurrent neural network


(RNN) architecture[1] used in the field of deep learning. Unlike standard
feedforward neural networks, LSTM has feedback connections. It can not only
process single data points (such as images), but also entire sequences of data
(such as speech or video). For example, LSTM is applicable to tasks such as
unsegmented, connected handwriting recognition,[2] speech recognition[3][4]
and anomaly detection in network traffic or IDSs (intrusion detection systems).

A common LSTM unit is composed of a cell, an input gate, an output gate and a
forget gate. The cell remembers values over arbitrary time intervals and the
three gates regulate the flow of information into and out of the cell.
LSTM networks are well-suited to classifying, processing and making
predictions based on time series data, since there can be lags of unknown
duration between important events in a time series. LSTMs were developed to
deal with the vanishing gradient problem that can be encountered when training
traditional RNNs. Relative insensitivity to gap length is an advantage of LSTM
over RNNs, hidden Markov models and other sequence learning methods in
numerous applications

History

1995-1997: LSTM was proposed by Sepp Hochreiter and Jürgen Schmidhuber.


[5][6][1] By introducing Constant Error Carousel (CEC) units, LSTM deals
with the vanishing gradient problem. The initial version of LSTM block
included cells, input and output gates.[7]

1999: Felix Gers and his advisor Jürgen Schmidhuber and Fred Cummins
introduced the forget gate (also called “keep gate”) into LSTM architecture,[8]
enabling the LSTM to reset its own state.[7]

2000: Gers & Schmidhuber & Cummins added peephole connections


(connections from the cell to the gates) into the architecture.[9] Additionally,
the output activation function was omitted.[7]

2009: An LSTM based model won the ICDAR connected handwriting


recognition competition. Three such models were submitted by a team led by
Alex Graves.[10] One was the most accurate model in the competition and
another was the fastest.[11]
2013: LSTM networks were a major component of a network that achieved a
record 17.7% phoneme error rate on the classic TIMIT natural speech dataset.
[12]

2014: Kyunghyun Cho et al. put forward a simplified variant called Gated
recurrent unit (GRU).[13]

2015: Google started using an LSTM for speech recognition on Google Voice.
[14][15] According to the official blog post, the new model cut transcription
errors by 49%. [16]

2016: Google started using an LSTM to suggest messages in the Allo


conversation app.[17] In the same year, Google released the Google Neural
Machine Translation system for Google Translate which used LSTMs to reduce
translation errors by 60%.

Apple announced in its Worldwide Developers Conference that it would start


using the LSTM for quicktype in the iPhone and for Siri.

Amazon released Polly, which generates the voices behind Alexa, using a
bidirectional LSTM for the text-to-speech technology

2017: Facebook performed some 4.5 billion automatic translations every day
using long short-term memory networks.

Researchers from Michigan State University, IBM Research, and Cornell


University published a study in the Knowledge Discovery and Data Mining
(KDD) conference.[28][29][30] Their study describes a novel neural network
that performs better on certain data sets than the widely used long short-term
memory neural network.

Microsoft reported reaching 94.9% recognition accuracy on the Switchboard


corpus, incorporating a vocabulary of 165,000 words. The approach used
"dialog session-based long-short-term memory".

2019: Researchers from the University of Waterloo proposed a related RNN


architecture which represents continuous windows of time. It was derived using
the Legendre polynomials and outperforms the LSTM on some memory-related
benchmarks.

An LSTM model climbed to third place on the in Large Text Compression


Benchmark.

A RNN using LSTM units can be trained in a supervised fashion, on a set of


training sequences, using an optimization algorithm, like gradient descent,
combined with backpropagation through time to compute the gradients needed
during the optimization process, in order to change each weight of the LSTM
network in proportion to the derivative of the error (at the output layer of the
LSTM network) with respect to corresponding weight.

A problem with using gradient descent for standard RNNs is that error gradients
vanish exponentially quickly with the size of the time lag between important
events. This is due to {\displaystyle \lim _{n\to \infty }W^{n}=0}{\displaystyle
\lim _{n\to \infty }W^{n}=0} if the spectral radius of {\displaystyle W}W is
smaller than 1.

However, with LSTM units, when error values are back-propagated from the
output layer, the error remains in the LSTM unit's cell. This "error carousel"
continuously feeds error back to each of the LSTM unit's gates, until they learn
to cut off the value.

Time Series Prediction

In Mathematics, a time series is a series of data points indexed (or listed or


graphed) in time order. Most commonly, a time series is a sequence taken at
successive equally spaced points in time. Thus it is a sequence of discrete-time
data. Examples of time series are heights of ocean tides, counts of sunspots, and
the daily closing value of the Dow Jones Industrial Average.

Time series are very frequently plotted via run charts (a temporal line chart).
Time series are used in statistics, signal processing, pattern recognition,
econometrics, mathematical finance, weather forecasting, earthquake prediction,
electroencephalography, control engineering, astronomy, communications
engineering, and largely in any domain of applied science and engineering
which involves temporal measurements.

Time series analysis comprises methods for analyzing time series data in order
to extract meaningful statistics and other characteristics of the data. Time series
forecasting is the use of a model to predict future values based on previously
observed values. While regression analysis is often employed in such a way as
to test relationships between one more different time series, this type of analysis
is not usually called "time series analysis," which refers in particular to
relationships between different points in time within a single series. Interrupted
time series analysis is used to detect changes in the evolution of a time series
from before to after some intervention which may affect the underlying
variable.

Time series data have a natural temporal ordering. This makes time series
analysis distinct from cross-sectional studies, in which there is no natural
ordering of the observations (e.g. explaining people's wages by reference to
their respective education levels, where the individuals' data could be entered in
any order). Time series analysis is also distinct from spatial data analysis where
the observations typically relate to geographical locations (e.g. accounting for
house prices by the location as well as the intrinsic characteristics of the
houses). A stochastic model for a time series will generally reflect the fact that
observations close together in time will be more closely related than
observations further apart. In addition, time series models will often make use
of the natural one-way ordering of time so that values for a given period will be
expressed as deriving in some way from past values, rather than from future
values (see time reversibility).

Time series analysis can be applied to real-valued, continuous data, discrete


numeric data, or discrete symbolic data (i.e. sequences of characters, such as
letters and words in the English language[1]).

Methods for analysis

Methods for time series analysis may be divided into two classes: frequency-
domain methods and time-domain methods. The former include spectral
analysis and wavelet analysis; the latter include auto-correlation and cross-
correlation analysis. In the time domain, correlation and analysis can be made in
a filter-like manner using scaled correlation, thereby mitigating the need to
operate in the frequency domain.

Additionally, time series analysis techniques may be divided into parametric


and non-parametric methods. The parametric approaches assume that the
underlying stationary stochastic process has a certain structure which can be
described using a small number of parameters (for example, using an
autoregressive or moving average model). In these approaches, the task is to
estimate the parameters of the model that describes the stochastic process. By
contrast, non-parametric approaches explicitly estimate the covariance or the
spectrum of the process without assuming that the process has any particular
structure.

Methods of time series analysis may also be divided into linear and non-linear,
and univariate and multivariate.

Panel data

A time series is one type of panel data. Panel data is the general class, a
multidimensional data set, whereas a time series data set is a one-dimensional
panel (as is a cross-sectional dataset). A data set may exhibit characteristics of
both panel data and time series data. One way to tell is to ask what makes one
data record unique from the other records. If the answer is the time data field,
then this is a time series data set candidate. If determining a unique record
requires a time data field and an additional identifier which is unrelated to time
(student ID, stock symbol, country code), then it is panel data candidate. If the
differentiation lies on the non-time identifier, then the data set is a cross-
sectional data set candidate.

Analysis

There are several types of motivation and data analysis available for time series
which are appropriate for different purposes.

Motivation

In the context of statistics, econometrics, quantitative finance, seismology,


meteorology, and geophysics the primary goal of time series analysis is
forecasting. In the context of signal processing, control engineering and
communication engineering it is used for signal detection. Other application are
in data mining, pattern recognition and machine learning, where time series
analysis can be used for clustering,[2][3] classification,[4] query by content,[5]
anomaly detection as well as forecasting.[citation needed]

Exploratory analysis

Tuberculosis incidence US 1953-2009

A straightforward way to examine a regular time series is manually with a line


chart. An example chart is shown on the right for tuberculosis incidence in the
United States, made with a spreadsheet program. The number of cases was
standardized to a rate per 100,000 and the percent change per year in this rate
was calculated. The nearly steadily dropping line shows that the TB incidence
was decreasing in most years, but the percent change in this rate varied by as
much as +/- 10%, with 'surges' in 1975 and around the early 1990s. The use of
both vertical axes allows the comparison of two time series in one graphic.

Other techniques include:

Autocorrelation analysis to examine serial dependence

Spectral analysis to examine cyclic behavior which need not be related to


seasonality. For example, sun spot activity varies over 11 year cycles.[6][7]
Other common examples include celestial phenomena, weather patterns, neural
activity, commodity prices, and economic activity.

Separation into components representing trend, seasonality, slow and fast


variation, and cyclical irregularity: see trend estimation and decomposition of
time series

Curve fitting

Curve fitting[8][9] is the process of constructing a curve, or mathematical


function, that has the best fit to a series of data points,[10] possibly subject to
constraints.[11][12] Curve fitting can involve either interpolation,[13][14]
where an exact fit to the data is required, or smoothing,[15][16] in which a
"smooth" function is constructed that approximately fits the data. A related
topic is regression analysis,[17][18] which focuses more on questions of
statistical inference such as how much uncertainty is present in a curve that is fit
to data observed with random errors. Fitted curves can be used as an aid for data
visualization,[19][20] to infer values of a function where no data are available,
[21] and to summarize the relationships among two or more variables.[22]
Extrapolation refers to the use of a fitted curve beyond the range of the observed
data,[23] and is subject to a degree of uncertainty[24] since it may reflect the
method used to construct the curve as much as it reflects the observed data.

The construction of economic time series involves the estimation of some


components for some dates by interpolation between values ("benchmarks") for
earlier and later dates. Interpolation is estimation of an unknown quantity
between two known quantities (historical data), or drawing conclusions about
missing information from the available information ("reading between the
lines").[25] Interpolation is useful where the data surrounding the missing data
is available and its trend, seasonality, and longer-term cycles are known. This is
often done by using a related series known for all relevant dates.[26]
Alternatively polynomial interpolation or spline interpolation is used where
piecewise polynomial functions are fit into time intervals such that they fit
smoothly together. A different problem which is closely related to interpolation
is the approximation of a complicated function by a simple function (also called
regression).The main difference between regression and interpolation is that
polynomial regression gives a single polynomial that models the entire data set.
Spline interpolation, however, yield a piecewise continuous function composed
of many polynomials to model the data set.

Extrapolation is the process of estimating, beyond the original observation


range, the value of a variable on the basis of its relationship with another
variable. It is similar to interpolation, which produces estimates between known
observations, but extrapolation is subject to greater uncertainty and a higher risk
of producing meaningless results.

Function approximation

In general, a function approximation problem asks us to select a function among


a well-defined class that closely matches ("approximates") a target function in a
task-specific way. One can distinguish two major classes of function
approximation problems: First, for known target functions approximation theory
is the branch of numerical analysis that investigates how certain known
functions (for example, special functions) can be approximated by a specific
class of functions (for example, polynomials or rational functions) that often
have desirable properties (inexpensive computation, continuity, integral and
limit values, etc.).

Second, the target function, call it g, may be unknown; instead of an explicit


formula, only a set of points (a time series) of the form (x, g(x)) is provided.
Depending on the structure of the domain and codomain of g, several
techniques for approximating g may be applicable. For example, if g is an
operation on the real numbers, techniques of interpolation, extrapolation,
regression analysis, and curve fitting can be used. If the codomain (range or
target set) of g is a finite set, one is dealing with a classification problem
instead. A related problem of online time series approximation[27] is to
summarize the data in one-pass and construct an approximate representation
that can support a variety of time series queries with bounds on worst-case
error.

To some extent the different problems (regression, classification, fitness


approximation) have received a unified treatment in statistical learning theory,
where they are viewed as supervised learning problems.
Prediction and forecasting

In statistics, prediction is a part of statistical inference. One particular approach


to such inference is known as predictive inference, but the prediction can be
undertaken within any of the several approaches to statistical inference. Indeed,
one description of statistics is that it provides a means of transferring knowledge
about a sample of a population to the whole population, and to other related
populations, which is not necessarily the same as prediction over time. When
information is transferred across time, often to specific points in time, the
process is known as forecasting.

Fully formed statistical models for stochastic simulation purposes, so as to


generate alternative versions of the time series, representing what might happen
over non-specific time-periods in the future

Simple or fully formed statistical models to describe the likely outcome of the
time series in the immediate future, given knowledge of the most recent
outcomes (forecasting).

Forecasting on time series is usually done using automated statistical software


packages and programming languages, such as Julia, Python, R, SAS, SPSS and
many others.

Forecasting on large scale data can be done with Apache Spark using the Spark-
TS library, a third-party package.[28]

Classification

Assigning time series pattern to a specific category, for example identify a word
based on series of hand movements in sign language.
Signal estimation

See also: Signal processing and Estimation theory

This approach is based on harmonic analysis and filtering of signals in the


frequency domain using the Fourier transform, and spectral density estimation,
the development of which was significantly accelerated during World War II by
mathematician Norbert Wiener, electrical engineers Rudolf E. Kálmán, Dennis
Gabor and others for filtering signals from noise and predicting signal values at
a certain point in time. See Kalman filter, Estimation theory, and Digital signal
processing

Segmentation

Splitting a time-series into a sequence of segments. It is often the case that a


time-series can be represented as a sequence of individual segments, each with
its own characteristic properties. For example, the audio signal from a
conference call can be partitioned into pieces corresponding to the times during
which each person was speaking. In time-series segmentation, the goal is to
identify the segment boundary points in the time-series, and to characterize the
dynamical properties associated with each segment. One can approach this
problem using change-point detection, or by modeling the time-series as a more
sophisticated system, such as a Markov jump linear system.

Models
Models for time series data can have many forms and represent different
stochastic processes. When modeling variations in the level of a process, three
broad classes of practical importance are the autoregressive (AR) models, the
integrated (I) models, and the moving average (MA) models. These three
classes depend linearly on previous data points.[29] Combinations of these
ideas produce autoregressive moving average (ARMA) and autoregressive
integrated moving average (ARIMA) models. The autoregressive fractionally
integrated moving average (ARFIMA) model generalizes the former three.
Extensions of these classes to deal with vector-valued data are available under
the heading of multivariate time-series models and sometimes the preceding
acronyms are extended by including an initial "V" for "vector", as in VAR for
vector autoregression. An additional set of extensions of these models is
available for use where the observed time-series is driven by some "forcing"
time-series (which may not have a causal effect on the observed series): the
distinction from the multivariate case is that the forcing series may be
deterministic or under the experimenter's control. For these models, the
acronyms are extended with a final "X" for "exogenous".

Non-linear dependence of the level of a series on previous data points is of


interest, partly because of the possibility of producing a chaotic time series.
However, more importantly, empirical investigations can indicate the advantage
of using predictions derived from non-linear models, over those from linear
models, as for example in nonlinear autoregressive exogenous models. Further
references on nonlinear time series analysis: (Kantz and Schreiber),[30] and
(Abarbanel)[31]

Among other types of non-linear time series models, there are models to
represent the changes of variance over time (heteroskedasticity). These models
represent autoregressive conditional heteroskedasticity (ARCH) and the
collection comprises a wide variety of representation (GARCH, TARCH,
EGARCH, FIGARCH, CGARCH, etc.). Here changes in variability are related
to, or predicted by, recent past values of the observed series. This is in contrast
to other possible representations of locally varying variability, where the
variability might be modelled as being driven by a separate time-varying
process, as in a doubly stochastic model.

In recent work on model-free analyses, wavelet transform based methods (for


example locally stationary wavelets and wavelet decomposed neural networks)
have gained favor. Multiscale (often referred to as multiresolution) techniques
decompose a given time series, attempting to illustrate time dependence at
multiple scales. See also Markov switching multifractal (MSMF) techniques for
modeling volatility evolution.

A Hidden Markov model (HMM) is a statistical Markov model in which the


system being modeled is assumed to be a Markov process with unobserved
(hidden) states. An HMM can be considered as the simplest dynamic Bayesian
network. HMM models are widely used in speech recognition, for translating a
time series of spoken words into text.

Notation

A number of different notations are in use for time-series analysis. A common


notation specifying a time series X that is indexed by the natural numbers is
written

X = (X1, X2, ...).

Another common notation is

Y = (Yt: t ∈ T),
where T is the index set.

Conditions

There are two sets of conditions under which much of the theory is built:

Stationary process

Ergodic process

However, ideas of stationarity must be expanded to consider two important


ideas: strict stationarity and second-order stationarity. Both models and
applications can be developed under each of these conditions, although the
models in the latter case might be considered as only partly specified.

In addition, time-series analysis can be applied where the series are seasonally
stationary or non-stationary. Situations where the amplitudes of frequency
components change with time can be dealt with in time-frequency analysis
which makes use of a time–frequency representation of a time-series or signal.
[32]

Machine Learning

Machine learning (ML) is the study of computer algorithms that improve


automatically through experience and by the use of data. It is seen as a part of
artificial intelligence. Machine learning algorithms build a model based on
sample data, known as "training data", in order to make predictions or decisions
without being explicitly programmed to do so. Machine learning algorithms are
used in a wide variety of applications, such as email filtering and computer
vision, where it is difficult or unfeasible to develop conventional algorithms to
perform the needed tasks.

A subset of machine learning is closely related to computational statistics,


which focuses on making predictions using computers; but not all machine
learning is statistical learning. The study of mathematical optimization delivers
methods, theory and application domains to the field of machine learning. Data
mining is a related field of study, focusing on exploratory data analysis through
unsupervised learning. In its application across business problems, machine
learning is also referred to as predictive analytics.

Artificial intelligence

Machine Learning as subfield of AI

Part of Machine Learning as subfield of AI or part of AI as subfield of Machine


Learning

As a scientific endeavor, machine learning grew out of the quest for artificial
intelligence. In the early days of AI as an academic discipline, some researchers
were interested in having machines learn from data. They attempted to approach
the problem with various symbolic methods, as well as what was then termed
"neural networks"; these were mostly perceptrons and other models that were
later found to be reinventions of the generalized linear models of
statistics.Probabilistic reasoning was also employed, especially in automated
medical diagnosis.

However, an increasing emphasis on the logical, knowledge-based approach


caused a rift between AI and machine learning. Probabilistic systems were
plagued by theoretical and practical problems of data acquisition and
representation.By 1980, expert systems had come to dominate AI, and statistics
was out of favor.[20] Work on symbolic/knowledge-based learning did continue
within AI, leading to inductive logic programming, but the more statistical line
of research was now outside the field of AI proper, in pattern recognition and
information retrieval. Neural networks research had been abandoned by AI and
computer science around the same time. This line, too, was continued outside
the AI/CS field, as "connectionism", by researchers from other disciplines
including Hopfield, Rumelhart and Hinton. Their main success came in the mid-
1980s with the reinvention of backpropagation.

Machine learning (ML), reorganized as a separate field, started to flourish in the


1990s. The field changed its goal from achieving artificial intelligence to
tackling solvable problems of a practical nature. It shifted focus away from the
symbolic approaches it had inherited from AI, and toward methods and models
borrowed from statistics and probability theory.

As of 2020, many sources continue to assert that machine learning remains a


subfield of AI. The main disagreement is whether all of ML is part of AI, as this
would mean that anyone using ML could claim they are using AI. Others have
the view that not all of ML is part of AI where only an 'intelligent' subset of ML
is part of AI.

The question to what is the difference between ML and AI is answered by Judea


Pearl in The Book of Why. Accordingly ML learns and predicts based on
passive observations, whereas AI implies an agent interacting with the
environment to learn and take actions that maximize its chance of successfully
achieving its goals.

Optimization
Machine learning also has intimate ties to optimization: many learning problems
are formulated as minimization of some loss function on a training set of
examples. Loss functions express the discrepancy between the predictions of the
model being trained and the actual problem instances (for example, in
classification, one wants to assign a label to instances, and models are trained to
correctly predict the pre-assigned labels of a set of examples).

Generalization

The difference between optimization and machine learning arises from the goal
of generalization: while optimization algorithms can minimize the loss on a
training set, machine learning is concerned with minimizing the loss on unseen
samples. Characterizing the generalization of various learning algorithms is an
active topic of current research, especially for deep learning algorithms.

Statistics

Machine learning and statistics are closely related fields in terms of methods,
but distinct in their principal goal: statistics draws population inferences from a
sample, while machine learning finds generalizable predictive
patterns.According to Michael I. Jordan, the ideas of machine learning, from
methodological principles to theoretical tools, have had a long pre-history in
statistics. He also suggested the term data science as a placeholder to call the
overall field.

Leo Breiman distinguished two statistical modeling paradigms: data model and
algorithmic model, wherein "algorithmic model" means more or less the
machine learning algorithms like Random forest.

Some statisticians have adopted methods from machine learning, leading to a


combined field that they call statistical learning.

Types of learning algorithms


The types of machine learning algorithms differ in their approach, the type of
data they input and output, and the type of task or problem that they are
intended to solve.

Supervised learning

A support-vector machine is a supervised learning model that divides the data


into regions separated by a linear boundary. Here, the linear boundary divides
the black circles from the white.

Supervised learning algorithms build a mathematical model of a set of data that


contains both the inputs and the desired outputs.[38] The data is known as
training data, and consists of a set of training examples. Each training example
has one or more inputs and the desired output, also known as a supervisory
signal. In the mathematical model, each training example is represented by an
array or vector, sometimes called a feature vector, and the training data is
represented by a matrix. Through iterative optimization of an objective function,
supervised learning algorithms learn a function that can be used to predict the
output associated with new inputs. An optimal function will allow the algorithm
to correctly determine the output for inputs that were not a part of the training
data. An algorithm that improves the accuracy of its outputs or predictions over
time is said to have learned to perform that task.

Types of supervised learning algorithms include active learning, classification


and regression. Classification algorithms are used when the outputs are
restricted to a limited set of values, and regression algorithms are used when the
outputs may have any numerical value within a range. As an example, for a
classification algorithm that filters emails, the input would be an incoming
email, and the output would be the name of the folder in which to file the email.

Similarity learning is an area of supervised machine learning closely related to


regression and classification, but the goal is to learn from examples using a
similarity function that measures how similar or related two objects are. It has
applications in ranking, recommendation systems, visual identity tracking, face
verification, and speaker verification.

Unsupervised learning

Unsupervised learning algorithms take a set of data that contains only inputs,
and find structure in the data, like grouping or clustering of data points. The
algorithms, therefore, learn from test data that has not been labeled, classified or
categorized. Instead of responding to feedback, unsupervised learning
algorithms identify commonalities in the data and react based on the presence or
absence of such commonalities in each new piece of data. A central application
of unsupervised learning is in the field of density estimation in statistics, such as
finding the probability density function.[41] Though unsupervised learning
encompasses other domains involving summarizing and explaining data
features.

Cluster analysis is the assignment of a set of observations into subsets (called


clusters) so that observations within the same cluster are similar according to
one or more predesignated criteria, while observations drawn from different
clusters are dissimilar. Different clustering techniques make different
assumptions on the structure of the data, often defined by some similarity metric
and evaluated, for example, by internal compactness, or the similarity between
members of the same cluster, and separation, the difference between clusters.
Other methods are based on estimated density and graph connectivity.

Semi-supervised learning

Semi-supervised learning falls between unsupervised learning (without any


labeled training data) and supervised learning (with completely labeled training
data). Some of the training examples are missing training labels, yet many
machine-learning researchers have found that unlabeled data, when used in
conjunction with a small amount of labeled data, can produce a considerable
improvement in learning accuracy.

In weakly supervised learning, the training labels are noisy, limited, or


imprecise; however, these labels are often cheaper to obtain, resulting in larger
effective training sets.

Reinforcement learning

Reinforcement learning is an area of machine learning concerned with how


software agents ought to take actions in an environment so as to maximize some
notion of cumulative reward. Due to its generality, the field is studied in many
other disciplines, such as game theory, control theory, operations research,
information theory, simulation-based optimization, multi-agent systems, swarm
intelligence, statistics and genetic algorithms. In machine learning, the
environment is typically represented as a Markov decision process (MDP).
Many reinforcement learning algorithms use dynamic programming techniques.
Reinforcement learning algorithms do not assume knowledge of an exact
mathematical model of the MDP, and are used when exact models are
infeasible. Reinforcement learning algorithms are used in autonomous vehicles
or in learning to play a game against a human opponent.

Self learning

Self-learning as a machine learning paradigm was introduced in 1982 along


with a neural network capable of self-learning named crossbar adaptive array
(CAA).It is a learning with no external rewards and no external teacher advice.
The CAA self-learning algorithm computes, in a crossbar fashion, both
decisions about actions and emotions (feelings) about consequence situations.
The system is driven by the interaction between cognition and emotion.The self-
learning algorithm updates a memory matrix W =||w(a,s)|| such that in each
iteration executes the following machine learning routine

Models

Performing machine learning involves creating a model, which is trained on


some training data and then can process additional data to make predictions.
Various types of models have been used and researched for machine learning
systems.

Artificial neural networks

An artificial neural network is an interconnected group of nodes, akin to the vast


network of neurons in a brain. Here, each circular node represents an artificial
neuron and an arrow represents a connection from the output of one artificial
neuron to the input of another.

Artificial neural networks (ANNs), or connectionist systems, are computing


systems vaguely inspired by the biological neural networks that constitute
animal brains. Such systems "learn" to perform tasks by considering examples,
generally without being programmed with any task-specific rules.

An ANN is a model based on a collection of connected units or nodes called


"artificial neurons", which loosely model the neurons in a biological brain. Each
connection, like the synapses in a biological brain, can transmit information, a
"signal", from one artificial neuron to another. An artificial neuron that receives
a signal can process it and then signal additional artificial neurons connected to
it. In common ANN implementations, the signal at a connection between
artificial neurons is a real number, and the output of each artificial neuron is
computed by some non-linear function of the sum of its inputs. The connections
between artificial neurons are called "edges". Artificial neurons and edges
typically have a weight that adjusts as learning proceeds. The weight increases
or decreases the strength of the signal at a connection. Artificial neurons may
have a threshold such that the signal is only sent if the aggregate signal crosses
that threshold. Typically, artificial neurons are aggregated into layers. Different
layers may perform different kinds of transformations on their inputs. Signals
travel from the first layer (the input layer) to the last layer (the output layer),
possibly after traversing the layers multiple times.

The original goal of the ANN approach was to solve problems in the same way
that a human brain would. However, over time, attention moved to performing
specific tasks, leading to deviations from biology. Artificial neural networks
have been used on a variety of tasks, including computer vision, speech
recognition, machine translation, social network filtering, playing board and
video games and medical diagnosis.

Deep learning consists of multiple hidden layers in an artificial neural network.


This approach tries to model the way the human brain processes light and sound
into vision and hearing. Some successful applications of deep learning are
computer vision and speech recognition.

Decision trees

Decision tree learning uses a decision tree as a predictive model to go from


observations about an item (represented in the branches) to conclusions about
the item's target value (represented in the leaves). It is one of the predictive
modeling approaches used in statistics, data mining, and machine learning. Tree
models where the target variable can take a discrete set of values are called
classification trees; in these tree structures, leaves represent class labels and
branches represent conjunctions of features that lead to those class labels.
Decision trees where the target variable can take continuous values (typically
real numbers) are called regression trees. In decision analysis, a decision tree
can be used to visually and explicitly represent decisions and decision making.
In data mining, a decision tree describes data, but the resulting classification
tree can be an input for decision making.

Training models

Usually, machine learning models require a lot of data in order for them to
perform well. Usually, when training a machine learning model, one needs to
collect a large, representative sample of data from a training set. Data from the
training set can be as varied as a corpus of text, a collection of images, and data
collected from individual users of a service. Overfitting is something to watch
out for when training a machine learning model. Trained models derived from
biased data can result in skewed or undesired predictions. Algorithmic bias is a
potential result from data not fully prepared for training.

Flask

Flask is a web framework, it’s a Python module that lets you develop web
applications easily. It’s has a small and easy-to-extend core: it’s a
microframework that doesn’t include an ORM (Object Relational Manager) or
such features.

It does have many cool features like url routing, template engine. It is a WSGI
web app framework.

A Web Application Framework or a simply a Web Framework represents a


collection of libraries and modules that enable web application developers to
write applications without worrying about low-level details such as protocol,
thread management, and so on.

Flask is a web application framework written in Python. It was developed by


Armin Ronacher, who led a team of international Python enthusiasts called
Poocco. Flask is based on the Werkzeg WSGI toolkit and the Jinja2 template
engine.Both are Pocco projects. WSGI
The Web Server Gateway Interface (Web Server Gateway Interface, WSGI) has
been used as a standard for Python web application development. WSGI is the
specification of a common interface between web servers and web applications.

Werkzeug

Werkzeug is a WSGI toolkit that implements requests, response objects, and


utility functions. This enables a web frame to be built on it. The Flask
framework uses Werkzeg as one of its bases.

jinja2

jinja2 is a popular template engine for Python.A web template system combines
a template with a specific data source to render a dynamic web page.

Microframework

Flask is often referred to as a microframework. It is designed to keep the core of


the application simple and scalable.

Instead of an abstraction layer for database support, Flask supports extensions to


add such capabilities to the application.

Flask is part of the categories of the micro-framework. Micro-framework are


normally framework with little to no dependencies to external libraries.
CHAPTER 5

SYSTEM DESIGN

5. SYSTEM DESIGN

System design is process of software development life cycle where the


project is defined in diagrammatic way or picture representation so that the
process and the ideology of the project can be properly understood by the
developer visually.

5.1 ARCHITECTURE DESIGN


The overall system architecture diagram explains the structure of our
complete project in a graphical model in very simple and effective manner. It
almost holds every component or modules of our developing projects and the
workflow of the components and the relative data resources

Fig:5.1 System Architecture

5.2 USE CASE DIAGRAM

A use case is a set of scenarios that describing an interaction between a user and
a system. A use case diagram displays the relationship among actors and use
cases. The two main components of a use case diagram are use cases and actors.
An actor is represents a user or another system that will interact with the system
modeled. A use case is an external view of the system that represents some
action the user might perform in order to complete a task 

Fig:5.2 System Usecase

USECASE COMPONENTS

Actor and usecase are the main components of the usecase diagram
which are used to explain the access of function for a particular participant in
an application

Fig:5.2.1 Actor Component

The symbol mentioned in the fig 5.2.1 is used to represent the user of
the functionalities or usecase of the project. It contains a label below which
helps us to identifier the user category.

Fig:5.2.2 Usecase Component


The functionalities of the project are represented using an ellipse with a
label inside them which mentions the name of the functionality. The figure 5.2.2
is a how the usecase will look like.

Fig:5.2.3 Relationship Component

The arrow show in the diagram are used to represent the relationship between
the usecase and the actor. The arrow point toward the usecase from the actor
which means the user have the access to the particular functionalities in the
project. The usecase diagram can contain multiple actor and can have multiple
access to the usecases. Similarly same usecase can be accessed by the multiple
actor/users in the project.
5.3 SEQUENTIAL DIAGRAM

A sequence diagram shows, as parallel vertical lines (“lifelines”), different


processes or objects that live simultaneously, and as the horizontal arrows, the
messages exchanged between them, in the order in which they occur. This
allows the specification of simple runtime scenarios in a graphical manner

Fig:5.3 Sequence Diagram

SEQUENCE DIAGRAM COMPONENTS

The sequence diagram uses arrows to represent the message flow between
the object inside the project. The sequence of the arrow from top down method
represent the sequence of the message flow
Fig:5.3.1 Object Component

The rectangular box is used to represent the objects used in the project
and a label given inside the rectangle to identify the object. The messages flow
between the objects for which a straight line is drawn below the rectangle.

Fig:5.3.2 Message Flow Component

An arrow as shown in the figure 5.3.2 will be used to mention the message flow
between the objects the label below the arrow represent the message. The point
of the arrow represent the direction of the message flow and the sequence of the
arrows used in the diagram represent the sequence of the message flow.
CHAPTER 6

IMPLEMENTATION

6. SYSTEM IMPLEMENTATION
In this chapter the main implementation of the projects is explained in
detail part by part in the form of modules. The implementation is based on the
project design as already mentioned in the system design chapter. The developer
always need to compare and verify the system design information for
developing the correct and proper implementation of the project.

Modules:-

Identification: Search Strategy and Sources

The following terms were selected: 1. Parkinson’s; 2. EEG; 3.


electroencephalogram; 4. machine learning; 5. deep learning; and 6. neural
networks. The proposed search terms were combined using logical operators as
follows: 1 AND (4 OR 5 OR 6) AND (2 OR 3). This combination was
introduced in the following 6 databases: Web of Science, PUBMED, Scopus,
MEDLINE, CINAHL and Science Direct.The search was performed on 19 May
2020, with no time limit, providing a total of 230 results.

Screening and Eligibility

The screening process was carried out in two steps. First, duplicates were
removed. EEG to assess PD progression or diagnosis using different ML
architectures in awake surface EEG recordings. The exclusion criteria were:
studies that did not consider EEGs, studies that did not use ML techniques for
EEG analysis, studies that focused their analysis on other neurological diseases,
animal studies, pharmacological studies, articles studying evoked changes in
EEGs due to exogenous stimuli, invasive and sleep EEG recordings. Finally,
those studies that did not include information about the methodology were
omitted. As a consequence, the resulting selected articles consisted of PD
studies that sought to diagnose or determine the evolution of this disease, by
means of using ML techniques in resting state EEG tests or motor activation
EEG tests.

Data Extraction and Analysis

Once the inclusion and exclusion criteria were applied, two review authors
independently screened the full-text articles to obtain a score in the checklist as
proposed in the Guidelines for Developing and Reporting Machine Learning
Predictive Models in Biomedical Research [28]. The checklist consists of 12
reporting items to be included in a research article in order to assure the good
quality of the article.The categories evaluated through the checklist include
requirements within the field of biomedicine, the field of computer science, and
requirements on how these two fields overlap with each other.

Resting State EEG Group

The resting state EEG group contains seven articles, which considered different
measurement protocols and channels of the EEG recording. Articles [31,37]
were based on the same study but using different features and models, as it can
be seen in Table 3. The predominant protocol within this group consisted of
recording the EEG in the eyes closed resting state, which was used in four
articles. On the other hand, the articles exhibited different recording durations,
with an average value of 6.37 ± 3.10 min, and a mode of 5 min, which was
considered in four of the seven articles of this group. The number of EEG
channels also varied inside the resting group, with a low density of electrodes
prevailing: 71.43% of these articles considered between 14 and 20 electrodes,
whereas in the rest the number of channels exceeded 100 electrodes.

CHAPTER 7

TESTING

7.1 TESTING OBJECTIVE

Software will undergo many changes after it is delivered to the user


Because of many errors, performance enhancements and change to new
environments. System testing is the stage of implementations, which is aimed at
ensuring that the system works accurately and efficiently before live operations
commences. Testing is vital to the success of the system. The candidate system
is subject to a variety of tests. Data prepared for the purpose of testing is called
test data. Testing is the process by which the programmers generate a set of test
data, which gives the maximum probability of finding all types of errors that
can occur in the software and the following steps has been performed.

7.2 TESTING TECHNIQUES


1. Unit Testing
2. System Testing
3. Black-Box Testing
4. White Box Testing
5. Integration Testing
6. Requirement Testing
7. Acceptance Testing

7.2.1 UNIT TESTING


Unit testing is a testing technique using which individual modules are tested
to determine if there are any issues by the developer himself. It is concerned
with functional correctness of the standalone modules. The main aim is to
isolate or separate each unit or module of the system to identify, analyze and
fix the defects. The following are the advantages of the testing.

 Reduces Defects in the newly developed features or reduces bugs when


changing the existing functionality.
 It reduces Cost of Testing as defects are captured in very early phase.
 Improves design and allows better refactoring of code.
 Unit Tests, when integrated with build gives the quality of the build as
well.
7.2.2 SYSTEM TESTING
System Testing (ST) is a black box testing technique performed to
evaluate the complete system the system's compliance against specified
requirements. In System testing, the functionalities of the system are tested
from an end-to-end perspective.
System Testing is usually carried out by a team that is independent of
the development team in order to measure the quality of the system unbiased.
It includes both functional and Non-Functional testing.
The above diagram explains the different types of testing process carried
out during the system testing process. For a project to success the system
testing it has to pass all the above testing process

7.2.3 BLACK BOX TESTING


Black-box testing is a method of software testing that examines the
functionality of an application based on the specifications. It is also known as
Specifications based testing. Independent Testing Team usually performs this
type of testing during the software testing life cycle.
This method of test can be applied to each and every level of software testing
such as unit, integration, system and acceptance testing.
There are different techniques involved in Black Box testing process

 Equivalence Class
 Boundary Value Analysis
 Domain Tests
 Orthogonal Arrays
 Decision Tables
 State Models
 Exploratory Testing
 All-pairs testing

7.2.4 WHITE BOX TESTING


White box testing is a testing technique that examines the program
structure and derives test data from the program logic/code. The other names
of glass box testing are clear box testing, open box testing, logic driven testing
or path driven testing or structural testing. White Box Testing Techniques
includes

 Statement Coverage-This technique is aimed at exercising all


programming statements with minimal tests.
 Branch Coverage-This technique is running a series of tests to ensure
that all branches are tested at least once.
 Path Coverage-This technique corresponds to testing all possible paths
which means that each statement and branch is covered.

7.2.5 INTEGRATION TESTING


Upon completion of unit testing, the units or modules are to be
integrated which gives raise to integration testing. The purpose of integration
testing is to verify the functional, performance, and reliability between the
modules that are integrated. Integration strategies include

1. Big-Bang Integration
2. Top Down Integration
3. Bottom Up Integration
4. Hybrid Integration

7.2.6 REQUIREMENT TESTING


Requirements-based testing is a testing approach in which test cases,
conditions and data are derived from requirements. It includes functional tests
and also non-functional attributes such as performance, reliability or usability.
Stages in Requirements based Testing:

 Defining Test Completion Criteria-Testing is completed only when all


the functional and non-functional testing is complete.
 Design Test Cases-A Test case has five parameters namely the initial
state or precondition, data setup, the inputs, expected outcomes and actual
outcomes.
 Execute Tests-Execute the test cases against the system under test and
document the results.
 Verify Test Results-Verify if the expected and actual results match each
other.
 Verify Test Coverage-Verify if the tests cover both functional and non-
functional aspects of the requirement.
 Track and Manage Defects-Any defects detected during the testing
process goes through the defect life cycle and are tracked to resolution.
Defect Statistics are maintained which will give us the overall status of
the project.

7.2.7 ACCEPTANCE TESTING


User acceptance testing is a testing methodology where the clients/end
users involved in testing the product to validate the product against their
requirements. It is performed at client location at developer's site.For industry
such as medicine or aviation industry, contract and regulatory compliance
testing and operational acceptance testing is also carried out as part of user
acceptance testing. UAT is context dependent and the UAT plans are prepared
based on the requirements and NOT mandatory to execute all kinds of user
acceptance tests and even coordinated and contributed by testing team.
The following diagram explains the fitment of user acceptance testing in
the software development life cycle:

The acceptance test cases are executed against the test data or using an
acceptance test script and then the results are compared with the expected
ones. Acceptance criteria are defined on the basis of the following attributes

 Functional Correctness and Completeness


 Data Integrity
 Data Conversion
 Usability
 Performance
 Timeliness
 Confidentiality and Availability
 Install ability and Upgradability
 Scalability
 Documentation

7.3 Test Cases

A test case, in software engineering, is a set of conditions under which a


tester will determine whether an application, software system or one of its
features is working as it was originally established for it to do.

Login Form: Test Case

Expected
Controls Cases Value Outcome
Result
CHAPTER 8

APPENDICE

8.1 SCREENSHOT
8.2 SOURCE CODING

CHAPTER 10
Conclusion

Machine learning techniques play a fundamental role in data analysis,


allowing one to obtain patterns and relationships between different classes
automatically and efficiently. These techniques are increasingly being
applied to EEG analysis, facilitating the use of this low-cost clinical test to
detect or extract information on various neurological diseases. Despite the
limited number of articles found, it can be noticed that the studies using
the resting state tests to classify PD predominate, emphasizing a lack of
studies using motor activation tests as well as studies focused on the
progression of the disease. There is a great heterogeneity in the data
provided by the articles, with a lack of clinical variables such as the use of
medication during the recordings and the stage of the disease. In general,
the size of the datasets considered in the studies is relatively small
compared to the one usually found in the ML literature. However, the
selected articles exhibited good results in the classification problem, with
values higher than 90% in various studies. A further analysis of the models
considered in these articles indicated that both the features introduced into
the model and its architecture were essential for a good performance in
predicting the classification. On the contrary, the cleaning protocol of the
EEG, which was highly heterogeneous among the different studies, did not
influence the results, and thus it could be omitted. Since this cleaning
process is usually carried out manually, omitting it would benefit the
development of an efficient and fast automatic prediction model. Finally, it
should be emphasized that ML techniques have experienced significant
growth in recent years, incorporating more complex models, and thus, this
review and the conclusions obtained herein should be considered as a first
step in the analysis of the role played by ML techniques and EEG in the
study of PD.

Future Enhancement

REFERENCES
1. Mahlknecht, P.; Krismer, F.; Poewe, W.; Seppi, K. Meta-Analysis of Dorsolateral Nigral
Hyperintensity on Magnetic Resonance Imaging as a Marker for Parkinson’s Disease. Mov.
Disord. 2017, 32, 619–623. [CrossRef] 2. Dickson, D.W. Neuropathology of Parkinson
disease. Parkinsonism Relat. Disord. 2018, 46 (Suppl. 1), S30–S33. [CrossRef] 3. Kalia, L.V.;
Lang, A.E. Parkinson’s Disease. Lancet 2015, 386, 896–912. [CrossRef] 4. Jankovic, J.
Progression of Parkinson Disease: Are We Making Progress in Charting the Course? Arch.
Neurol. 2005, 62, 351–352. [CrossRef] [PubMed] 5. Beitz, J.M. Parkinson’s Disease: A
Review. Front. Biosci. 2014, S6, 65–74. [CrossRef] 6. Bigdely-Shamlo, N.; Mullen, T.;
Kothe, C.; Su, K.-M.; Robbins, K.A. The PREP pipeline: Standardized preprocessing for
large-scale EEG analysis. Front. Neuroinform. 2015, 9, 1–20. [CrossRef] 7. Cole, S.; Voytek,
B. Cycle-by-cycle analysis of neural oscillations. J. Neurophysiol. 2019, 122, 849–861.
[CrossRef] 8. Sorensen, G.L.; Jennum, P.; Kempfner, J.; Zoetmulder, M.; Sorensen, H.B.D. A
Computerized Algorithm for Arousal Detection in Healthy Adults and Patients with
Parkinson Disease. J. Clin. Neurophysiol. 2012, 29, 58–64. [CrossRef] 9. Samuel, A.L. Some
Studies in Machine Learning Using the Game of Checkers. II-Recent Progress. In Computer
Games I; Levi, D.N.L., Ed.; Springer: New York, NY, USA, 1988; pp. 366–400. [CrossRef]
10. Litjens, G.; Kooi, T.; Bejnordi, B.E.; Setio, A.A.A.; Ciompi, F.; Ghafoorian, M.; Sánchez,
C.I. A survey on deep learning in medical image analysis. Med. Image Anal. 2017, 42, 60–88.
[CrossRef] 11. Jiang, F.; Jiang, Y.; Zhi, H.; Dong, Y.; Li, H.; Ma, S.; Wang, Y. Artificial
intelligence in healthcare: Past, present and future. Stroke Vasc. Neurol. 2017, 2, 230–243.
[CrossRef] 12. Miller, D.D.; Brown, E.W. Artificial Intelligence in Medical Practice: The
Question to the Answer? Am. J. Med. 2018, 131, 129–133. [CrossRef] [PubMed] 13. Gandal,
M.J.; Edgar, J.C.; Klook, K.; Siegel, S.J. Gamma synchrony: Towards a translational
biomarker for the treatment-resistant symptoms of schizophrenia. Neuropharmacology 2012,
62, 1504–1518. [CrossRef] [PubMed] 14. Sleigh, J.W.; Olofsen, E.; Dahan, A.; de Goede, J.;
Steyn-Ross, A. Entropies of the EEG: The effects of general anaesthesia. In Proceedings of
the 5th International Conference on Memory, Awareness and Consciousness, New York, NY,
USA, 1–3 June 2001. Available online:
https://researchcommons.waikato.ac.nz/handle/10289/ 770 (accessed on 23 January 2019).
15. Kannathal, N.; Choo, M.L.; Acharya, U.R.; Sadasivan, P.K. Entropies for detection of
epilepsy in EEG. Comput. Methods Programs Biomed. 2005, 80, 187–194. [CrossRef]
[PubMed] 16. Roy, Y.; Banville, H.; Albuquerque, I.; Gramfort, A.; Falk, T.H.; Faubert, J.
Deep learning-based electroencephalography analysis: A systematic review. J. Neural Eng.
2019, 16, 1–37. [CrossRef] 17. Sheng, J.; Wang, B.; Zhang, Q.; Liu, Q.; Ma, Y.; Liu, W.;
Shao, M.; Chen, B. A novel joint HCPMMP method for automatically classifying
Alzheimer’s and different stage MCI patients. Behav. Brain Res. 2019, 365, 210–221.
[CrossRef] 18. Raghavendra, U.; Acharya, U.R.; Adeli, H. Artificial Intelligence Techniques
for Automated Diagnosis of Neurological Disorders. Eur. Neurol. 2019, 82, 41–64.
[CrossRef] 19. Jahmunah, V.; Oh, S.L.; Rajinikanth, V.; Ciaccio, E.J.; Cheong, K.H.;
Arunkumar, N.; Acharya, U.R. Automated detection of schizophrenia using nonlinear signal
processing methods. Artif. Intell. Med. 2019, 100, 101698. [CrossRef] 20. Chen, Y.; Gong,
C.; Hao, H.; Guo, Y.; Xu, S.; Zhang, Y.; Yin, G.; Cao, X.; Yang, A.; Meng, F.; et al. Automatic
Sleep Stage Classification Based on Subthalamic Local Field Potentials. IEEE Trans. Neural
Syst. Rehabil. Eng. 2019, 27, 118–128. [CrossRef] 21. Zhou, M.; Tian, C.; Cao, R.; Wang, B.;
Niu, Y.; Hu, T.; Guo, H.; Xiang, J. Epileptic Seizure Detection Based on EEG Signals and
CNN. Front. Neuroinform. 2018, 12, 95. [CrossRef] 22. Dhivya, S.; Nithya, A. A Review on
Machine Learning Algorithm for EEG Signal Analysis. In Proceedings of the 2018 Second
International Conference on Electronics, Communication and Aerospace Technology
(ICECA), Coimbatore, India, 29–31 March 2018; pp. 54–57. [CrossRef] Appl. Sci. 2020, 10,
8662 21 of 21 23. Rasheed, K.; Qayyum, A.; Qadir, J.; Sivathamboo, S.; Kwan, P.;
Kuhlmann, L.; O’Brien, T.; Razi, A. Machine Learning for Predicting Epileptic Seizures
Using EEG Signals: A Review. arXiv 2020, arXiv:2002.01925. 24. Vourvopoulos, A.; Jorge,
C.; Abreu, R.; Figueiredo, P.; Fernandes, J.-C.; Bermúdez, S. Efficacy and Brain Imaging
Correlates of an Immersive Motor Imagery BCI-Driven VR System for Upper Limb Motor
Rehabilitation: A Clinical Case Report. Front. Hum. Neurosci. 2019, 13, 1–17. [CrossRef]
[PubMed] 25. Siderowf, A.; Lang, A.E. Premotor Parkinson’s Disease: Concepts and
Definitions. Mov. Disord. 2012, 27, 608–616. [CrossRef] [PubMed] 26. Moher, D.;
Shamseer, L.; Clarke, M.; Ghersi, D.; Liberati, A.; Petticrew, M.; Shekelle, P.; Stewart, L.A.;
the PRISMA-P Group. Preferred Reporting Items for Systematic Review and Meta-Analysis
Protocols (PRISMA-P) 2015: Statement. Syst. Rev. 2015, 4, 1. [CrossRef] [PubMed] 27.
Shamseer, L.; Moher, D.; Clarke, M.; Ghersi, D.; Liberati, A.; Petticrew, M.; Shekelle, P.;
Stewart, L.A.; the PRISMA-P Group. Preferred Reporting Items for Systematic Review and
Meta-Analysis Protocols (PRISMA-P) 2015: Elaboration and explanation. BMJ 2015, 349,
1–25. [CrossRef] [PubMed] 28. Luo, W.; Phung, D.; Tran, T.; Gupta, S.; Rana, S.; Karmakar,
C.; Shilton, A.; Yearwood, J.; Dimitrova, N.; Ho, T.B.; et al. Guidelines for Developing and
Reporting Machine Learning Predictive Models in Biomedical Research: A Multidisciplinary
View. J. Med. Internet Res. 2016, 18. [CrossRef] 29. Betrouni, N.; Delval, A.; Chaton, L.;
Defebvre, L.; Duits, A.; Moonen, A.; Leentjens, A.F.G.; Dujardin, K.
Electroencephalography-based machine learning for cognitive profiling in Parkinson’s
disease: Preliminary results. Mov. Disord. 2019, 34, 210–217. [CrossRef] 30. Chaturvedi, M.;
Hatz, F.; Gschwandtner, U.; Bogaarts, J.G.; Meyer, A.; Fuhr, P.; Roth, V. Quantitative EEG
(QEEG) measures differentiate Parkinson’s disease (PD) patients from healthy controls (HC).
Front. Aging Neurosci. 2017, 9, 3. [CrossRef] 31. Oh, S.L.; Hagiwara, Y.; Raghavendra, U.;
Yuvaraj, R.; Arunkumar, N.; Murugappan, M.; Acharya, U.R. A deep learning approach for
Parkinson’s disease diagnosis from EEG signals. Neural Comput. Appl. 2020, 32, 10927–
10933. [CrossRef] 32. Ruffini, G.; Ibañez, D.; Castellano, M.; Dubreuil-Vall, L.; Soria-
Frisch, A.; Postuma, R.; Gagnon, J.-F.; Montplaisir, J. Deep Learning with EEG
Spectrograms in Rapid Eye Movement Behavior Disorder. Front. Neurol. 2019, 10, 806.
[CrossRef] 33. Saikia, A.; Hussain, M.; Barua, A.R.; Paul, S. EEG-EMG Correlation for
Parkinson’s Disease. Int. J. Eng. Adv. Technol. IJEAT 2019, 8, 1179–1185. [CrossRef] 34.
Saikia, A.; Hussain, M.; Barua, A.R.; Paul, S. Performance Analysis of Various Neural
Network Functions for Parkinson’s Disease Classification Using EEG and EMG. Int. J.
Innov. Technol. Explor. Eng. IJITEE 2019, 9, 3402–3406. [CrossRef] 35. Vanneste, S.; Song,
J.-J.; Ridder, D.D. Thalamocortical dysrhythmia detected by machine learning. Nat.
Commun. 2018, 9, 1103. [CrossRef] [PubMed] 36. Waninger, S.; Berka, C.; Karic, M.S.;
Korszen, S.; Mozley, P.D.; Henchcliffe, C.; Kang, Y.; Hesterman, J.; Mangoubi, T.; Verma, A.
Neurophysiological Biomarkers of Parkinson’s Disease. J. Parkinson’s Dis. 2020, 10, 471–
480. [CrossRef] 37. Yuvaraj, R.; Acharya, U.R.; Hagiwara, Y. A novel Parkinson’s Disease
Diagnosis Index using higher-order spectra features in EEG signals. Neural Comput. Appl.
2018, 30, 1225–1235. [CrossRef]

You might also like