1

MLP を使用して回帰問題を解決したいと考えています。

これを修正するために可変長の入力があります。マスキングレイヤーでゼロパディングを使用したいです。

pandasライブラリを使用してcsvファイルから入力を読み取ります。ここに私のデータがどのように見えるかがあります。

image1: csv での列車データの外観

このコマンドを使用して NaN 値を 0 で埋める方法しか知りませんx_train.fillna(0.0).values

最初の行のように:

[4, 0, 0, 512, 1.0, 0.0, 1.0, 0.0, 128.0 , NaN]

パディング後:

[4, 0, 0, 512, 1.0, 0.0, 1.0, 0.0, 128.0 , 0.0]

マスクは次のようになります。

[1, 1, 1, 1, 1, 1, 1, 1, 1, 0]

しかし、マスク レイヤーを追加して MLP にフィードする方法がわかりません。

入力長が固定されている場合。私のプログラムは次のようになります

...
n_input = 10 #number og inputs

train_X = pd.read_csv('x_train.csv')
train_Y = pd.read_csv('y_train.csv')


X = tf.placeholder("float", [None, n_input])
Y = tf.placeholder("float", [None, n_output])

...
y_pred = multilayer_perceptron(X)
...

with tf.Session() as sess:
    sess.run(init)

            _, c = sess.run([train, loss], feed_dict={X: train_X,
                                                      Y: train_Y})
          ...

ゼロ パディングとマスキング レイヤーを組み合わせる方法がわかりません。

4

2 に答える 2