Top Banner
1 / 42 Diagnosis of alzheimer's disease with deep learning 2016. 7. 4 Seonho Park
43

Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

Apr 15, 2017

Download

Engineering

Seonho Park
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

1 / 42

Diagnosis of alzheimer's disease with deep learning

2016. 7. 4Seonho Park

Page 2: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

2 / 42

Outline

Introduction to Machine LearningConvolutional Neural Network

Diagnosing of Alzheimer’s disease

Page 3: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

3 / 42

Introduction to Machine LearningConvolutional Neural Network

Diagnosing of Alzheimer’s disease

Page 4: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

4 / 42

Introduction to Machine Learning

x1

x2

x1

y

x1

x2

<Supervised Learning> <Unsupervised Learning>classification regression clustering

Category of Machine Learning

문제 + 정답

문제 + 정답

문제 + 정답

데이터 + 레이블 머신러닝 학습

머신러닝 모델 정답 예측새로운 데이터

문제 + 정답

문제 + ???

분류 회귀

CatComputer

LionPencilPig

레이블 없는 데이터 머신러닝 학습 군집화

Page 5: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

5 / 42

Introduction to Machine LearningScikit-Learn

• Machine Learning Library in Python• http://scikit-learn.org/• Classification: Decision trees, SVM, NN• Regression: GP, Ordinary LS, Ridge Regression, SVR • Clustering: k-Means, Spectral Clustering

Page 6: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

6 / 42

Introduction to Machine LearningWhy Deep Learning?

• Deep Learning = Deep Neural Network• Data and Machine Learning

† http://cs229.stanford.edu/materials/CS229-DeepLearning.pdf

Page 7: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

7 / 42

Introduction to Machine LearningArtificial neural networks

Training = Find weights (parameters)Inference = get output by specific input and trained weights

Page 8: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

8 / 42

Introduction to Machine LearningConvolutional Neural Network (CNN)

• Image Processing (Computer Vision)

Page 9: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

9 / 42

Introduction to Machine LearningRecurrent Neural Network (RNN)

• Time Series Data• Natural Language Processing• Translation, Speech Recognition, Auto Caption• 자동번역 , 음성인식 , 이미지 캡션 생성 등에 활용

† Towards End-to-End Speech Recognition with Recurrent Neural Networks, Alex Graves et al (2014)

Page 10: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

10 / 42

Introduction to Machine LearningWhy GPU?

• CuDNN: GPU-accelerated library of primitives for deep neural networks• VRAM limitation, Double/Single/Half Precision• Linear Algebra: CuBLAS, MAGMA

Page 11: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

11 / 42

Introduction to Machine LearningFrameworks

Cuda-Con-vNet

Pylearn2Lasagne

Page 12: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

12 / 42

Introduction to Machine LearningOpen Sources for Deep Learning

† Comparative Study of Deep Learning Software Frameworks, Soheil Bahrampour et al (2015)

Page 13: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

13 / 42

Introduction to Machine LearningPioneers

• Yann Lecun• Geoffrey Hinton• Yoshua Bengio• Andrew Ng• Jürgen Schmidhuber

Page 14: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

14 / 42

Image Recognition Speech Recognition Auto Caption

Self Driving Car Natural Language Processing Recommendation System

Introduction to Machine LearningApplications

Page 15: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

15 / 42

Introduction to Machine LearningConvolutional Neural Network

Diagnosing of Alzheimer’s disease

Page 16: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

16 / 42

Convolutional Neural Network Overview

• Classification• Convolution Operation + MLP• Architecture

• Convolutional Layer (Convolution Operator, Activation)• Subsampling (Downsampling, Pooling)• Fully Connected Layer• Classifier

Page 17: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

17 / 42

Convolutional Neural Network LeNet5† Convolutional Operation

† Gradient Based Learning Applied to Document Recognition, Yann LeCun et al (1998)

• Digit Recognition • Weight matrix (filter): 4D tensor [# of feature at layer m, # of features at layer m-1, height, width]

Page 18: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

18 / 42

Convolutional Neural Network Activation function (nonlinearity)

† Systematic evaluation of CNN advances on the ImageNet, Dmytro Mishkin, et al (2016)

Page 19: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

19 / 42

Convolutional Neural Network Pooling Layer

• Erase Noise• Reduce Feature Map Size (Memory Save)

† Systematic evaluation of CNN advances on the ImageNet, Dmytro Mishkin, et al (2016)

Page 20: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

20 / 42

Convolutional Neural Network Training

• Error(Loss) Function: Categorical Cross Entropy

• Design Variable: weights(W), bias(b)

• Backpropagationconjunction with an optimization method such as gradient descent

• Vanishing gradient

Page 21: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

21 / 42

Convolutional Neural Network Mini-Batch Method

• Computational Efficiency• Memory Use• Iteration & Epoch

Vanilla Gradient Descent

Stochastic Gradient Descent• Parameter update for each training example x(i) and label y(i)

• Step size(η) is typically set to 10-3

Page 22: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

22 / 42

Convolutional Neural Network Training (Optimization)

• Update Functions

• Second-order Method (L-BFGS) is not common in practice• NAG is more standard

Page 23: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

23 / 42

Convolutional Neural Network Overfitting and Regularization • Dropout

• Relaxation: Add Regularization Term to Loss Function• Remove Layer (Reduce Parameters), Add Feature

† Dropout: A Simple Way to Prevent Neural Networks from Overfitting, Nitish Srivastava et al (2014)

Page 24: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

24 / 42

Convolutional Neural Network Local Optimum?

† Identifying and attacking the saddle point problem in high-dimensional non-convex optimization, Yann N. Dauphin et al (2014)

• Non-convex optimization problem • deeper and more profound difficulty originates from the proliferation of saddle points,

not local minima, especially in high dimensional problems of practical interest

Page 25: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

25 / 42

Convolutional Neural Network Parallel Computation

• Architectural Parallel: Divide Channel• Data Parallel: Divide Batch

Page 26: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

26 / 42

ILSVRC• Evaluate algorithms for object detection and image classification at large

scale• Training: 1.3M/ Test: 100k, 1000 categories

Convolutional Neural Network

Page 27: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

27 / 42

AlexNet• ILSVRC12 1st Place• 15.3% error rate (2nd place achieved 26.5% error rate) • Architecture Parallel (2GPU used)

† ImageNet Classification with Deep Convolutional Neural Networks, Alex Krizhevsky et al. (2012)

Convolutional Neural Network

Page 28: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

28 / 42

VGG Net• DeepMind• ILSVRC14 2nd Place• 6.8% error rate

† VERY DEEP CONVOLUTIONAL NETWORKS FOR LARGE-SCALE IMAGE RECOGNITION, Karen Simonyan et al. (2014)

Convolutional Neural Network

Page 29: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

29 / 42

GoogLeNet• Google• Inception module• ILSVRC14 1st Place• 6.67% error rate

† Going Deeper with Convolutions, Christian Szegedy et al. (2014)

Convolutional Neural Network

Page 30: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

30 / 42

MSRA• MicroSoft• PReLU activation• Weight initialization • 4.94% error rate (Surpass Human Level, 5.1%)

† Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification, Kaiming He et al. (2015)

Convolutional Neural Network

Page 31: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

31 / 42

Inception-v3• Google• Inception Module Upgrade• 50 GPUs• 3.46% error rate• Public Use with TensorFlow

† Going Deeper with Convolutions, Christian Szegedy et al. (2015)

Convolutional Neural Network

Page 32: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

32 / 42

Convolutional Neural Network Deep Neural Networks are Easily Fooled†

† Deep Neural Networks are Easily Fooled: High Confidence Predictions for Unrecognizable Images, A Nguyen et al (2014)

• It is possible to produce images totally unrecognizable to human eyes

• interesting differences between human vision and current DNNs

• raise questions about the generality of DNN computer vi-sion

Page 33: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

33 / 42

Convolutional Neural Network Neural Style

† A Neural Algorithm of Artistic Style, Leon A. Gatys et al (2014)

• Style + Contents reconstruction

• Caffe framework• https://github.com/jcjohnson/neural-style

Page 34: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

34 / 42

Introduction to Machine LearningConvolutional Neural Network

Diagnosing of Alzheimer’s disease

Page 35: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

35 / 42

Diagnosing of Alzheimer’s diseaseTraditional Diagnosis of Alzheimer’s disease

• Review medical history• Mini Mental Status Exam• Physical Exam• Neurological Exam• Brain Image: Structural(MRI,CT), Functional(fMRI)

• NC(Normal Condition), MCI(Mild Cognitive Impairment), AD• AD: Vascular/Non-Vascular

Page 36: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

36 / 42

Diagnosing of Alzheimer’s diseaseAD Patients’ MRI Features

• Temporal Lobe: Hippocampus• Ventricle

Page 37: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

37 / 42

Diagnosing of Alzheimer’s diseaseCase Study: Machine Learning for diagnosing of AD• PET, MRI images

• Patch Extraction• Restrict Bolzmann Machine• Accuracy: 92.4%(MRI), 95.35%(MRI+PET)

† Hierarchical feature representation and multimodal fusion with deep learning for AD/MCI diagnosis, Heung-Il Suk et al (2014)

Page 38: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

38 / 42

Diagnosing of Alzheimer’s diseaseCase Study: Machine Learning for diagnosing of AD• Feature: Cortex Thickness

• FreeSurfer• Linear discriminant analysis (LDA)• Accuracy: Sensitivity: 82%, Specificity: 93%

† Individual subject classification for Alzheimer’s disease based on incremental learning using a spatial frequency representation of cortical thickness data, Young-Sang Cho et al

(2012)

Page 39: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

39 / 42

Diagnosing of Alzheimer’s diseasePreprocessing

• Data Set: about 1400 of T1 MRI from SMC• FreeSurfer: Skull Stripping: reduce size [256,256,256][190,190,190] / 67MB27MB • Pixel Value Normalization [0,255] [-1,1] • Mirrored cropping

Page 40: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

40 / 42

Diagnosing of Alzheimer’s diseaseArchitecture

• CNN• Lasagne (Theano) Framework• Inception Module, Batch Normalization• 3D Convolution + CuDNN v3 (Github)• 2 TITAN X GPU: Data Parallel (PyCUDA)• Batch Size: 80

• Training Set #Healthy Condition(HC): 761 #Alzheimer’s Disease (AD): 389• Test Set #Healthy Condition(HC): 105 #Alzheimer’s Disease (AD): 84

Data

Page 41: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

41 / 42

Diagnosing of Alzheimer’s diseaseArchitecture

input

24*Conv 11/5

MaxPool7/2

288*Conv 3/2

FC 120

DropOut

SoftMax

input

36*Conv 16/6

MaxPool3/2

120*Conv 4/1

Batch Norm

MaxPool3/2

60*Conv 1/1

96*Conv 3/112*Conv 1/1

24*Conv 5/1 24*Conv 1/1

MaxPool3/1

48*Conv 1/1

Concatenate

MaxPool3/2

FC 150

128*Conv 1/1

192*Conv 3/132*Conv 1/1

96*Conv 5/1 64*Conv 1/1

MaxPool3/1

128*Conv 1/1

Concatenate

96*Conv 1/1

208*Conv 3/116*Conv 1/1

48*Conv 5/1 64*Conv 1/1

MaxPool3/1

192*Conv 1/1

Concatenate

SoftMax

input

60*Conv 10/2

MaxPool2/2

144*Conv 3/1

Batch Norm

MaxPool3/2

48*Conv 1/1

72*Conv 3/1

18*Conv 1/1

36*Conv 5/148*Conv 1/1

MaxPool3/1

48*Conv 1/1

Concatenate

MaxPool3/2

FC 500

96*Conv 1/1

208*Conv 3/116*Conv 1/1

48*Conv 5/164*Conv 1/1

MaxPool3/1

192*Conv 1/1

Concatenate

160*Conv 1/1

320*Conv 3/132*Conv 1/1

128*Conv 5/1 128*Conv 1/1

MaxPool3/1

256*Conv 1/1

Concatenate

SoftMax

280*Conv 1/1

340*Conv 3/132*Conv 1/1

128*Conv 5/1 128*Conv 1/1

MaxPool3/1

228*Conv 1/1

Concatenate

AvgPool3/1

MidasNet1

MidasNet2

MidasNet3

Page 42: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

42 / 42

Convergence History

Model AccuracyMidasNet1 167/189 (88.4%)MidasNet2 169/189 (89.4%)MidasNet3 169/189 (89.4%)

0 7 14 21 28 35 42 49 56 63 70 77 84 91 98 105 112 119 126 133 140 147 154 161 168 175 182 189 1960.01

0.1

1

10

Epoch

Cost

Diagnosing of Alzheimer’s diseaseResult

Page 43: Convolutional Neural Network for Alzheimer’s disease diagnosis with Neuroimaging

Thank You