日記

日記です

0225

これならわかる深層学習入門

 10章の続き。コントラスティブダイバージェンスの最小化、さっぱり式変形を追えず。難しいなぁ。それにしても10章長い……。

将棋ソフト開発

 探索深さを関数に渡すときPLY倍してなくてひどいことになっていた。ひどい。僕の遅いプログラムにしては教師局面の生成が速すぎると思っていたんだよなぁ。これで上手くいってくれればいいんだけど。

競技プログラミング

 ABC014のDを解いた。1時間かけても部分点解法しかわからなかったので解説を見る。LCA……ですか。典型アルゴリズムではあるんだろうなぁ。というかダブリングという概念がかなり重要な気がする。N回操作を施す系のやつをlog2(N)回でできるようにするの、結合則が成り立っていればいいのか? 結局計2時間かけてAC。無駄に二分探索窓を大きくとりすぎていてTLEを何回か出してしまったが、他人の提出を見ずに解説からしっかり実装できたのは良かった。実装力は多少あがっている気がする。

 しかしコンテスト中にこんな問題解ける自信はさっぱりしないぞ。ABCのDもまだまだ全然解けませんねぇ。

 ほぼ毎日午前10時くらいから解き始めるんですが、2時間かかると午前が吹っ飛ぶ。厳しい。

その他

 今日はあまり進捗がないけどまぁ日曜日だしいいかぁという気持ちがある。日曜日は完全にオフにするとかでも良いと思うんですよね。

0224

これならわかる深層学習入門

 10章の続き。制限付きボルツマンマシン、かなり便利なんだな。コントラスティブダイバージェンス法がすごすぎたけどちゃんとした近似なっている理由の数式変形は追い切れなかったのでもう一度戻ってくる必要がありそう。

将棋ソフト開発

 なんとかなるかなぁ。virtualを付けてなかったのでちゃんと継承とオーバーライドができていなかったことが発覚した。絶対気づいてないバグがもっとありそう。厳しい。

競技プログラミング

 ABC013のDを解いた。行列累乗を高速化すれば解けると思い込んでせこせこ実装してみたけど謎のREが出る。何回か提出したところでMLEが起きているのだと気づく。表示がREだからわかりにくいんだけど、vectorでとっているとREになってしまうんですかね。知能がないのでint→boolにすれば大丈夫でしょとか計算せずに改造して提出してやっぱりRE。計算してみたらboolでも明らかにオーバーしている。そうこうしているうちに1時間経ったので諦めて解説を見た。僕は本当に応用力がない。脳みそが付いていないのでは?

その他

 AGCがあるので今日は適当になるかも。この文章が残っていたら雑ということです。

AI vs. 教科書が読めない子どもたち

AI vs. 教科書が読めない子どもたち

 結構面白かった。こんなに中高生の読解力が低いって調査結果はホンマか? とか思ってしまうところがあるけど、まぁいろいろ考えてテストが設計されているっぽいことは伝わってくる。

 微妙にフェミニストっぽい記述があったりよくわからない断定が入るところはあまり好きではなかったかな。新井紀子氏と落合陽一氏は僕の中で判断に困る人のツートップ。

0223

これならわかる深層学習入門

 10章の続き。ボルツマンマシンのところ理論が難しい。いやまぁボルツマンマシン自体というより近似手法の問題かもしれないけど。

将棋ソフト開発

 バグが取れた気がする。後手番の時評価値反転させてなかった……。

競技プログラミング

 ABC012のDを解いた。ワーシャルフロイドやるだけだったので簡単(といってもワーシャルフロイドググらないと書けなかったけど)。13分でAC。

 疑似コードを真似しただけでアルゴリズムの根本を全く理解していないので、時間もあるし蟻本を開いてワーシャルフロイドのページを見る。なるほど、頂点0~kを通っていいときのiからjへの最短路をdp[k][i][j]として、dp[k][i][j] = min(dp[k-1][i][j], dp[k-1][i][k] + dp[k-1][k][j])ということになり、これは同じ配列を使いまわして書けるからdp[i][j] = min(dp[i][j], dp[i][k] + dp[k][j])ということなのか。頭が良い。

 だいたい一個目の添え字が多いけど、dp[i][...]を求めるときにdp[i-1][...]しか参照しないなら上手いこと配列を使い回すことができるよねみたいなの、すぐは真似できなくとも意識はしておきたい。ある程度何か条件があるとは思うんだけど。

その他

 努力家だと思われるのは癪なのでオタク話を増やそう。

 まぁその前に多少言っておくと、僕が「息を吸って吐くように努力ができる人」だったら東大に受かっていたでしょうねぇ。そうじゃないってことはそうじゃないんでしょう。

 別の視点として、僕は自分の理解力とか思考能力に多少自信があるから「努力していれば東大受かってた」とか嘯くわけですが、競技プログラミングとかをやっていると自分は本当に頭が悪いなぁということを何度も感じるわけで、本当は努力してもダメだったのかもしれませんね。努力しなかったからそれすら確認できなくなってしまったわけだけど。

 プライドと実力にギャップがあると苦しくなりやすいと思う。高校受験のあの日だけ実力以上のものが出て、高校3年間は実力以上にプライドをむくむくと育ててしまう期間だった。その分、大学に入ってからの3年間は実力を上げてプライドを下げることに費やすことになったわけだけど。最近ようやくなんかまぁ普通くらいでいいやっていう気持ちになってきましたかね。

 この「ワアワア言う人」を目指したい。

東方

 だるまさんの絵を肴に東方について語ろうシリーズ第3弾。存在は知っているけど名前はわからないキャラクターだ……と思ったらだるまさんがアリスと言ったいたのを見てアリス・マーガトロイドという名前を思い出した。どんなキャラクターかはさっぱり知りません。敵(という言い方でいいのか)なのか味方なのかもわからない。

 そもそもわかる(名前と見た目が一致する)キャラクターが霊夢魔理沙を除いたら、あとはチルノくらいしかいないのでは。

 キャラクターの話はわからないので音楽の話をすると、まぁ知っているのはニコニコ動画などで有名ないくらかの曲と天空璋の曲くらいですか。天空璋では最初の道中曲と、双子? っぽいボスの曲(クレイジーバックダンサーズだっけ)が好きだと思った。音楽を聴くついでにシューティングゲームをプレイするみたいな感覚がある。

Vtuber

 昨夜は月ノ美兎さんの生放送を観ていたので寝るのが遅くなってしまった。この人小学生の頃にいろんな雑草を味見していたとかいう話をしだして意味が分からなかった。モミジは不味いらしい。

 相槌? として「そうそうそう……」って言うのが好き。こういうの観てると口癖とか移ってしまいそうで怖い。僕が「そうそうそう」って言いだしたら誰か止めてくれ。

0222

これならわかる深層学習入門

 今日は下宿先に戻ったりするので忙しかったのであまり読めなかった。

将棋ソフト開発

 自己対局からの学習、評価関数を2つ使えるようになった(多分)。まだバグがある可能性の方が高いとは思う。

 しかし時々なんか固まるなぁ。回しっぱなしで放置できないのはちょっと困る。しかしこれ強化学習で無限に強くなるのでは!? とか思ってしまうな。無限に強くなってくれ。

競技プログラミング

 ABC011のDを解いた。そうか……、僕はこれが解けないのか……。という感じ。1時間かけてもダメだったので解説を見たけど考え方自体は間違っている気がしなくて、しかし解説のやり方で実装したら解けた。意味が分からない。こういうとき本当に自分の頭の悪さを痛感する。なにもわかりません。

 競技プログラミング、なんとなくスキルアップ(この言葉も好きではないが……)に近いもののような気がしていてついやってしまうんですが、本質的にはゲームとかで遊んでいるのと大差ないんですよね。毎日1時間以上ゲームしているので本来ならこれ以外の遊びをやっている余裕はないんでしょうね。

東方

 だるまさんの絵を肴に東方の話をしようシリーズ第2弾。霧雨魔理沙さん、どういうキャラクターなのか一切把握していない。天空でも使ったことないんだ……(初心者なので? 博麗霊夢さんしか使っていない)。

 「博麗霊夢さんと霧雨魔理沙さんの関係性!」というオタクが多い気がする。よくわからないけどそういうことなんだろう。

 片側だけ編んで垂らしている髪型がキュートですよね。ヴィジュアルでは博麗霊夢さんより好きかもしれない。

デレステ

 久しぶりにがっつりやった。知らないうちに城ヶ崎美嘉さんの5話目(!)が解放されていた。感想は特になし。

 美に入り彩を穿つがプレイできるようになっていた。初め聴いたときはちょっと忙しないとか思った気がするけど、まぁ慣れればですね。忙しなさがVOCALOIDの曲っぽい(雑なくくり)とか思ったりもして、最近また自分の中でボカロ曲に回帰するような流れが起きつつあるのでそういうあれもあるのかもしれない。ないのかもしれない。

 イベント曲は別に……という感じですかね。

その他

 日々の進捗を記録していく日記のつもりなのになんかオタク話するところになっていないか? まぁいいや。

0221

これならわかる深層学習入門

 10章の続きを読んでいく。ギブス・サンプリング頭良さそう。話の抽象度がわりと高いので何か上手いこと例を考えてやっていきたいなぁと思っているところ。

将棋ソフト開発

 学習部のバグを取る取る。ちょっと回してみた感じだと上手くいっている気がするけど、わからん。一応損失は吐かせてみてるけど、明確な教師ありでもないからそんなに変化するものなのかなぁ。自己対局させてみて検証するしかないとなると大変な気がする。やっぱり学習用局面生成自体を自己対局の検証にした方が良さそうなんだけど、自己対局で2つの異なる評価関数を使う実装をどうすれば楽にできるか。楽にしようという考え方が間違っているか。

 探索って結局何をしているのかわからなくなってきた。根本的に探索深さを大きくすると強くなるっていう話がよくわからないっちゃよくわからないんですよね。もちろん詰みまで読めていればそれは強いんでしょうが、詰みの関係ない序中盤でも深い方が強いっていうのはちょっと不思議な話にも思える。

競技プログラミング

 ABC010のDを解いた。いやーこれABCの中ではかなり難しい方に入るのでは。1時間考えてもわからなかったので解説を見るが、それでもなかなかパッとは理解できず計2時間13分かけてAC。結局、この人の提出を丸写ししたような感じになってしまったけど……。典型問題ではあるんだろうからこういうの解けなきゃな。

 他の人の提出見てもわりと同じような実装が多くて、みんな写しているのでは? とかちょっと思ったりする。まぁフローのライブラリを整備しているっていうことなんでしょうね。ライブラリを作るのは僕もそろそろ考えなくてはなぁ。

 にしてもとうとうフローの問題にぶち当たったか……。この辺ほとんど知らないのでちゃんと勉強したい。

将棋

 叡王戦・決勝戦のPVが公開されましたね。

 いやぁおしゃれ。ピアノかっこいいなぁ。どちらかというと高見六段持ちだったわけですが、これ観て一気に金井六段も素敵だなぁなどと(ミーハー)。

 1時間の対局が5,6戦目に来るということで、これがどうなるかという感じですね。一日に2局やるらしいというのも含めて面白い試みだと思います。楽しみ。

東方

 唐突にだるまさんの絵を肴に東方の話をする。

 東方は最近Steamで出た、なんだっけ、天空璋? しかやったことないのでよくわからないんですが、このキャラクターは知ってる。主人公的な……、名前が出てこない、博麗霊夢さんか。

 東方の文脈がわからないの、なかなか致命的な問題な気はするんですよね。しかし今からやったところで青年期でやったという文脈を得られるわけではないんですよね。悲しい。

 天空璋、結局一番簡単な難易度ですらノーコンクリアできてないのでもうちょっと頑張ろう。

DDLC

 もうちょっとちゃんとやるべきだったなぁと反省している。うーん、やっぱり上手くゲームをプレイできないという感覚がある。作品をとことんまで味わい尽くせてない。

 ゲームでも本でもアニメでもいいんだけど、鑑賞しているときに焦りがずっとあるから雑な消費になってしまっているんじゃないかという気がする。こんなことしている場合ではないのでは? という焦燥感。

 そんなことをするべきなんだろう。時々は面白い作品に触れないと精神が濁っていくような気がするし、それは必要な時間だ。

 ちゃんと時間を区切ってもっとバランス良くやっていきたいですね。まぁ現実的にはちょっと今余裕がないと言えばないのかもしれないけど。競技プログラミングに毎日1~2時間持っていかれているのが結構厳しいですね。青コーダーになれたらちょっと休止して本読んだりする時間に当てますか。将棋ももっと指したいんだけどなぁ。

その他

 ナンセンス、シュール系のギャグが好きだというところはあるかもしれないなぁ。

 なにをどこに書けばいいのかわからなくなってきたのでまとまりのないブログになった。

0220

これならわかる深層学習入門

 10章のボルツマンマシンのところを読み進める。厳しい。式変形がさっぱりわからないぞ。

将棋ソフト開発

 自己対局から学習できるようにできた。まだ学習式が間違っているかもしれないけど……。とりあえず一晩回してから検証してみますか。

競技プログラミング

 ABC009のDを解いた。1時間考えてもわからなかったので解説を見る。なるほどですね。賢い。

 しかしこの提出ではTLEになるのか……? んん、わからない。累乗の高速化これではダメなのか。whileループでやっていくのと本質的には計算量同じな気がするんだけど。

デレステ

 イベント触ってないのは初めてかもしれない。ぐぬぬ……。

その他

 僕は精神が弱いの勉強をしているときに寂しくなって動画を付けてしまう。最近は月ノ美兎さんの動画を観たり。さすがにVtuberにハマるのは軽薄なオタクっぽすぎて嫌な感じもするけど、これは普通に中の人が面白いのでね。そういうのを売りにするのはVtuberらしくないと言えばらしくないのでそれでいいのかという気持ちもあるけど、まぁそれはそれとして。

 普通に3Dモデルを頑張るみたいな路線の人も好き(ねこます、みゅみゅ、もちひよことか?(敬称略))なんだけど、じゃあ僕も3Dやるかとはならないかな。やっぱり興味の中心はアルゴリズム系だと思う(思っているだけ)。

 僕は声優の方にはあまり興味ないんですが、声優にハマるのもこんな気持ちなんだろうなぁとかちょっと思う。背景で流すなら動画よりラジオの方が良くて、それなら声優ラジオとかどうなんだろうとかちょっと考えることもあるけど、時間に縛られたくないのでいつでも視聴できる形式であってほしくて、ラジオのアーカイブって探し方がよくわからない。

 いやそもそも勉強するときには集中してろって話なんですけどね。競技プログラミングとか将棋ソフト書いてるときはそういうの付けないので、やっぱり勉強は一段興味が落ちる感じがしている。まぁそんなでもやらないよりはマシかなーって。

0219

これならわかる深層学習入門

 10章を読んでいく。物理よりの解説でちょっとよくわからない部分も多い。うぇー厳しい。

将棋ソフト開発

 自己対戦できるようになったので後は学習を書こう。これいちいち局面書きだす必要はあまりない気がするんだけどどうなんだろうなぁ。

競技プログラミング

 ABC008のDを解いた。1時間かけて全探索の部分点解法だけ書いて解説を見る。昨日DPは多少できるようになったとか言ってましたが嘘ですね。なるほどなぁ。こういう風に状態をまとめるのか。

 座標圧縮は実装が面倒そうなのでメモ化再帰をmapでメモすることによりAC。

 他の人の提出を見てたらこういう深いmapが必要な場合にいい感じの書き方を発見した。

 C++の知識が浅いのでこういうの全然知らないんですよね。

その他

 もう2月が終わってしまう……。やっぱり僕はダメだなぁ。