亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Keras:將 MDN 層添加到 LSTM 網絡

Keras:將 MDN 層添加到 LSTM 網絡

瀟瀟雨雨 2021-07-16 18:23:26
我的問題是:在給定舞蹈序列訓練數據的情況下,下面詳述的長短期記憶網絡是否經過適當設計以生成新的舞蹈序列?背景:我正在與一位希望使用神經網絡生成新舞蹈序列的舞者合作。她向我發送了2016 年的 chor-rnn 論文,該論文使用帶有混合密度網絡層的 LSTM 網絡完成了這項任務。然而,在我的 LSTM 網絡中添加一個 MDN 層后,我的損失變為負值,結果看起來很混亂。這可能是由于訓練數據非常小,但我想在擴大訓練數據大小之前驗證模型基礎。如果有人可以建議下面的模型是否忽略了一些基本的東西(很有可能),我將非常感謝他們的反饋。我輸入網絡的樣本數據(X下圖)具有形狀 (626, 55, 3),它對應于 55 個身體位置的 626 個時間快照,每個位置有 3 個坐標(x、y、z)。所以 X 1 [11][2] 是第 11 個身體部位在時間 1 的 z 位置:import requestsimport numpy as np# download the datarequests.get('https://s3.amazonaws.com/duhaime/blog/dancing-with-robots/dance.npy')# X.shape = time_intervals, n_body_parts, 3X = np.load('dance.npy')為了確保數據被正確提取,我將前幾幀可視化X:import mpl_toolkits.mplot3d.axes3d as p3import matplotlib.pyplot as pltfrom IPython.display import HTMLfrom matplotlib import animationimport matplotlibmatplotlib.rcParams['animation.embed_limit'] = 2**128def update_points(time, points, X):  arr = np.array([[ X[time][i][0], X[time][i][1] ] for i in range(int(X.shape[1]))])  points.set_offsets(arr) # set x, y values  points.set_3d_properties(X[time][:,2][:], zdir='z') # set z valuedef get_plot(X, lim=2, frames=200, duration=45):  fig = plt.figure()  ax = p3.Axes3D(fig)  ax.set_xlim(-lim, lim)  ax.set_ylim(-lim, lim)  ax.set_zlim(-lim, lim)  points = ax.scatter(X[0][:,0][:], X[0][:,1][:], X[0][:,2][:], depthshade=False) # x,y,z vals  return animation.FuncAnimation(fig,    update_points,    frames,    interval=duration,    fargs=(points, X),    blit=False    ).to_jshtml()HTML(get_plot(X, frames=int(X.shape[0])))
查看完整描述

1 回答

  • 1 回答
  • 0 關注
  • 294 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號