ニューラルネットワークを使用して実装しようとする課題は、最も一般的な使い方とは少し異なります。物理的性質を表すネットワークの重みを最適化することによって、入力から出力レイヤーに何かを伝播させて、物理的プロセスをシミュレートしようとします。グラフを形成するために同じプロパティを持つテンソルフローの重複/複製
そのため私は、それぞれの層は、フォームXは私の変数であり、Iは、最適化したいと外部のm個
MX + B
に同じ特性を有する、すなわち150レイヤネットワークを必要とします各層で同じ係数(bは現在使用されていません)。
グラフを作成して各レイヤーをコピー/ペーストするのではなく、自動化したいと思います。最初の層の構造を後続のすべての層にコピーする機能はありますか?それはここで、このようなもののようになります。tensorflowで
:
graph = tf.Graph()
with graph.as_default():
# Input data.
tf_input = tf.placeholder(tf.float32, shape=(n_data, n))
tf_spatial_grid = tf.constant(m_index_mat)
tf_ph_unit = tf.const(m_unit_mat)
tf_output = tf.placeholder(tf.float32, shape=(n_data, n))
# new hidden layer 1
hidden_weights = tf.Variable(tf.truncated_normal([n*n, 1]))
hidden_layer = tf.nn.matmul(tf.matmul(tf_input, hidden_weights), tf_ph_unit)
# new hidden layer 2
hidden_weights_2 = tf.Variable(tf.truncated_normal([n*n, 1]))
hidden_layer_2 = tf.nn.matmul(tf.matmul(hidden_layer, hidden_weights_2), tf_ph_unit)
......
# new hidden layer n
hidden_weights_n = tf.Variable(tf.truncated_normal([n*n, 1]))
hidden_layer_n = tf.nn.matmul(tf.matmul(hidden_layer_m, hidden_weights_n), tf_ph_unit)
...
だから、これを自動化するいずれかのオプションがあります何とかプロセスですか?多分私は何かを逃している
本当に助けていただきありがとうございます!
あなたがしなければならないすべては、文字通り** forループ**を作成しています。つまり、隠れたレイヤーへの参照は必要ありません。前のレイヤーだけを参照する必要はありません。 – lejlot
あなたの考えをありがとう。どうすればこのことができますか?あなたはそのための例がありますか?私は最初のhidden_layerとhidden_weightsを定義し、for-loopでは私は最後のhidden_layerをmatmul()の入力として使用しますか?グラフが正しく構築されていることを確認するにはどうすればよいですか?私はいくつかの知識を残していないと思う申し訳ありません.. – beniroquai