-1

sqrt関数をニューラルネットワークでモデル化したいとします。しかし、すべての入力xに対して、2つの答えsqrt(x) = ysqrt(x) = -yがあります。 (実際には、私はsqrtの機能を持っているのか分かりません - 私はたくさんのデータを持っています - 0,1,2、またはそれ以上の回答があれば先験的に分かりませんyすべての入力に対してxyの正しい分布を得るにはどうすればよいですか?2つ以上の出力を持つ可能性のある "関数"を使用した機械学習

答えて

0

あなた自身を尋ねるべき質問は、あなたがそのようなニューラルネットワークを訓練する方法を次のとおりです。

あなたがXを与えるのことを考えた場合 - {(x)はSQRT - 平方根を(X)}>を訓練例として、I 1つの例を見て出力の数を知っているので、2つの出力があることをエンコードする必要があります。

私は時々x - > sqrt(x)と他の時間x - > - sqrt(x)である例を与えようと考えていましたが、あなたのニューラルネットワークは各勾配が重みを変えることができるので、まったく別のやり方でそれはおそらく多くのトレーニングの例の後に収束し、単に最もよく見たyを出力します。

これを行うより良い方法は、おそらく強化学習の報酬機能のようなものを使うことでしょう。その場合の関数はf(x)= x^2であり、出力が正しいかどうかを単に表します。それはあなたのネットワークが肯定的な結果と否定的な結果の両方に訓練させるでしょうだからあなたの問題の報酬機能を見つけることを試みなさい!

関連する問題