ちまたでは、機械学習がブームのようです。
が、、まったく時代についていけていません。
しかし、機械学習、特に自然言語処理に精通した人の採用にかかわる仕事をしている、、、
にもかかわらず、自然言語処理どころか機械学習が全く分からない。
これでは、いけない。ということで
「機械学習をたしなむ学生の皆さんと、ふわっと雑談ができるレベル」
を目指して、2017年正月明けから勉強を始めました。
ちなみに、どんなにキリが悪くても1日3時間まで!と決めています。
- そもそも機械学習に興味関心があるわけではない
- やらなければならない他の仕事がある
- 家事育児が優先
なので、すこしでも無理すると続かないためです。
「AIで世界を変えられる!」
「人工知能で想像もできない未来が、、、」
みたいなご時世の中、ありえないほどの低テンションで淡々と勉強しているわけで
逆に、そういう意識低い系人間はそんなに多くないでしょうから
なにをやったか、そのログをまとめました。
インプット
■オンライン講座
次の動画を見ました。動画は耳からも情報が入るので、新しく始める分野の勉強にはいいかもしれません。
「みんなのAI講座 ゼロからPythonで学ぶ人工知能と機械学習」
機械学習に入る前に、PyCharmのインストールや
数学の基礎やPythonの基礎などもあるので
ほんとうに初めて触る人にはお勧めできます。
NNの基礎や誤差逆伝播法なども解説があります。
私は、ほぼ知っている内容だったので、途中は端折っています。
www.udemy.com
「Coursera Machine-Learning」
機械学習でとても有名なオンライン講座です。
Octaveという言語を使い、機械学習の理論と実装を学べる講座です。
他の人が、素晴らしいブログを書かれているので、内容はそちらで。
数学の基礎知識が
ほぼ無くても受けられるので、数学嫌いな人にはおすすめです。
まだ途中なのですが、地味に進めたいと思います。
www.coursera.org
「アプリケーション開発者のための機械学習実践講座」
機械学習をビジネスでどう活用するか、という一歩進んだ内容の講座です。
私は、まだビジネスで、、、というレベルまで達してないので
もう少し修業を積んでから受けたいと思います。
私の同僚の@icoxfog417 先生が講師です。
www.udemy.com
■読書
続いて、読んで手を動かした本です。
「Pythonによる機械学習入門」
私は、そもそもPythonが苦手なので、まずは苦手意識を克服しようと
Pythonの実装の練習が出来るかなと思って買いました。
機械学習をベースにPythonで実装してみる、という本なので
入門にはおすすめです。半日もかからないです。
shop.ohmsha.co.jp
「ITエンジニアのための機械学習理論入門」
機械学習の理論を数学的な観点から、丁寧に解説されています。
ベストセラーなのは納得です。とても良いです!!
私は機械学習分からない&興味薄めなのですが、
数学は嫌いではないので、そういう方におすすめです。
Amazon CAPTCHAgihyo.jp
「ゼロから作るDeepLearning」
ディープラーニングの入門書です。Pythonでゼロからディープラーニングを作りながら仕組みを勉強できます。
ディープラーニングの基礎や、誤差逆伝播法やCNNなどあります。
数学のかなり易しいレベルまで解説があるので、苦手な人や忘れてしまっている人にはお勧めです。
上記のCourseraの講座もそうですが、偏微分とは?みたいなものもあります。
www.oreilly.co.jp
「TensorFlowで学ぶディープラーニング入門」
こちらのブログで!
dr-asa.hatenablog.com
■講座
「ITエンジニアのための機械学習理論入門」
講師の中井さんとお仕事をさせていただく機会があり、
講座内でDockerを使っていることもあって、サポートとして参加させていただきました。
非常に、分かりやすい!!!講座です。
機械学習の理論の丁寧な丁寧な説明があります。
受講するには、大学1年生レベルの数学の知識と、Pythonのコードが読める必要があります。
が、理系大学を卒業して、なにかしらのプログラミング言語が読み書きできる方であれば
どなたでも大丈夫だと思います。
(逆にそうでない方は、しっかりと予習が必要です)
6月にも講座がある予定で、またサポートをさせていただく予定なので
効率よく機械学習の理論を勉強したい方は、ぜひ。
アウトプット
というのをふまえて、この2か月半での成果です。
■TensorFlow/Magentaの同人誌を書く
TensorFlow/Magentaは、ディープラーニングでアートを生成するプロジェクトです。
このMagentaを使って音楽を生成するしくみやノウハウなどをまとめた
「Signal」というタイトルの同人誌を出します。
NN/RNN/LSTMなどの理論や、実際にMagentaを使って音楽を生成する手順などを約40ページでまとめています。
理論は、共著の@icoxfog417 先生がしっかり書いて、それを私が読んで理解して動かすという感じです。
(想定読者が私になっているので、かなり易しく書かれています)
ご安心ください!私が書いた部分も、彼がきちんと監修してくれているので
ぜんぜん大丈夫なクオリティです!
4/9(日)に秋葉原で開催される「技術書典2」で頒布しますので、ぜひブース「き-03」に!
techbookfest.org
こんなことができます!
www.youtube.com
■マイナビ書籍「機械学習で遊ぼう」の記事連載
これは、機械学習とは何ぞや、、というがっちりした連載ではなく
機械学習をつかったアプリを作ってみよう!というカジュアルな連載なのですが、
初回の記事を寄稿させていただきました。
来月はAndroidアプリ、その次はTensorFlowを使ったなにかを予定しています。
私以外の他の執筆者が、データサイエンス界隈の錚々たるメンバーなので、
記事の内容うんぬんではなく
「たった2か月たらずの勉強で連載を始めてしまうという、メンタルの強さ」
が鍛えられたという、とても大きな成果があったと考えています。
■機械学習で遊んでみた
勉強だけだと飽きるので、サンプルを動かしてみたり
改造して機能追加してみた程度のものをいくつか作ってみました。
TensorFlow/Magentaでアート生成
同人誌では、TensorFlow/Magentaを使って音楽を生成していますが
Magentaはアートも生成できます。
というわけで、私のアイコンを生成してみました。
TensorFlow/Magenta Sample
RaspberryPi3+TensorFlowを使った物体認識
Raspberry Pi3でTensorFlow/Kerasを使った物体認識を試してみました。
学習済みモデルInceptionV3をRaspberryPiで動かしています。
カメラモジュールの精度が悪く、写真そのものが綺麗に取れないんですが、なんとか認識です。
これから
買ったもののまだ読みきれてない本、終わってない講座があるので、
まずはそれをサボらず進めたいと思います。
で、仕事でやっているので
インプットしたものを、少しでもアウトプットしなければいけないわけですが
う~~~~~~~~~~~~ん、難しい。
すでに、データサイエンティストの方がすごい情報を発信しているわけなので。
私は、たまたま数学がそんなに嫌いではなかったのと、ラッキーなことに至近距離に良い先生が2人もいたので
機械学習に入門しよう!という心理的ハードルがそれほど高くなかったわけですが
数学が嫌いな人や、なにから手を付けようという人は、しんどいんじゃないかな~と。
なので、、、、
「機械学習はじめたい人のための大学1年生の数学超入門」みたいな連載を
ゆっくりペースで始めたいな~とおもっています。