UbuntuへのCNTKインストールで「E: Package ‘libpng12-0’ has no installation candidate」

Ubuntu 16.xへのCNTKをインストールする場合、install-cntk.shを実行すると次のエラーが発生します。
E: Package ‘libpng12-0’ has no installation candidate

これはlibpng12が標準のUbuntuパッケージには含まれていないためです。次のURL(http://packages.ubuntu.com/xenial/amd64/libpng12-0/download)の指示に従って、/etc/apt/sources.listにdeb http://cz.archive.ubuntu.com/ubuntu xenial main を追記してから、install-cntk.shを実行します。

the Computational Network Toolkit by Microsoft Research(CNTK)のインストール

久しぶりにCNTKを触ってみたら、以前の記事とインストール手順が大分変わっていたのでメモ。以前は必要なランタイムのインストールは手動で行うしかありませんでしたが、インストールスクリプトで自動的に行ってくれるようになっています。

対象OSとなるWindowsは64bit版のみです。CUDAに対応していますが、CUDAに対応したGPGPUを搭載していなくても動作します。

CNTKを動かすにはCUDA7.0が必要になるので、NVIDIAのホームページからCUDA 7.0 (https://developer.nvidia.com/cuda-toolkit-70)をダウンロードしてインストールします。

CNTKのバイナリをhttps://github.com/Microsoft/CNTK/releasesからダウンロードします。GPU版とCPU版が用意されていますが、私が試したときにはGPU版しか置かれていませんでした。GPGPUが無い環境でもCUDA7.0をインストールしていれば、GPU版を動作させることができます。

ダウンロードしたバイナリをC:\local\cntkに展開します。

Powershellを管理者権限で起動して以下のコマンドを実行します。これによりAnaconda3のインストール他、必要な環境の設定をおこなってくれます。

cd c:\local\cntk\Scripts\install\windows
.\install.ps1 -execute

最初に何度かセキュリティ警告が表示されますが、全て「[R]一度だけ実行する」を選択してください。

途中で以下のように選択が表示されるので1を入力してください。

1 - I agree and want to continue
Q - Quit the installation process

最後に以下のように確認が表示されるのでyを入力してください。

Do you want to continue? (y/n)

以上でインストール完了します。

サンプルを実行するにはコマンドプロンプトを開いて、最初に以下のコマンドを実行します。

c:\local\cntk\scripts\cntkpy34.bat

 

Microsoft Cognitive Services API公開

Microsoft Cognitive Services APIが公開されました。Windows 10で追加された画像認識や顔認証、モーション認識、Cortanaの音声認識、自然言語認識、音声合成などのもとになっている各種強力な機能を含む多くのWEB APIが新たに公開されました。ちょっと前まで機械学習に関する知識を身に着け、膨大なサンプルデータと計算資源を自ら用意して計算させなくてはできなかった事が、Web API呼び出しだけで実装できるようになったのは、破壊的に大きな変化ですよ。

しかも試しにちょっと使うだけなら、無料って言う・・・

機械学習でtotoの予測をしてみた(結果)

機械学習でtotoの予測をしてみた

13試合中5試合的中。的中率38%とランダムよりはマシだけど、ランダムと大差ない結果になりました。
totokekka

ランダムと大差ないとかちょっと悔しいので、また学習モデルを検討してみようかな。

機械学習でtotoの予測をしてみた

せっかく学習したのだし多少は実益に・・・・ということで、機械学習(Deep Learning)でtotoの予測を立ててみた。
過去の対戦成績のデータはJ.Leagu Data Siteから頂いた。これだけではつまらないので、気象庁の過去の気象データ・ダウンロードから対戦時の気象情報をダウンロードした。これを元に学習をさせてみる。

チームの構成人員や、それらのパフォーマンスなど入力データを増やすのは疲れるのでやらない。むやみにデータを増やせばよいというものではないし、それらのデータは対戦結果として既にフィードバックされているので問題ないと判断した。

予測結果は次のようになったが、果たして・・・

広島 x G大阪 -> 広島勝
磐田 x 名古屋 -> 名古屋勝
広島 x 川崎F -> 川崎F勝
鳥栖 x 福岡 -> 鳥栖勝
柏 x 浦和 -> 浦和勝
湘南 x 新潟 -> 新潟勝
神戸 x 甲府 -> 神戸勝
横浜FM x 仙台 -> 引分
FC東京 x 大宮 -> FC東京勝
G大阪 x 鹿島 -> G大阪勝
東京V x 札幌 -> 札幌勝
金沢 x 長崎 -> 金沢勝
清水 x 愛媛 -> 引分
山口 x 岡山 -> 引分
熊本 x 松本 -> 引分
群馬 x 岐阜 -> 群馬勝
町田 x C大阪 -> 引分
横浜FC x 讃岐 -> 横浜FC勝
千葉 x 徳島 -> 徳島勝
京都 x 水戸 -> 水戸勝
北九州 x 山形 -> 北九州勝

totokounyuu