最近のトピックでは、AI(人工知能)に関するニュースをよくみますよね。
なぜここまでAI(人工知能)の開発やビジネス利用が熱くなっているのかというと、一つの要因としてAI(人工知能)の中の一つの技術である機械学習のフレームワークがここ最近で増えていることが挙げられます。
フレームワークとは、頭のいい人が作ったプログラムを一つにまとめて他の開発者が容易に開発できるようにしたもので、その中でも機械学習関連の有名なフレームワークとしてTensorflowというものがあります。
そこで、この記事では入門として、まずTensorflowというものがいったいどんなものなのかを解説し、そしてTensorflowに何ができて実際どんなシステムやアプリに使われているのかも入門者向けに解説しましょう。
オープンソースとは
Tensorflowとは、2015年にGoogleが開発しオープンソースで公開している、機械学習に用いるためのソフトウェアライブラリです。機械学習の入門者から上級者まで幅広く使うことができます。
逆にオープンソースでないものは、商用利用したり、修正配布したりするにはライセンスの取得が必要なものもあります。
では、オープンソースのメリットとはなんでしょう。
この手法は日進月歩のIT業界では重要視されていて、よくIT業界でよく言われているフレーズとして、「車輪の再発明はするな」というものがあります。
この言葉の意味は「すでに誰かが発明したものを自ら苦労して生み出すな」ということで、入門者によくありがちなのが、すでに存在していて、調べたり、他人に聞いたりすれば容易にわかる知識を、時間をかけて自分で生み出したと思い込み、結局蓋を開けてみればただの時間の無駄だったということがあります。
ということで、ここまでで閉鎖的なプログラムでなくフリーで皆に開かれているプログラムのメリットがお分かりいただけたでしょう。
Tensorflowとは何か
さて、オープンソースの重要性が分かったところで、Tensorflowの入門者向けの説明に戻ります。
利用は簡単で、公式サイトにもサンプルプログラムが載っていますから、機械学習始めたての入門者でも簡単な機械学習ならすぐに行うことができます。
実は機械学習の基本的な仕組み自体は、AI(人工知能)が空想物語ではなく実際に使われ始めた20世紀中旬には成立していましたが、ただ、技術上の制約で実務の使用に耐えうる状態ではありませんでした。しかし、2010年代に登場したディープラーニングが機械学習を実務に耐えうるものにした要因の一つになったのです。
やはりTensorflowが入門者にも優しいですよね。
Tensorflowを使ってできること
それではTesorFlowを使ってできることをお話しましょう。
ただ、用意されたデータセットを用意された手順通りでやるだけでは自分でやっている実感が持てませんよね。
Tensorflowの入門としては、ここまでできれば機械学習をした実感が持てるのではないでしょうか。あとはTensorflowの公式ホームページの入門者向けのドキュメントを確認していろいろ動作の確認をしてみるのも良いかもしれません。
Tensorflowの活用例
Tensorflowは決して入門者のみを対象としたライブラリということではなく、入門者から上級者まで幅広く活用され、現にTensorflowを開発したGoogleでも、サービスの研究と生産に使用しています。
例えば、キュウリの選別(選果)作業の自動化。
そこで、Tensorflowを使った画像識別をしてみました。
そのため現在の機械学習エンジニアのほとんどの作業が良質なデータ集めと言われています。
ただ、キュウリの選別作業のように農家のおばちゃんの長年のノウハウでしかできなかったことが、自動化されその負担が軽減される方向に向かっていくのはとても良いことですよね。これから技術が進歩していけば、ますます利便性は高まっていくでしょう。
ここまでtensorflowとは何かという入門編から、どういう用途で使われているかまで解説してきました。
機械学習関連のライブラリにはtensorflow以外にも多くあり、実務上ではいくつものライブラリを組み合わせながら開発を進めることになります。ですから開発を進めるうえで、プログラミング言語としてはPythonがオススメです。
それはなぜかというと、Pythonはライブラリ活用を前提として作られた言語であり、機械学習関連のライブラリが豊富だから。
そしてPythonの基礎をオンライン学習サイト等で学んだらさっそくググったり本を参照したりしながら実際に開発を進めていきます。
入門者がプログラミングを上達させるためにはやはり実際にコードを書いてみることがベターだからです。ですから、この記事を読み終わったらさっそく本を片手にコードを書いて手を動かしてみましょう。
コメントをどうぞ