「形態素解析とは?」から始める自然言語処理実践入門をやってみたよの巻
こんにちは
私はハンズオンズという名前の会を主催しています。
世の中に広まってきたけど、仕事では使わないし、全くわからない・・・でも気になる というものをとりあえず触ってみる会です。半日で「Hello Wrold」の先まで行くことを目標にしています。良かったらメンバー登録してください!
ハンズオンズいろんなことやって来てます。
1回目 Docker、
2回目 Deep Learning、
3回目 Unity
そして、4回目は再びChainerを使ったイベントを運営している @hidetomasuoka さんに講師をお願いしてDeep Learning編を開催したので、ブログに書いておきます。
今回行った内容
今回は本当に事前に内容を渡された時は「全然わからない…雰囲気でもわからない…」と思いましたが、なんとかなりました。
形態素解析とは
まず「形態素」とは何なのかと言うと、意味を持つ最小の単位のことでした。
「単語」との違いは、単語は複数の形態素で成り立つところだと思われます。
例えば「子犬」は、形態素ならば「子」/「犬」と分解されますが、単語ならば「子犬」となります。
「形態素解析」の概要が軽くわかったところで、GoogleのJupyter Notebook、Colaboratory(サクッと無料で使えてハンズオンに向いてる)を使って、辞書(Mecab)を入れて、解析結果してみました。
最初はこの画面の通り「な」/「の」/「は」/「ちゃん」/「かわいい」と分解していたのですが、
#handsons 🍎 pic.twitter.com/TId36kezFj
— shokola (@shokolateday) April 7, 2018
「なのはちゃん」が何なのかが登録されている新しいMecabを入れると、ちゃんと「なのは」/「ちゃん」/「かわいい」と解析していました。
Word2Vecとは
Word2Vecとは自然言語処理の手法の1つで、単語をベクトル化することで定量的に扱うことができます。これによって、単語同士の類似度を出したり、単語間での意味の足し算・引き算も可能になります。
「言葉で足し算・引き算てどういうこと…?」と一瞬思いましたが、有名な下の例を聞いてなるほど!
面白いですね。これ。
今回は公開されたばかりのビズリーチさんが公開したものを使って、私は『「ベンチャー企業」+「育児」 -「働き」』と足し算・引き算をしてみたところ、出前サービスの会社(夢の街創造委員会株式会社)が出て来てなるほどな〜と思いました。出前の助けを借りて働くのもいいですね。
#handsons ビズリーチさんが出してるWord2Vec(単語で引き算・足し算が出来る)でやってみたところ、
「ベンチャー企業」+「育児」 -「働き」
の結果はこんなんで、「夢の街創造委員会株式会社」ってなんだ?と思ったら、出前サービスの会社だった。なるほどなー! pic.twitter.com/J6amoeI7IL
— shokola (@shokolateday) April 7, 2018
WEB+DB PRESSにも載ってる
ちなみに今回の内容はWEB+DB PRESS Vol.100に丁寧に書かれていました(講師の @hidetomasuoka さんが所属するレトリバさんの社員の方々が特集記事を書いたとのこと)ので、興味ある方は是非。
次のテーマも見えて来たので、また時間をおいてDeep Learninng編、第3回もやるぞい
ハンズオンズを開催して1年半くらいですが
全くのノープランで4ヶ月に1回くらいの頻度で開催出来てますが、本当に毎回どのテーマも全然知らず、テーマによっては講師のコネもないところからスタートしているのですが、なんとかなるものです。
また、予想外に講師からtakeするだけではない関係が築けるのも発見でした(資料のブラッシュアップがしたい、初心者のつまづきポイントが知りたい等、こちらもgive出来ることがあった)!
全く知らない世界でも、概要やその世界独特の事情を聞くのは楽しい/新鮮だし、世界が広がると言うのは面白いものです。全然知らなかった技術に愛着がもてたりするのも良いです。
将来役に立つかなんて考えていなくて、特に理由なんてなくても学ぶのは楽しい。
ただ受け身だったものの裏の仕組みがほんの少しだけわかると、そこにアンテナが張れる。無駄な学習って本当にないなと実感しています。
講師の方々、参加者の皆様、ありがとうございます。これからもよろしくお願いします。