Google Colaboratoryが便利
最近、Google Colaboratoryがちょっと気になっていたのですが、タダケン (id:tadaken3)さんの以下記事に分かりやすく使い方が書いてあったのをきっかけに試して見ました。
結論から言うと、これ良いですね。Google Colaboratoryには以下の特徴(利点)があります。
- ローカルPCに必要なのはブラウザ(Google Chrome)のみ
- クラウド上にPython環境がありPython2/3 両方使える
- 機械学習に必要なライブラリは、ある程度プリインストールされている(numpy, matplotlib, TensorFlow等)
- 必要なライブラリは
!pip install
でインストールできる - 日本語フォントも(ちょっと工夫すれば)使える
- 無料で使える。なんとGPUも12時間分を無料で使える!
これ死角無さすぎでは…Pythonって環境構築が面倒臭いなと感じることや、初心者には少しハードル高いなと思うことが多いですし、初心者にも上級者の方にも便利だと思います。
Google Colaboratoryを使って機械学習を試してみた
ツイート情報の可視化
まずは、タダケンさんが、以下のような丁寧な記事も書いていたので、早速私も真似してみることにしました。
ただ、そのまま真似するのも芸がないので、タダケンさんのツイート数の分析に加えて、以前試した「機械学習手法を用いてブログの文章を分析・可視化(テキストマイニング)」を試して見ることにしました。果たして、Google Colaboratory上で動くのか?
結果的に書くと全部できてしまいました。
以前やったことなので、詳細の分析は割愛します。
ツイート数の可視化、右肩上がりですね
Wordcloudによる可視化。よく見るやつですね
Word2Vecによる可視化
ほとんど詰まらずに、簡単にGoogle Colaboratoryで実行することができました。
データのアップロードやダウンロードに関しては、タダケンさんの記事に書いてある通りです(感謝)。
wordcloudとか、インストールできるのだろうかと思ったら
!pip install wordcloud
で一発でした。
日本語フォントも、調べたらなんとapt-get
で入れられるとのこと、以下で入りました(リスタートが必要)。
!apt-get -y install fonts-ipafont-gothic
探って見たら/etc/debian_version
があったので、Debianみたいですね。
!cat /etc/debian_version stretch/sid
とうわけで、今回試してみたJupyter Notebook形式のファイルを共有してみました。こうやって簡単に共有できるのも、便利な点ですね。
Google Chromeで上記にアクセスすれば、今回使用したコードが見れるはずです。ブラウザ上で、上記ファイルを上から順に実行していけば、誰でも自分のツイートを使った分析が簡単にできちゃいます(多分)。
機械学習の勉強にも最適かも
Google Colaboratoryは、環境構築が不要なので、初学者の学習環境としても最適かもしれませんね。このブログでも、以下のような機械学習の実践的なチュートリアルを紹介しました。
ただ、これらを実行するための環境構築で詰まっている人も正直多いのじゃないかと思います。Google Colaboratoryなら、ブラウザさえあれば、上記のチュートリアルも比較的楽に動かすことができるのではないかなと思います(もちろん、1部は追加でパッケージのインストールも必要ですが、0からよりは随分楽かと思います)。
そして、こういった学習環境を、完全にセットアップされた状態で提供してくれているのが、Aidemyさんです。初学者の教育には、本当に最適だと思いま。3月まで無料なので、試してない方は今のうちです(別にAidemyさんの回し者ではないので、無理しなくて試さなくても大丈夫ですw)
といっても、Aidemyさんの環境は学習プログラムに沿ったこと以外はできないので、自分のやりたいことにステップアップする場合、Google Colaboratoryというのは、スムーズに移行するよい環境と言えるかもしれません。
まとめ
Google Colaboratoryを使って、Pythonの機械学習をして見ました。ローカルでの環境構築不要で、簡単にPythonのプログラムを試せるので本当に良いですね。
ちなみに、今回の記事を書いたきっかけですが、実は以下記事で id:jastaway03 私のブログ記事と同じことをしようとして環境構築に10時間かかったということを書かれていたからです。
初心者で10時間で環境構築できたなら十分かなとも思うのですが、環境設定の部分はGoogle Colaboratory使えばかなり楽にできるので、最初はこういうものを使った方が、初学者の方には重要な部分に早くフォーカスできてよいのかなと思いました。多分、Google Colaboratory使えば、初心者の方でも1時間かからずに動かすことができるのじゃないかと思います(ある程度の知識は必要ですが)。
そして、Google Colaboratory。TensorFlowもKerasもプリインストールされていますし、Chainerも(pip installすれば)使えるので、ディープラーニングにも活用できそうです。なんとGPUも12時間使用無料らしいですし。一体どうなっているのでしょう…
GPUの使い方も含めた、Google Colaboratoryの使い方は、以下のid:ueponx さんの記事が詳しいので、興味湧いたけど使い方がわからないという人は、以下の記事も合わせて読むと良いと思います。
ただ、逆のことを言うようですが、こういうクラウド環境に完全に囲い込まれたら怖い(クラウドが無いと何にもできないマンになってしまう)なという思いがあるので、個人的にはローカルでもちゃんと環境構築できるようになった上で、こういうサービスを活用していくのが良いのじゃ無いかなと思っています。賢くローカルとクラウドを使い分けて、快適な機械学習ライフを送りましょう!
参考リンク
ドシロウトがGoogle Colaboratoryをさわってみた - Qiita
DataFrameからリストやnumpy.ndarrayへの変換 - Pythonのメモ帳
pandas DataFrame内にNaNありますか? - Qiita
Colaboratoryについて(まとめ) | 粉末@それは風のように (日記)