敬愛してやまない大芸人であるコウメ太夫様が毎日実施されているツイート(#まいにちチクショー)を元に、機械学習初心者がPythonのプログラミングでデータ収集と学習を行い、コウメ太夫様っぽい文章を自動生成してみました。なお、ここから先は敬称を省略させていただきコウメ太夫で統一します。
学習と文章自動生成の成果
まず、コウメ太夫AI化の成果がこちら。生成順序通りに並べています。
コウメ太夫度★1
s」2020/1/2~~~ク ョ ~!~~~~ョー~~~~~~~~チ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
評価:
まだまだ文章ではない。ただ、最初からコウメ太夫っぽさが出ている。さすが機械も分かっている。コウメ太夫のツイートに“ ~ “と”チクショー“と” ! “の登場回数が多いのだと思う。
コウメ太夫度★2
りり~んるり~んでした~。チクショー!! #まいにちチクショー!!た#まいにちチクショ#!!た#まいにちチクショ#!!た#まいにちチクショ#!!た#まいにちチクショ#!!た#まいにちチクショ#!!た#まいにちチクショ#!
評価:
ツイートなので仕方ないが、文章中にハッシュタグが入ってきてしまうことに気づく。そのハッシュタグも含めて学習した文章になっている。綺麗にしたいがここらへんが初心者の限界。
でも、チクショーが多いからコウメ太夫度は高くなってきた。チクショー!!つけとけばコウメ太夫っぽい。けれど、チクショー!!がここまで多いとちょっと怖い。
コウメ太夫度★3
鳥跡を濁さずかと思ったら~、、イイ~でした~。チクショー!! #まいにちチクショー!!た思っいにちチクシ~った~た思っいに~で~ ~てチ~たョー!# #まい~たチクショー!! #まいにちチクショー!!た思っいにちチクシ~
評価:
ここらへんからコウメ太夫かも、という感じになった。多分「~たら・・・チクショー!!」だとコウメ太夫っぽく見えるのだと思う。いわんや・・ときたら否定みたいな。
コウメ太夫度★4
クショーまいやんを口にに大らした~と思っっ思ったら~、~チ~~でした~。チクショー!! #まいにちチクショー!~と思っいにちた~~~~チ~と思イた~~~、した~でした~~、た~~ー!! ~でした~チクシショー!!
まいにめて買ったcd{小梅日記}だった若者が~、{たらこ・たらこ・たらこ}だった}にした人~たら~たウおしれでした~。 クショー!! #まいにちチクショーコ~ハ~はいをにたりり~~んかとてかたら~、し~りラ~イた}~たりル~
評価:
本家がもともと支離滅裂なツイートなのでこのツイートもあり。
コウメ太夫度★5
そのボケはチクショウよ! #まいにちチクショーら~と思ったら~、し~リスでした~。しクショー!! #まいにちチクショーら~と思ったら~、し~リスでした~。しクショー!!
評価:
ここら辺になるともはやコウメ太夫のコピー。そのボケはチクショウよ! し~リスでした~。しクショー!!
カルタ大会ハワイから帰ってきた中島、カツオをウィソノ!って呼ぶ の2本ですマ~。チクショー!! #まいにちチクショーら~て思っいにと、しりリ、けったララしし~メたいイれちおたりタイてハョイっして~でま~~思をイれョー!~
評価:
ここまでくると過剰に学習しすぎたかもって感じなコウメ太夫AI。満足。最後の文章はTVで焦った本家が言ってそう。
処理の流れ
以下の流れでデータ収集→学習・文章生成を行いました。
1:PythonのコーディングはGoogle Colraboratory(コラボラトリー)を使用
2:tweet-scraperライブラリを用いて、ツイートを収集
3:収集したツイート(リスト型)をファイル出力で保存
あとは、こちらのサイトで紹介されていたコードを参考に学習と生成を実行すれば、文章が生成されます。
エンジニアの眠れない夜
https://sleepless-se.net/2018/08/20/python-machine-learning/
すごい勉強になるサイト様です。いつも大変助けていただいております。ありがとうございます。掲載に不都合があれば、お手数ですがご連絡いただけますと幸いです。
感想
このページの機械学習は決してアカデミックな機械学習とは言えないと思う。そこは機械学習の初学者なので温かく見守っていただけると幸いです。
機械学習初心者でもネットで公開されている情報を参考に、なんとか文章を生成するところまでいけました。コードの多くはコピペなので、まだまだ自分の力で出来たとは思いませんが、文章が初めて生成された時は感動でした。
コード一つ一つの意味は、まだ分かりません。どういう仕組みで動いているのかも不明ですが、これから詳しく理解していくと、より良いコウメ太夫AI化が実現できるのかなと思ってわくわくしています。
初めてでも機械学習のプログラミングが出来た理由
もともとIT業界におりました。しかし、プログラマーではありませんでした。エンジニアだったのである程度ITリテラシーはあります。なので、完全初学者ではないです。
ただ、エンジニアの仕事をいろいろしていると、自分がコードを書けないことにコンプレックスを感じるようになり、昨年からプログラミングの勉強をはじめました。流行っているPython、そして、これから伸びる業界であろう機械学習を題材にプログラミングの勉強をはじめました。
本を買ったが挫折。Udemyの動画講座にチェンジ
私も最初は勉強のために本を買いました。しかし、内容がさっぱり頭に入ってこないのであきらめてしまいました。そのあとどうれば簡単に勉強できるのだろうと探した結果、Udemyの動画講座を買いました。
Pythonと機械学習の勉強に役立った講座はこちらの2講座です。
- 【キカガク流】人工知能・機械学習 脱ブラックボックス講座
こちらの講座を使って勉強すると、AI、機械学習とはどういったものなのか概要を理解することができます。Pythonを使って機械学習を始めたい!という初学者は機械学習の概要を掴む教材としてうってつけです。Pythonについても基本的なコードを学べます。
- PythonによるWebスクレイピング~入門編~【PythonによるWebスクレイピング〜入門編〜【業務効率化への第一歩】】
こちらの講座では、スクレイピングがどういったものなのか、すごく簡単に概要を理解することができます。今回ツイートを集めるために使用したデータ収集の概念、考え方について私はこの講座で最初学びました。
初学者は本を買うより、これらの動画を見ながら勉強をした方が早く身に付くと思います。実際にコードを書いている映像とプログラミングの実際の動作が見られるからです。
本の場合、コードがただの文字になってしまので、なかなか意図が読み手に伝わりません。しかし、動画講座の場合、講師の方の説明を聞きながら学べるので、本の時より学習で躓くことが少なかったです。また、書いたコードが実際に動く、その瞬間を見られるというは理解の手助けになります。
Udemyだと、完成されたコードが書いてある教材がダウンロードできるので、ダウンロードした教材をそのままコピーすればそのままコードを動かせます。教材内のコードを組み合わせれば、今回のように機械学習を実践することも可能です。Udemyのお得な買い方はこちら
今後の目標
機械学習の仕組みをあまり知らないけれど、何とか文章を自動生成するところまではできました。実際にコードが動き、結果が出るともっとここをこうしたい!という欲求が出てきました。その欲求が次の勉強に繋がれば良いなと思っています。次は実行したコードの解説について書きます。
大分参考にさせていただいたサイト様
エンジニアの眠れない夜様
https://sleepless-se.net/2018/08/20/python-machine-learning/
こちらは、読むだけで大変勉強になりますので、是非皆様もご覧ください。