亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Keras中Conv1D的使用及說(shuō)明

 更新時(shí)間:2022年12月15日 15:28:49   作者:脈望蟲  
這篇文章主要介紹了Keras中Conv1D的使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

Conv1D

keras.layers.Conv1D(filters, kernel_size, strides=1, padding='valid', data_format='channels_last', dilation_rate=1, activation=None, use_bias=True, kernel_initializer='glorot_uniform', bias_initializer='zeros', kernel_regularizer=None, bias_regularizer=None, activity_regularizer=None, kernel_constraint=None, bias_constraint=None)

1D 卷積層 (例如時(shí)序卷積)。

該層創(chuàng)建了一個(gè)卷積核,該卷積核以 單個(gè)空間(或時(shí)間)維上的層輸入進(jìn)行卷積, 以生成輸出張量。 如果 use_bias 為 True, 則會(huì)創(chuàng)建一個(gè)偏置向量并將其添加到輸出中。 最后,如果 activation 不是 None,它也會(huì)應(yīng)用于輸出。

當(dāng)使用該層作為模型第一層時(shí),需要提供 input_shape 參數(shù)(整數(shù)元組或 None),例如, (10, 128) 表示 10 個(gè) 128 維的向量組成的向量序列, (None, 128) 表示 128 維的向量組成的變長(zhǎng)序列。

參數(shù)

  • filters: 整數(shù),輸出空間的維度 (即卷積中濾波器的輸出數(shù)量)。
  • kernel_size: 一個(gè)整數(shù),或者單個(gè)整數(shù)表示的元組或列表, 指明 1D 卷積窗口的長(zhǎng)度。
  • strides: 一個(gè)整數(shù),或者單個(gè)整數(shù)表示的元組或列表, 指明卷積的步長(zhǎng)。 指定任何 stride 值 != 1 與指定 dilation_rate 值 != 1 兩者不兼容。
  • padding: “valid”, “causal” 或 “same” 之一 (大小寫敏感) “valid” 表示「不填充」。 “same” 表示填充輸入以使輸出具有與原始輸入相同的長(zhǎng)度。 “causal” 表示因果(膨脹)卷積, 例如,output[t] 不依賴于 input[t+1:], 在模型不應(yīng)違反時(shí)間順序的時(shí)間數(shù)據(jù)建模時(shí)非常有用。
  • data_format: 字符串, “channels_last” (默認(rèn)) 或 “channels_first” 之一。輸入的各個(gè)維度順序。 “channels_last” 對(duì)應(yīng)輸入尺寸為 (batch, steps, channels) (Keras 中時(shí)序數(shù)據(jù)的默認(rèn)格式) 而 “channels_first” 對(duì)應(yīng)輸入尺寸為 (batch, channels, steps)。
  • dilation_rate: 一個(gè)整數(shù),或者單個(gè)整數(shù)表示的元組或列表,指定用于膨脹卷積的膨脹率。 當(dāng)前,指定任何 dilation_rate 值 != 1 與指定 stride 值 != 1 兩者不兼容。
  • activation: 要使用的激活函數(shù)。 如未指定,則不使用激活函數(shù) (即線性激活: a(x) = x)。
  • use_bias: 布爾值,該層是否使用偏置向量。
  • kernel_initializer: kernel 權(quán)值矩陣的初始化器 。
  • bias_initializer: 偏置向量的初始化器 。
  • kernel_regularizer: 運(yùn)用到 kernel 權(quán)值矩陣的正則化函數(shù)。
  • bias_regularizer: 運(yùn)用到偏置向量的正則化函數(shù)。
  • activity_regularizer: 運(yùn)用到層輸出(它的激活值)的正則化函數(shù) 。
  • kernel_constraint: 運(yùn)用到 kernel 權(quán)值矩陣的約束函數(shù)。
  • bias_constraint: 運(yùn)用到偏置向量的約束函數(shù)。

輸入尺寸

3D 張量 ,尺寸為 (batch_size, steps, input_dim)

輸出尺寸

3D 張量,尺寸為 (batch_size, new_steps, filters)。 由于填充或窗口按步長(zhǎng)滑動(dòng),steps 值可能已更改

輸入輸出尺寸的理解

一般在2D卷積中,輸入尺寸很直觀,為 (samples, rows, cols, channels),即為樣本數(shù),行數(shù)、列數(shù)和通道數(shù)四維信息,但是若以此推斷,在Conv1D總兩維信息就足夠,中間卻夾雜了一個(gè)steps,那這個(gè)steps如何去理解呢?

理解steps參數(shù),我們應(yīng)該跳出圖像的思維,1D卷積通常施用在時(shí)序數(shù)據(jù)中,在時(shí)序數(shù)據(jù)的輸入中:

  • batch_size: 輸入的樣本數(shù)
  • steps: 時(shí)間維度,個(gè)人認(rèn)為可以理解成量化后的時(shí)間長(zhǎng)度,也就是多少個(gè)時(shí)刻
  • input_dim: 每個(gè)時(shí)刻的特征數(shù)量

keras Conv1D 一維卷積的輸入維度

報(bào)錯(cuò)情況

expected conv1d_1_input to have 3 dimensions, but got array with shape (1, 56)

問(wèn)題原因

維數(shù)不匹配

解決方法

數(shù)組的維數(shù)是(1,56),但神經(jīng)網(wǎng)絡(luò)維數(shù)與數(shù)組維數(shù)相反,應(yīng)該使用(56,1)或(None,1)

同時(shí)神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù)應(yīng)改成三維,即reshape為(1,56,1)

總結(jié)

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論