[過去ログ] 【オセロ,将棋】ボードゲーム【囲碁,War】 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
943
(1): 535 2017/09/07(木)22:01 ID:QIAny/iA(2/2) AAS
初期曲面から3手目まで位しか十分な数のデータがないっぽいw
100万局にしても無駄だろうなぁ
944
(1): 310 2017/09/08(金)00:27 ID:4/v5wLbf(1/2) AAS
強化学習の準備始めました。
評価関数のファイル名決め打ちしてたり、staticだったりで、あちこち変えなきゃならん。

と、裏で記譜集めをしていたら、またまた問題が。
探索結果は合っているけど、逆順探索などで失敗。
用途の違う置換表を使いまわしちゃいかんという事の模様で、置換表クリアで対応。
mtd(f)で下から寄ったあと、置換表残したままもう一度上から寄せると、探索間違える
現象も確認。良く考えれば何が問題なのかわかりそうだけど、もう飽きた(汗
何回目の「これできっと大丈夫」なのかorz

>>943
局面数的には、全宇宙の原子数でも足りないかと…
特徴抽出と近似による汎化に頼らないと・・・
945: 535 2017/09/08(金)23:05 ID:a3pCQ6U/(1) AAS
>>944
特徴抽出ですか…
まあCNNぼちぼち頑張ってみますが、果たして成果出るかどうかかなり怪しいですね…
946
(1): 310 2017/09/08(金)23:49 ID:4/v5wLbf(2/2) AAS
昨夜いろいろ考えながら寝ていたら、あっとなりまして。

今までmin-maxな部分ばかりデバッグしてましたが、最初にバグに気付いた時に
並列探索かつ置換表な時に問題が起きると気づいていたのに、見るところ間違え
てました。置換表の更新のところで、2重更新の対策してなかった(汗

null window searchとか、冤罪だったんじゃないかと。
まあ、徐々に耐久テストしてみます。
947: 310 2017/09/11(月)00:57 ID:ieDiiY3U(1) AAS
>>946は潜在的には問題になりえますが、関係なかったorz

都度都度置換表をクリアしながらなら問題が起きないようです。
でも、クリアしなければならない、そもそも今のトリッキーな高速化方法では
かえって低速になる事から、着手リスト作成箇所を全面的に書き直して
しまいました。

現在耐久テスト中。今のところ調子は良さそうです。

記譜集めちんたらやりすぎなので、ちょっと質を落として数を増やしてみます。
948: 310 2017/09/16(土)22:09 ID:4ZN/DTXg(1) AAS
このまま記譜集めしていても、必要分量まで集めるのにどんだけかかるかわからない
ので、悩んでいましたが、ふと思いつきました。置換表には、読み切り済の記譜が詰まっ
ていると。上限加減のタイプもあるので、全部ではありませんが、これを捨てるのは勿体
ないかなと。で、抜いてみました。25手読み事に大体3000局面の盤面と終局スコアが
得られます。

どういう局面が残るのかは、なんとも言い難いのですが、記譜の足しにはなるというか
結構な分量がたまるなぁという事で、これもとっておいて、再利用できるようにしてみま
した。置換表適用深さ分しかないので、限られてはしまいますが、分量的には結構に
なるので、利用を前提にしてみます。
949: 535 2017/09/20(水)22:11 ID:iovYnC4+(1/2) AAS
tensorflowやってます。

import numpy as nm
winrate=nm.loadtxt("WINRATE.TXT") 
boards=nm.loadtxt("BOARD.TXT")

WINRATE.TXTは読み込めるのにBOARD.TXTは読み込めない。
データがでかすぎるってことだろうか
さてどうするか…
950: 535 2017/09/20(水)22:23 ID:iovYnC4+(2/2) AAS
データ半分にしたら通った
まあしょうがないか
951: 310 2017/09/21(木)20:15 ID:x7IR5Khh(1) AAS
tensorflowですか!
環境整備大変そうだと逃げてます。乙です。
速度感とか教えてください。

こちらは、ようやく強化学習の良い方法を考え付きまして。
とりあえずダミーとの対戦と学習部分までコーディングしてみたところ。
今夜デバッグして、強化部分のコーディングする予定。

rollout部で使用するのはあきらめました。
色々やっていたら、勝率も大事だけど、それよりツリー展開のドライバー
としての速度の方が大事だと言う結論に(汗
952: 535 2017/09/23(土)19:53 ID:5wTLMOiz(1/4) AAS
なんか、3x3のフィルターは学習動くのに5x5のフィルターで学習させようとすると落ちる?
とりあえず、3x3のフィルターで進めてみます。
953: 535 2017/09/23(土)19:55 ID:5wTLMOiz(2/4) AAS
tensorflow固有の問題じゃないかもですがとにかくメモリが足らんですね。
今のマシンは16GBなんですが、可能なら128GBくらい積みたい気分。
やはりスレッドリッパー欲しい。金がないけど。
954: 535 2017/09/23(土)22:35 ID:5wTLMOiz(3/4) AAS
tensorflowに計算機占有されちゃうの意外と痛いですねorz
やはりスレッドリッパーしか…
でも金が…
955: 535 2017/09/23(土)22:53 ID:5wTLMOiz(4/4) AAS
局面の勝率計算させてるけど今正解との誤差が平均0.14くらいっぽい
勝率で平均0.14違ったら使い物にならんじゃないのか?
うーん。
956: 310 2017/09/24(日)01:20 ID:1rFk/uJ5(1/3) AAS
並列処理すると、何使っても計算機資源占有されちゃいますよw
だからGPUに逃がしてCPUを空けようとしたりするんですよね。

最近扇風機で冷やすようにしてますが、扇風機無しだとクロック数が80%以下まで
下がってしまって、そういう時に限って、読み切り処理でバグがあるような結果が出て
います。理屈ではありえないんだけど。

スレッドリッパーでもi-7900Xでも、CPUの温度対策は大事になると思います。
957: 310 2017/09/24(日)01:47 ID:1rFk/uJ5(2/3) AAS
強化学習は、適当にコーディングして結果からデバッグしているので時々不安になり
ますが、それなりに学習してくれているみたい。学習内容は同じく勝率で、これをアル
ファ碁で言うところのポリシーに使用してます。

強化学習のポリシーを導入した事で、遡りチェックも調子よく遡るようになり、最善手を
指している率が上がったように感じています。しょせん強化学習だし、まだ学習しはじめ
なので、精度は高くありませんが、使い方次第ではいける感じです。

強化学習続けたら、定石DBの代わりになるんじゃないかと期待。

しばらく学習フェーズになりますが、次はロールポリシーを改良したいかな。
958: 535 2017/09/24(日)18:11 ID:nEz2fGFF(1/4) AAS
損失がこれ以上下がらなそうなところまで来たので、
AIに組み込んでみようと思ったのですが、
tensorflowでの学習結果をどうやってC++にもってくればいいのかよくわからないというw
とりあえずググってみますが、見つかるかなぁ?
959: 535 2017/09/24(日)20:00 ID:nEz2fGFF(2/4) AAS
C++にもってくるの現状そんな簡単じゃないっぽいorz.
960: 535 2017/09/24(日)23:27 ID:nEz2fGFF(3/4) AAS
windows上でtensorflowをコードからビルドとかマジすか?
961: 310 2017/09/24(日)23:40 ID:1rFk/uJ5(3/3) AAS
ウェイトデータをバイナリで持ってきて、フォワード計算を自分で書くってのじゃダメ?
パッケージに任せたい面倒くさいところって、バックワード部分だから。

自分の場合、mctsで並列処理していて、使用している行列パッケージのEigenも並列
計算していて、両方で並列化しちゃうとスレッド取り合って劇遅になっちゃうし、Eigenを
シングルスレッドで動かす時のオーバーヘッドが気になったので、AIで使用する時の
フォワード計算は自分で書きました。
962: 535 2017/09/24(日)23:49 ID:nEz2fGFF(4/4) AAS
うーんそれが一番妥当ですかね〜
ありがとうございます。
でもバグなく書けるか若干心配w
963: 310 2017/09/26(火)00:08 ID:TqyA8LQm(1) AAS
強化学習、ずっと学習続けていると、途中で弱くなっていく。
アルファ碁のやり方をまねていたけど、一旦超シンプルな方法に変えてみて、
とにかく施行回数を増やしてみます。

強化学習を使って、序盤の評価関数が作れないか検討開始。

あと、時々出ていた終盤探索のバグ。
今度はたぶん大丈夫だと思う。
何度目の大丈夫だって状態だけど(汗
964: 535 2017/09/26(火)00:31 ID:Q8jANAxD(1) AAS
学習率って何気に大事なパラメータですね。
速度がかなり違う。
もっと大胆に攻めた値にすべきかな?
965: 310 2017/09/27(水)10:06 ID:CCZHsP7K(1) AAS
学習率は大事だけど、今時はRMSPropとかADAMとかで
自動計算にしちゃうんじゃないの?
966: 535 2017/09/27(水)21:24 ID:PlFiGlJN(1) AAS
詳しいことはよくわかりませんが、最適化の関数名はAdamOptimizerとなっているのでそうなのかもしれませんね。
学習率のパラメータ渡すところも引数省略可能っぽいですね〜
自動計算のほうがいいんだろか?。
参考にした本には学習率設定してありましたのでマネしました。
967: 310 2017/09/29(金)10:10 ID:Cw2Mz5dw(1) AAS
それならAdamですね。Tensor Flowなら当たり前ですね。
学習率ってだけだったので、Optimizer無しの学習率だと思いました(汗

省略時引数はたぶんモデル発表者の提示した推奨値です。
まあ、パラメータをいじるかどうかは、個々人の好みとい事で。
968: 535 2017/09/30(土)19:50 ID:d6qWS2yh(1/3) AAS
フィルターの数も多けりゃ多いほど誤差が減るって単純なものでもないみたいですね。
多すぎると最適化が収束しなくなるっぽい。
969: 535 2017/09/30(土)20:37 ID:d6qWS2yh(2/3) AAS
パラメータいじりの沼にはまりそうorz
970: 535 2017/09/30(土)20:50 ID:d6qWS2yh(3/3) AAS
メモリ!メモリが足らん!
971: 310 2017/09/30(土)23:21 ID:WQNilA4m(1/3) AAS
フィルタ数は大きければ大きいほど良いのですが、学習に必要な時間が恐ろしく
長くなります。十分に多いフィルタ数で収束できる事を確認したうえで、だんだんと
減らして行くなんて作業になります。段数についても一緒。

ロースペックマシンだと1回試すのに下手すると数週間とかあり得るのです。
かといって、精度が出せないレベルの簡素なモデルで試しても、いつまでたって
も収束せずに、まだかなみたいな。モデルの複雑さが足りているかいないかが
わからない点が、困ったちゃんなのです。

さて、強化学習ですが、なんとなく学習しているようにも見えるし、最適解の周囲を
振動しているようにも見えます。ふと思い付いたのですが、最適化(SMORMS3って
奴を使用)をやめて、ただの学習率(もしくは、学習率の漸減)にした方が、動きが
素直になって良いのかも。

今のスピードは1時間に100万対戦。1億対戦するのに4日強かかるわけで。まだ
試行回数が足りていないかもしれないし、そもそもただの線形ではモデルが簡単すぎ
るのかもしれません。

というわけで、CNN使わずに線形でやっても同じ問題が起きまするorz
972: 310 2017/09/30(土)23:46 ID:WQNilA4m(2/3) AAS
フィルタ数は大きければ大きいほど良いのですが、1回の学習に必要な時間が
フィルタ数に比例して長くなります。十分に多いフィルタ数で収束できる事を確認
したうえで、だんだんと減らして行くなんて作業になります。段数についても一緒。
これ、1サイクルの計算時間の話なので、収束しやすさについては、複雑さが
増すとさらに時間がかかる可能性あります。

ロースペックマシンだと収束できるか確認するのに下手すると1か月とかあり得ます。
かといって、精度が出せないレベルの簡素なモデルで試しても、いつまでたって
も収束せずに、まだかなみたいな。モデルの複雑さが足りているかいないかが
わからない点が、困ったちゃんなのです。

さて、強化学習ですが、なんとなく学習しているようにも見えるし、最適解の周囲を
振動しているようにも見えます。ふと思い付いたのですが、強化学習に限っては、
最適化(SMORMS3を使用)をやめて、ただの学習率(もしくは、学習率の漸減)に
した方が、動きが素直になって良いのかも。

今のスピードは1時間に100万対戦。1億対戦するのに4日強かかるわけで。まだ
試行回数が足りていないかもしれないし、そもそもただの線形ではモデルが簡単すぎ
るのかもしれません。

というわけで、CNN使わずに線形でやっても同じ問題が起きまするorz
1-
あと 30 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.894s*