iOSで機械学習の推論をするためにCoreMLを使おうとした時のつらみと回避方法まとめ
iOSで機械学習の機械学習の推論をする場合、Core MLやPytorch Mobileなどの選択肢がありますが、
Apple謹製のCore MLを使ってみようと思う人は多いはずです。
Core MLのメリットとしては
Pytorch MobileはiOS12以上なのに対し、Core MLはiOS11以上をサポートしているでのサポート範囲が広い
Core MLで作ったモデルはiPhoneのスペックに応じて最適化され、高速に実行される
Appleがサポートしているので安心
と言ったところがあります。
ただ、実際使ってみると画像分類などはQiitaにも多数使ってみた的な記事があるのですが、
マイナーなタスクのモデルを使ってみるとつらいところもあったので、まとめてみました。
(この記事自体はどちらかのライブラリを推奨するものではございません。)
続きを読むcaffeベースで配布されているネットワークをdockerで試す、Refinedetを題材に
chainerで作ったDeep Learningモデルのハイパーパラメータチューニングを自動化してみる
ディープラーニングは各層の種類、活性化層の種類、オプティマイザの種類、オプティマイザのハイパーパラメータ、などなどたくさんあり、
手で最適化していくのは大変です。
そんなとき、
1. グリッドサーチ:パラメーターの候補の組み合わせパターンを全て調べる。
2. ランダマイズドサーチ:パラメーターの候補の組み合わせパターンを全て調べる。
3. その他賢いアルゴリズム系のサーチ:ベイジアン最適化、Tree-structured Parzen Estimator Approach(hyperopt)
といった、ものが使えます。
グリッドサーチはハイパーパラメータが少ない機械学習アルゴリズムでは有効ですが、ディープラーニングではあまりおすすめしません。実際には2.か3.を選ぶことになります。
賢い系のアルゴリズムはより有望そうなパラメータを試そうとしてくれます。
今回はhyperoptを使った例を書いてみます。
エッセンスはGpyopt(ベイジアン最適化)などほかのライブラリでも変わりません。
続きを読む
エイプリルフールなので、chainerのGUIクライアントを作った。
GitHub - fukatani/ChainerWing: GUI deep learning IDE based on chainer.
※一応動きます。
こんな感じ。
ぽちぽちやってるとニューラルネットが組みあがります。chainerベースです。
めちゃ機能が少ないですが、今後充実する予定。たぶん。
続きを読む【PFIセミナーまとめ】chainerMNはなぜ速いのか、今後の提供は?
先日このグラフで世界を驚かせたchainerMNの中身の話をchainerMNによる分散学習 - YouTubeでやっています。
chainerは分散ディープラーニングフレームワークとして現在世界最速だそうです。
視聴したのでメモ。おもしろかったです。
語り手はchainerMNの作者秋葉さん(iwiwi)
Top coderで四位、数々のプログラミングコンテストで受賞歴を持つすごい人。
動画を見る限り今までchainerで作っていたモデルをchainerMNに移し替えるのも簡単そうです。
続きを読む