Date of Graduation


Document Type


Degree Name

Master of Science in Electrical Engineering (MSEE)

Degree Level



Electrical Engineering


Jingxian Wu

Committee Member

Baohua Li

Second Committee Member

Jing Yang


Machine learning methods are an excellent way for understanding the neural basis of human decision making. Some machine learning systems try to eradicate the need for human intuition in data analysis whereas others embrace a collective approach between humans and machines. The objective of this project is to collect Electroencephalography (EEG) signals through wireless sensors, and the process the collected signals through machine learning methods. The EEG data is collected using three EEG electrodes, each being the positive, negative and ground terminals respectively. Since the signal measures in the unit of micro-volts it needs to be amplified using amplifier circuit. This circuit consists of five stages, namely, the Instrumentation Amplifier, 60 Hz Notch Filter, 31Hz Low Pass Filter, Gain Stage, and Clamper Circuit. Each of these stages contribute in their own way to amplify and also filter the noise from the EEG signal. The gain of the entire circuit is about 5140 V/V. The EEG signal is observed on the cathode-ray oscilloscope and the data is collected on an Arduino Uno microcontroller using the Hyperterminal software. The data is sampled at a sampling rate of 838 Hz. Any remaining noise from the signal can be removed by passing it through a digital low-pass filter, if required.

EEG data is collected from 10 people while they are made to concentrate on a particular thought. The subjects were asked to imagine moving an object towards the direction &lsquoRight&rsquo for the first 150 data sets collected and then the same for the direction &lsquoLeft&rsquo for another 150 data sets. All the data was collected with complete supervision and without any kind of movement of the subject during the collection process. This part of this data was then used to design a Machine Learning model called Support Vector Machine (SVM) on Matlab, using which the data was then processed. The data was divided into two sets, namely. The training data, and testing data. One-third of the total data sets is used for training the SVM model and then the rest of the data sets are used to test the accuracy of the model. Data from the 10 individuals is processed individually and also after being mixed. The SVM model randomly selects the training and testing data and accordingly gives results for the accuracy. Finally, results for the individual data and mixed data are tabulated and presented in the following thesis.