pythonはプログラミング初学者でも比較的とっつきやすいプログラミング言語。
さらに、pythonは今後ますます需要が高まる機械学習(いわゆるAI)系の開発も得意なので、これからプログラミングの学習をはじめるならpythonが絶対おすすめです!
「でも、機械学習(特に深層学習などのAI)なんてレベル高そうだし、自分には関係無いような…。」と思っていませんか?
日々進化しているAIですが、実は「基本」のところは一層簡単に実現できるようになってきています。
そこで今回はpythonの学習者が機械学習をはじめるまでの簡単な手順を紹介したいと思います。
今回紹介する手順は下記の3ステップです。
- Google Colaboratoryによるpython環境の導入
- 深層学習用のライブラリpytorchをインストール
- pytorchのチュートリアルでディープラーニングの学習
pythonではじめる機械学習に必要な準備
これまでに自前のパソコンにpythonをインストールする方法などを紹介してきましたが、いざ機械学習のプログラムを組む場合は、tensorflowやKERAS、Pytorchといった機械学習用のライブラリをインストールする必要があります。
インストールする手順自体は他のライブラリと同様の操作で可能です。webの情報を参考にすればできると思います。
ただし、ディープラーニングなどの深層学習の場合は、コンピュータの処理能力が課題になります。
というのも、深層学習の場合は学習の演算に時間がかかり、GPUが必要になるためです。
GPUとは「Graphics Processing Unit」の略で、3Dグラフィックスなどの画像描写を行う際に必要となる計算処理を行う半導体チップ(プロセッサ)のことで、並列的な計算処理が得意です。
機械学習も3Dグラフィックスの計算で用いる「行列演算」を駆使するためGPUが活躍します。
GPUがなくても、ちょっとしたサンプルプログラムを動かしてみるくらいなら良いのですが、別の手法を試してみようと実行しようとすると、学習がなかなか進まない…。なんてことになってしまいます。
でも、プログラミングの勉強のためにGPUを購入するにはちょっと高価だし、それだけの目的ならもったいないですよね?
Google Colaboratory(Google colab)とは
それでは『機械学習の学習用の環境はどうすればよいか?』ということで、今回おすすめするのが『Google Colaboratory(通称:Google colab)です。
『Google colab』はGoogleが無料で提供している機械学習の教育や研究用の開発環境で、Webブラウザ上でPythonを実行することができます。
『Google colab』を利用するのに必要なものは以下の3点です。
- ネットワーク環境
- ブラウザ(Chrome推奨)
- Googleアカウント
Googleアカウントでログインする必要がありますが、Googleドライブと連携することで、ドライブ上のファイルを Colaboratory 環境で実行したり、ドライブ上のファイルを読み込み、書き出しすることもできるようになります。
Google colabの開発環境
開発環境はJupyter Notebookのようなインターフェースを持っていて、何よりPythonの主要なライブラリがプリインストールされているのが特徴であり、うれしい利点です。
具体的には下記のようなライブラリたちですが、実際にはここでは書ききれない程多くのモジュールがプリインストールされています。
- Numpy(数値計算の関数ライブラリ)
- Pandas(データ操作の関数ライブラリ)
- Matplotlib(グラフ描画の関数ライブラリ)
- Scikit-learn(機械学習の関数ライブラリ)
それともう1点。
冒頭で説明した『GPU』を使用することができるというのが大きなメリットです。また、Googleが自社開発した機械学習に特化したプロセッサ『TPU(Tensor Processing Unit)』を使うことができたりします。
Google colab(ノートブック)の使い方
まずはGoogle Colabサイトへアクセスします。
『ファイル』タブから『ノートブックを新規作成』をクリックすればJupyter Notebookと同じようなnoteが操作できるようになります。
Google colab(GPU)の使い方
GPUの使い方はとっても簡単。
『ランタイム』のタブから『ランタイムのタイプを変更』をクリックします。
すると『ノートブックの設定』というポップアップが立ち上がり『ハードウェア アクセラレータ』を選択することができます。
初期設定では『None』になっていますので、これを『GPU』や『TPU』にするだけで完了です。
Google colabの注意点(90分/12時間ルール)
pythonの初期設定も要らずにGPU環境を無料で利用できたり、と良いことずくめで紹介していますが、1点注意しておくことがあります。
それは、一定時間が経過すると処理が制限されてしまうことです。
具体的には90分、12時間の2つのルールがあります。
- 90分ルール : 何も操作せずに90分放置するとリセット
- 12時間ルール : インスタンスが起動してから12時間経つとリセット
普通に使用している場合、よっぽど問題になることはありませんが、制限時間になると、せっかくアップロードしたファイルが削除されてしまいますので、頭の片隅に覚えておくと良いでしょう。
PyTorchで機械学習を始めてみる
機械学習(特に深層学習)系のライブラリはいくつかありますが、比較的新しくスタンダードになりつつあるのが、フェイスブックが開発・公開する深層学習ライブラリーである『PyTorch』です。
Google Colaboratoryの環境を利用してPyTorchのチュートリアルを試してみるというのが一番手っ取り早く機械学習を試す方法の一つになると思います。
まずは、PyTorchの公式サイトにアクセスします。
『Tutorials』にある『DEEP LEARNING WITH PYTORCH: A 60 MINUTE BLITZ』は基本的なPyTorchの使い方(Tensorの操作方法など)を覚えながら深層学習を試すことができます。
チュートリアルは以下の章立てになっています。
- What is PyTorch?
- Tensors
- Autograd
- Neural Networks
- TRAINING A CLASSIFIER
- ・・・
2のTensors以降は『Run in Google Colab』というGoogle Colab上のノートブックでチュートリアルを実行できるように用意されているので、ポチポチとクリックしていくだけでチュートリアルを進めることができます。
今回の紹介は一旦ここまでです。
5.TRAINING A CLASSIFIERまでたどり着けば、深層学習による画像の分類が行えます。
今回紹介したチュートリアルは英語表記のため、内容を理解するには日本語で解説されているこちらが参考になると思います。
まとめ
今回はpythonで機会学習を勉強する環境としてGoogle colabとPyTorchの始め方を紹介しました。
Google colab上で機械学習用のライブラリであるpytorchを使ったチュートリアルを進めていくだけで深層学習を試してみることができます。
細かい内容についてはわからないことというも多分にあるかもしれませんが、この手の勉強は一度経験してからわからない箇所を調べていくという方が理解しやすいのではと思います。