問題タブ [loss-function]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reinforcement-learning - 強化学習における損失関数 (MSVE) の実装
オセロの時間差分学習エージェントを構築しようとしています。私の実装の残りの部分は意図したとおりに動作しているように見えますが、ネットワークのトレーニングに使用される損失関数について疑問に思っています。サットンの著書「強化学習: 入門」では、平均二乗値誤差 (MSVE は標準損失関数として示されています。これは基本的に、平均二乗誤差にポリシー分布を掛けたものです。(すべての状態の合計 s ( onPolicyDistribution(s ) * [V(s) - V'(s,w)]² ) )
私の質問は次のとおりです。ポリシーが学習値関数の e-greedy 関数である場合、ポリシーの配布でこれを取得するにはどうすればよいですか? 代わりに MSELoss を使用する場合、それは必要ですか?
私はこれらすべてをpytorchで実装しているので、簡単に実装できるボーナスポイントです:)
python - Keras: カスタム目的関数、導関数を配置する場所
修道院の損失関数を少し変更しようとしていますが、実装側からいくつか質問があります。
Keras でカスタム損失関数を作成する方法と、それを呼び出す方法は既に知っています。しかし、関数の導関数をどこに含めるかはまだ明確ではありません。
私の新しい損失関数は次のとおりです。
損失 = 交差エントロピー + f(x)
ここで、f(x) = x**2 です。
back-prop ステップで使用されるように、どこに f'(x)=2x を含める必要がありますか? Keras は自動的にそれを行いますか? または、これを明示的に定義する必要がありますか?
やり方がわからないので、どなたか教えていただけるとありがたいです。
チュアン。