1-D Convoltional Neural network for ECG signal processing

조회 수: 46 (최근 30일)
shahram taheri
shahram taheri 2017년 10월 11일
답변: David Willingham 2021년 11월 15일
Dear Sir, I read the useful comment in https://www.mathworks.com/matlabcentral/answers/331164-convolutional-1d-net by Joss Knight. I want to use 1-D for ECG classification. I have 5 classes of signal,each one has 651 samples, I want to simulate the proposed method of the following article: "Application of Deep Convolutional Neural Network for Automated Detection of Myocardial Infarction Using ECG Signals" by Prof. Rajendra Acharya. In their paper, they mentioned the CNN structure as follow:
I worte the following code in order to define my CNN layers:(assumed that input signal has 651 samples)
layers = [imageInputLayer([1 651])
convolution2dLayer([1 102],3,'stride',1)
maxPooling2dLayer([1 2],'stride',2)
convolution2dLayer([1 24],10,'numChannels',3)
maxPooling2dLayer([1 2],'stride',2)
convolution2dLayer([1 11],10,'stride',1,'numChannels',10)
maxPooling2dLayer([1 2],'stride',2)
convolution2dLayer([1 9],10,'numChannels',10)
maxPooling2dLayer([1 2],'stride',2)
fullyConnectedLayer(30)
fullyConnectedLayer(10)
fullyConnectedLayer(2)
softmaxLayer
classificationLayer];
is it correct? I train my CNN with these layers, but the predicted labels are fixed to one of the classes! But when I use ony the 4 first layers, the accuracy is very good(98.35%). what happend when I insert the remaining layers?
  댓글 수: 2
Conor Daly
Conor Daly 2017년 10월 16일
Hi Shahram,
The network architecture looks correct. However, I'm not sure what's happening during training. In the paper you linked, the authors say that they applied Z-score normalization to all of the signals. If you've done this, you could turn off the default zero-centering normalization in the image input layer by writing:
layer = imageInputLayer([1 651 1], 'Normalization', 'none')
Mirko Job
Mirko Job 2020년 3월 29일
Dear Sir,
I am also working with convolutional networks for 1D signal classification, but i'm trying to do it on a time series. I was thinking to format my signal as a 1 x 1 x N°Features x Time observations, but then i am confused on how to define the filter on the convolutional layer to make it operate on the 4D. Is in your opinion the formatting of my data correct or i am just over-complicating something far more simple?

댓글을 달려면 로그인하십시오.

답변 (5개)

Pavithra R
Pavithra R 2017년 12월 12일
I have completed the feature extraction of ECG. Now I have to classify those using CNN. Kindly give a sample code for reference.
  댓글 수: 3
Abdul Rahman Ya'akub
Abdul Rahman Ya'akub 2018년 4월 11일
hi shahram, how to use CNN to automatically extract the feature and classifying the image? do you have some demo?
hilal duran
hilal duran 2019년 3월 25일
편집: hilal duran 2019년 3월 25일
I agree with shahram taheri , and also you can use LSTM to claffify ECG signal.

댓글을 달려면 로그인하십시오.


shefali saxena
shefali saxena 2018년 11월 6일
hi shahram, as i am new to Deep Learning can you help me on how we can give 1d (ECG) signal as a input to CNN

Kaouter Karboub
Kaouter Karboub 2019년 9월 13일
Dear friends ,
first of all, for those who asked about how CNN extract features, well ... its too simple , if u ve got a simple look in any CNN architecture u can figure it out that in any CNN layer the main objective is to extract features and that the classification is not done til the last layer which is obviously the output layer
second , about the 1 d signals , yes u can for sure use CNN .. by using those samples, plot them and use CWT and then fit them into ur CNN .....
main rule in here : every classification task needs a preprocessing of ur data that can be 1 d or 2 d or 3d ... it doesn t matter !!
  댓글 수: 1
Asaf Raza
Asaf Raza 2021년 3월 5일
How i can classify hand crafted features with pretrain deep neural netwrok .

댓글을 달려면 로그인하십시오.


S.RAMA SURYA VAMSI
S.RAMA SURYA VAMSI 2021년 11월 15일
in matlab,write a program to generate a ecg and convolution with exponential wave and find its psd and find its fourier series,laplace transform,z transform

David Willingham
David Willingham 2021년 11월 15일
Hi,
MATLAB's Deep Learning toolbox has support for 1-D convolutional layers. This doc page lists an example of this:

카테고리

Help CenterFile Exchange에서 AI for Signals에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by