1. HOME
  2. ブログ
  3. IT技術
  4. Tensorflow の学習環境には Colab が便利!【機械学習】

Tensorflow の学習環境には Colab が便利!【機械学習】

Google Colaboratory(グーグル・コラボレイトリー) とは?

Google Colaboratory(グーグル・コラボレイトリー)とは、 Google が無料で提供している、機械学習の教育、研究を目的とした研究用ツールであり、クラウド上で実行される Jupyter ノートブック環境です。

すでに「Python」や「Jupyter」、「Tensorflow」がインストールされています。

さらに、設定不要で無料で利用でき、コードの記述と実行、解析結果の保存や共有がブラウザ上で行うことが可能です。

「そろそろ、機械学習を始めてみようかな」

機械学習をやってみたいという方は沢山いると思います。

でも、機械学習をはじめるのには、スペックの高いパソコンを用意して、機械学習の環境を構築して…

という大きなハードルがあります。

これでは、躊躇してしまうのが人間というもの。

そこで、今回は、そんな悩みを解決するツールであるGoogle Colaboratory(グーグル・コラボレイトリー)をご紹介します!

(以下、Colab)

ブラウザだけで実行できる!

Chrome や Firefox だけで機械学習の学習ができます。

実際の演算は、Google アカウントごとに用意された専用の仮想マシンで行われます。

そのため、利用者のパソコンにマシンスペックは必要ありません

Google ドライブに保存できる!

Colab のノートブックは、すべて Googleドライブに保存されます。

そのため、Google ドキュメントや Google スプレッドシートのように共有できます。

こちらの記事もオススメ!

Colabのスペックがものすごい

Colabでは、以下のようなスペックのインスタンスが提供されています。

かなりのハイスペックです。

  1. CPU:Intel(R) Xeon(R) CPU @ 2.20GHz x 2 個
  2. GPU:Tesla T4
  3. RAM: 13GB

注意点

しかし、以下のような注意点もありますが、それを補う魅力的なスペックであるということは間違いありません。

  1. 12 時間以上の連続使用が不可能
  2. アイドル状態が 90 分間続くと停止する

機械学習を始めるのに最適!

機械学習をはじめるのに、これほど最適な環境はないと思います。

Colab がどのようなものか確認したい方は、“Colaboratory へようこそ” を開き、触ってみてください。

次の章からは、実際に Colab を触っていきます!

Colab ノートブックの作成

Colab は、ノートブックという単位で管理されます。

新しく機械学習を始める場合、新規にノートブックを作成しましょう。

ノートブックの作成

Colab のノートブックは Google Drive から作成できます。

Google ドライブを開き「新規」→「その他」→「Colaboratory」を選択することで新しいノートブックが作成できます。

【Google ドライブから Colab ノートブックを新規作成】

Colaboratory へようこそ を開き、左上の「ファイル」→「Python 3 の新しいノートブック」からでも新規ノートブックを作成できます。

新しいノートブックを作成した画面は以下のようになります。真っ白のノートブックが広がっています。

ノートブックが作成できたので、触っていきましょう。

Colab 内で実行される Jupyter


まず、Colab 内で動作している Jupyter(ジュピター) について軽く説明します。

Jupyterについて

Colab は Jupyter と呼ばれるソフトウェアでノートブックを実現しています。

Jupyter はノートに記述した Python やその他の言語のコードをノート内で実行できるインタラクティブな環境です。

Jupyter では、テキストの記述コードの記述&実行実行結果の可視化といった機能を提供しています。

実際に書いてみる

Jupyter に  print("Hello World")  を記述した場合、Hello World の文字がノートブック内に出力されます。

数値計算

もちろん、変数を利用して数値計算を行うこともできます。

以下の図では、 1~100 までの値を足しあわせるコードを書いています

「4950」という数値がノートブックに表示されていますが、コレは私が記述したのではなく、ノートブックが Python のコードを実行して、実行結果を表示しています。

このようにノートブックは、 Python の実行環境になるのです。

テキストとコードを混在させることができる

Jupyter は、テキストとコードが混在したノートブックを作成できます。

実行結果を確認しながら、データの分析や解析もできます。

メモを作成しながら作業を進めることもでき、自分自身の作業ログやプロジェクトメンバーとの情報共有に有益なツールです。

Colab で Tensorflow を動かしてみる


Colab では、すでに Tensorflow(テンソルフロー) のライブラリがインストールされています。

Tensorflow を利用する

Tensorflow を利用するには、Jupyter に以下の記述をするだけです。

インポートされたか確認するために、バージョン情報を出力させてみましょう。

Jupyter のコードセルに、以下のように記述してください。

実行してみると、以下の表示になりました。

Tensorflow のバージョン“1.13.1”が実行されていることが確認できます。

GPU も使える

Colab では、 CPU だけのインスタンスだけではなく、GPU のインスタンスも利用できます。

GPU を利用することで計算を早く行うことができます。

重たい処理を行うときは、GPU も有効にしましょう

設定方法は、「ランタイム」→「ランタイムのタイプを変更」→「ランタイプのタイプの変更」→「GPU」を選択することで GPU が有効になります。

【ランタイムの変更】

【GPUを有効化】

GPU に対応した Tensorflow をインストール

GPU がインスタンス内で有効になったので、GPU に対応した Tensorflow をインストールしましょう。(もしかしたら、この処理は切り替えたときに自動的にしてくれているかもしれません)

ノートブックに以下の記述をして、実行してください。

"!"マークがついたコードはシェルコマンドとして扱われます。

"pip" コマンドを実行して "tensorflow-gpu"をインストールしています。

確認

GPU が有効であるか確認するには以下のコードを実行してください。

GPU が認識されていることが確認できると思います。

または、こちらのコードでも確認できます。

実行して、以下のように表示されたら、GPU が認識されています。

‘/device:GPU:0’

GPU が認識されていないときの表示は以下のようになります。

’’

Colab でファイルのアップロード

Colab は、インターネット上の仮想マシンで実行されています。

そのため、所有しているデータを利用するためには一度 Colab にアップロードする必要があります。

この章では以下の方法について解説します。

  1. 直接アップロードする方法
  2. Google Drive を利用してアップロードする方法

ローカルファイルを直接アップロード

Colab に直接ファイルをアップロードするには、以下のコードを Jupyter で実行してください。

ファイルがアップロードされているかは、下記コードを実行すると確認できます。

“sample.csv” をアップロードして、中身を確認する場合、以下のようにします。

コードを書かずに直接アップロード

GUI を利用してファイルをアップロードする方法もあります。

Colab を開くと、画面左に “>” のマークがあると思います。

クリックするとサイドメニューが展開されるので、そこの「ファイル」をクリックすると、現在利用できるファイルを表示したり、ファイルをアップロードできます。

こちらはコードを書くこともなく、操作できるのでわかりやすいと思います。

Google Drive をマウントする

Google Drive を Colab にマウントして利用する方法もあります。

実行すると以下のように表示されて Google アカウントとの連携が求められます。

表示された URL をクリックし、認証すると、認証コードが与えられるので、それを Colab に入力してください。

マウントした結果は以下のコードで確かめられます。

Google Drive のファイルが一覧で表示されるはずです。

以上、ファイルの読み込みでした。

さいごに

今回は、Google が無料で提供している機械学習実行環境 Colab についてご紹介しました。

Colab によって、手軽に機械学習をはじめることができますね。

これから機械学習をはじめようという人には、とてもオススメできるツールといえます。

ぜひぜひ役立ててくださいね!

(株)ライトコードは、WEB・アプリ・ゲーム開発に強い「好きを仕事にするエンジニア集団」です。
機械学習でのシステム開発依頼・お見積もりはこちらまでお願いします。
また、機械学習系エンジニアを積極採用中です!詳しくはこちらをご覧ください。

※現在、多数のお問合せを頂いており、返信に、多少お時間を頂く場合がございます。

こちらの記事もオススメ!

ライトコードよりお知らせ

にゃんこ師匠にゃんこ師匠
システム開発のご相談やご依頼はこちら
ミツオカミツオカ
ライトコードの採用募集はこちら
にゃんこ師匠にゃんこ師匠
社長と一杯飲みながらお話してみたい方はこちら
ミツオカミツオカ
フリーランスエンジニア様の募集はこちら
にゃんこ師匠にゃんこ師匠
その他、お問い合わせはこちら
ミツオカミツオカ
   
お気軽にお問い合わせください!せっかくなので、別の記事もぜひ読んでいって下さいね!

一緒に働いてくれる仲間を募集しております!

ライトコードでは、仲間を募集しております!

当社のモットーは「好きなことを仕事にするエンジニア集団」「エンジニアによるエンジニアのための会社」。エンジニアであるあなたの「やってみたいこと」を全力で応援する会社です。

また、ライトコードは現在、急成長中!だからこそ、あなたにお任せしたいやりがいのあるお仕事は沢山あります。「コアメンバー」として活躍してくれる、あなたからのご応募をお待ちしております!

なお、ご応募の前に、「話しだけ聞いてみたい」「社内の雰囲気を知りたい」という方はこちらをご覧ください。

ライトコードでは一緒に働いていただける方を募集しております!

採用情報はこちら

書いた人はこんな人

ライトコードメディア編集部
ライトコードメディア編集部
「好きなことを仕事にするエンジニア集団」の(株)ライトコードのメディア編集部が書いている記事です。

関連記事

採用情報

\ あの有名サービスに参画!? /

バックエンドエンジニア

\ クリエイティブの最前線 /

フロントエンドエンジニア

\ 世界はお前の手の中に・・・ /

モバイルエンジニア

\ サービスの守り神! /

インフラエンジニア