【オセロ,将棋】ボードゲーム Part2【囲碁,War】
■ このスレッドは過去ログ倉庫に格納されています
比較的地味なボードゲーム専用のスレが欲しくて立ててみました。
前スレ
【オセロ,将棋】ボードゲーム【囲碁,War】
http://mevius.2ch.net/test/read.cgi/gamedev/1057763418/ VMWareの設定がメモリ1GBになってた。
とりあえず8GBに増やしてみた。 お、メモリ増やして再起動かけたら結構いい感じで進みだした?
メモリ増やしたのと再起動かけたのどっちが効いたのかわからんが。 くそ〜ベストポリシー更新が全く来ないorz
もう何回目だ?TT お、メモリ増やしたせいか連続運転が安定している。
しかしベストポリシー更新は相変わらずなしorz もしかして、ネットワークの初期値が糞すぎるんだろうか。
でも確かめようがないorz ベストポリシー更新まじコネ〜
でも他のプロジェクトに浮気しようにもなかなか手ごろなのがないんだよなぁ いっそ実績のあるLeelaZeroを本気でパクりに行ってみるべきか…
でも多分、難解なんだろうな〜 あんまりおかしいんでソースをオリジナルとdiffとったら学習係数が1/100になってたんだがwww
え〜何時いじったかな全く記憶にないwww
これで学習が進んでくれれば!! loss も entropyも減ってきてる!
これでベストポリシー更新が来れば!! キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
ベストポリシー更新きました!
次の切りのいいところで止めてプレーしてみよう それはそうとzen+の発売日が迫ってますね。
金がないから買えないけど情報だけは追っかけてみます。
爆速だといいな。 あとちょっとだけ待とう
終局までの手数も順調に減ってきてるから意味のある手を打ってるんだろう多分
ワクワク 打ってみました。
序盤、中盤は棋理の芽生えみたいなものが感じられました。
伸ばせそうなところを伸ばすとか伸ばされそうなところを止めに来るとか
でもわざと負けようとしても5連までは積極的に作りに来るのにそこからパタッと伸ばすのをやめて7連を作ってくれませんw
なぜw?
でもまあ、希望は感じられました。
もうすこし学習してみます。 zen+なかなかよさげですね。
前世代と比べて一割前後性能アップ? うーん。AMDはSIMD命令で遅い命令があって、速度低下するかもって
どこかで読んじゃったからなぁ。
こちらは地道に記譜作成しながら学習させてます。
深さ優先で記譜作成すると、分岐が少ない手筋ばかり増えていくので、
幅優先で、同じ深さである程度記譜溜まってから、次の深さとするように
したのですが、空きマス27からの記譜展開で、時間がかかるようになって
なかなか空き28マスに行けない。オーダリングの精度が出ていないから
だと思いますが、同時に選択肢も増えてきて、余計時間がかかる感じ。
空き30マス突破したら、かかる時間の増加率は下がるはずなんだけど。 もしかして終盤はあえてランダム性を残すことによって学習が進みやすくなるなどの深い理由があるのだろうか?
わからんが。 それとも序盤は同一局面のデータがたくさん現れるから学習できるけれど
終盤に行くとデータが散らばっちゃって学習できなくなるということだろうか あるいは一線や二線は打たないほうがいいと学習してしまっているがため、7連を作れないのだろうか? オセロは記譜生成させてるだけで暇なので、将棋の事を考えてました。
KKPとかよくわからないし、同じ事をやってもつまらないので、利きを点数化
しようかと考えてみまして、実際の計算方法を考えていたら、自玉周辺と
相手玉に対する利きがKKPなのではないかと思い至ってしまいました。
持ち駒の点数は駒種毎に固定で振られていて、駒同士のぶつかりによる優劣
特に駒交換はmin-Maxにて補間しているのかなと。評価関数自体は意外と単純
な事しか学習していない感じで、探索で補っている部分が大きいように感じます。
こうやって見ると、上手く単純化しているなぁと。
自分で勝手に想像した内容に感心してしまいました。
ただ、これならこれで、自玉KPと相手玉KPの合算で、2駒関係に次元を落とせ
そうではないかと思ってしまいました。まあ、無理なんでしょうけど。
自分がやる上での一番のネックは、オセロの評価関数が点数だったために、
なんちゃって強化学習しかやった事がな点ですね。あと、みなさんライブラリ化
されていて、それに則れば色々な人の考えた高速化・高効率化のネタが利用
できる点で、一から車輪の再発明していては追い付けないよなぁと。 ほう、将棋に進出ですか。
将棋AI界はオープンソースが進んでる感じなんですかね。 alpha zero のパクりプログラムgithubから丸パクしてきたわけだけど
そろそろちゃんとソース読み解いてみようかな。難しいだろうけど
丁寧な解説がどこかにあればいいんだけどね お、AIが7作った。
いままではわざと負けようとしても勝ってくれなかったけど今回は勝ってくれた。
まだまだ弱いけどもっと学習させてみよう 俺も学習見守るだけで暇になっちゃったからなんか始めたいけど
計算リソースが学習にもってかれちゃってるからそこどうするか。
やっぱPC新調か?
グラボも効果あるみたいだし今度はGeforce 1080 Tiとか試してみたいな。
金がないけど。 だよね。自分も脳内妄想で我慢です。
PC新調しちゃうか思いっきり悩み中。 もっとネットワーク大きくしてみたいな。
でもさらに学習時間がかかると思うと躊躇する。 お、損失が3点台だったのが2点台になった。
いい感じなんじゃないでしょうか? ジムケラーがインテルに来たとか。
いいCPU作ってくれるならどこでもいいけどね。 序盤は素晴らしい棋理の芽生えを感じるが、いかんせん終盤がなぁ
ほかのアルファゼロクローンも似たような感じなのだろうか? 公式AIともやってみたけど序盤センスは互角以上と感じられる。
実際、必至をかける一歩手前まで行った。
終盤力さえ磨かれればおそらく公式AI越えはある。 学習が1000エピソード突破。
1500が規定値だから最後まで回したいな。 もっとパワー、速度が欲しいな。
こんなことなら最初から1080 Ti いっときゃ良かったかな? ちょっと思うところがあって、思い切ってネットワーク大きくしてみました。
学習最初からやり直しです。
さて吉と出るか凶とでるか。 ん、ネットワーク構成変えたら学習率もいじらないと上手くいかないのか?
ネットワークでかくしたら学習率は大きくすればいいのか小さくすればいいのか… ネットワークでかくしたら学習率は小さくするのがいいみたい? なんか順調でうらやましい。
俺もやっぱGPU付きのPC買うべかな。
一般的にLRでは、学習率は発散しない限界まで大きくするのが良いらしく、
昔は、最初大きく、試行回数増えるごとにだんだん小さくみたいな事をしてました。
NNではRMSPropとかADAMとかで自動調整する流れだと当時理解していました。
ただ、Googleの論文読むと、普通に学習率固定っぽく読めてしまうんですよね。
強化学習だと学習率固定が良いのかも知れません。
表現力大きいからあんまり問題ない気がするのですが、学習率は小さくすると
学習に時間がかかる代わりに、収束しやすくなります。局所解には陥りやすく
なるのではないかと愚考しますが、強化学習における局所解と、教師付学習に
おける局所解は現象が違うから、よくわかりません。 こちら、例によってひたすら分岐付き記譜を作成しています。
空きマス27の所(完全読みとしては26)のところから、計算時間が案の定すごく
かかるようになってしまって、遅々として進まなくなりました。
最後の手段でとっておいた、UCT探索で仮PV作成し、それでmtd(f)にて評価値を
迅速に確定して、その評価値で正しいPVを求めるという流れにしたところ、恐らく
数倍程度に高速化され、それによって記譜が集まり正確になる事で、評価関数の
精度が上がって、仮PVが正確になりという好循環に、ようやく入る事ができました。
ただ、それでもまだ時間はかかるというか、今空きマス28まで持っていったら、
また時間がかかる地獄に入りそう。最低でも空きマス30までは持っていきたい。
つか、待っている時間が長い…セカンドPCが欲しい。 >>351
>数倍程度に高速化され
あくまで仮PVが数手分合っている時の話で、仮PVが間違っていると、
むしろ遅くなる可能性があります。
あと、一つの局面に対し、最善手が複数あるケースでは、例えば最善手
が2つあると2倍程度時間がかかるという問題があるのは認識していて、
対策は可能なのですが、そうするとバグった時にβカットのエラーを吐か
ないという恐ろしい状態になってしまうので躊躇しています。 世界コンピュータ将棋選手権の2次予選までで強さをみせつけている
T.N.K(通称たぬき)ですが、DL勢にして高速評価関数という事なので
アピール文書を見てみました。
これ、CNNではなく、全結合のDeep Networkの模様。追加で論文も
出ているので、見たところ5層のMLPです。
入力層に玉との2駒関係を使っていて、そこは計算量が多いので、
ここだけ差分計算で高速化しているとの事。自分は行列をEigenに
任せちゃってるので差分計算していませんが、オセロでも結構使え
るはず。
もう一度オセロをMLPに拡張したくなってきた(汗 ネットワーク大きくすると学習が収束する確率下がるんですかね?
なんか学習がうまく進んでないようです。 もしかして学習率だけでなく、ほかのパラメータにも手を加えなければならないってことですかね? バックプロパゲーションで計算している以上、深さが深くなると、
その分初段まで誤差を遡らせるのに時間がかかるから、収束が
遅くなって当然かと思います。
あと、初期値のランダム値の幅も、適切に設定しないとなかなか
収束しなくなりますし、それでも初期値の運が悪いとまったく収束
しないなんて事もあり、ちょこっと不安定なところがあります。
XavierとかHeとか初期値の設定項目はありませんか?
本で読んだ知識なので、現実にどれくらい影響するのか良くわかりませんが(^^; パソコン壊れたかと思ったが放電したらなおった
あー怖かったTT 学習率の変動率?を下げたら結構うまく動いてるっぽいです。 loss とか entropyはいい感じに減ってるのに自己対局の結果がついてこないですね。
うーん、なんだろう? いや、自己対局もちょっとづつ改善してるみたいです。
もっと時間が必要かな。 windowsがたまに夜中に勝手に再起動してしまうんだが?
マジむかつく(怒 Windows Updateかな?
俺は通知もらうだけにして、タイミング見て自分で再起動かけてる。
まあ、24時間経つとカウントダウンが始まるので、早目に再起動する事になるけど。 いままで50エピソード毎に自己対戦してたけど、自己対戦がかなり重いから200エピソード毎に自己対戦にしたらなかなかいい感じ。 ネットワーク大きくしても詰めが甘いのはかわらないですねorz.
公式AIに勝つチャンスあったのに勝ちを逃してしまいました。 Surfaceの電源ケーブル、そろそろ断線しそうだなぁと思っていたら、
PCをひょいと動かした瞬間に、まさかの電源落ち。
ウェイトデータ書き込み中に停まらないように色々工夫していても、
この手の落ちには対処できるわけもなく、また大変に運が悪い事に
またしても後半10ステージ程度のウェイトデータが飛んでしまい
ました。バックアップとっていたのですが、気づかずにいたので、既に
上書き済みという罠。
後ろ10ステージ分のみゼロクリアして、そこだけ今のデータで再度
学習する羽目になりました。
orz むう、AlphaZeroのポテンシャルはこんなものではないはずだが。
でも100万局くら学習させないと真価は発揮できないかもなぁ。 19路囲碁だと20層くらい層がないと駄目だとか。
うーん20層は厳しい。。。 畳み込み窓が3×3で、隣との関係を1マス分づつ認識しているとすると、19路で
19層必要で、出力の全結合層つけて20層って事なのかなぁ。
あとフィルタ数も大事だと思う。フィルタで認識する特徴の種類が決まっていると思う。
なんとなくだけど、こう仮定している。検証はしていない(汗 いまのところ192 * 6 でやってます。
9路だから192 * 10 にすればよかったかなぁ 五目系なら、周辺5マスが把握できていればよいかもよ。
比較検証しなきゃわからんけど。 うーん、そうなんですか?。
ライフゲーム囲碁はもろ周辺5マスなんですけどね。
囲連星成功したらライフゲーム囲碁もやりたいですね。 くそ〜何時まで経っても一手の重みみたいなものを理解してくれないorz.
なんか足の遅い打ち方するんだよなぁ。
もういっそ20層にしちゃおうかな orz ん、ちょっとづつだけど強くなってる気がする。。。
くそ〜Googleの計算リソースがあれば30分くらいで名人超えるんだろうけど。。。 自己対戦が勝率100%行ってしまいました。
対戦相手も更新されていくなら勝率100%は行かないと思うんですが。
もともとの実装がなにかおかしいのだろうか… まだ公式AIに勝てないけど毎日ちょっとづつ進歩しているのは感じる。
まだ希望はある。 Alpha Zeroのアルゴリズムは囲連星よりもライフゲーム囲碁に向いてる気がする。 FacebookがELF OpenGoというのを公開したとか。
プロ棋士にも勝てるみたいですね。 ELF OpenGo もGPU 2000台とか使わないと強くならないみたい?
は〜絶望する。 昔のLeela zeroもそうでしたがシチョウが読めてないっぽいですねぇ でもちょっとづつでも確かに前進してる気がします。
ロールアウトの回数増やしたら学習の質も上がるかなぁ?
やってみるか。。。 ん、lossとentropyがかなり増えてますね。
ロールアウトを増やしたえいきょうだろうか? ネットワークを192 * 20 にしたい衝動に駆られるw
危険な賭けだが… キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
公式AIに初勝利!
内容としては相手のミスに助けられただけだけどそれでも格段に進歩してる!
(
;FF[1]GM[1]SZ[9]
;B[fe];W[fc];B[de];W[dc];B[ed];W[ec]
;B[gc];W[gb];B[ee];W[cb];B[ce];W[hb]
;B[ge];W[fh];B[be];W[gd];B[he]) 惜しい!惜しいなぁ。
中盤まで内容は圧倒しておきながら最後の盤端のシチョウが読めずに逆転負け。
学習途中のAlpha Zero系の弱点が出てしまいました。
でも、ここ克服したら100戦100勝もあり得るかも。
(
;FF[1]GM[1]SZ[9]
;B[df];W[fe];B[de];W[cg];B[ef];W[hg]
;B[ff];W[gf];B[cf];W[gd];B[fg];W[gh]
;B[dg];W[gc];B[gg];W[ge];B[dc];W[hb]
;B[dd];W[dh];B[db];W[da];B[eh];W[ha]
;B[eg];W[hc];B[he];W[ie];B[hf];W[if]
;B[hd];W[id];B[he];W[ch];B[hf];W[hd]
;B[he];W[hf];B[di];W[he]) 本来負けてたはずのゲームですが逆転勝利しました!
以前より大分、棋理のようなものが身についてきている感じがします。
ロールアウト増やしたのが効いたかな?
(
;FF[1]GM[1]SZ[9]
;B[df];W[fb];B[ef];W[ff];B[fe];W[ge]
;B[fg];W[gf];B[gg];W[cg];B[cf];W[hg]
;B[fd];W[gd];B[gc];W[hc];B[fc];W[hb]
;B[hf];W[hd];B[he];W[eg];B[dg];W[hh]
;B[eh];W[eb];B[dd];W[gb];B[db];W[dc]
;B[ec];W[de];B[cc];W[bc];B[ed];W[id]
;B[ce];W[ie];B[ei];W[bh];B[ee];W[ba]
;B[eg]) ぼちぼちウインドウズに移植することも考え始めなければ… 毎日棋風がすこしずつ変わっていくな。
面白い。
3線を重視し始めたようだ。 なんかネットワークの規模が足りてない気がしてきたわ。orz orz orz
一気に256 * 20くらいに増やしてみようかな?
気が早いかな〜 うーん、どうせやり直すなら早いほうがいいよね?
でもこのまま学習続けたら何が起こるかも知りたいし…
悩ましい。 思い切ってネットワーク構成を256 * 24 にしました。
激遅になりそうだが… ネットワークを192 * 6 から 256 * 24 にしたら計算量は(256*24)/(192*6)=5.333倍であってる?
まさか指数的に計算量増えたりしないよね? メモリが足らんといわれたぜwww
12GBも割り当てたのにwwww
こりゃニューマシン買うしかないな。 とりあえず、64 * 24 にしてみました。
これでも6GB位メモリ食う。
まじでスレッドリッパーに128GB積みたい衝動に駆られるw やっぱ24層は無理かもorz
全然学習が進んでるように見えないorz 残り28手のところで1か月足踏み。やっと記譜がたまってきた。
残り30手まで行くのに半年くらいかかりそうw
というか、まだまだパターンが足りていないかも。
>>396
隠れ層のサイズは2乗で効いてくるから、256^2/192^2。
深さは単純に計算量が4倍になるとして、ざっと7倍くらいになるのでは?
学習は深さが増えるとどんどんきつくなるかと。
誤差逆伝播の宿命です。 >隠れ層のサイズは2乗で効いてくるから
おお、そうなんですか。ありがとうございます。
>学習は深さが増えるとどんどんきつくなるかと。
24層は諦めました。
今12層くらいで試行錯誤しています。 うーん、極めて微妙なバランス調整を強いられるのか?これは マシンパワーが潤沢にあれば、かなり大きいネットワークから学習させて、
最低限どれくらいの大きさなら弱くならないかが求められるんだけどねぇ。
Googleみたいに。 そういえば新しいスレッドリッパーは32コアになるとか。
うーん欲しい。 あんまりうまくいかないから気分が萎えてきちゃった。
少し気分転換するか… 層を9層に減らして再チャレンジ
どんどん後退していくが仕方ない くそーどうにもうまく行かね〜
一回試すのに結構時間かかるのも痛いorz あんまり上手くいかないんで頭おかしくなりそう
ちょっと休憩します >>411 くそー
パラメータ100種類くらい用意して同時に実行したい orz CPU Ryzen 2700X
GPU Geforce 1080
Memory 64GB
SSD 500GB
これを満たそうとするとやはり40万円近くなる。
厳しい。 フロンティアってショップかなり安くない?
なんか裏があんのかな? フロンティアと言えば懐かしのフロンティア神代(こうじろう)かなと思ったらビンゴでした。
Wikipedia情報によると、フロンティア神代はヤマダ電機に吸収されて解散していて、
BTOショップにフロンティアという名前だけ残っているみたいです。
ヤマダ電機なので裏は無いでしょうね。
7980XEに1080Tiで128Mとかにしていくと、だいぶ価格差は詰まっていきますが、
それでも多少安いみたいですね。というか、8700Kだったらかなり安いかも。 pytorchってAMDのGPU使えないよね?
Cudaだよね? ■ このスレッドは過去ログ倉庫に格納されています