前回は、注意型ネットワークとコネクショニスト時系列の2つを解説した。今回は、ライブラリーの利用について見渡していく。

 深層学習の普及において、オープンソースのソフトウエアは重要な役割を果たしている。さまざまな深層学習用ライブラリー(フレームワーク)が公開されており、これらを用いるのが現実的かつ効果的である。

深層学習用ライブラリー=深層学習を効率的に実行し、プログラムを見通しよく記述するためのソフトウエア。全体として統一的な設計になっており、多くの関数があらかじめ準備されている。この枠組み(フレームワーク)の中で、利用者がさまざまなプログラムを書けることから、深層学習フレームワークとも呼ばれる。

今回はTensorflowとKerasを紹介

 筆者の研究室では2013年ごろから、Pylearn2を使い始めたが、簡単に試すことができて、しかも大きな性能向上が得られた。このときは、自己符号化器を積み重ねたものを話者クラス識別に適用した。

 その後、Theanoをベースとして、多層化した制約付きボルツマンマシンをマルチモーダル音声認識に適用し、ボトルネック特徴量を利用することによって認識誤りを大幅に削減できている。また、2015年以降には、Chainerを用いてLSTMによる言語モデル作成を行った。

 当時に比べると現在のライブラリーは非常に充実してきている。今回はその中でTensorflowとKerasについて紹介したい。

 Tensorflowは米Google社が提供するライブラリーであり、現在のトレンドの1つといえる。情報も豊富である。一方のKerasは、TheanoとTensorflowをベースとした、より短く書けて簡便に深層学習を試せるライブラリーである。初心者が最初に触れる場合に適していると考えている。なお、以下はPythonを前提にしている。

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

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