2017-08-22 33 views
1

1つのニューロン(回帰に使用される)を持つDense()出力層を持つケラスを使用して、単純な1層LSTMニューラルネットワークを構築しようとしています。LSTM NNをトレーニングする前に、どのデータを再スケーリングする前処理が必要ですか?

私がfit()モデルを再スケーリングしなければならないときのトレーニングデータは知っています。多くのオンラインの例では、[0,1]の範囲内の入力と出力の両方を再スケーリングし、[-1,1]の範囲内の他のものは再スケーリングします。

私のような単純な回帰問題の入力と出力を再スケーリングするための正しい選択は何ですか?なぜですか?私はそれが使用される活性化機能と関係していることを知っています。シグモイドは[0,1]内の値を出力します。

私はあなたがアクティブ化機能と再発のアクティブ化を選択できることがわかりました。 ケラール内のLSTM()のコンテキストでアクティベーション機能がどのように実装されていますか(たとえば、入力ゲートに「シグモイド」があります)?

ありがとうございます!

+0

[このサイト](https://stats.stackexchange.com/questions/tagged/machine-learning)でこの質問に対する回答が得られるでしょう。これはプログラミング固有の質問ではないため、何もありませんケラを直接する – DJK

答えて

0

スケーリングについては、通常、Scikit-Learnのpreprocessing.scale関数を使用します。それは良い結果をもたらします。より深い説明のためにshould I normalize/standardize/rescale

LSTMレイヤーについては、「RELU」アクティベーション関数を使用することをお勧めします。これは、勾配の消失問題の解決に役立ちます。この回答を確認してください:advantages of RELU。回帰をしてから2番目の層(最後)に線形活性化を使用する場合、分類を行っていたら "シグモイド"を使います。

関連する問題