ハンズオンイベント「初心者歓迎!機械学習に挑戦しよう!」で、機械学習がちょっとだけ身近になったよ。

Machine Learning for Beginnersアイキャッチ

eLVさん主催、Machine Learning for Beginners!さん共催のハンズオンイベント、「初心者歓迎!機械学習に挑戦しよう!」(2019年12月14日に開催)に参加してきました!

こんな方にオススメ
◆機械学習、データサイエンス入門者

  • はじめて機械学習、データサイエンスに挑戦する方。
  • 機械学習、データサイエンスに興味あるけど、何から始めたらよいかわからない方。
  • 機械学習、データサイエンスをこれから勉強したい方や勉強中の方。

◆今回のハンズオンの推奨条件
  • 数学の基礎理解
  • pythonの基礎ができている
  • 機械学習に興味がある
  • Googleアカウントを持っている
上記2つだけ!

イベントページより

このイベントに参加した理由

「機械学習に興味はあるけど、Pythonも数学もそんなにわからないし、わたしには遠い存在なんだよね…」と思っていたからです。やってみたいけど、なかなか手が出せなかった。

そんなときに、この超やさしいハンズオンイベントが出てきたので、「これなら、よわよわデータアナリストが参加しても怒られなさそう…!」と思い、参加ボタンを押しました。

(1)環境構築からサポート(1h想定)

とりあえず超初心者向けっぽいから大丈夫だろう、と思い、何も準備していかなかったわたし。PythonはPyQ(オンライン学習サービス)でしか触ったことがないから、自分のMacに環境構築なんてされていない。

ま、イベントページに「環境構築からサポート(1h想定) 」って書いてあるから大丈夫でしょ、なんてのんきに思っていました。

しかし、さっそくイベントがはじまると、「Pythonの環境構築できている人ー? あ、けっこうみんなできていますね」とさらっと流されてしまう。嘘でしょ!

あわててGoogleColaboratoryを開く様子
やばい、何とかしないと…。

あわててGoogle Colaboratoryを開いて、とりあえずPythonを動かせるようにしました。

(2)プログラムの実行に重点(とりあえず、動かしちゃおう)

さっそく機械学習の解説がはじまり、「理論よりも先に感覚で理解しましょう」「とりあえずコピペして動かしてみましょう」ということでスタートしました。

今回は、初心者がとにかくプログラムを動かして機械学習を体験することがメインなので、難しい説明は省略してくださったようです。

当日の流れはこんな感じ。

14:00
開場
麹町駅の近くにある、「CO-CreationLABO」で開催されました。
14:30
開始
5分間
自己紹介タイム
15分ほど
機械学習のおはなし
・機械学習の概要とプログラムの流れをさっと説明
・数学アレルギーの人に配慮して、ハンズオン中には数学の話はあまりしません(スライドには記載あり)
〜16:00
もくもくタイム
・メンターあり
・仲間がそばにいる
16:00〜
自然言語処理のおはなし
17:00
終了

当日説明で使われたQiitaのページは限定公開になっていたので、ここには載せません。

「機械学習ってなに?」「教師あり学習」「教師なし学習」「強化学習」「機械学習ライブラリ:scikit-learn」「ちょっとだけ数学:線形回帰ってなんぞ」…など、機械学習全般について、とてもやさしく解説してもらえました。

今までに聞いたり調べたりしたことがある内容だったものの、改めて勉強できてよかったです。

参考:「機械学習をどこよりもわかりやすく解説! 教師ありなし学習・強化学習だけでなく5つのアルゴリズムも完全理解!」(AINOWさんの記事)


続いて、「ボストンの住宅価格データセットを分析してみよう」「とりあえずグラフにしてみる」「線形回帰してみる」「プロットしてみる」「どのくらい正確なのか:平均二乗誤差、決定係数」…など、コピペ用のプログラムと一緒に流れの説明がありました。

プログラムを1行1行解説していくスタイルではなかったので、中身はよくわかりません。とりあえずこれで”機械学習”というものができることだけはわかりました。

説明中は手を動かさず、説明が終わったら、「じゃあやってみましょう!メンターもいますから、わからないことは聞いてください」という流れでスタートです。

Google Colaboratoryにプログラムをペタペタ貼り付けて、1つずつ実行していって、お手本通りに動かせました。

すごい!これが機械学習!

…で?

わからない様子

もくもくスタイルなので、各自が自由に進めていく感じです。全部貼り付けて実行できたけど、「だから何?」という状態になってしまいました。同じテーブルの人もなんとなくそんな感じです。

「ここからは、プログラムの説明をメンターの人にしてもらうのかな?」と思いましたが、自分がいたテーブルのメンターさんは「自分もよくわからないんですよね〜」と言っていて頼りづらい!

というわけで、自分はプログラミングの経験があるし、自力で1行1行見ていくことにしました。見かねた同じテーブルの参加者(実は初心者ではなくつよつよエンジニアだった)が、他の参加者に解説してあげているのも横で聞きつつ…。

調べて勉強する様子
ここにこういう名前をつけていて…ここはこういう条件でやっていて…

違うデータセットを探してきて、それで同じことをやってみて、「まあ、なんとなく流れはわかったかな」となったところで16時になりました。

(3)若干物足りなかった人用Advanced項目を用意!

もくもくタイム開始から約1時間半経過後、16時くらいから「自然言語処理にも触れてみよう!」ということで次のハンズオンがスタートしました。

登壇者は、g-kさん。(TwitterQiita

ウィキペディアの日本語ページ全量をfasttextで学習させたモデルを使って、「特定の単語に似た単語を見つける」という面白いもの。もう中の仕組みはまったくわかりませんが、「すごーい!」のひとことです。

そのときに紹介されていたQiita「感情分析に用いる極性辞書を自動生成する

その場で実際にやってみようと思ったのですが、会場のWi-fiの調子が悪くなってしまい、できませんでした。

なので、自宅に帰ってからチャレンジ。仕組みはわからないけど楽しー!

自然言語処理とコーヒーに似た言葉

まとめ

今まで自分から遠いものだと思っていた機械学習。それに少しでも手を動かして触れられたのがよかったです! 運営のみなさん、ありがとうございました。

初心者向けにとても簡単にしてもらっていたので、なんとかついていけました。が、やっぱり中身をちゃんと理解しようと思うと、Pythonも数学も統計学もしっかり勉強しないといけないなと強く感じます。

今回とてもよいきっかけになったので、引き続きPython・数学・統計学を勉強して、近いうちに仕事で機械学習を活用できるようになりたいな、なろう!と決めました。頑張ります!