渋谷駅前で働くデータサイエンティストのブログ

元祖「六本木で働くデータサイエンティスト」です / 道玄坂→銀座→東京→六本木→渋谷駅前

Deep Learningで遊ぶ(1): テニス四大大会データセット(追記あり: 正規化した場合の検証)

MXnet / Kerasが本格的に普及してきたことで、いよいよ「誰でも(割と)気軽にDeep Learningを実践できる」時代になってきましたね、という話を前回の記事では一通りやってみました。

ということで、これからしばらく「気軽に実践できるようになったけど実際問題Deep Learningってどうなん?」というのを色々サンプルデータセットを替えて学習&予測の挙動を見ることで、その実態を体感してみようという技術ネタシリーズをダラダラやってみようかと思います。


フレームワークはMXnet / Kerasどちらでも良いつもりですが、単に自分の環境でのお手軽さを優先して基本的にMXnetで統一しようと思います。リクエストがあればKerasでの実行例も後から追記するようにしますので、どうしてもKerasでどう回すか分からない!という方はコメント欄なりでご一報ください。

追記部分について

非常に重要なポイントが追記部分に含まれている&追記部分に書かれている方が正しいR実行例なので、必ずそちらもご参照ください

続きを読む

KerasをTensorFlowバックエンドで試してみた:「もっと多くの人に機械学習とDeep Learningを」という時代の幕開け

f:id:TJO:20160608131830p:plain
(左:Keras、右:MXnet)

Kaggle Masterの間ではMXnetよりさらに人気なDeep Learningフレームワークというかラッパーが、@氏の手によるKeras。

結構苦心したのですが、ようやく手元のPython環境で走るようになったので、試してみました。なおKerasの概要と全体像についてはid:aidiaryさんが詳細な解説を書いて下さっているので、そちらの方を是非お読み下さい。


追記

Kerasは人気のフレームワークなので、僕なんぞがこんなブログ記事を書く前から素晴らしい紹介記事・スクリプトが幾つもあります。こちらでは参考までに以下のお二方のものをご紹介させていただきます。


Kerasはレゴブロックを組み合わせるかのようにして、簡単にディープラーニングのモデルを作成できる便利なライブラリです。これを使って楽しく開発できるのではないかと思います。

まことにそう思います。


一応こちらでも簡単に解説しておくと、KerasはバックエンドにTensorFlowもしくはTheanoの好きな方を選べば良い、というDeep Learningフレームワークのラッパーです。開発者の@氏とちょっと個人的にやり取りしたことがあるんですが、彼が語っていたのは「Theanoはもはや煩雑過ぎるし、TensorFlowは使いやすいが計算グラフの理解のところが難しくて万人向けではない」というコメント。「出来るだけ多くの人にDeep Learningに触れてもらいたい」というのがその開発理念だそうです。


ちなみに、彼がTwitterで呟いていたのをチラッとご覧になった方もいるかもしれませんが、Kerasドキュメントの日本語化プロジェクトが目下進行中のようです*1。MXnetが英語以外では中国語ドキュメントのみが整備されていて中国語圏で人気が高いことを鑑みるに、いずれKerasも日本人に最も馴染み深いDeep Learningフレームワークの一つになるかもしれませんね。

*1:@氏はそもそも日本での留学経験があるということで、日本でも是非Kerasを広めたいというお話のようです

続きを読む