「PythonではじめるAI(人口知能)実装」ハンズオンを受けてきました。




Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInEmail this to someone

2016/11/5(土)、「PythonではじめるAI(人口知能)実装」という0.5Dayハンズオンセミナーを自社で開催していたので、潜入してきました。目的は明確。

「pepperにPythonで機械学習させたい。」

pepper20161107

この澄んだ眼差しの純真無垢なロボットに機械学習させることは、1年以上前から資料も公開されていることではあります。

できればこんなことをPythonでやってみたい。でもPythonを書いた経験がない…という事で、とりあえず何となくPythonを使って機会学習をさせる手順みたいなものを掴んできました。

セミナー自体は有料だったので、あまり中身に関する事は開示しませんが、公開されている情報の範囲で学んだことをまとめておきます。

1. とりあえずPythonを知る

ドットインストールのPython入門を事前に見ておくように言われたので、素直に受講。

http://dotinstall.com/lessons/basic_python_v2

セミナーは午後からだったので、当日の午前中に2時間位で全24回閲覧完了。さすがはドットインストール。

テンポ早めな講座ではありますが、ハンズオンセミナー内でPythonに関する話は大体理解できたので、基礎作りとしては充分かと思います。

2. 開発環境について知る

ハンズオンセミナーでは「Cloud9」上でPython3を実行しました。

https://c9.io/

ただまぁ、事前の学習環境(MacでPython2.7使いつつAtomでコーディング)でもまだいいかなぁとか。チームでの開発がメインではないので特にコード共有とかないので。

ただ、Anacondaは今後試してみようかなと思ってます。

http://qiita.com/oct_itmt/items/2d066801a7464a676994

3. 線形分離について学ぶ

何気にこの話が、自分にとっては一番理解できてよかった話でした。逆にどれだけ今まで「教師あり学習」を上辺の概念だけで分かった気になっていたかということ。

高卒でもわかる機械学習 (1) 識別関数の前知識

一次関数グラフって、相関関係を考える為だけのものじゃないんですね…。真偽の判定に使える一次関数(識別関数)を機械側で導き出すのが、機械学習であると。

そしてこの「高卒でもわかる機械学習」シリーズは本当に分かりやすいです。

4. ニューロンについて学ぶ

これについてはまぁ過去にウチの部下がまとめたやつを参考に。もしくは、前述の「高卒でもわかる〜」かどちらか。

5. NumPyとChainerを使ってみる

ここまで言語と機械学習の基礎を学びつつ、最後にいよいよPythonで機械学習を始める雰囲気になってきました。多次元配列や行列をサポートするPythonのライブラリ「NumPy」と併せて、機械学習の国産フレームワーク「Chainer」をインストールして使ってみます。

Chainerを使って、AND / OR / NAND / XORの条件を与え、単層と2層パーセプトロンで学習結果を比べてみたり、値を変えて変化を見たり。

4時間半程度のセミナーなので、コードをガリガリ書けるところまでは当然いかないまでも、実装方法をソースで追えたのは中々よい体験だったなと。機械学習を体得するにあたり、他にも気になるワードがいくつかあったのですが、まぁまた自分で試してみながら、1つ1つ咀嚼していこうと思ってます。

http://postd.cc/optimizing-gradient-descent/

本講座は、12月3日に大阪でもあるようなので、ご興味持たれた方はぜひ受講してみてください。

https://www.pasonatech.co.jp/skill_up/event/thanks1203osaka.jsp

 

Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInEmail this to someone