天天看點

python keras 一維卷積_CNN中的1維卷積

1維卷積對于處理時間序列資料有重要意義,具體講解如下:

給定一個資料集,資料次元為3000行7列; 3000個樣本,7個特征,5個類别,利用一維卷積進行分類

首先對資料進行處理,将其轉換為3維資料,3000×時間步長×特征數,進而使得資料的格式能被keras接受。這裡取時間步長10

model.add(Conv1D(100,2))

添加第一個一維卷積層,100個卷積核,卷積核大小為2,10-2+1=9,輸出資料9行100列,width為7

model.add(Conv1D(100,2))

添加第一個一維卷積層,100個卷積核,卷積核大小為2,9-2+1=8,輸出資料8行100列,width為7

model.add(Maxpooling1D(3,2))池化核大小為3,步長為2,(8-3+1)/2=3,輸出資料3行100列,width為7

(疑問:假設池化核為2,步長為2,則(8-2+1)/2=3.5,這時次元有待于keras上實驗)

注意:若model.add(Maxpooling1D(2)),則池化核大小為2,步長也為2。

model.add(Conv1D(160,2))

添加第一個一維卷積層,160個卷積核,卷積核大小為2,3-2+1=2,輸出資料2行160列,width為7

此時卷積核的權重矩陣為100行160列,

2行100列的矩陣與100行160列的矩陣相乘,即可得到2行160列的矩陣

————————————————

版權聲明:本文為CSDN部落客「graceful snow」的原創文章,遵循CC 4.0 by-sa版權協定,轉載請附上原文出處連結及本聲明。

原文連結:https://blog.csdn.net/graceful_snow/article/details/100052732