Analyzing Electroencephalograms Using Cloud Computing Techniques - - PowerPoint PPT Presentation

analyzing electroencephalograms using cloud computing
SMART_READER_LITE
LIVE PREVIEW

Analyzing Electroencephalograms Using Cloud Computing Techniques - - PowerPoint PPT Presentation

Analyzing Electroencephalograms Using Cloud Computing Techniques Kathleen Ericson Shrideep Pallickara Charles W. Anderson Colorado State University December 1, 2010 Background Benefits of the cloud Approach Frameworks Network Setup


slide-1
SLIDE 1

Analyzing Electroencephalograms Using Cloud Computing Techniques

Kathleen Ericson Shrideep Pallickara Charles W. Anderson

Colorado State University

December 1, 2010

slide-2
SLIDE 2

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Outline

1

Background BCI Gathering EEG Artificial Neural Networks

2

Benefits of the cloud

3

Approach

4

Frameworks

5

Network Setup

6

Results Basic Tests Granules Stress Tests

7

Conclusions and Future Work

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 2/29

slide-3
SLIDE 3

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work BCI Gathering EEG Artificial Neural Networks

Outline

1

Background BCI Gathering EEG Artificial Neural Networks

2

Benefits of the cloud

3

Approach

4

Frameworks

5

Network Setup

6

Results Basic Tests Granules Stress Tests

7

Conclusions and Future Work

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 3/29

slide-4
SLIDE 4

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work BCI Gathering EEG Artificial Neural Networks

Brain Computer Interfaces (BCIs)

Allows users who have lost voluntary motor control to interact with a computer BCIs work by analyzing electroencephelograms (EEGs) to interpret the users intent EEG signals are gathered in a non-invasive method Typing interface (Doug Hains, Elliott Forney) Weelchair (Millan)

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 4/29

slide-5
SLIDE 5

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work BCI Gathering EEG Artificial Neural Networks

Gathering EEG data

Non–invasive methods

User wears a cap which holds electrodes to the scalp

Electrode placement followed the international 10-20 system of electrode placement

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 5/29

slide-6
SLIDE 6

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work BCI Gathering EEG Artificial Neural Networks

Artificial Neural Networks

Number of input and output nodes are defined by the data Number of hidden units can vary

More hidden units can model more complex data More hidden units take longer to train

Weights are added between input and hidden and hidden and output layers

3 2 1

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 6/29

slide-7
SLIDE 7

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Outline

1

Background BCI Gathering EEG Artificial Neural Networks

2

Benefits of the cloud

3

Approach

4

Frameworks

5

Network Setup

6

Results Basic Tests Granules Stress Tests

7

Conclusions and Future Work

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 7/29

slide-8
SLIDE 8

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Benefits of the cloud

Current BCI applications are limited

All computation happens with the user Mobile BCI applications (such as a wheelchair) are tied to a laptop

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 8/29

slide-9
SLIDE 9

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Benefits of the cloud

Current BCI applications are limited

All computation happens with the user Mobile BCI applications (such as a wheelchair) are tied to a laptop

A single user is classified by a single machine

A dedicated machine for a single user is under–utilized

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 8/29

slide-10
SLIDE 10

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Benefits of the cloud

Current BCI applications are limited

All computation happens with the user Mobile BCI applications (such as a wheelchair) are tied to a laptop

A single user is classified by a single machine

A dedicated machine for a single user is under–utilized

Computing capabilities are limited

NN complexity is limited by what can be trained on a laptop

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 8/29

slide-11
SLIDE 11

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Benefits of the cloud

Multiple users can access the same cloud

Aggregation of data

More data leads to better trained neural networks

Cloud servers are separate from the users

Users not limited to the computational power of laptops

Possibility for massive scaling

Thousands of users can be supported simultaneously

Complex pipelines for classification can be developed

Computations can be chained through MapReduce or graph-based paradigms

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 9/29

slide-12
SLIDE 12

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Outline

1

Background BCI Gathering EEG Artificial Neural Networks

2

Benefits of the cloud

3

Approach

4

Frameworks

5

Network Setup

6

Results Basic Tests Granules Stress Tests

7

Conclusions and Future Work

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 10/29

slide-13
SLIDE 13

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Approach

R backend

Optimized for matrix multiplication Existing code available for EEG manipulation, as well as neural network code

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 11/29

slide-14
SLIDE 14

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Approach

R backend

Optimized for matrix multiplication Existing code available for EEG manipulation, as well as neural network code

Group of experts approach

Fits the map reduce framework – mappers classify, reducer produces expert opinion

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 11/29

slide-15
SLIDE 15

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Approach

R backend

Optimized for matrix multiplication Existing code available for EEG manipulation, as well as neural network code

Group of experts approach

Fits the map reduce framework – mappers classify, reducer produces expert opinion

3 sets of experiments:

Baseline times in R Cloud communication overhead with Snowfall Cloud and bridge communication overhead with Granules and JRI

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 11/29

slide-16
SLIDE 16

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Outline

1

Background BCI Gathering EEG Artificial Neural Networks

2

Benefits of the cloud

3

Approach

4

Frameworks

5

Network Setup

6

Results Basic Tests Granules Stress Tests

7

Conclusions and Future Work

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 12/29

slide-17
SLIDE 17

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Frameworks Used

Snowfall

Parallel computing package for R Builds on the Snow package Executes sequential code on multiple machines simultaneously Does not require strong parallel computing background

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 13/29

slide-18
SLIDE 18

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Frameworks Used

Snowfall

Parallel computing package for R Builds on the Snow package Executes sequential code on multiple machines simultaneously Does not require strong parallel computing background

Granules

Lightweight cloud computing runtime Java based Allows user to specify run semantics – can enter a dormant state while waiting for more data to become available

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 13/29

slide-19
SLIDE 19

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Frameworks Used

Snowfall

Parallel computing package for R Builds on the Snow package Executes sequential code on multiple machines simultaneously Does not require strong parallel computing background

Granules

Lightweight cloud computing runtime Java based Allows user to specify run semantics – can enter a dormant state while waiting for more data to become available

JRI

Java R Interface Allows R computations to be run through Java Communication is string–based

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 13/29

slide-20
SLIDE 20

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Outline

1

Background BCI Gathering EEG Artificial Neural Networks

2

Benefits of the cloud

3

Approach

4

Frameworks

5

Network Setup

6

Results Basic Tests Granules Stress Tests

7

Conclusions and Future Work

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 14/29

slide-21
SLIDE 21

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Snowfall Network Setup

Source Cloud Nodes

Input Results

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 15/29

slide-22
SLIDE 22

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Granules Network Setup

User Reducer Mappers Resource

Input Results

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 16/29

slide-23
SLIDE 23

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Outline

1

Background BCI Gathering EEG Artificial Neural Networks

2

Benefits of the cloud

3

Approach

4

Frameworks

5

Network Setup

6

Results Basic Tests Granules Stress Tests

7

Conclusions and Future Work

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 17/29

slide-24
SLIDE 24

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Baseline Results

Table: Loading a single training set (200MB) in ms

Mean(ms) Min(ms) Max(ms) SD(ms) 6581.602 6439.742 6822.34 101.3716

Table: Training a neural network from 1 training set in ms

Mean(ms) Min(ms) Max(ms) SD(ms) 194463.7 192433.3 197094.9 1300.87

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 18/29

slide-25
SLIDE 25

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Baseline Results

Table: Classification times with 1 neural net in ms

Stream Time Mean(ms) Min(ms) Max(ms) SD(ms) 5s 23.0432 22.17889 23.56791 0.4734237 1s 5.28194 4.909039 11.16085 0.8568976 250ms 1.710529 1.673937 1.926184 0.03777157

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 19/29

slide-26
SLIDE 26

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Snowfall and Granules Training Comparisons

NNs Training Sets Approach Mean(ms) Min(ms) Max(ms) SD(ms) 1 1 Snowfall 409860.5 403364.3 419965.7 4216.875 Granules 313304.2 306402.0 329149.0 5141.031 3 1 Snowfall 462626.2 401475.9 483235.9 23512.64 Granules 675968.8 610550.0 772679.0 52823.21 1 4 Snowfall 1001631 971224 1020680 17743.27 Granules 1933540 1782531 2057664 110686.70 3 4 Snowfall 988410.4 964499 1023549 17513.37 Granules 1964255.0 1779853 2131574 136452.10

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 20/29

slide-27
SLIDE 27

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Classification Times

Method Stream Time Mean(ms) Min(ms) Max(ms) SD(ms) Snowfall 5s 8884.60 8797.745 9069.47 85.82 Granules 141.69 136.42 266.63 12.75 Snowfall 1s 5825.71 5815.38 5857.98 10.09 Granules 93.16 47.51 492.68 32.13 Snowfall 250ms 2831.32 2830.38 2849.83 2.03 Granules 87.25 48.57 92.67 4.49

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 21/29

slide-28
SLIDE 28

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Maximum Supported Users on a Single Machine

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 22/29

slide-29
SLIDE 29

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Scaling to multiple machines

Gathered statistics for classification on 5 and 10 machines Each machine supported 15 users While 17 users per 8-core machine could be supported, the network was swamped with 150 simultaneous users

12MB/s

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 23/29

slide-30
SLIDE 30

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Scaling to multiple machines

Gathered statistics for classification on 5 and 10 machines Each machine supported 15 users While 17 users per 8-core machine could be supported, the network was swamped with 150 simultaneous users

12MB/s 1GB/83s

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 23/29

slide-31
SLIDE 31

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Scaling to multiple machines

Gathered statistics for classification on 5 and 10 machines Each machine supported 15 users While 17 users per 8-core machine could be supported, the network was swamped with 150 simultaneous users

12MB/s 1GB/83s 1TB/23h

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 23/29

slide-32
SLIDE 32

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Scaling to multiple machines

Gathered statistics for classification on 5 and 10 machines Each machine supported 15 users While 17 users per 8-core machine could be supported, the network was swamped with 150 simultaneous users

12MB/s 1GB/83s 1TB/23h

Mean(ms) Min(ms) Max(ms) SD(ms) 75 Users 64.33 21.69 268.30 20.51 150 Users 69.81 22.01 352.82 22.49

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 23/29

slide-33
SLIDE 33

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Stress Histograms – 75 users

Communications Overheads with 75 Concurrent Users

Classification Times (ms) Frequency 50 100 150 200 250 5000 10000 15000 CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 24/29

slide-34
SLIDE 34

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work Basic Tests Granules Stress Tests

Stress Histograms – 150 users

Communications Overheads with 150 Concurrent Users

Classification Times (ms) Frequency 50 100 150 200 250 10000 20000 30000 40000 CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 25/29

slide-35
SLIDE 35

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Outline

1

Background BCI Gathering EEG Artificial Neural Networks

2

Benefits of the cloud

3

Approach

4

Frameworks

5

Network Setup

6

Results Basic Tests Granules Stress Tests

7

Conclusions and Future Work

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 26/29

slide-36
SLIDE 36

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Conclusions

Granules is a viable option for real-time EEG classification in the cloud While a pure R implementation can train a network more quickly, there is no native R support for continuous streaming data JRI carries a heavy overhead for communications Compression is needed to scale further

With 150 users, we are processing 1GB of EEG signals every 83 seconds At this rate, over 1TB of data is processed in a day

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 27/29

slide-37
SLIDE 37

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Future Work

Develop a byte-based Granules Bridge for R Implement an online learning algorithm Implement compression

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 28/29

slide-38
SLIDE 38

Background Benefits of the cloud Approach Frameworks Network Setup Results Conclusions and Future Work

Questions

Questions? ericson@cs.colostate.edu

CSU – K. Ericson, S. Pallickara, C. W. Anderson Analyzing EEG Using Cloud Computing Techniques 29/29