0

ニューラルネットワークを使用して実装しようとする課題は、最も一般的な使い方とは少し異なります。物理的性質を表すネットワークの重みを最適化することによって、入力から出力レイヤーに何かを伝播させて、物理的プロセスをシミュレートしようとします。グラフを形成するために同じプロパティを持つテンソルフローの重複/複製

そのため私は、それぞれの層は、フォーム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) 

...

だから、これを自動化するいずれかのオプションがあります何とかプロセスですか?多分私は何かを逃している

本当に助けていただきありがとうございます!

+0

あなたがしなければならないすべては、文字通り** forループ**を作成しています。つまり、隠れたレイヤーへの参照は必要ありません。前のレイヤーだけを参照する必要はありません。 – lejlot

+0

あなたの考えをありがとう。どうすればこのことができますか?あなたはそのための例がありますか?私は最初のhidden_​​layerとhidden_​​weightsを定義し、for-loopでは私は最後のhidden_​​layerをmatmul()の入力として使用しますか?グラフが正しく構築されていることを確認するにはどうすればよいですか?私はいくつかの知識を残していないと思う申し訳ありません.. – beniroquai

答えて

1

これを達成する最も簡単な方法は、レイヤーを構築して、関数を複数回、場合によってはループ内で呼び出す関数を作成することです。例えば

def layer(input): 
    hidden_weights = tf.Variable(tf.truncated_normal([n*n, 1])) 
    hidden_layer = tf.nn.matmul(tf.matmul(input, hidden_weights), tf_ph_unit) 
    return hidden_layer 

、その後:

input = tf_input 
for i in range(10): 
    input = layer(input) 
+0

すぐに応答ありがとう!私はまだpython/tensorflowに精通していません。これがどのように機能するかを簡単な擬似コード/例で説明してください。または、私が探すべきキーワードをいくつか与えてください。私はMatlabからPythonにゆっくりと移行しているので、それを実現できる関数は分かりません;) – beniroquai

関連する問題