No description, website, or topics provided.
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
EEG-based-Control update code Feb 20, 2017
EEG_based_control_test.py
EEG_based_control_train.py
New_EEG_based_control.py New_code can run in GPU May 23, 2017
README.md
data.mat
eeg_rawdata_runn_model00.00400.005643.ckpt.data-00000-of-00001
eeg_rawdata_runn_model00.00400.005643.ckpt.index
eeg_rawdata_runn_model00.00400.005643.ckpt.meta
robot_command.mat

README.md

EEG-based-Control

This repository is the open Python code and EEG data for my publication:

Xiang Zhang, Lina Yao, Chaoran Huang, QuanZheng Sheng and Xianzhi Wang. Intent Recognition in Smart Living Through Deep Recurrent Neural Networks. The 24th International Conference On Neural Information Processing (ICONIP 2017). Guangzhou, China, Nov 14 - Nov 18, 2017.

"Data.mat" contains 29738 rows, with per row is one EEG sample has 65 elements. The first 64 elements are the 64 channels EEG raw data collected by BCI2000 system, and the last element is the label of the sample in this row. The EEG database comes from an open database eegmmidb, see the details here:http://www.physionet.org/pn4/eegmmidb/.

robot_command.mat is the command data for 'Assisted Living with Mind-controlled Mobile Robot' simulation. It controls the robot under ROS system complete the task of grasp a cup of water and bring it to the livingroom's table.

EEG_based_control_train.py and EEG_based_control_test.py separately is the train and test RNN model, some basic comments of the code is contained in the code. Download and try it for your own data.

Three files contained "eeg_rawdata_runn_model00.00400.005643.ckpt" are the model I trained through the EEG_based_control_train.py. You can train yourself model. This model is used in EEG_based_control_test.py.

This is a little simple and more comments in the code will be added later.

I uploaded the New_EEG_Control.py code which can run on the GPU. It's hundred times faster than on CPU. It only takes 165 seconds for 3500 iterations.

Another point I found is that if we add sigmoid function in the first hidden layer, the accuracy increase very fast but can only up to 0.9505 as shown in my paper. However, if we don't add the sigmoid function, the accuracy increase slowly but can achieve 0.973 after around 3500 iterations.

NOTE: Some tensorflow commands in the pyton code may not compatible with the up-to-data tensorflow version. Please manually revise the tensorflow code if there's anything error when you run the python code on your own PC. If you don't know how to revise it, ask Google.