初心者は必ず知っておきたい、TensorFlowの使い方【基本編】 | AIZINE(エーアイジン)
AIとは何か

初心者は必ず知っておきたい、TensorFlowの使い方【基本編】

初心者は必ず知っておきたい、TensorFlowの使い方【基本編】

最近ではAI(人工知能)に対する期待というものはすごく大きくなっていますよね。ですから将来を考えてAI(人工知能)を学ぼうとしている人も増えているでしょう。

そんなAI(人工知能)にもディープラーニングや機械学習などさまざまな手法があり、またそれを簡単に使えるようTensorFlowやChainerなどライブラリになっているものがあります。

ちなみにこのTensorFlowはディープラーニングで利用されるものです。この種のものとしては広く認知されており、AI(人工知能)を学びたい初心者におすすめ。

そこで今回はそんな人に向けてTensorFlowの使い方について説明していきます。

まずはTensorFlowの使い方として、TensorFlowの基本的な知識や特徴を説明します。

また、TensorFlowの使い方としてどのようにしてインストールするのか、TensorFlowで変数を設定する方法、さらに、TensorFlowの使い方がよくわかるチュートリアルや、あわせて理解しておくといい知識を紹介していきましょう。

ぜひ、このTensorFlowの使い方の基本を学び、AI(人工知能)開発の第一歩を踏み出してみませんか。

TensorFlowとは

TensorFlowとは

TensorFlowの使い方について説明する前に、こちらがどのようなものであるのかを簡単に以下で説明していきます。

Googleが2015年に開発した数値解析を高速で行うライブラリである

まず、このTensorFlowとは、あのGoogleが2015年に開発した数値解析を高速で行うライブラリです。
なお、ライブラリとは有用かつ機能的なプログラムの集まりのことで、TensorFlowはプログラミング言語のPython上で動くもの。

ディープラーニングを行う際の定番のライブラリ

そして、これがどのようなシチュエーションで利用されるのかというと、ディープラーニングを行う際に利用されます。
主にプログラミングの実装の際に用いられ、このようなライブラリの中では定番と呼べるものです。

Tensor(テンソル)は多次元配列を表す数学の言葉

ちなみにTensorFlowとは「テンソルフロー」と読みますが、多次元配列を表す「Tensor(テンソル)」という数学の言葉が使われています。
大学レベルの数学の行列という分野で出てくる言葉であり、わからない場合には一度意味などを調べてみるとよいでしょう。

以上が簡単なTensorFlowの説明になります。まとめるとAI(人工知能)開発で世界をリードするGoogleで開発された、ディープラーニングを実装するライブラリがTensorFlow(テンソルフロー)なのです。

これを踏まえて以下ではTensorFlowの特徴を説明していきましょう。

TensorFlowの特徴

TensorFlowの特徴

このディープラーニングを実装するライブラリTensorFlowには以下のような特徴があります。

データフローグラフによって入出力が行われる

まず、TensorFlowはデータフローグラフによって入出力が行われます。こちらは入力値、ノード、エッジで成り立っているもので、これらがボックスと矢印で流れを作り、これによって数値計算を行うものです。

例えば、5×7という計算を行う場合には以下のようなデータフローグラフになります。

入力値5、7 ノード× →エッジ
5、7→「×」→35

このようなデータフローグラフをPythonでプログラミングして、計算していくのがTensorFlowというライブラリの大きな特徴です。

プログラミングを可視化するTensorBoardが搭載されている

次に、TensorFlowにはプログラミングを可視化するTensorBoardが搭載されています。
こちらはプログラミングを行った後にどのようにデータフローグラフができているのかを確認できるものです。これによってプログラミングが適切に行われたのかをコードだけでなく、目視でも確認できます。

この他TensorBoardでは解析結果をグラフにすることなどもできるため、より分かりやすくディープラーニングできるのが特徴なのです。

複数の端末で利用が可能

さらに、TensorFlowは複数の端末で利用が可能。

もちろん、他のライブラリでも複数の端末で利用することはできますが、TensorFlowはその際に大きな強みを持っています。それは端末によってプログラミングを変更しなくても済むという点。
ですので、TensorFlowで実装したディープラーニングを搭載した製品をリリースする際に、手間が少なく済むので多くの企業などで利用されています。以上がTensorFlowの特徴です。

これを踏まえて以下からTensorFlowの使い方の基本として、TensorFlowを使える環境やインストールする方法を紹介してきます。

TensorFlowを使える環境・インストールする方法

TensorFlowを使える環境・インストールする方法

ここでは、TensorFlowの使い方の基本として、TensorFlowを使える環境・インストールする方法を以下で紹介していきましょう。なお、内容はTensorFlow公式に準じています。

ハードウェア要件を満たす

まず、TensorFlowを利用するにはハードウェア要件を満たす必要があります。
基本的にはOSはWindows 7以降、macOS 10.12.6(Sierra)以降である必要が大前提。加えてGPUを利用する場合には、それを利用可能なのか公式から確認してください。

(GPUについてはこちらよりどうぞ)

Pythonが使用できる環境を用意する

次に、Pythonが使用できる環境を用意しましょう。

TensorFlowはPythonのライブラリであるので、Pythonの環境構築が必要です。具体的には以下の3つをインストールしてください。
  • Python3.5〜3.8
  • pip パッケージ マネージャー
  • venv(推奨)

このうちvenvはPythonを仮想環境で扱うもの、わかりやすくするとPC上でオリジナルのPython環境を作りだす方法です。基本的には仮想環境を扱ったほうがTensorFlowは使いやすいので、ぜひこちらをインストールしてください。

TensorFlow 2、CUDAをインストールする

最後に、TensorFlow 2、CUDAなどをインストールしましょう。ちなみにインストールは上記のpip パッケージ マネージャーから行えます。
コマンドについてはどのパッケージをインストールするのかによって変わるので、適切なものを公式から確認してください。

なお、手順はWindowsならコマンドプロンプトを起動し、Pythonインタプリンタを起動して指定のコマンド入力を行えばよいです。

また、GPUを利用する場合にはCUDAなど複数のソフトウェアをインストールする必要があります。こちらも公式より確認してインストールしましょう。

以上がTensorFlowを使える環境・インストールする方法です。これ以外にもTensorFlowはAnacondaというパーケージから導入する方法もありますが、基本的には公式に従って導入してください。

ちなみに以下の方法からTensorFlowを利用する使い方もあります。

Google Colab

こちらはGoogleのアカウントがあれば、ブラウザ上から利用できるものなので良ければ検討してみてください。次の章ではGPUを使用するTensorFlowの使い方で、設定が必要になる変数について説明します。

TensorFlowで変数を設定する方法

TensorFlowで変数を設定する方法

最初にこの環境変数について説明しておくと、こちらはWindowsなどのOSに搭載されている機能です。こちらを登録して呼び出すと変数の値を参照することができます。わかりやすくいうとPC内の通行証のようなもの。

GPUを使用するTensorFlowの使い方では、こちらの設定が必要となるので、以下で簡単に説明してきます。(なお、OSはWindows10を想定)

システムのプロパティに移動して環境変数クリックする

まず、システムのプロパティに移動して環境変数クリックしてください。こちらは「コントロールパネル」、もしくはスタートボタンを右クリックしてシステムを開きます。そして、システムの詳細設定から環境変数をクリックすればよいです。

システム環境変数の新規をクリックする

次に、システム環境変数の新規をクリックしてください。ちなみにユーザー変数ではなく、システム環境変数であることを確認して行いましょう。

環境変数の名前と変数値を入力してOKをクリック

そして、環境変数の名前と変数値を入力してOKをクリックしてください。なお、この際に同様に入力すればよいのかというと、以下のようにしてください。

環境変数の名前 「CUDNN_PATH」
値 「C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0」など(CUDAツールキットをインストールした場所を入力する)

システム環境変数の一覧に入力したものが載っていれば完了

最後に、システム環境変数の一覧に入力したものが載っていれば完了です。

ちなみに以下のコマンドをコマンドプロンプト上で入力して、エラーが出なければ変数が設定できていることを確認できます。

where cudnn64_8.dll

以上がGPUを使用するTensorFlowの使い方で設定が必要になる変数についてです。これらを踏まえて以下ではTensorFlowの使い方がしっかりとわかる、チュートリアルの紹介を行っていきましょう。

TensorFlowをさらに使いこなすには、チュートリアルをチェックしよう

TensorFlowをさらに使いこなすには、チュートリアルをチェックしよう

これまでの内容を実践してTensorFlowの導入を行えたのなら、次からTensorFlowの使い方を学んでいきましょう。実はTensorFlowの公式ではわかりやすく以下の2つのチュートリアルを用意しています。

  1. チュートリアル 入門者向け
  2. チュートリアル エキスパート向け
それぞれを簡単に紹介しておくと1はその名の通り、入門者向けのチュートリアルとなっています。使い方としてはTensorFlowについてや、TensorFlow2に内包されているKerasというライブラリを説明。

これによってディープラーニングで重要なニューラルネットワークの構築方法などを理解できます。サンプルなども豊富なので基礎を理解していないのならこちらからどうぞ。

次に、2は1よりも高度な内容を扱うものであり、専門家向きのチュートリアルとなっています。これまでにディープラーニングなどについて学んだことがあるのなら、こちらから始めるのがよいでしょう。

この他にもチュートリアルではTensorFlowの拡張機能の使い方、TensorFlowのライブラリの使い方などを詳しく説明を行っています。ぜひ、TensorFlowの使い方を学ぶのであれば、一度は目を通しておきましょう。そうすれば効率的にTensorFlowの使い方を理解できます。

 

まとめ

最後に、TensorFlowの使い方を学ぶのなら、あわせて理解しておくとよい以下の知識を紹介していきましょう。

  1. 機械学習など
  2. Python
  3. 数学
まず、1にあるように機械学習などディープラーニングに関する知識を最低限得てから、TensorFlowの使い方を学んだ方がよいです。そうすればチュートリアルに出てくる内容をより理解できます。
また、2にあるようにPythonについても学んでおいて損はないです。こちらに関してもPythonでプログラミングしていく以上、精通しておいたほうがよりみなさんのやりたいようにできます。
さらに、数学の知識も得ておいてください。こちらは高校数学から大学数学までの内容をある程度理解しておく必要があります。具体的には線形代数や行列、確率など。

以上があわせて理解しておくとよい知識についてです。もし、この中でみなさんに足りていないものがあれば、TensorFlowの使い方を学ぶ前、もしくは一緒に学べばより効果的になるでしょう。

ぜひ、以上を参考にしてTensorFlowを使ってみましょう。

【お知らせ】

当メディア(AIZINE)を運営しているAI(人工知能)/DX(デジタルトランスフォーメーション)開発会社お多福ラボでは「福をふりまく」をミッションに、スピード、提案内容、価格、全てにおいて期待を上回り、徹底的な顧客志向で小規模から大規模ソリューションまで幅広く対応しています。

御社の悩みを強みに変える仕組みづくりのお手伝いを致しますので、ぜひご相談ください。

お多福ラボコーポレートサイトへのバナー

トップへ戻る
タイトルとURLをコピーしました