スライドショースライドショースライドショー

TensorFlowとは?機械学習に必須のライブラリを分かりやすく紹介

TensorFlowってなんとなく聞いたことはあるけど、

TensorFlowって結局何ができるの?
TensorFlowって需要あるの?

と疑問に思っている方もいるのではないでしょうか。

ここではTensorFlowについて知りたい方やこれから学んで見たいとお考えの方に向けて、「TensorFlowとは何か?」ということを初心者でも分かるようにTensorFlowの基礎の基礎を解説していきます!

興味のある方はぜひご覧になってください!

そもそもTensorFlowとは?

TensorFlow(テンソルフロー)とは、さまざまな機械学習の分野で使用するためのOSS(オープンソフトウェアライブラリ)です。

OSS(オープンソフトウェアライブラリ)とは、著作権を保持している作者のソースコードを学習や変更、配布することが可能なライブラリ(汎用性の高いプログラムをひとまとめにしたもの)となります。

TensorFlowは公式サイトによると、

データフローグラフを使用した数値計算用のオープンソフトウェアライブラリです。グラフのノードは数学的演算を表し、グラフのエッジはそれらの間で伝達される多次元データ配列(テンソル)を表す。 柔軟なアーキテクチャにより、1つのAPIを使用してデスクトップ、サーバー、またはモバイルデバイスの1つ以上のCPUまたはGPUに計算を展開できます。

と、説明されています。機械学習について理解していないと、いまいちピンと来ないかもしれません。

そもそもTensor(テンソル)とは線形的な量を表す概念を一般化したもので、多次元の配列として表現できるものとなります。そのため、”テンソル=多次元配列”と考えて良いでしょう。

より具体的に言えばTensorFlowは多次元のデータ構造を、流れるように処理することができる深層学習(ディープラーニング)を行えるライブラリとなります。

TensorFlowを始めるにあたり、機械学習や深層学習の基礎知識が必要となります。

機械学習や深層学習について知りたい方は以下の記事を参考にしてください。


ディープラーニングとは? 基礎知識から資格取得についてまとめて紹介
更新日 : 2020年5月18日

TensorFlowの歴史

shutterstock_541520356

Google Brainチームにより2015年11月に人工知能が搭載されたエンジンをオープンソースとして公開したのがTensorFlowとなります。

TensorFlowはYouTubeやGoogle翻訳、音声検索などで使用していたDistBeliefを元に、使いやすくさまざまな業務で活用できることを目的に開発が進められました。

そのため、実際のGoogle社内でも業務でTensorFlowは使われています。2019年8月時点での最新版はTensorFlow 2.0 .0版となっており、さまざまな機能が追加されています。

詳細を知りたい方はGoogleが公開しているこちらの動画をご覧ください。(全編英語の動画となっています。)

TensorFlowは今注目されているライブラリ

shutterstock_380869822

TensorFlowはGoogleが開発した機械学習ライブラリということで注目を集めています。人工知能の分野では独走を続けるGoogleのOSSのため、公開されてから数ヶ月でユーザー数が爆発的に増えました。

人工知能(AI)や機械学習の分野はまだまだ発展途上のため、さまざまな分野でTensorFlowを活用したサービスが登場すると予想されます。そのため、今後もTensorFlowユーザーが増えることは間違いないでしょう!

TensorFlowの特徴

tensr_image2
TensorFlowは前述したようにテンソルによる計算を行うライブラリです。

具体的にはニューラルネットと呼ばれる脳機能の特徴を、計算によってシミュレーションすることができる計算ライブラリと思っていただいても良いでしょう。

もちろん基本的な計算処理を行うことも可能です。また、高速で計算を行うためのライブラリも豊富に用意されており、ユーザー数も多いため今後もさまざまな機能が拡張されていくと予想されます。

どのような用途で使われるの?

ここまでの解説で、具体的にどのような用途でTensorFlowが活用できるのか?いまいちピンと来ない方もいるかもしれません。

わかりやすい例では顔認識システムによる監視カメラからのデジタル画像を元に顔を識別し、顔の画像が登録されたデータベースと比較することによる識別を行う技術で利用可能です。

顔認識のアルゴリズムは顔の画像から特徴を抽出することにより、高い精度で識別を行うことができます。また、音声認識技術と呼ばれる人の声をコンピューターに認識させて、話している人を識別したり、文字列に変換する技術でも利用することができます。

音声認識では統計的手法が広く使われており、発話を記録して認識対象の音声データから抽出した特徴と、登録された音声データの特徴を比較して、もっとも近い言語を認識結果として出力します。

そのほかにも、「被写体の認識」「画像検索」「リアルタイム翻訳」「Web検索最適化」などの分野での使用が想定されています。

TensorFlowを導入してみよう!

tensr_image4
TensorFlowは前述したとおり機械学習や深層学習の分野についての理解が必要です。また、TensorFlowを使用するためにはPythonの基礎知識も必要になります。

まずPythonについての基礎学習を行いたい場合は以下の記事を参考にしてください!

TensorFlowのインストール

ここでは、実際にTensorFlowをインストールしてHello Worldを出力してみましょう。

TensorFlowを動かすためには、公式サイトからOS別にTensorFlowをインストールする必要があります。

tensor_install

引用元:TensorFlow https://www.tensorflow.org/install/

Windowsにインストールする場合は、以下の記事で詳しく解説していますので参考にしてください。

Macの場合はコマンドベースでインストールまで可能です。インストールについては以下のページで詳しく解説しています。
https://qiita.com/noookiz/items/043eb77fa60f4896b87a

TensorFlowで「Hello World」を出力してみよう!

インストールできたらTensorFlowの動作確認を実行してみましょう。

ここでは、MacのターミナルからTensorFlowが動作確認ができるか試してみます。

Pythonを起動してインタラクティブシェルから以下のコマンドを実行します。

$ python
>>> import tensorflow as tf
>>> hello = tf.constant('Hello, Hello World!’)
>>> sess = tf.Session()
>>> print(sess.run(hello))

Hello World!が出力されたら成功です!

終了するにはexit()を実行します。

>>> exit()

以下の公式サイトではTensorFlowのチュートリアルが学べますので参考にしてみてください!
https://www.tensorflow.org/tutorials/deep_cnn

TensorFlowの実践的な使い方

ここまでで、TensorFlowの導入から動作確認までうまくいきましたでしょうか?

TensorFlowの実践的な使い方については、以下の記事で詳しく解説していますので参考にしてください。

TensorFlowの求人

tensr_image3

最後に、気になるTensorFlowの求人について、実際にどのような案件があるのか見ていきましょう。

TensorFlowの求人数

有名なビジネスSNSサービスの大手である「Wantedly」でTensorFlowを検索したところ、625件の案件が見つかりました。(2019年8月14日現在)

TensorFlowは登場して間もないですが、既にそこそこの求人数があり、今後も機械学習の分野の求人増に伴い採用する企業も増えてくると予想されます。

TensorFlowの案件例

TensorFlowでは実際にどのような案件があるのでしょうか?求人サイトからTensorFlowの案件の内容をいくつか見ていきましょう。

forkwelljobs

機械学習系の求人で年収が400~1200万となっています。

A-STAR

フリーランス向けの案件で画像 / 動画 識別モデルの開発・精度検証の案件で550,000~750,000円/月額の案件となっています。

a-star_01

コデアル

AIを用いたシステム開発案件で月額38万~80万となっています。

引用元:コデアル https://www.codeal.work/jobs/8403

あなたも1からTensorFlowを学んでみませんか?

TensorFlowの習得には、機械学習と深層学習などの知識も必要なため、難易度は高いと感じる方も多いですよね。しかし、今後発展することが確実視されている人工知能の開発にはTensorFlowの習得は不可欠となります。

初学者にとって難しい内容だからこそ、TensorFlowだけでなく人工知能開発を一挙に習得するためには、プログラミングスクールをおすすめいたします。

弊社侍エンジニア塾には、人工知能開発に特化したAIコースが用意されており、初学者の方でも無理なくTensorFlowやPythonをはじめとした人工知能開発スキルを身につけることができます。

現役エンジニア講師があなたの目的に合わせてカリキュラムを1から組むため、経験者の方であっても、初学者の方であっても、あなたにピッタリのカリキュラムで学習を進めることができるので、効率よく最短距離でスキルを習得できますよ。

でも詳しいことを聞かないと検討できない……。

なかにはこのようにお考えの方もいらっしゃいますよね。そのような不安を少しでもお持ちでしたら、まずは無料体験レッスンを受講ください。

専属コンサルタントが、あなたの感じている疑問や不安に全てお答えします。

下記のカレンダーから簡単にご予約いただけます。オンラインでも受講いただけるのでお気軽にご利用ください。

まとめ

ここではTensorFlowについて、

  • 概要やどのような用途で使われるか
  • TensorFlowの採用事例や実際に募集している求人内容
  • インストールから動作確認

などについて解説しました。

TensorFlowはGoogleが公開しているOSSということもあって、ユーザー数が爆発的に増加しています。機械学習は今注目されている分野ですので、今後も需要は増えると思って間違いないでしょう。

この機会にぜひTensorFlowを学んでみてはいかがでしょうか。

LINEで送る
Pocket

「プログラミング、右も左もわからない…」という方にオススメ

当プログラミングスクール「侍エンジニア塾」では、これまで6000人以上のエンジニアを輩出してきました。

その経験を通して、プログラミング学習に成功する人は、「目的目標が明確でそれに合わせた学習プランがあること」「常に相談できる人がそばにいること」「自己解決能力が身につくこと」この3つが根付いている傾向を発見しました。

侍エンジニア塾は上記3つの成功ポイントを満たすようなサービス設計に磨きをかけております。

cta_under_bnr

「自分のスタイルや目的に合わせて学習を進めたいな」とお考えの方は、ぜひチェックしてみてください。

cta_under_btn

書いた人

侍テック編集部

侍テック編集部

おすすめコンテンツ

あなたにぴったりなプログラミング学習プランを無料で診断!

プログラミング学習やキャリアのお悩み、お気軽にご相談ください。