想問一下LSTM為啥不收斂

2021-10-03 09:26:12 字數 1452 閱讀 1194

按照別人的**寫了乙個三層的 lstm的**,輸入為(-1,stpes,input)的形式,具體大小為(32,10,512),做動作識別的,但是網路的損失值一直為固定範圍內的值大概是四點多,網路損失一直不下降,請問是**錯了嗎,下面是那部分的**

n_hidden_units=128    # 隱藏層神經元數目

num_layers=3 # 雙向lstm神經網路的層數

n_steps=10

n_inputs=512

vgg_output = tf.reshape(vgg_output,[-1,n_steps,n_inputs])

def unit_lstm():

# 定義一層 lstm_cell,只需要說明 hidden_size, 它會自動匹配輸入的 x 的維度

lstm_cell = tf.contrib.rnn.basiclstmcell(num_units=n_hidden_units, forget_bias=1.0, state_is_tuple=true)

#新增 dropout layer, 一般只設定 output_keep_prob

return lstm_cell

#呼叫 multirnncell 來實現多層 lstm

mlstm_cell = tf.contrib.rnn.multirnncell([unit_lstm() for i in range(num_layers)], state_is_tuple=true)

outputs, state = tf.nn.dynamic_rnn(mlstm_cell, inputs=vgg_output,dtype = tf.float32,time_major=false)

h_state = outputs[:,-1,:]

print(h_state.shape)

w = tf.variable(tf.truncated_normal([n_hidden_units, class_num], stddev=0.1), dtype=tf.float32)

y_pre = tf.matmul(h_state, w)

print(y_pre.shape)

cross_entropy = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(logits=y_pre, labels=y))

'''+sum(tf.nn.l2_loss(var) for var in tf.trainable_variables())

'''train_op = tf.train.adamoptimizer(lr).minimize(cross_entropy)

accuracy = tf.reduce_mean(tf.cast(tf.equal(tf.argmax(y_pre, 1), tf.argmax(y, 1)), dtype=tf.float32))

想問一下每日優鮮怎麼樣呀?

還挺不錯的,用起來很方便。每次看到有人問每日優鮮怎麼樣,就想要回答一下,因為是親身用過的,所以希望大家都能了解它。我是去年三月份開始用的已經用了一程式設計客棧年多啦,在上面買了挺多東西,沒有一次讓我失望過的。開始用是因為想吃西瓜但當時還不是西瓜的季節,不想到處去找,就想說在網上買吧,但很擔心今天下單...

想問一下在delphi7裡怎樣實現自動發郵件的功能

想問一下在delphi7裡怎樣實現自動發郵件的功能 delphi windows sdk api 想問一下在delphi7裡怎樣實現如下功能 把messagebox發出的提示資訊,自動通過郵件的方式發給某乙個收件人!tks idsmtp1.authenticationtype atnone idsm...

Python機器學習為啥就一下子紅遍全球了呢???

在這篇文章中我們會講python的重要特徵和它適用於機器學習的原因,介紹一些重要的機器學習包,以及其他你可以獲取更詳細資源的地方。為什麼用python做機器學習 python很適合用於機器學習。首先,它很簡單。如果你完全不熟悉python但是有一些其他的程式設計經驗 c或者其他程式語言 要上手是很快...