ディープラーニングに代表されるAIの適用範囲は着実に広がっている。企業のITシステムにおいても成果を期待できるシーンが見えてきた。このため近い将来には、ITエンジニアがAIを活用するシステムを提案したり、開発したりすることが、決して珍しいことではなくなるだろう。

 ITエンジニアにとっては、活躍の場を広げるチャンスと言える。そこでAIを活用するシステムの開発を巡る状況も確認しておこう。

 AIを活用するシステムの開発は、既存の業務システムの開発とは異なる点が多い。初めのうちは戸惑うかもしれない。

 特に注意したいのは開発プロセスである。機械学習を利用するシステムでは、処理フローなどを定義しない。従ってシステムを構築した際に、要件と照らし合わせて適切かどうかを評価することが難しいわけだ。

 また、ディープラーニングを利用したシステムの場合、内部がブラックボックス化してしまう面がある。先に解説した通り、ディープラーニングはタスクの実行に必要となる特徴を人手で決める手間が掛からない。これは適用範囲を広げる大きな利点である一方で、システムがどのような特徴を利用しているのかが人間には分からないことを意味する。このため、機能や性能で不具合が発生したとしても、系統立てた対処が難しい。

 このような問題を少しでも避けるには、ユーザー企業のIT部門や利用部門と、ベンダーのITエンジニアが協力し、実証実験などを通じて経験を積むことがこれまで以上に重要になる。また、そのような活動を推進するためにも、先端技術と業務の両方に精通した人材が欠かせない。

フレームワークが続々と登場

 AIを活用するシステムでは、基盤をいかに構築するかも大きな課題となる。機械学習では、学習のために膨大なデータを管理するストレージや、計算処理のためのサーバーリソースが欠かせない。さらに、さまざまなミドルウエアを組み合わせて活用するスキルが求められる。

 そこで、パブリッククラウド事業者のサービスを利用することが有力な選択肢となる。機械学習のクラウドサービスとしては、米Amazon Web Servicesの「Amazon Machine Learning」、Googleの「Cloud Machine Learning」、IBMの「IBM Bluemix(Watson)」、Microsoftの「Microsoft Azure Machine Learning」などが挙げられる。これらのサービスやAPIを利用すれば、ハードウエアやソフトウエアの導入コストを抑えて機械学習を活用できる。

 ただし、ディープラーニングのプラットフォームを開発する機能を備えたクラウドサービスはまだ限られる。ソフトウエア、ハードウエアを自前でそろえて環境を構築しなければならないことが多い。ソフトとハード、それぞれの動向を確認しておこう。

 ソフトに関しては、2012年以降、多くのフレームワークがオープンソースソフトで続々と登場している。中でも米California大学が提供する「Caffe」や、カナダのMontreal大学の「Theano/Pylearn2」などが研究者の間では広く良く利用されてきた。

 さらに2015年には日本のPreferred Networksが「Chainer」を、Googleが「TensorFlow」というフレームワークをそれぞれ公開した。

 Chainerはディープラーニングの構造を記述する際に、Pythonの制御コードを利用できる。他のフレームワークのように特別な言語が必要ではないため、多様化・複雑化するディープラーニングのネットワークの構造を、比較的柔軟に記述できる。TensorFlowは、複数デバイスによる並列処理が容易にできる。大規模な処理を高速に実行しやすいわけだ。

 Googleはこのほかにも、ニューラルネットワークの構成や学習課程を可視化する「TensorFlow Playground」というツールを提供している(写真1)。TensorFlow PlaygroundはWebアプリケーションのため、ハードウエアやライブラリなどの実行環境を構築せずに利用できる。機械学習などの基本を学びたいITエンジニアにとって有用だ。

写真1●米Googleの「TensorFlow Playground」の画面
ニューラルネットワークの仕組みを理解するのに向く。ライブラリなどの実行環境を構築せずに利用できる
[画像のクリックで拡大表示]

この先は会員の登録が必要です。有料会員(月額プラン)は初月無料!

日経 xTECHには有料記事(有料会員向けまたは定期購読者向け)、無料記事(登録会員向け)、フリー記事(誰でも閲覧可能)があります。有料記事でも、登録会員向け配信期間は登録会員への登録が必要な場合があります。有料会員と登録会員に関するFAQはこちら