機械学習周りのプログラミング中心。 ポケモンバトルAI本通販中(4/5まで)

【ジュウオウ】ポケモン名っぽい駅名 part03終 Character-level Recurrent Neural Networkによるポケモン名らしさの定量化【一発ネタ】

前回学習させた、ポケモン名を表現するCharacter-level RNNを用いて、ポケモン名っぽい駅名を探します。 select766.hatenablog.com 前回の実験ではCharacter-level RNNを用いてポケモン名っぽい文字列を生成しました。このモデルは、与えられた文字列の自然…

【ガメハチ】ポケモン名っぽい駅名 part02 Character-level Recurrent Neural Networkの学習【一発ネタ】

前回はポケモン名を一部に含む駅名を抽出する単純な実験を行いました。今回は、自然言語処理技術を導入してポケモン名をモデル化します。 select766.hatenablog.com モデルの構造として、Character-level Recurrent Neural Network (Character-level RNN)と…

【ハッサム】ポケモン名っぽい駅名 part01 文字列一致【一発ネタ】

とあるゲーム実況放送にて、「ハッサムというポケモンがいるが、北海道には発寒(はっさむと発音)駅がある」という話題がありました。 ポケモンの名前っぽさとは何か、駅名の中でほかにポケモン名っぽいものがないかが気になったので、自然言語処理の側面か…

技術書典応援祭(技術書典8代替オンラインイベント)頒布予定

技術書典 応援祭は新型コロナウイルス問題で中止となった技術書典8(2020年3月1日)の代替となるオンラインイベントです。2020年3月7日から約1か月間開催されます。 当サークル「ヤマブキ計算所」は技術書典 応援祭へ出展いたしますので、頒布内容をお知らせ…

汎用行動選択モデルの学習 part05 教師あり学習の定性評価【PokéAI】

学習した汎用行動選択モデルの挙動を定性的に確認してみます。 前回の記事で最も精度が高かったモデル(3層、チャンネル数16、バッチ正規化なし)に対しvalidationデータを入力し、モデルの出力(選択した技)および正解データを表示します。正解データはパ…

汎用行動選択モデルの学習 part04 教師あり学習【PokéAI】

前回作成した教師データを用いて、汎用行動選択モデルの学習を試みます。 select766.hatenablog.com 以下のようにバトルの状態を入力とし、適切な行動(技)を選択するモデルを学習することが目標です。 F マタドガス 187/187 ころがる 10まんボルト でん…

汎用行動選択モデルの学習 part03 パーティ固有行動選択モデルを用いた学習データの生成【PokéAI】

任意のパーティを受け取って、バトル中の行動(技)を選択する「汎用行動選択モデル」を学習していきます。 この記事では、モデルの構造を検討するための疑似教師データの作成を考えます。 汎用行動選択モデルではDeep Neural Networkを用いることを考えてい…

汎用行動選択モデルの学習 part02 ポケモン・技のサブセット作成【PokéAI】

任意のパーティを受け取って、バトル中の行動(技)を選択する「汎用行動選択モデル」を学習していきます。 この記事では、学習を容易にするためポケモン・技の数を制限する手法を考えます。 バトルのルールの前提条件は、 ポケモン金銀ルール パーティのポ…

汎用行動選択モデルの学習 part01 構想【PokéAI】

今までポケモンバトル中の行動選択を行うモデルは、パーティごとに別個のパラメータを学習していました。しかし今後の発展を考えるとこの方式は難点があり、あらゆるパーティの行動選択を行える単一のモデルを学習したいと思いました。 昨年8月を最後にイベ…

技術書典→コミックマーケット 出展方法の差分

私は2018年10月に技術書典5で同人誌即売会に初サークル参加した後、2019年4月に技術書典6にもサークル参加、そして先日2019年12月にコミックマーケット97(コミケ)にサークル参加しました。 技術書典とコミケでは勝手が違う部分もあったので、その差分に特…

コミックマーケット97 振り返り(出展側)

当ブログのサークル「ヤマブキ計算所」は2019年12月31日にコミックマーケット97(コミケ)にてポケモンバトルAI本「PokéAI」シリーズを頒布いたしました。 まずは会場でお買い上げくださった方に感謝申し上げます。会場に来られなかった方にも電子版(PDFダウン…

コミックマーケット97 お品書き(4日目南リ36a)【PokéAI】

2019年12月31日のコミックマーケット97での当サークル「ヤマブキ計算所」の頒布予定をお知らせします。 当サークルはコミケには初出展となります。配置は「南リ36a」です。比較的新しい南ホールです。私もまだ地理に慣れていません。 C97お品書き ポケモンバ…

技術書典8 当選しました

2020-02-17: イベントは中止となりました。 2020年2月29日・3月1日に池袋サンシャインシティにて開催される技術書同人誌即売会「技術書典8」に当選しました。サークル名は「ヤマブキ計算所」です。 2日間開催ですが、そのうち2日目となる3月1日に出展します…

コミックマーケット97 入稿完了しました【PokéAI】

コミックマーケット97において新規刊行を目指し執筆しておりましたポケモンAI本の第3巻の入稿が完了いたしました。本が出ます! 頒布場所は火曜日(12月31日) 南3ホール リ―36a「ヤマブキ計算所」です。同人ソフトジャンルとなります。 第3巻は金銀導入編と称…

コミックマーケット97(12月31日)に出展します【PokéAI】

当ブログ筆者の個人サークル「ヤマブキ計算所」は、2019年12月31日に東京ビッグサイトで開催されるコミックマーケット97にサークル参加し、技術書の頒布を行います。 配置は火曜日(31日) 南3ホール リ―36aです。同人ソフトジャンルとなります。 頒布物はポケ…

技術書典5の本を無料化しました

技術書典5で発売した同人誌「PokéAI #1:初代1vs1編」を、発売後1年経過しましたので電子版を無料配布に切り替えました。 BOOTHのページからダウンロードできます。 select766.booth.pm これまでイベントやオンライン販売でお買い上げいただいた方、誠にあり…

ジョウト地方への第一歩【PokéAI】

4月の技術書典6以来多忙でプロジェクトを一時停止していたのですが、再開していきたいと思います。なお、ネタが用意できていないため9月の技術書典7には出展致しません。 今まで初代ポケモンのルールに準拠してAIの開発と実験を行なっていましたが、ポケモン…

第29回世界コンピュータ将棋選手権振り返り【コンピュータ将棋】

私が開発しているコンピュータ将棋AIの「ねね将棋」は2019年5月3日開催の第29回世界コンピュータ将棋選手権に参加しました。 ソースコード・バイナリをこちらで公開しました。 github.com 大会直前と本番をちょっとだけ振り返ります。 数週間前の準備 AWS(ク…

技術書典6 振り返り(出展側)

2019年4月14日、池袋サンシャインシティにて開催された技術書典6にサークル「ヤマブキ計算所」として出展したので、参加記録を書きます。 今回の頒布物はBOOTHでも販売中ですので、会場には来られなかったが興味があるという方は是非ご利用ください。(PDF版…

MCTSでの時間管理【コンピュータ将棋】

ねね将棋では探索アルゴリズムとしてMCTSを採用しているのですが、今まで1手あたりの思考時間は一定でした。 その結果として、飛車先の歩を交換するタイミングなど、有効な手が1つしかない場合でも10秒以上思考してしまって見栄えが悪いです。 明らかな手が…

技術書典6 ヤマブキ計算所(こ35) おしながき

技術書典6での当サークル「ヤマブキ計算所」の頒布物をお知らせします。 技術書典6おしながき 新刊として「PokéAI #2:初代3vs3編」を発行します。ポケモンバトルの戦略を人工知能に考えさせるというテーマで技術開発を行った成果を掲載しています。 第1巻…

「ポケモン」のアクセント記号【PokéAI】

技術書典6向けの本の執筆をつづけているのですが、重大なことに気づきました。 英語版ポケモンの公式ロゴがこちら。公式ページより ポケモン英語公式ロゴ(ロゴ部分だけの大きな画像が公式サイトになかった) ところで、技術書典5で発行した本の表紙の上部が…

CNNの複雑さとnpsと棋力【コンピュータ将棋】

CNN (Deep Learning)ベースの評価関数を使った将棋AIをチューニングするにあたり、難しい点の1つが評価関数の複雑さ(計算量)の調整です。 層やチャンネルの数を増やせば静的評価の精度は上がるものの、計算時間が増加するため探索に組み込んだ時の評価局面…

技術書典6 当選しました

2019年4月14日に開催される技術書オンリーイベント「技術書典6」に当選しました。 サークル名は「ヤマブキ計算所」です。 2019-02-20追記: 配置は「こ35」に決定しました。 前回に引き続き、ポケモンバトルの戦略を人工知能技術を用いて開発する本を頒布す…

最良優先探索ベースのパーティ生成【PokéAI】

以前の記事で、バトルなしにパーティの強さを予測する関数(以下では静的評価関数と呼ぶことにします)を学習しました。今回はこれを山登り法によるパーティ構成の最適化に組み込みます。 select766.hatenablog.com 山登り法でのパーティ構築は次のような手…

パーティ強さの予測モデルに基づくパーティ候補の生成【PokéAI】

以前、パーティ構成のポケモンや技の組み合わせから、バトルなしに強さを予測するモデルを学習しました。 select766.hatenablog.com 今回はこのモデルを使い、ランダムに生成した大量のパーティから強そうなパーティを抽出してみました。 3体構成のパーティ…

3体構成での強化学習【PokéAI】

PokéAIで、従来の1vs1から3vs3バトルへの拡張を進めています。今回は、技を選択する部分の強化学習の仕組みを3vs3に対応させました。 エージェントの入出力の拡張 強化学習におけるエージェントとは、バトルの状態を入力として受け取り、行動を出力する関数…

第29回世界コンピュータ将棋選手権 参加登録しました【コンピュータ将棋】

2019年5月3日開催の第29回世界コンピュータ将棋選手権の暫定チーム一覧が出ています。(1/11時点、シードチームは非表示?) 第29回世界コンピュータ将棋選手権 参加チーム 私が開発している「ねね将棋」も出場登録しました。忘れないようにと最低限の事項を…

GPU1枚でのfloodgate対局と学習の両立【コンピュータ将棋】

12月24日、来年の世界コンピュータ将棋選手権(WCSC29)の募集が開始されました。 ねね将棋もこの大会に向けて徐々にですが改良を続けています。 ねね将棋はDeep Learningベースの評価関数を用いており、その学習にも対局エンジンの探索部からの評価もGPUを必…

2技関係によるパーティ強さの予測(初代全ポケモン参加)【PokéAI】

前回の記事で、山登り法によるパーティの最適化をポケモン3匹のパーティについて実験しました。 select766.hatenablog.com そこで生じた問題の1つは、探索空間が広すぎるためか最適化結果が芳しくないというものでした。 1匹のポケモンの構成パターンが仮に1…