daruma3940の日記

理解や文章に間違い等あればどんなことでもご指摘お願いします

SDT5を振り返って

なんか需要があるかもしれないと思ったので昔書いたのをおいておく(やっぱやめとこうかな...)

今大会(SDT5)を振り返って書くとすれば短くなる
全然強くならなかったし強くするモチベーションも湧いてこなかった。とりあえず6月にrootstrapがようやく成功してそこからほぼ何もしてこなかった。
いつも使っているi74770kを学習用に当ててしまうと、自分はオンボロPCで作業をしなければならなくなる。遅くてたまらん。あと夏場にマシンを動かすと暖房をつけてるのと同じようなものなので冷房をつけないとやってられず、暖房をつけながら冷房をつけている感じになり電気代が高くなって家族に申し訳ないという気持ちになる。それとスマホゲーム作成が面白くてそちらに注力してしまっていた。さすがに大会前はコード書く意欲が高まったのだがそれは全て研究のコードを書くほうに向かって行ってしまった。
やはり定跡が重要になってきてなんだかおもしろくないなという気持ちなんだけどこれは「スマホなんてくだらん!」と思う老害と同じなんだろうか。
今回もnozomiさんにはお世話になった。1日目の飲み会では色々なことを教わった。寝不足で飲んだので酔いが回りすぎて忘れてしまったことと周りがうるさかったので聞き取れなかったことが多々あったのだけれど覚えているだけでも重要なことを沢山教えてくださった。
とりあえず評価関数をmargeすると強くなるのはPRMLのバイアスバリアンス分解のところで出てきた話で過学習気味な評価パラメータを平均化すればバリアンスが下がるような感じじゃないのかと言ってみたら賛同してもらえたのでよかった。
正則化について話したときにbonanzamethodで次元下げをした評価関数では多くのパラメータに値が入っているのでL2、次元下げをしない評価関数では少しのパラメータにしか値がついていなくてそれらが大きな値をつけなければならない局面があるので弱めのL1を使うと強くなったのかという話をしたときに理由を聞かずに「まあ当たり前だよね」みたいなことを仰られていてすごいなぁと思った。評価関数の初期値についてもこだわられていてそこはあんまり着目していなかったので盲点だった。探索パラメータについて聞いてみたらLMRについての調整だけが本質的と仰られていて確かに僕もLMRについては結構重要だと思っていた(最近はそんなことを思っていたなんて忘れてしまっていたが)がそこまでバッサリ言い切るかと思った。
elmo絞りについて駒組というのはかなり先になって利益が出てくるものであるので、数手先の評価値に近づける方法であるrootstrapでそれをちゃんと評価することはできておらず勝敗を入れることでそれができるようになったのだと思うと理にかなうという話をしたら、負けた側のすべての指し手が悪かったわけではないだろうし逆転負けの場合でもすべての指し手対して咎めてしまうのはどうかとおっしゃっていたがどれが悪手だったのかそう簡単にはわからないしそれを調べるのにもかなりの時間がかかってしまうのでなかなか難しいだろうなという話をした。
やはりnozomiさんから学ぶことはたくさんある。
二日目の飲み会ではPonanzaの大渡さんが少しだけPonanzaの大まかなところを話してくれて興味深かった。まだほかのソフトがやっていないようなことが3つぐらい入っているらしいことと、将棋を指すコードがが一番のメインなところではなくて巨大な自己対局システムの中に将棋を差す機能がちょこっとあるというお話をしていた。そしてそれには億単位の価値があると。FishTestを拡張したようなものなのだろうか。
飲み会で山本さんがこらえきれなくて抑えながらも泣いてるのを見てやはりPonanzaは山本さんの青春そのものなんだなという気持ちになった。
あそこまで全てを犠牲にした努力は僕にはできないなという気持ちになった。やはり皆さんすごいなぁ...
あと大会が終わった後mEssiahさんがtwitterでつぶやいていた、西海枝さんが評価関数の特徴は実は2駒で十分でrootstrapが教師付き学習に近いものなのでアルゴリズムで天井を作っているのではないかとおっしゃっていたという内容もとても興味深い。
あまり注目はされていないがStockfish探索を積まず、独自の学習方法(方策勾配法)であそこまで強いソフトを作れるということは相当すごい。もし僕が将棋ソフトを本気で強くしようと思うなら進むべき道はSeleneさんの方のような気がする。
しかし2駒なぁ...静止探索を重くしたり、王手のかかっている局面は必ず延長して考えたり探索で誘導をしてやれば中盤終盤はそれでいけるかもしれなけど,序盤はそれじゃきつそうという感じがしないでもない
あとdlshogiの山岡さんにVNとPNを最新のAlphagoでは一つにまとめているがあれの利点はそこまで精度が落ちずに高速化できるからなのかと聞いてみたら、どうやら似た概念の物を一つのネットワークで出力すると逆に精度が上がるのだと教えてもらって目から鱗だった。
やはり関連することがらは分けて考えないほうがいいのか...昔杉田さんと実現確率探索について話したときに杉田さんが「複数のよく似た基準をもってしまうのはよくないと思う。評価値を利用するならそれでオーダリングし他の基準を用いないほうが良いのではないか」というお話をされていたのを思い出した。(関係ないかもしれない)
次の大会はどうしよう。このままダラダラと大会に出続けても仕方ないという気持ちが大きい。どうしようなぁ... とりあえずもう一台スペックのいいPCが欲しいがそうするとさらに電気代で迷惑をかけてしまうしなぁ...
短くなるはずが長くなってしまった。終わり。