TadaoYamaokaの開発日記

個人開発しているスマホアプリや将棋AIの開発ネタを中心に書いていきます。

2019-07-01から1ヶ月間の記事一覧

BERTで日本語の単語埋め込みを試す

京都大学が公開している日本語のWikipediaから学習したBERTのモデルを使って、単語の埋め込みを試した。Googleが公開しているBERTのextract_features.pyを使って、Juman++v2を使って文を分かち書きして入力すると、文中の単語の埋め込みベクトルが得られる。…

Juman++v2をWindowsでビルドする

BERTの日本語Pretrainedモデルを試してみたくなったので、その準備として、Juman++v2のWindowsでのビルドを行った。 ほぼ公式通りなので、あまり記事にする意味はないが手順をメモしておく。Juman++v1はWindowsに対応していなかったが、v2は公式でWindowsに…

将棋AIの進捗 その31(cuDNNによるSENetの推論処理の実装)

dlshogiの10ブロックのWideResnetの自己対局による強化学習を続けていましたが、230サイクルほどでほぼ頭打ちになりました。訓練損失は下がり続けていますが、floodgateの棋譜に対する損失が上昇傾向になっており、技巧2のとの勝利も上がらないため、このモ…

【書籍】将棋AIで学ぶディープラーニングのJupyter Notebookを公開

【書籍】将棋AIで学ぶディープラーニングのJupyter NotebookをGoogle Colabで公開しました。 train_mnist.ipynb(第6章) python-dlshogi.ipynb(第7~12章) Google Colab上で学習を実行して、ssh経由で将棋所から実行できます。ssh経由で実行する方法は、Noteb…

Google Colabに鍵ペアを使用してsshでログインする

Google Colabは、基本的にJupyter Notebookから使用します。しかし、ngrokというサービスを使用することで、sshで接続する方法が知られています。 How can I ssh to google colaboratory VM? - Stack Overflow上記サイトの方法では、sshでログインする際にパ…

学習中と並列で自己対局

先日の日記で、学習中にも自己対局を行うようにしたことを書いたが、現在dlshogiでは自己対局で生成した局面は過去10サイクル分をすべて学習に使うようにしている。 (AlphaZeroのようにサンプリングしないですべての局面を使うのは、Actor-Criticで敗着とな…

WindowsでプロセスにSIGINTを送る

将棋AIの自己対局のプログラムで途中で中断(Ctrl+C)した場合に、それまでに生成した局面を安全にファイルに書き出すためにSIGINTをハンドリングしている。 ただし、今までは、基本的に途中で中断しないで、生成する局面の数を引数として、自己対局完了→学習…

VSCodeでMarkdownの編集

今までMarkdownをテキストエディタで手書きしていましたが、Visual Studio Codeは標準でMarkdownのプレビューに対応しているので、Markdownのエディタとして使い始めた。 拡張機能をインストールすると表のフォーマットも自動で行ってくれる。「Markdown Ext…

【Android開発】実行時のパーミッションリクエスト

先日バージョンアップしたボーカル音程モニターで、起動できないというレビュー(評価★1)が多く付いたので、一旦リバートしました。 段階的な公開で10%にしていたので影響は抑えられましたが、テスト不足と反省しています。手元のテスト機では動作しており…