analyzing electroencephalograms using cloud computing...

38
Analyzing Electroencephalograms Using Cloud Computing Techniques Kathleen Ericson Shrideep Pallickara Charles W. Anderson Colorado State University December 1, 2010

Upload: others

Post on 04-Oct-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

Analyzing Electroencephalograms Using CloudComputing Techniques

Kathleen EricsonShrideep Pallickara

Charles W. Anderson

Colorado State University

December 1, 2010

Page 2: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Outline

1 BackgroundBCIGathering EEGArtificial Neural Networks

2 Benefits of the cloud

3 Approach

4 Frameworks

5 Network Setup

6 ResultsBasic TestsGranules Stress Tests

7 Conclusions and Future Work

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

Page 3: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

BCIGathering EEGArtificial Neural Networks

Outline

1 BackgroundBCIGathering EEGArtificial Neural Networks

2 Benefits of the cloud

3 Approach

4 Frameworks

5 Network Setup

6 ResultsBasic TestsGranules Stress Tests

7 Conclusions and Future Work

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

Page 4: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

BCIGathering EEGArtificial Neural Networks

Brain Computer Interfaces (BCIs)

Allows users who have lost voluntary motor control to interact witha computer

BCIs work by analyzing electroencephelograms (EEGs) to interpretthe 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

Page 5: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

BCIGathering EEGArtificial Neural Networks

Gathering EEG data

Non–invasive methodsUser wears a cap which holds electrodes to the scalp

Electrode placement followed the international 10-20 system ofelectrode placement

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

Page 6: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

BCIGathering EEGArtificial Neural Networks

Artificial Neural Networks

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

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

Weights are added between input and hidden and hidden and outputlayers

3

2

1

0

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

Page 7: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Outline

1 BackgroundBCIGathering EEGArtificial Neural Networks

2 Benefits of the cloud

3 Approach

4 Frameworks

5 Network Setup

6 ResultsBasic TestsGranules Stress Tests

7 Conclusions and Future Work

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

Page 8: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Benefits of the cloud

Current BCI applications are limited

All computation happens with the userMobile 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

Page 9: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Benefits of the cloud

Current BCI applications are limited

All computation happens with the userMobile 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

Page 10: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Benefits of the cloud

Current BCI applications are limited

All computation happens with the userMobile 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

Page 11: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Benefits of the cloud

Multiple users can access the same cloudAggregation 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-basedparadigms

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

Page 12: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Outline

1 BackgroundBCIGathering EEGArtificial Neural Networks

2 Benefits of the cloud

3 Approach

4 Frameworks

5 Network Setup

6 ResultsBasic TestsGranules Stress Tests

7 Conclusions and Future Work

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

Page 13: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Approach

R backend

Optimized for matrix multiplicationExisting code available for EEG manipulation, as well as neuralnetwork code

Group of experts approach

Fits the map reduce framework – mappers classify, reducer producesexpert opinion

3 sets of experiments:

Baseline times in RCloud communication overhead with SnowfallCloud and bridge communication overhead with Granules and JRI

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

Page 14: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Approach

R backend

Optimized for matrix multiplicationExisting code available for EEG manipulation, as well as neuralnetwork code

Group of experts approach

Fits the map reduce framework – mappers classify, reducer producesexpert opinion

3 sets of experiments:

Baseline times in RCloud communication overhead with SnowfallCloud and bridge communication overhead with Granules and JRI

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

Page 15: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Approach

R backend

Optimized for matrix multiplicationExisting code available for EEG manipulation, as well as neuralnetwork code

Group of experts approach

Fits the map reduce framework – mappers classify, reducer producesexpert opinion

3 sets of experiments:

Baseline times in RCloud communication overhead with SnowfallCloud and bridge communication overhead with Granules and JRI

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

Page 16: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Outline

1 BackgroundBCIGathering EEGArtificial Neural Networks

2 Benefits of the cloud

3 Approach

4 Frameworks

5 Network Setup

6 ResultsBasic TestsGranules Stress Tests

7 Conclusions and Future Work

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

Page 17: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Frameworks Used

Snowfall

Parallel computing package for RBuilds on the Snow packageExecutes sequential code on multiple machines simultaneouslyDoes not require strong parallel computing background

Granules

Lightweight cloud computing runtimeJava basedAllows user to specify run semantics – can enter a dormant statewhile waiting for more data to become available

JRI

Java R InterfaceAllows R computations to be run through JavaCommunication is string–based

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

Page 18: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Frameworks Used

Snowfall

Parallel computing package for RBuilds on the Snow packageExecutes sequential code on multiple machines simultaneouslyDoes not require strong parallel computing background

Granules

Lightweight cloud computing runtimeJava basedAllows user to specify run semantics – can enter a dormant statewhile waiting for more data to become available

JRI

Java R InterfaceAllows R computations to be run through JavaCommunication is string–based

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

Page 19: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Frameworks Used

Snowfall

Parallel computing package for RBuilds on the Snow packageExecutes sequential code on multiple machines simultaneouslyDoes not require strong parallel computing background

Granules

Lightweight cloud computing runtimeJava basedAllows user to specify run semantics – can enter a dormant statewhile waiting for more data to become available

JRI

Java R InterfaceAllows R computations to be run through JavaCommunication is string–based

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

Page 20: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Outline

1 BackgroundBCIGathering EEGArtificial Neural Networks

2 Benefits of the cloud

3 Approach

4 Frameworks

5 Network Setup

6 ResultsBasic TestsGranules Stress Tests

7 Conclusions and Future Work

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

Page 21: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Snowfall Network Setup

Source

Cloud

Nodes

InputResults

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

Page 22: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

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

Page 23: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules Stress Tests

Outline

1 BackgroundBCIGathering EEGArtificial Neural Networks

2 Benefits of the cloud

3 Approach

4 Frameworks

5 Network Setup

6 ResultsBasic TestsGranules Stress Tests

7 Conclusions and Future Work

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

Page 24: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules 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

Page 25: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules 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.47342371s 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

Page 26: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules Stress Tests

Snowfall and Granules Training Comparisons

NNs Training Sets Approach Mean(ms) Min(ms) Max(ms) SD(ms)

1 1Snowfall 409860.5 403364.3 419965.7 4216.875Granules 313304.2 306402.0 329149.0 5141.031

3 1Snowfall 462626.2 401475.9 483235.9 23512.64Granules 675968.8 610550.0 772679.0 52823.21

1 4Snowfall 1001631 971224 1020680 17743.27Granules 1933540 1782531 2057664 110686.70

3 4Snowfall 988410.4 964499 1023549 17513.37Granules 1964255.0 1779853 2131574 136452.10

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

Page 27: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules Stress Tests

Classification Times

Method Stream Time Mean(ms) Min(ms) Max(ms) SD(ms)Snowfall

5s8884.60 8797.745 9069.47 85.82

Granules 141.69 136.42 266.63 12.75Snowfall

1s5825.71 5815.38 5857.98 10.09

Granules 93.16 47.51 492.68 32.13Snowfall

250ms2831.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

Page 28: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules 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

Page 29: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules 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 networkwas 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

Page 30: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules 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 networkwas 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

Page 31: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules 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 networkwas 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

Page 32: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules 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 networkwas 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

Page 33: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules Stress Tests

Stress Histograms – 75 users

Communications Overheads with 75 Concurrent Users

Classification Times (ms)

Fre

quen

cy

0 50 100 150 200 250

050

0010

000

1500

0

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

Page 34: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Basic TestsGranules Stress Tests

Stress Histograms – 150 users

Communications Overheads with 150 Concurrent Users

Classification Times (ms)

Fre

quen

cy

0 50 100 150 200 250

010

000

2000

030

000

4000

0

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

Page 35: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Outline

1 BackgroundBCIGathering EEGArtificial Neural Networks

2 Benefits of the cloud

3 Approach

4 Frameworks

5 Network Setup

6 ResultsBasic TestsGranules Stress Tests

7 Conclusions and Future Work

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

Page 36: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Conclusions

Granules is a viable option for real-time EEG classification in thecloud

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 83secondsAt 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

Page 37: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

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

Page 38: Analyzing Electroencephalograms Using Cloud Computing ...salsahpc.indiana.edu/CloudCom2010/slides/PDF... · Title: Analyzing Electroencephalograms Using Cloud Computing Techniques

BackgroundBenefits of the cloud

ApproachFrameworks

Network SetupResults

Conclusions and Future Work

Questions

[email protected]

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