[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 11/06 14:10 / Filesize : 260 KB / Number-of Response : 1021
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【オセロ,将棋】ボードゲーム Part2【囲碁,War】



1 名前:名前は開発中のものです。 [2017/10/15(日) 17:34:58.03 ID:RaMh0le2.net]
比較的地味なボードゲーム専用のスレが欲しくて立ててみました。

前スレ
【オセロ,将棋】ボードゲーム【囲碁,War】
mevius.2ch.net/test/read.cgi/gamedev/1057763418/

116 名前:535 mailto:sage [2017/12/06(水) 00:45:59.31 ID:D/I5x6A8.net]
メモリも山盛り積みたいですよね〜
GPGPUも考えられるし。

117 名前:535 mailto:sage [2017/12/06(水) 21:27:03.05 ID:D/I5x6A8.net]
アルファ将棋爆誕w

118 名前:310 mailto:sage [2017/12/06(水) 21:37:40.75 ID:fJiMVswg.net]
今見たorz

夢想段階にあったものをことごとく圧倒的な力量でやられてしまふ。
そのうち、5分でオセロ作ったよとか言われるんだろうなぁ。

学習と評価の実行が完全に二分された今となっては、
学習に使用するハード性能は正義だと思い知らされる。

119 名前:535 mailto:sage [2017/12/06(水) 21:39:44.94 ID:D/I5x6A8.net]
グーグルのアルゴリズムはマジ万能なんですかね〜?
必要マシンパワーがあれですが、ムーアの法則が解決するでしょう。

120 名前:535 mailto:sage [2017/12/06(水) 21:49:23.90 ID:D/I5x6A8.net]
そんなに万能ならライブラリとして公開してくれw
囲連星とライフゲーム碁を学習させたいww

121 名前:535 mailto:sage [2017/12/06(水) 22:03:23.36 ID:D/I5x6A8.net]
いっそ完全解析してくれたら諦めつくんですけどねw

122 名前:535 mailto:sage [2017/12/06(水) 22:49:40.35 ID:D/I5x6A8.net]
9路囲連星のDB作りはじめました。
何日かぶん回そう。

123 名前:310 mailto:sage [2017/12/06(水) 23:02:24.56 ID:fJiMVswg.net]
non-MonteCalroなツリー探索(勝手にそう呼んでる)は、MCTSがロールアウト
関数さえ作れれば万能なように、完全情報ゲームでは万能だと思う。
あと強化学習による評価関数の作成も。

ただ、まだAlpha碁Zeroの論文読んでないからわからないけど、CNNの入力
については、人間が介在しているかもしれない。少なくともアルファ碁の段階
では、ちょっと特殊な入力データを用意していた。

それと、完全情報ができない以上、強さの地平線を広げたに過ぎないのも確か。
それを実現するために圧倒的なマシンパワーを使っているわけで。そのマシン
パワーを前提に、それを完全に活かせるアルゴリズムにしたってところが、評価
ポイントなのかもしれない。

かなり悔し紛れな評価だけどorz

124 名前:535 mailto:sage [2017/12/06(水) 23:52:04.64 ID:D/I5x6A8.net]
ガンガンツリー展開して全部DBに突っ込んでたら意外と早くメモリがパンクした。
相変わらず学習しない俺w
しょうがないからDBに入れるのは序盤だけにするか。



125 名前:310 mailto:sage [2017/12/07(木) 00:22:37.97 ID:EKyZH2pF.net]
Googleがやらかしてから、後だしで俺も考えていたとか悔しいので、
前から思っている事をボソっと書いとく。

十分に深いDCNNの場合、表現の自由度が高いから、強化学習を繰り返す
事で過学習になる事が、起こりうる局面の大半を内部に保持する事につな
がっていて、実は汎化性能ガン無視で良いのではないか。起こりにくい局面の
評価値はグチャグチャでも構わないという事で。

と思っていたりする。

126 名前:535 mailto:sage [2017/12/07(木) 00:55:58.10 ID:+QWWXInu.net]
修正してみたけど、8プロセス並列で動かすと意外とまだメモリがきついな。
しょうがないから1プロセスだけで流すか。

127 名前:535 mailto:sage [2017/12/07(木) 01:11:55.19 ID:+QWWXInu.net]
うーん、なんか同じ局面しか選ばなくなっちゃう。
これは致命的な欠陥だなぁ。
どうしよう?

128 名前:535 mailto:sage [2017/12/07(木) 01:18:35.82 ID:+QWWXInu.net]
駄目だ分からん。
諦めて今日は寝よう。

129 名前:535 mailto:sage [2017/12/07(木) 20:11:24.86 ID:+QWWXInu.net]
あ〜ツリーのノードに親ノードポインタ入れてなかったわw
変だと思ったw。
でも対称局面合流させちゃってるから親が一意にならないな。。。
どうしよう。。

130 名前:535 mailto:sage [2017/12/07(木) 20:23:43.87 ID:+QWWXInu.net]
親ポインタは諦めてほかの方法でごまかそうw

131 名前:535 mailto:sage [2017/12/07(木) 21:27:59.88 ID:+QWWXInu.net]
なんか、UCTって初期の探索で間違った結果出ると挽回するの凄い大変なのかね?
それこそ修正に指数的な試行が必要になっているような…

132 名前:535 mailto:sage [2017/12/07(木) 21:35:42.53 ID:+QWWXInu.net]
おっと、なんか挽回してきたw

それはそうとして、メモリが欲しいですねぇ。1TBくらい

133 名前:535 mailto:sage [2017/12/07(木) 22:05:33.83 ID:+QWWXInu.net]
うーん、局所解にずっぽり嵌ったっぽいorz
地力で脱出してくれないかな〜

134 名前:310 mailto:sage [2017/12/07(木) 22:57:44.09 ID:JixNNylG.net]
>>129
大変です(汗



135 名前:535 mailto:sage [2017/12/07(木) 23:14:30.29 ID:+QWWXInu.net]
うおお、メモリ消費がじわじわ増えてきてる。
今晩一晩耐えられるかは微妙なラインだなぁ。

136 名前:535 mailto:sage [2017/12/08(金) 21:44:38.57 ID:rkwPxGLh.net]
あれえ、おかしいな。
かなり学習いい感じで進んだと思ったのに、公式AIに全く歯が立たない。
やっぱ読めてない局面に分岐されると無力なのかなぁ

137 名前:535 mailto:sage [2017/12/08(金) 21:55:53.54 ID:rkwPxGLh.net]
DBだけじゃ無理か。
期待が高かっただけにガックリ。

138 名前:535 mailto:sage [2017/12/08(金) 22:03:23.60 ID:rkwPxGLh.net]
ここでヒューリスティックに走るかDBの更なる肥大化に走るかCNNとかに手を出すか。
分岐点やな。

139 名前:535 mailto:sage [2017/12/09(土) 11:22:20.19 ID:L/Fjd2gI.net]
当たりの石をつがないなぁなぜか。
ロールアウトで当たりの石を抜く確率と当たりの石をつぐ確率増やすか。

140 名前:535 mailto:sage [2017/12/09(土) 19:05:03.36 ID:L/Fjd2gI.net]
キター!初勝利!
最終的にはアルファ碁みたいに100戦100勝したいな。

(
;FF[1]GM[1]SZ[9]
;B[de];W[dg];B[ef];W[cc];B[eg];W[fd]
;B[ec];W[eh];B[ed];W[ch];B[eb];W[fe]
;B[ee];W[ea];B[fa];W[hh];B[da];W[ac]
;B[ea])

141 名前:535 mailto:sage [2017/12/09(土) 20:29:04.06 ID:L/Fjd2gI.net]
酷いバグ発見w
8近傍求める関数間違ってたw

142 名前:名前は開発中のものです。 mailto:sage [2017/12/09(土) 21:36:39.83 ID:L/Fjd2gI.net]
ロールアウトの着手確率いじったら黒番の勝率5%だと…?
何が起こってるんだ…

143 名前:535 mailto:sage [2017/12/09(土) 22:53:03.29 ID:L/Fjd2gI.net]
着手不能点を着手候補にしてたw
だからか。

144 名前:535 mailto:sage [2017/12/10(日) 21:26:16.30 ID:ecwKDJmF.net]
局所解に落ち込むとなかなか抜け出せないのでUCB1のバイアス係数を思いっきり上げてみた。
これで局所解抜けてくれればいいが…



145 名前:310 mailto:sage [2017/12/10(日) 22:11:20.32 ID:3vDAj4sl.net]
MLP版の評価関数がNaN地獄

146 名前:に落ちてた。
何回かやり直したけど、結構簡単にNaN地獄に落ちるので、一旦仕切り直しで、
線形回帰な評価関数に注力する事にしました。

MCTSでテストすると、途中まで割と見知ったオープニングになってきているけど、
評価値自体はあんまり安定していない感じ。まあ、相対関係があっていれば、
絶対値はずれていても関係ないといえば関係ないけど。

しばらく強化学習を続けながら、ちっと別な事を考えてみます。

というか、Alpha Zeroの強化学習の回数が、思ったより少ないなぁと思ったけど、
自分がこれまでにやった回数を概算で考えてみたら、桁が2〜3くらい少なかったorz
やっぱマシンパワーは正義だなぁ。
[]
[ここ壊れてます]

147 名前:535 mailto:sage [2017/12/10(日) 22:51:07.98 ID:ecwKDJmF.net]
今晩一晩ながして局所解抜け出せなかったら別の方法考えなきゃな…
zen+が超絶スペックという噂が流れてますが、デマリークともいわれていて、
本当だったらいいなあと思っている今日この頃。

148 名前:535 mailto:sage [2017/12/11(月) 21:43:28.43 ID:fAOHhVpN.net]
お、局所解抜けてる。
DBがTXTで1GB行っちゃったてへぺろ。

149 名前:535 mailto:sage [2017/12/11(月) 21:49:20.78 ID:fAOHhVpN.net]
お、凄い、いい感じの勝ち方した。
これの凄さが分かってくれる人がどれだけいるかわからないが…

(
;FF[1]GM[1]SZ[9]
;B[ee];W[eg];B[df];W[fd];B[dc];W[dg]
;B[fe];W[ge];B[gd];W[gf];B[fc];W[cd]
;B[ed];W[cc];B[cg];W[ch];B[bg];W[fg]
;B[gc];W[gh];B[bh];W[hh];B[ai];W[ba]
;B[fd])

150 名前:535 mailto:sage [2017/12/11(月) 22:02:11.19 ID:fAOHhVpN.net]
白番でも勝てるかもと思ったがそんなに甘くなかったw

151 名前:535 mailto:sage [2017/12/11(月) 22:20:09.34 ID:fAOHhVpN.net]
うあああ、白番で惜しいところまで行ってバグで不正終了w
とりあえずバグとらなきゃorz

152 名前:535 mailto:sage [2017/12/11(月) 22:31:43.51 ID:fAOHhVpN.net]
うーんまだまだだなぁ。
>>146はたまたまかorz.

153 名前:535 mailto:sage [2017/12/12(火) 19:50:54.43 ID:sU/cgenP.net]
新しいパソコン欲しいな〜
現実的な線でいってもメモリ64GBくらい積みたい。

154 名前:535 mailto:sage [2017/12/12(火) 23:05:56.72 ID:sU/cgenP.net]
DB作成をマルチスレッド化したいな〜
でもMCTSのマルチスレッド化って結構難しんだよな〜



155 名前:310 mailto:sage [2017/12/13(水) 00:38:18.63 ID:oWC3TnL7.net]
MCTSのマルチスレッド化は簡単だと思う…
マルチコンピュータは難しいけど。

強化学習がなんかおかしい感じだったので、記譜学習で上書きしたら
かなり過学習になってしまった。強化学習で戻せばよいかと思ったけど
なんかなかなか戻らないorz

強化学習どっかおかしいのかもしれない。

156 名前:535 mailto:sage [2017/12/13(水) 20:33:14.21 ID:6thdoy0s.net]
えーそうですか?
排他制御とかしたら性能出なさそう

157 名前:535 mailto:sage [2017/12/13(水) 21:57:53.75 ID:3yqEn+ak.net]
ID違うと思うけど535です。
DBがTXTで1.7GBに。
実行時7GB程になりました。
std::mapを別のコレクションに変えたらメモリ使用量減らないかな〜?

158 名前:535 mailto:sage [2017/12/13(水) 22:15:01.22 ID:3yqEn+ak.net]
unordered_mapにしてみたけどあんま変わんないやorz

159 名前:310 mailto:sage [2017/12/14(木) 00:19:28.11 ID:9pKHf6s7.net]
排他制御は、まあ普通にしてますけど、PPLのcritical_sectionでlockしたり、
int型ならatomic<int>していたりで、並列ライブラリにお任せです。

またVirtual Lossという方法があって、ツリーを下っていく時は、先に負けた事にして
降りて行って、末端から戻ってくる時に正しい勝敗に置き換える事で、並列探索
の各スレッドが同じ枝に集中しないようにして、排他がかかる可能性を減らしてます。
あとは、排他制御が必要な領域を細かい単位に分割する事ですかね。

#と思って、ソース見たらVirtual Drawになっていた(汗

あ、そうか。DB化しているって事は、合流ありだし、盤面をキーにしなきゃならないから
そうなるとちょっとややこしいのかな?

自分は合流無視で、各ノードに盤面情報を保持していません。直前着手のみ持って
いて、ノードをたどる時に盤面情報を更新しながら降りていきます。着手もBITBOARD
の64bitは無駄なので、char型にしちゃってます(内部的にはintなんだろうけど)。

160 名前:535 mailto:sage [2017/12/14(木) 21:56:41.20 ID:IX7WwuCO.net]
PPLなんてのがあるんですね。
頭の片隅に入れておきます。

とりあえず、子ノードへのポインタが結構メモリを食ってるような気がします。
これを無くして毎回子局面を計算するようにしてメモリ節約するという手もありますがあんまりやる気がしないなぁ。

161 名前:310 mailto:sage [2017/12/15(金) 10:32:05.09 ID:+7BwQo/4.net]
PPLはVC++専用の並列処理ライブラリです。
Intel TBBとかと中身はほぼ同じだと思います。
かなり抽象されていて、わかりやすいです。
自分はこれなしでは並列化できません(汗


ツリー構造だと子ノードへのポインタが一番大事な情報になっちゃいますね。
その場合ポインターと直前着手があれば盤面情報は不要になります。
一方で、ハッシュテーブル構造だと、子ノードポインタ不要で、キー(と衝突検出)
のために盤面情報が必須になります。

DB化するんならハッシュテーブルとかの方が向いていますよね。

自分はMCTSでツリーを作ったり消したりなので、ツリー型にしています。
shared_ptr使って、不要になったノードはシステム任せで自動的に削除して貰って
います。ハッシュテーブルだと、そう簡単にはいきませんね。

162 名前:310 mailto:sage [2017/12/17(日) 00:21:31.98 ID:qILmYkkQ.net]
ノートPCの冷却用(動作周波数に結構影響する)にUSB扇風機使ってましたが、
結構サイズでかくて持ち運び面倒だし、ノートPCのUSBポートに刺していると
安全装置が働いてしまうので、別途電源取っていました。

で、どうせ強化学習回しておくだけで暇だったので、専用のクーリングファンを
自作してみました。

タカチのアルミケースをぴったりサイズに切り欠いて、USBコネクタと5Vの
クーリングファンをセット。ノートPCに装着するとファンが回って冷却開始。
製作時間1時間程度。材料費は3000円くらい。

雑に作った割にはうまくできた。

163 名前:310 mailto:sage [2017/12/17(日) 02:09:30.95 ID:qILmYkkQ.net]
EigenのSparseMatrixのサイズ制限を変える方法が見つかりました。

現在、簡易版と詳細版の2種類の評価関数を学習していますが、
これにより詳細版を完全にBuroさんモデルにする事ができるように
なりました。

というわけで、詳細版は再度学習し直しです。

簡易版は、多少癖があるようだけど、そこそこまともになっています。
一方、詳細版は何度もやり直し中(汗

164 名前:535 mailto:sage [2017/12/17(日) 19:24:13.96 ID:QB4rs7DZ.net]
DBはメモリの勝負になる。
やはりCNNなどでメモリを圧縮する必要がある。



165 名前:535 mailto:sage [2017/12/17(日) 20:37:59.85 ID:QB4rs7DZ.net]
うお、試行回数0回のデータ削除したらメッチャメモリ使用量減ったw
これで当分DBで押せるww

166 名前:535 mailto:sage [2017/12/18(月) 21:48:20.69 ID:2VaG9uC3.net]
ちょっとづつ良くなってるとは思うけど今一歩だな〜
もうちょっとヒューリスティック入れたほうがいいかな〜

167 名前:310 mailto:sage [2017/12/19(火) 00:06:06.27 ID:jyMFUoq3.net]
気が付いたらTensorFlowがWindows対応になってるね。

New PC欲しい病再発の兆し・・・

168 名前:535 mailto:sage [2017/12/19(火) 22:55:01.32 ID:BAiqwtex.net]
とりあえず、ヒューリスティックのアイディアが2つあるんだが、
下手に手を加えないでDB肥大化で押したほうが、
真の棋理に近づくのかもしれないなどとも思ったり。
悩ましい。

169 名前:535 mailto:sage [2017/12/20(水) 00:23:35.05 ID:S+Iz2Vgy.net]
ヒューリスティック一個仮組みしてみたけど上手くいかないや。
がっかりorz.

170 名前:535 mailto:sage [2017/12/20(水) 22:02:26.64 ID:S+Iz2Vgy.net]
ちなみに仮組したヒューリスティックの内容は
適当な回数プレイアウトして7連が一番多くできたところ付近にしぼって
モンテカルロ木を展開するというもの。

171 名前:535 mailto:sage [2017/12/21(木) 20:13:56.96 ID:TDrdSCuN.net]
序盤はそんなに悪くないんだけど終盤がなぁ
やっぱ9路でも必至、詰めろルーチンいるなぁ

172 名前:535 mailto:sage [2017/12/21(木) 20:14:37.01 ID:TDrdSCuN.net]
でも遅くなるの見えてるからちょっとなぁ。

173 名前:535 mailto:sage [2017/12/22(金) 21:57:55.17 ID:fGil/O5L.net]
なんか落ちるバグがあるな。
そういえば直してなかった。
は〜

174 名前:310 mailto:sage [2017/12/23(土) 09:08:48.88 ID:V4gvcHPy.net]
ノードを完全読み切りまで展開した時に、末端ノードの評価が狂う時があるという
バグが以前ありました。おそらく並列処理による2重更新問題だろうと言う事で、
UCT探索の排他部分を強化して対応していましたが、ここにきてまた発生。
昨日原因が判明しました。まさかの、浮動小数点誤差の問題でした。

スコアの合計値と、試行回数を持っていて、合計値÷試行回数で平均スコアを
計算しているのですが、合計値が3500万を超えたあたりで+2をしてもfloat的
には、その2差を表現できる精度が無くなって、少しづつ合計値が不足していく
状態になっていました。

とりあえずfloatをdoubeにしてみましたが、案の定メモリーを消費する速度が大幅
増加してしまいました。小数点以下1桁もあれば十分なのでintに10倍値を持つ
ようにしてみようかなぁと思っています。



175 名前:310 mailto:sage [2017/12/24(日) 00:22:00.25 ID:XlhSPCGK.net]
intに変更。桁溢れが無ければ、これで大丈夫だと思います。
ついでに速度アップしている分だけ、自己対局の探索時間を短くしました。

評価関数を簡易版・詳細版2種類使っていましたが、詳細版も十分に学習
できたようなので、詳細版一本に絞りました。というか、そろそろ追い抜いた
と思えるようになってきました。とはいえ自己対局の評価値を見ていると
30手目以後はそこそこまともな感じですが、序盤はまだデタラメかなぁ。

完全読み切りですが、30手より前に遡る事がなかなかできません。評価関数
の精度のためか、残り28手あたりから急激に読み切り時間がかかるようになり
ます。評価関数の精度が悪いのでオーダリングが正しくできていないからでは
無いかと想像しています。強化学習で補えるかと思っていますが、まだまだの
ようです。

現在、記譜学習は完全読み切りができている盤面しか使用していませんが、
せめてMCTS探索が始まって以後の盤面も学習に使用してみようか悩み中。

これ以上の精度を求めると、やはりDLに行かざるを得ないですね。
今の探索でもツリーがメモリー内に収まるギリギリに係数を設定しているので
探索延長が起きるとあっという間にスワップ開始になってしまいます。
というわけで大きなメモリーが欲しい今日この頃です。

176 名前:535 mailto:sage [2017/12/25(月) 21:28:02.81 ID:iTZFwLsg.net]
すっごい微妙な駆け引きができるようになって会心の勝利!
と思いきや勝利目前でバグが出てパス2回した後エラーはいて落ちたorz
くそくそくそくそ!
いい加減直さなきゃだけど再現性低いからバグ潰すの難しいんだよなぁ
(
;FF[1]GM[1]SZ[9]
;B[ee];W[dc];B[de];W[ce];B[ge];W[df]
;B[hc];W[fg];B[gd];W[gf];B[cf];W[eg]
;B[gg];W[gh];B[cd];W[fe];B[fd];W[dd]
;B[ff];W[hg];B[be];W[cg];B[];W[gg]
;B[];W[dg])

177 名前:535 mailto:sage [2017/12/26(火) 21:57:37.38 ID:vTaELiqs.net]
勝利が目前に近づくとパスする。
マジ原因がわからんorzorzorz
ログでも仕込むか?

178 名前:535 mailto:sage [2017/12/26(火) 22:08:58.18 ID:vTaELiqs.net]
石を取って必勝形になる形だとパスするのか?
条件絞り込みがムズイ。
とりあえず、ログかなぁ?

179 名前:535 mailto:sage [2017/12/27(水) 20:40:10.55 ID:SLxZ+o46.net]
ログ仕込んだら計ったように再現しなくなったwwww
しばらく対局しまくるしかないか

180 名前:535 mailto:sage [2017/12/27(水) 21:31:50.30 ID:SLxZ+o46.net]
バグの原因わかりました。
ノードに盤面情報登録し忘れてるパスがあった。
これで落ちずに連続対戦できるようになるかな。

181 名前:535 mailto:sage [2017/12/27(水) 22:15:38.79 ID:SLxZ+o46.net]
連続対戦上手く動いてるっぽいです。
今のところ黒番で8勝2敗
かなりいい感じ。

182 名前:535 mailto:sage [2017/12/27(水) 22:57:18.00 ID:SLxZ+o46.net]
黒番で13勝7敗
だいぶ追い上げられたorz
でも連続対戦ちゃんと動いてるようで嬉しい。

183 名前:310 mailto:sage [2017/12/28(木) 00:14:18.22 ID:p44JRClR.net]
やっぱりintでオーバーフローしてた(汗。仕方無いのでint64で。doubleでも
メモリーサイズは一緒だけど、intの方がオーバーフローがわかりやすい。

あと、効果あるかわからないけど、置換表再利用回りをちょっと機能追加。

途中でゲーム終了になった時のスコアカウントですが、FFO計算をチェックに
使っている関係で空白マスを勝者総取りにしています。しかし、学習の時には
空白マスを含めない方が回帰の計算的には良いのではないかなと思い始め
ています。MCTS的には終局判定を入れてあり正しく終局時スコアを返すので、
あくまで学習時だけの話です。

ただ、記譜を経由していればスコア再計算で良いのですが、置換表に溜まって
いる盤面情報では、アメリカルールのスコアを割り出しようが無いという…。

184 名前:535 mailto:sage [2017/12/30(土) 18:56:09.79 ID:YPjfi6f/.net]
実家に帰省しました。
DB作成を流しっぱなしにしてきたので
正月あけどれくらいデータ取れてるか楽しみ



185 名前:名前は開発中のものです。 [2017/12/31(日) 18:54:54.44 ID:/rN76OKL.net]
簡単にお金が稼げる方法興味ある人だけ見てください。

グーグル検索⇒『来島のモノノリウエ』

G32792G4ML

186 名前:535 mailto:sage [2018/01/04(木) 19:09:06.91 ID:mx9U9VEK.net]
ふむう。学習は大分進んだと思うのですが、勝率が思うように上がりませんね。

187 名前:535 mailto:sage [2018/01/04(木) 19:40:03.61 ID:mx9U9VEK.net]
もうちょいヒューリスティック入れるか…

188 名前:535 mailto:sage [2018/01/04(木) 20:05:05.60 ID:mx9U9VEK.net]
leela zeroがもう有段者くらいの実力をつけているらしい。
もういちどleela zeroパクれるか検討するか?
うーむ。

189 名前:310 mailto:sage [2018/01/05(金) 08:48:12.97 ID:DiPIPsFr.net]
年末年始で学習進めてました。
学習が進んだ結果、33〜35手目あたりは正確になり、評価値の精度が上がった
事からオーダリングが機能するようになり、遡りチェックの時間は少しづつ減ってきて
いる感じですが、30〜32手目以前はまだまだばらつきがある感じです。

また、以前から気になっていたのですが、MCTSによる記譜作成では35手目以後で
急に頻繁に手を間違える症状が出ています。記譜を膨らますにはちょうど良いので
放置していましたが、いよいよバグ探しを開始。やっぱり、並列処理の排他が不十分
で、末端ノードまでたどり着いて同じノードに探索が集中した時に、スコアの更新が
ぶつかっておかしな値になる事で、別のノードを探索。また探索が集中し、スコアが
狂い別のノードを探索という感じになっていた模様です。

修正したら大幅スピードダウンしてしまいましたが、精度は上がりました。
速度を持ちなおせるか色々調べましたが、ちょっと厳しい感じです。

190 名前:310 mailto:sage [2018/01/08(月) 02:22:41.34 ID:hx3YjBuD.net]
記譜作成ですが、スコア差が大きなものが少ないため、ランダム着手の所に手を
加えてみましたが、今度は極端になりすぎて、パーフェクト勝敗な記譜が増えて
しまいました。どうしよう。

スピードダウンの影響は結構大きく、探索の終盤で、同じツリーに対する探索が集中
するためか、さらに大きく速度低下し、今度はそちらが原因で終盤間違えるように
なった感じです。あちらを立てればこちらが立たずです。

当初は、こういう問題はなかったはずなので、過去のソースを見直してみるつもり。

191 名前:535 mailto:sage [2018/01/08(月) 19:56:33.71 ID:NhsCP7en.net]
alpha zero を参考にしたプロジェクトがgithubにいくつかあるんですがパクれないか物色中。
オセロやコネクト4もあるみたいですね。

192 名前:310 mailto:sage [2018/01/08(月) 21:48:13.88 ID:hx3YjBuD.net]
ありゃ。すでにあるんだ。
たぶんディープラーニングしてるんだろうなぁ。

そりゃそうと、CPUのバグの影響どうなんでしょね。
あまりに時間がかかるので、ちょっと辛い。

記譜作成やめて、ひたすら強化学習にしてみようかなぁ。
後は細かい精度なので、その方が早い気がしてきた。

193 名前:310 mailto:sage [2018/01/08(月) 22:10:59.88 ID:hx3YjBuD.net]
わかりにくい文章でした。

「あまりに時間がかかるので、ちょっと辛い。」

は、現状の学習方法だとあまりに時間がかかるので、やはり新PC欲しいんだけど、
CPUバグの話が出たので、ちょっと様子見すべきかどうかって事です。

ただ、MCTSで排他待ち合わせによる速度低下が出ているのと、読み切り探索では
並列探索の効果が頭打ちになりやすいので、本当にCPUに投資した効果があるの
かが不安になってきている面もあります。

むむむ。

194 名前:535 mailto:sage [2018/01/08(月) 23:14:47.03 ID:NhsCP7en.net]
並列化で速度出すのは結構難しいですよねぇ
まあメモリ増やすだけでも大分違うかもですが。

python 読めるようになったほうが後々いいんだろうなぁ
でもメンドクサイw



195 名前:535 mailto:sage [2018/01/10(水) 22:40:05.04 ID:woZtUoWo.net]
アルファゼロを参考にしたコネクト4のプロジェクトのパイソンコード読んでるんですが
パイソンということを差し引いても結構難しいんだろうなって感じ

196 名前:535 mailto:sage [2018/01/10(水) 23:42:39.94 ID:woZtUoWo.net]
パイソンだからコード眺めるだけでどうせ動かせないやと諦めるのではなく
実際に実行できるところまでこぎつけるべきだろうか

197 名前:535 mailto:sage [2018/01/10(水) 23:57:49.33 ID:woZtUoWo.net]
うーんこれlinux用なのかなぁ
Cygwinじゃきびしいかなぁ

198 名前:310 mailto:sage [2018/01/11(木) 22:33:43.61 ID:TAFrfVFR.net]
しばらく学習しっぱなしというか、デバッグしながら中途半端に遡り状態で放置した
記譜をガッツリ遡りチェック中なので暇です。で、よからぬ蟲が疼きだして、そろそろ
ボードを作ろうかと思い始めました。ソース消失前は、min-Max版時代のボードが
あったのですが、また作り直しです。

オセロにも碁盤ソフトみたいなのがあれば良いのですが、無いようなので自作を検討。
囲碁のGTPみたいなプロトコルを作って、思考エンジンとGUIを分離できたら良いなぁと。

というわけで、匿名パイプを使ったプロセス間通信について勉強してました。
サンプルコードが10年前のC言語しかなくて解読に苦労しましたがエコーサンプル
を修正しながらテスト。coutとcerrを別パイプに分離して、スレッド管理はPPLにお任せ
にするところまでやって、ようやく納得。

ボードGUI作って、プロトコル決めて、AIエンジン部を対応させてと、まだまだやる事が
ありますが、最終的には自動対局までできたら良いなあと。リソースの限界はあります
が、パラメータで強弱が出そうなので、客観的に評価したい。

というか、GUIの作り方から学習し直しだ…
GUI触りたくないからボードソフト探していたのに、無いから自分で作るという罠。

199 名前:310 mailto:sage [2018/01/11(木) 22:48:49.47 ID:TAFrfVFR.net]
>>191
色々見直して、若干速度は回復しましたが、最初にRollout外した時のびっくりする
ほどの速度は出なくなっちゃいました。ただ、時々瞬間的に速い時があるので、
単純ではないかもしれません。


30手過ぎるとどんどん選択しが狭まっていきますので、ツリーサイズは小さくなって
いきます。ここで、一部の手に探索が集中して、100万探索単位で追加探索したとき
にようやく他の枝を調べ始めるようで、それでもツリーサイズはそれほど大きくならない
ので、メモリーはそれほどボトルネックになっていない感じです。

UCB1のCをいじったり、ポリシーの探索比率をいじったりして様子をみていますが、
あまりフラットに探索すると、正解にたどり着けないまま終盤を迎えてしまうし、
かといってスティープに探索すると、間違いを訂正するまでの追加探索が大量に
必要になるしで、調整が難しいです。そもそも評価関数の精度が十分じゃないと
言う事なんだと思います。

200 名前:535 mailto:sage [2018/01/13(土) 21:35:44.20 ID:yngzNrQg.net]
コネクト4、マルチスレッド化されてるみたいですね。
何か読みにくいと思ったら。

201 名前:535 mailto:sage [2018/01/13(土) 22:44:48.29 ID:yngzNrQg.net]
多分、コードに飛びつくのはまだ時期尚早なんだろな。
もうちょっとAlphaZeroの基本アイディアを理解してからじゃないと。

202 名前:310 mailto:sage [2018/01/14(日) 01:33:25.53 ID:Wql34YtP.net]
コネクト4のGitHUBってどこにありますか?
ちょっと見てみたいかも。

GUI作ろうと思って調べたら、VS2017からなんかだいぶ変わっているみたいです。
MFCは非推奨との事で、ユニバーサルWindowsとかってやつと、あとはCLRですか。
両方試してみようとしたのですが、ユニバーサルWindowsはWindows10じゃないと
ダメっぽい。CLRはなんかエラーで動かない…。他にもC#だと楽だとか色々ある
みたい。MFCは使えるのですが、もう忘れたし、面倒くさかった記憶しかない(汗
C#で作るって手もあるみたい。

とりあえずC#を勉強してみようかなぁというところです。
脱線しすぎだなぁ。

203 名前:535 mailto:sage [2018/01/14(日) 17:46:25.82 ID:NeYy2Zy+.net]
https://github.com/Zeta36/connect4-alpha-zero
これです

204 名前:名前は開発中のものです。 [2018/01/15(月) 19:10:16.04 ID:SOjHonZe.net]
>>310
オセロ用の確立された GUI はありませんが、
nboard
www.orbanova.com/nboard/
xboard / winboard (alien edition)
hgm.nubati.net/alien.html
Othello Engine Protocol (cassio)
cassio.free.fr/engine-protocol.htm
Edax はいずれもサポートしているので、プロトコルは
ソースでも見られます。



205 名前:535 mailto:sage [2018/01/15(月) 22:46:04.01 ID:iBxpq5YC.net]
310さんと私以外の書き込みがあるとは珍しいですね。
実はROMも意外といるんだろうか

206 名前:310 mailto:sage [2018/01/16(火) 01:56:04.23 ID:8d/ib1bw.net]
>>200
どもです。ダウンロードしてみました。
酔っぱらって帰ってきたところなので、明日以後見てみます。

>>201
ありがとうございます。
cassioはmin-Max前提みたいですね。
nboardとxboardは明日以後見てみます。

とはいえ、もうすでに作り始めてしまいました(汗
c#はVBみたいな感じですね。10年くらいVBも触っていないので、VB自体も
昔とはだいぶ違うんだと思いますが。

まずは匿名パイプでのやり取りまで確認できました。
色々なソースのつぎはぎでわけわからんけど、何とかC++とAPIで作ったサーバ
側と同じ動作するものが動いています。

207 名前:535 mailto:sage [2018/01/18(木) 00:27:09.66 ID:+dGVWc2f.net]
GitHubでウインドウズでも簡単にビルドできそうなAlphaZeroクローンを物色中。

208 名前:201 [2018/01/19(金) 19:49:16.63 ID:nx2VVS4x.net]
ところで、
Learning to Play Othello with Deep Neural Networks
https://arxiv.org/abs/1711.06583
はチェックされていますか?

209 名前:310 mailto:sage [2018/01/20(土) 13:01:59.38 ID:Zq3gts8j.net]
>>205
ありがとうございます。
さっそくダウンロードしました。

210 名前:535 mailto:sage [2018/01/20(土) 23:55:57.24 ID:1Kz+zB3+.net]
いろいろ試してみてるけどスキルが足りなくてどれもうまくいかないデスネ。
今これ見てます。
https://github.com/adepierre/Caffe_AlphaZero

211 名前:535 mailto:sage [2018/01/21(日) 00:31:51.93 ID:qH0IRvSF.net]
ん〜なんかアンチウイルスソフトが警告だしてきたorz
どうしようかな…

212 名前:535 mailto:sage [2018/01/21(日) 23:00:34.14 ID:qH0IRvSF.net]
gflagsとかglogとかいうのが必要らしいんだが
アンチウィルスソフトが勝手に何か裏で削除してるらしく
うまくmakeできないorz
なんなんだこれは?

213 名前:535 mailto:sage [2018/01/25(木) 20:47:17.06 ID:deBVwh8E.net]
モチベ保てなくてガッツリサボリ中w
仕事が忙しいのもあるけど

214 名前:310 mailto:sage [2018/01/27(土) 00:56:40.42 ID:0QPAoXtC.net]
自分もGUIでモチベ保てず、がっつりさぼり中。

技術的に難しそうな事は気合入るんだけど、どっちが黒番とかのラジオボタン
をどうしようかとか考え出すと、思考が止まってしまう(汗

一つの項目で諦めがつくまでに3日づつかかっていますorz



215 名前:535 mailto:sage [2018/01/27(土) 23:18:12.98 ID:EzLPwnOa.net]
postd.cc/alphago-zero-how-and-why-it-works/
これ読んでます。
とりあえず、一旦コードから離れて基礎知識を充実させる方向で。

216 名前:310 mailto:sage [2018/01/28(日) 17:18:05.66 ID:0oeW9Kee.net]
GUIのパスの処理を真剣にチェックしだしたら、特定のケースで動作が
おかしいので、丸々一晩デバッグしていました。ケースは特定できてた
のですが、ぱっと見まったく原因がわからず。

C#はオブジェクトを代入すると参照になるのでした。やられた。
やっぱCというのは名前だけですね。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<260KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef