新刊ピックアップ

注目される深層学習の技術とフレームワーク

この記事を読むのに必要な時間:およそ 1 分

深層学習とは

深層学習という言葉を聞いたことがある人は多いと思います。ここでは深層学習がなぜ注目されているかについてかんたんに説明します。

深層学習とは,多層のニューラルネットワークによる学習を指します。人間の脳の神経細胞はニューロンと呼ばれますが,ニューロンのしくみを数学モデルに当てはめたもの(形式ニューロンと呼ばれる)を層にして並べたのがニューラルネットワークです。

深層学習のことをまったく新しい夢のアルゴリズムのようにとらえられる人がいまだに多いのですが,このニューラルネットワークというしくみを用いた機械学習の手法の1つなのです。

深層学習を取り巻く変化

近年,深層学習を取り巻く環境が変化したことで注目を集めることになりました。環境の変化として挙げられる主な要素は次の3つです。

  • 分散システムをはじめとした計算環境が強力になった
  • ビッグデータのような大量のデータが整備された
  • 学習方法の改善

これらの要素は近年の研究によって改善されました。この結果,深層学習が抱えていた問題が解決され,学習の性能が上がったことはたしかです。その上,大量のデータから価値を見出そうとする世界的なムーブメントと人間が気付かないようなデータの特徴を自動的に見つけ出そうとする研究が合致したため,ここまで注目されてきています。

それでは深層学習はどんな場面で利用されはじめているのでしょうか。

深層学習でできること

深層学習はさまざまな場面で応用されています。たとえば,次のような事例があります。

Web技術
  • 表情分析(カメラを使って人間の表情を読み取る)
  • 画像処理(画像を自動判別して分類する)
  • 文章分類(記事を分類してユーザに推薦する)
ロボット制御
  • 自動車の自動運転
  • 物流倉庫でのロボットの活用
  • ロボットを使った対話システム

そのほか,医療分野の創薬開発やアート領域などにも応用されるなど,新たな事例が次々と報告されているのが現状です。

しかし事例をみても,深層学習が身近にある技術と感じる人は少ないでしょう。実際に一部の分野においてはたいへん有用ですが,実用段階においては手探りの状態が続いていると言ったほうが良いかもしれません。

これらの事例は深層学習のタスクを応用して実現しています。代表的なタスクである「画像処理」「自然言語処理」の2つを紹介します。

画像処理

画像処理と言ってもさまざまなタスクがあります。画像分類,クラスタリング,画像検出などが代表的なタスクです。画像検出では,画像分類を用いて画像データに何が写っているのか(分類対象のクラスのうちどれに属するものか⁠⁠」を導き出します。

Googleフォトというサービスでは人物ごとに写真を分類するような機能が備わっています。画像のクラスタリングは,何が写っているかまでは導き出しませんが,似たような特徴を持つ画像を分類します。

自然言語処理

文書分類,文書要約,自動翻訳,対話システムなどは自然言語処理を応用した技術です。文書分類とは,文書がどのカテゴリに属するかを推定するタスクです。クチコミのポジネガ分析やメールの自動判定に用いられます。

人工知能技術に注目が集まる中,自然な会話ををするためにも自然言語処理は応用されています。ここではふれませんが,対話システムにおいては音声処理とも密接な関わりがあります。

これらのタスクは次項で紹介する機械学習フレームワークによって手軽に試すことができます。

深層学習フレームワーク

深層学習を実装する機械学習フレームワークについてもさまざまなプロジェクトが進められています。

代表的なものにGoogleが中心となって開発しているTensorFlow,Preferred Networksが主導して開発しているChainerがあり,これら以外にもPyTorch,Caffe2なども開発が進められています。

2018年1月に刊行されたTensorFlow活用ガイド—機械学習アプリケーション開発入門では,画像認識,自然言語処理,音楽生成などのタスクをTensorFlowで利用する方法や,Androidと連携する方法について解説しています。ぜひお手にとってご覧ください。