- 對于時序數(shù)據(jù)or圖像,不同的filters、kernel_size、strides意味著輸出不同的高維特征。
- 同一份數(shù)據(jù),如何增強(qiáng)網(wǎng)絡(luò)的表達(dá)能力。使得更寬的網(wǎng)絡(luò)能達(dá)到相較深度網(wǎng)絡(luò)更好的結(jié)果?這是本篇文章需要解決的問題。
- 數(shù)據(jù)說明見上篇文章 http://www.itdecent.cn/p/21b96d597367
網(wǎng)絡(luò)結(jié)構(gòu)
# 定義多通道特征組合模型
def build_multi_cr_lstm_model(ts, fea_dim):
# 定義輸入
inputs = Input(shape = (ts, fea_dim))
# ########################################
# cnn層&lstm層1
cnn_left_out1 = Conv1D(filters=50, kernel_size=6, strides=3, kernel_initializer=he_normal(seed=3))(inputs)
act_left_out1 = LeakyReLU()(cnn_left_out1)
lstm_left_out1 = LSTM(64, activation='sigmoid', dropout=0.1, return_sequences=False,
kernel_initializer=he_normal(seed=10))(act_left_out1)
# #########################################
# cnn層&lstm層2
cnn_right_out1 = Conv1D(filters=50, kernel_size=12, strides=3, kernel_initializer=he_normal(seed=3))(inputs)
act_right_out1 = LeakyReLU()(cnn_right_out1)
lstm_right_out1 = LSTM(64, activation='sigmoid', dropout=0.1, return_sequences=False,
kernel_initializer=he_normal(seed=10))(act_right_out1)
# #########################################
# cnn層&lstm層3
cnn_mid_out1 = Conv1D(filters=50, kernel_size=6, strides=2, kernel_initializer=he_normal(seed=3))(inputs)
act_mid_out1 = LeakyReLU()(cnn_mid_out1)
lstm_mid_out1 = LSTM(64, activation='sigmoid', dropout=0.1, return_sequences=False,
kernel_initializer=he_normal(seed=10))(act_mid_out1)
# ############################################
# 上層疊加新的dense層
concat_output = Concatenate(axis=1)([lstm_left_out1, lstm_mid_out1, lstm_right_out1])
outputs = Dense(1)(concat_output)
model_func = Model(inputs=inputs, outputs=outputs)
model_func.compile(loss='mse', optimizer=Adam(lr=0.002, decay=0.01), metrics=['mse'])
return model_func

image.png
- 可見inputs分別作為3個網(wǎng)絡(luò)的輸入數(shù)據(jù)。CNN1+LSMT1、CNN2+LSTM2、CNN3+LSTM3分別獲取到了3份高維特征,最后接入dense層輸出預(yù)測結(jié)果
預(yù)測結(jié)果與上面文章中結(jié)果的對比
-
baseline效果:
歸一化的mse和原始mse分別為0.00167、1606
-
復(fù)雜網(wǎng)絡(luò)cnn+lstm單通道效果:
歸一化的mse和原始mse分別為0.0009066、869
-
復(fù)雜網(wǎng)絡(luò)cnn+lstm多通道效果:
歸一化的mse和原始mse分別為0.0008297、795
可見復(fù)雜網(wǎng)絡(luò)的效果提升極為明顯,mse降低了足足50%,但是多通道相對單通道的提升相對較少。若追求時間性能,可能多數(shù)情況下cnn+lsmt+dense的單通道已經(jīng)能夠滿足需求
效果提升的原因猜想
- 不同參數(shù)設(shè)置的cnn獲得了不同的高維特征表達(dá),豐富了模型的特征輸入,因此獲得了更好的預(yù)測效果
擬合曲線對比
-
一圖為深度lstm網(wǎng)絡(luò)擬合圖、二圖為cnn+lstm單通道擬合圖、三圖為cnn+lstm多通道網(wǎng)絡(luò)擬合圖
image.png

image.png

image.png
思考
針對不同的數(shù)據(jù),如何應(yīng)用相同的復(fù)雜網(wǎng)絡(luò),這是下一步需要思考的問題。以及attention的引入
