こんにちは､ 人工知能の講座にようこそ｡
これまでのコースを楽しんでいただければ幸いです｡
そして今日は､ 行動選択のポリシーについてです｡
わかりました｡
早速､ 飛び込んでみましょう｡
前回は､ 単純な学習にニューラルネットワークを追加する話をしました｡
そして今のところ､ ディープラーニングにかなりハマっています｡
学習の部分については､ いくつかの要素を加えるなどして､ かなり話を進めてきました｡
そして､ 今日はこの部分のお話です｡
演技の話をしているんです｡
では､ 見てみましょう｡
つまり､ エージェントの現在の状態を表すパラメータやベクトルを入力すると､ その環境では学習が完了する､
あるいは学習が完了する前に学習が完了する､ という演技について説明したものです｡
基本的にはすべてのキュー値を取得します｡
だから､ 今は学習には興味がないんです｡
私たちは演技に興味があります｡
では､ このキュー値を手に入れたら､ どれを使えばいいのか､ どのように理解すればいいのでしょうか｡
考えてみれば､ キュー値というのは､ 簡単に言えば､ キューブ値の予測値なんですね｡
では､ 単純な学習アルゴリズムでやったように､ 何をしたのか？
私たちはただ､ キュー値が最も高い､ ベストなものを選びました｡
最も価値の高いものを手に入れたら､ その行動を取るだけです｡ それが最も高い価値をもたらしてくれるからです｡
そして､ 私たちはそれを知っています｡
Q 価値は､ 期待する当面の報酬に､ 次の状態の価値を係数倍して計算します｡
しかも､ 再帰的な計算です｡
では､ なぜダメなのか？
なぜ､ ベストキューバリューを取らないのですか？
というような感じで終わっています｡
しかし､ ここにあるように､ それほど単純なことではありません｡
ここではソフトマックス関数を使っていますが､ ここで行動選択ポリシーについて説明します｡
ですから､ ここでは､ 現実には､ 自己最大機能だけを持つ必要はないのです｡
異なる行動選択方針を持つことができる｡
例えば､ イプシロン・グレイディ､ イプシロン・ソフト､ ソフトマックスなどがあり､ これらは最もよく使われる行動選択ポリシーと言えます｡
もちろん､ 他にもありますよ｡
例えば､ 最も基本的なものは､ ここに非常にシンプルな行動選択ポリシーがあります｡
Q値の高いもの､ ベストなものを選べばいい｡
しかし､ なぜその行動方針が飛ばないのでしょうか｡
また､ なぜ行動指針､ 行動選択指針の種類があるのでしょうか？
さて､ すべては探索と利用に帰結します｡ これが強化学習の核心です｡ すでに少しお話しましたが､
エージェントが環境で活動するとき､ ある重要な値を予測するかもしれません｡
それは良いものかもしれないし､ そうでないかもしれません｡
その価値観が悪いと判明して､ 探りを入れざるを得なくなるかもしれません｡
例えば､ この場合､ Q2がベストだと予測し､ Q2を取り､ 行動2を取り､
ここから行動2を取るようにすると､ 非常にネガティブな報酬を得ることができます｡
Q2はとてもいいものだと思っていたのに､ 実はとても悪いものだった」ということを知ることになるからです｡
だから､ 結果的にとても悪いことになった｡
だから､ ネットワークが勝手に更新されるんです｡
だから､ 次にこの州に来るときは､ おそらく彼はまだ選ぶかもしれない｡
Q 2､ もしそれが､ その､ 非常に好意的なものであったなら｡
ということは､ Q2が悪い行為だと学ぶために､ 何度か罰則や懲罰が必要なのでは､
と思われるかもしれませんね｡
でも､ もしかしたら､ 彼はもうすぐにそれを知ることになるかもしれない｡
じゃあ､ 私は別のアクションを起こします｡
今はQ値が一番良いので､ このアクションを起こします｡
そのため､ 環境によっては､ エージェントがさまざまな行動を取るように強制されることもありますが､ エージェントが局所最大値から抜け出せなくなることもあります｡
最初の探索を通じて､ そのようなことが分かるかもしれません｡
その結果､ ああ､ これはここに行ってみようとか､ これはなかなかかっこいいアクションだなということがわかりました｡
しかし､ 問題は､ 探索していないだけで､ それが最高のアクションだと思い込んでいることです｡
上への探索は左へ､ 右への探索は右へ､ しかし､ その特定の状態から下への探索はまだです｡
そして今､ この行動に偏り､ 良い行動だと思い､ 取り続け､ 手に入れようとしているのです｡
彼はこの行動を取り続けることで､ 良い報酬を得ようとしているのです｡
しかし､ もしこの行動がさらに良いものであったとしたらどうでしょう｡
このアクションを知れば､ 実際にこのアクションに切り替わるくらいに｡
でも､ 局所的に最大値に引っかかって､ こういう良い報酬を得たから､ 強化されるだけなんです｡
それは､ 自分自身を強化し続けるか､ あるいは環境が「これは良い行動だ」と強化することになるのです｡
それを続けてください｡
しかし､ 実際には､ まだ見つけていない､ あるいは探ってもいない､ もっと良いアクションがあるはずなのです｡
そこで､ エージェントが局所最大値にはまらないような行動選択ポリシーを考えたいのです｡
そう､ 良い行動を続けることが大切なのです｡
それが搾取の部分です｡
見つけたものを活用したいが､ 同時にまだ探検したい｡
私たちは､ 決して探求をやめようとは思いません｡
人生において､ 学ぶことをやめたくないというのと同じですね｡
学ぶことをやめれば､ 死ぬ｡
それは
成長しないときは死ぬときとか､ そういう言葉がありますね｡
だから､ あなたは学び続けたいし､ 代理人も学び続けたいのです｡
そこで､ このような行動選択政策が必要になるわけです｡
ということで､ 3つをご紹介します｡
ということで､ まずはイプシロングリーディ｡
とてもシンプルなものです｡
カッコイイ名前だし､ こういうカッコイイ名前のものはたいてい複雑なんだろうという意味で､ かなり複雑そうですね｡
実はそうではないんです｡
つまり､ 基本的にはQ値が最も良いものを選び､ ギリシャのεのようにεを出すということです｡
他の場所でも聞くことができるかもしれません｡
まるで選別政策のようだ｡
今回は､ Q値のうち､ アクションのうち､ セレクトを選択するために使っているわけです｡
だから､ イプシロン％以外はずっとQ値の高いものを選ぶことになる｡
例えばイプシロンを10％に設定したら､ or 0になるわけです｡ 1.
すると､ 10％の確率でランダムにアクションが選択されることになります｡
つまり､ 90%はQ値の高さを基準に最適なアクションを選択することに変わりはないのです｡
しかし､ 10%はランダムなアクションユニフォームを選択することになり､ 絶対にランダムにアクションを起こすことになるのです｡
またはイプシロンを0にした場合｡ 540. 05､ つまり95％の確率で､ エージェントは最も価値の高い行動を取ることになる｡
しかし､ 5％の確率でランダムな動作で選択されることに変わりはないのです｡
だから､ 外に出て探索することになるんです｡
だから､ イプシロンソフトはとても似ている｡
そういえば､ イプシロン貪欲と呼ばれるのは､ そのわずかなイプシロン％を除いて､
良い行動を貪欲に選択するためなんですね｡
つまり､ イプシロンが低いほど､ そういう行動を貪欲に選択しているわけです｡
それが最適な行動です｡
そして､ 残すものが少なければ少ないほど､ 探検のチャンスも少なくなります｡
イプシロンソフトはその逆です｡
つまり､ 基本的にはランダムに､ 1マイナスεパーセントの確率で選択することになります｡
つまり､ イプシロンが0みたいな場合です｡ 1だから10％､ そうすると10％だけこの行動をして､ 90％はランダムな行動を選択することになる｡
ソフトマックスは､ イプシロン貪欲アルゴリズムの次のステップというか､ より高度なバージョンというか､
どちらもメリットがあって､ コーディングや実用的な場面でソフトマックスを使うことになるでしょう｡
というわけで､ 今回はソフトマックスについて､ もう少し詳しくお話します｡
では､ 見てみましょう｡
では､ ソフトマックスの話に移ろう｡
イプシロン成分について､ かなり明確になるといいのですが｡
とてもわかりやすいアルゴリズムですね｡
時々go and exploreをする以外は､ ほとんどこれを選択します｡
また､ 最適化の過程で局所最大値に陥らないように､ 探索を行うことが重要な理由もわかってきました｡
では次に､ ソフトマックスについてもう少し詳しくお話します｡
の講座の最後にSoft Maxのチュートリアルがあるんです｡
ソフトマックスのコンセプトについて話しているのは､ 別館の2号館だと思います｡
ここでちょっとだけリフレッシュ｡
そこで､ 彼らは畳み込みニューラルネットワークについて話していたのです｡
ところで､ このセクションでは､ 畳み込みニューラルネットワークを取り上げますが､ 畳み込みニューラルネットワークを取り上げるわけではありません｡
ここでは､ まだベクトルを使っています｡
しかし､ 次の講座では､ ドゥームをプレイするAIを作るときに､ 畳み込みニューラルネットワークを使うことになります｡
ですから､ 畳み込みニューラルネットワークを見てから､ ソフトマックス関数を取るのが得策かもしれませんね｡
あるいは､ 後日､ コースの畳み込みニューラルネットワークとXを受講した後に､ SOF Maxについてもう少し勉強することもできます｡
でも､ ここで簡単におさらいしておきましょう｡
そこで､ 犬か猫かを判断する畳み込みニューラルネットワークを用意しました｡
つまり､ このニューロン間の投票プロセスがあるわけです｡
そして､ この作品は､ その特徴､ つまり､ ふわふわの耳､ 尖った､ 尖った顔のタイプを持っていると言っているのです｡
そして､ 他の種類の目が持つ特徴のようなもの､ 目､ 目の見え方､ これらすべてが犬に属する特徴なのです｡
つまり､ 95％の確率で犬､ 5％の確率で猫ということですね｡
しかし､ 問題は､ どうやって､ 今話しているチュートリアルで､ これらの値の合計が1になるようにしたのか､
ということです｡
まあ､ 畳み込みやニューラルネットワーク全体がどうであれ､ です｡
つまり､ 畳み込みニューラルネットワークと完全接続層､ それが吐き出した値が何であれ､
ここにソフトマックス関数を適用したのです｡
そして､ ここでソフトマックス関数の公式を紹介します｡
このような感じです｡
そして､ こんな値が出てきました｡
というわけで､ 基本的にはざっとこんな感じです｡
これがソフトマックスの公式です｡
これは､ あなたが持っている出力の数を取るということです｡
どうでもいいことです｡
それを､ 大きさに関係なく､ 0から1の間の値にすべてつぶしてしまうのです｡
ただ｡
私の場合､ これを見ると､ 一番下に総和があるのがわかりますね｡
つまり､ これらの値は0と1の間の0になるわけです｡
また､ これらの値はすべて足し算で常に1つになるようにします｡
ソフトマックス関数を使うと､ Q値が得られて､ その中から最適な値を選択することになりますから､
これは非常に有益なことです｡
しかし､ 実際には､ 私たちが得たこのQ値は､ 実際の数値なのですよね？
つまり､ ある種の数字なんですね｡
足して1でなくても､ 0から1でなくても､ いくつかの数字でいいんです｡
しかし､ ソフトマックスを適用する場合､ 単に最適なものを選択するわけではありません｡
実際にそういう数字が出るんですよ｡
だから､ 0と1の間の数字が得られ､ それも足すと1になる｡
それで､ 他に足し算で1つになるものがあるのでしょうか？
さて､ 確率ですが､ 確率は常に足し算で1になることが分かっています｡
だから､ ここでQ値が出たと思ったら､ ここで突然ソフトが出たり､ 確率が出たりするわけです｡
だから､ これがベストな行動である可能性は90％だと言える｡
ベストセクションのこのベスト､ 5％､ 2％､ 3％｡
なぜなら､ Q値が高いほど良いアクションになることが分かっているからです｡
そして､ 0から1につぶすと､ これらは確率となり､ そのように扱うことができるのです｡
したがって､ 今はアクションが選択されたときです｡
そして､ Q2を思いつくわけです｡
でも､ よく見ると､ これは厳密には100％ではないし､ これらは0％でもない｡
つまり､ これは5％､ 2％､ 3％ということですね｡
ですから､ アルゴリズムで探索を維持するためにソフトマックスを適用する最も自然な方法は､
その行動を取る頻度として正確な確率を使用することです｡
つまり､ これらの確率は､ 実際に私たちが行っている行動の分布を表しているのです｡
ですから､ 基本的にソフトマックスは､ エクスプロイトとエクスプロレーションを組み合わせる方法を非常に簡単に思いつくことができるのです｡
つまり､ ベスト・ザ・ベストの行動は､ Q値が最も高いので､ 常に最も高い確率を持つことになる｡
したがって､ ここでは､ ちょうど私たちはこれを分布として使うつもりです｡ そして､ よし､
私たちはQから90％の時間を取るつもりですが､ 5％の時間はまだ取るつもりですと言うつもりです｡
Q 1と2%で3､ 3%で取ることになる｡
Q 4.
そして､ ここでの素晴らしい点は､ これらの値が更新されるにつれて､ エージェントがネットワークを通過するにつれて､
どんどん環境に慣れていき､ その結果､ これらの更新が行われるということです｡
そのため､ 例えばこの値は実際にはもっと小さい､ あるいはもっと大きいということが確認されるかもしれません｡
そして､ これらの確率も､ エージェントが進むにつれて変化していくわけです｡
つまり､ ここではあなた方2人がいるにもかかわらず､ 誰も5%の確率で､ より正確にはQ1を選択し､
時にはまたはアクション1がアクション1を取ることになり､ 2%の確率でアクション3を通してアクションを取り､
3%の確率でアクション4が取ることになると言っているわけではありません｡
ですから､ 十分な反復練習を行い､ エージェントがこれらの状態を何度も何度も繰り返す限り､ すべてのアクションがこのプロセスで活躍するチャンスがあるのです｡
このように､ ディープラーニングのアルゴリズムは､ 何度も何度も繰り返して､
経験から学んでいくものなのです｡
したがって､ ここにあるように､ イプシロン貪欲アルゴリズムのように無作為に行うのではなく､ ごく自然に移行することができるのです｡
アクションをランダムに選んでいるわけではないんです｡
ソフトマックスの値に基づいて選択しているので､ ただ無作為に選ぶのではなく､ 何らかの論理的な裏付けがあるのです｡
10%はランダムな行動を選択していますが､ その方法には何らかのロジックがあります｡
そして､ そのQ値に基づいて､ 私たちは探求してきました｡
それが､ この講座で使うアクションの選択方針です｡
イプシロン・グリーディー・アクション・セレクションのポリシーも是非ご覧になってください｡
そして､ 面白い読み物があるんです｡
つまり､ これは価値差に基づく強化学習における適応的イプシロン貪欲探索と呼ばれるものです｡
2010年の記事です｡
それに､ マイク､ ミッシェル､ どう発音したらいいのかわからないから面白い｡
MichelleとMichaelは､ VD VBアルゴリズムまたはε-greedy VBアルゴリズムと呼ばれる､
調整されたε-greedyアルゴリズムと呼ばれる､ 異なるタイプのアルゴリズムを紹介しています｡
こちらでご覧いただけます｡
そして､ 実際にマックスのEPS成分と比較しているのです｡
そして､ これはε-greedyアルゴリズムで､ 基本的にはエージェントの状態に応じてε-greedyの値を調整することが主な考え方です｡
だから､ もしエージェントがとても心配しているのなら｡
8つあればイプシロンが小さくなるので､ 探査が少なくなるはずです｡
もし､ エージェントが不確かであれば､ イプシロンはより高く､ より探索的であるべきです｡
だから､ 2010年の記事なんです｡
この新しいアルゴリズムが広く使われているのか､ コミュニティで受け入れられているのか､ それとも人工知能がこの提案から遠ざかっているのかは分かりませんが｡
しかし､ それにもかかわらず､ 我々が議論したアクション選択ポリシーに関する知識を強化するのに役立つことは間違いありません｡
イプシロン成分､ ソフトMAXで対応します｡
並べて比較することで､ 人工知能を向上させたいと考えたときに､ 実際にどのような方向で考えているのかを知る機会にもなると思います｡
もしあなたが､ 人工知能の限界を超えるような面白いアルゴリズムを作ろうと思っているなら､
人工知能の規範や2010年当時の規範を改善しようとするときに､
人々がどのような方向に考えるかを知る良い方法かもしれません｡
そうそう､ そうなんです｡
本日のチュートリアルでは､ アクションの選択方法について説明しましたが､ いかがでしたでしょうか｡
イプシロングリーディー､ イプシロンソフト､ ソフトマックスについて学び､ これでさらに実践的な準備が整いましたね｡
というわけで､ 次回もよろしくお願いします｡
そしてそれまで､ お楽しみに｡
I.