空飛ぶ気まぐれ雑記帳

主に趣味とかプログラミングについて扱います。

CNTKがガチでクソだったと思ってたらいつの間にかそうでも無くなってた話

はじめに

前回の記事を書いている最中に思い出したのだけれども、CNTKがガチでクソだった話を書こうと思ったらいつの間にかそうでも無くなってた話。

近況と生存報告と人気ページについて - 空飛ぶ気まぐれ雑記帳

そもそもCNTKって

CNTKとはMicrosoft社が提供しているオープンソースディープラーニングのライブラリで、マルチGPU性能が非常に高いことと、複数台のPCで実行可能なことを売りにしているディープラーニングライブラリです。
どれくらいマルチGPU性能が高いかと言うと、そもそもマルチGPUに対応していないTheanoは置いておいて、Tensor FlowやTorch、Caffeの倍近い性能を持つ他、2台のPCに各4基、合計8基のGPUを搭載して計算すると、他のライブラリよりも圧倒的に早いZEってライブラリです。
さらに、Microsoftが出しているだけあって、Windows対応を謳っている数少ないディープラーニングのライブラリでもあります。

github.com

CNTKのどこが糞だったん

これはあくまでもメジャーリリース当時の話です

私も上の説明を見た時はなんて素敵なライブラリなんだと、目を輝かせたものです。
ただ、それも幻影でした。

最初、Readmeとかよく読まず、とりあえず"cmake --build . --target Debug"とかでVisual Studioを起動せずに適当にビルドしようとしてたのですが、どうも成功せず。
とりあえず、slnファイルを開いてVisual Studioからビルドすかと思った矢先。なんとプロジェクト名に括弧書きで「Only Visual Studio 2013」(だったかな)と書かれていたのです。
それで、詳しく調べてみると、なんとこのCNTK、Visual Studio 2013にしか対応していないガチクソだったのです。

だったのですが…

今日、この記事を書こうとgithubを見てみると、最新のバージョンだとVisual Studio 2015に対応しているそうです。

github.com

という訳で一転して、CNTKは神ライブラリかもしれません。
また、暇になったら記事を書くかもしれませんが、、、いつに成ることやら