検索
連載

ニューラルネットワーク、Deep Learning、Convolutional Neural Netの基礎知識と活用例、主なDeep Learningフレームワーク6選いまさら聞けないDeep Learning超入門(1)(2/2 ページ)

最近注目を浴びることが多くなった「Deep Learning」と、それを用いた画像に関する施策周りの実装・事例について、リクルートグループにおける実際の開発経験を基に解説していく連載。初回は、ニューラルネットワーク、Deep Learning、Convolutional Neural Netの基礎知識と活用例、主なDeep Learningフレームワーク6選を紹介する。

PC用表示 関連情報
Share
Tweet
LINE
Hatena
前のページへ |       

Deep Learningを実装するための主なフレームワーク6選

 Deep Learningが私たちのようなエンジニアでも簡単に利用できるようになった背景には主に二つあります。一つ目はオープンソースベースの各種ライブラリやフレームワークが充実してきたこと、二つ目はGPUなどを搭載した高性能サーバーが安価で購入できるようになり、さらにクラウドサービスで利用できるようなったことが挙げられます。

 特に前者に関しては、下記に代表的なものの名称と簡単な概略を記載しておきます。これでもほんの一部であり、さまざまな会社・機関がこれまた多様な特徴を持つ製品を開発していることが認識でき、Deep Learningの流行と注目度上昇が手に取るように分かると思います。

Chainer

 Preferred Networks社が公開したフレームワークでGPUをサポートしています。Pythonのライブラリとして提供され、さまざまなニューラルネットの構造に対応しています。

Caffe

 Berkeley Vision and Learning Centerが中心として開発が進んでいるフレームワークでGPUをサポートしています。本体はC++で実装され、Pythonのバインディングが用意されています。高速で各種学習済みネットワークモデルが用意されていることが特徴です。

Torch7

 Luaベースで書かれたライブラリでGPUをサポートしています。フェイスブックがTorchの拡張を公開しオープンソース化したことで有名になりました。

TheanoPylearn2

 Pythonの数値計算ライブラリでGPUをサポートしています。モントリオール大学のBengio教授の下で開発されており、実行時におけるC++コードの生成とコンパイルが行われること、微分計算を解析的に行ってくれることが特徴です。

Deeplearning4J

 Skymind社が提供するJava(およびScala)を使ったオープンソースのライブラリです。分散モード、マルチスレッドモードをサポートし、Hadoop、Sparkなどの分散処理と相性が良いです。

H2O

 オープンソースの総合的な機械学習ライブラリ。Deep Learningの他、複数の機械学習手法が同梱されています。便利なGUIが付属している他、RやPythonのパッケージが用意されています。HDFSやAmazon S3などのファイルシステムからデータをインポートできることも特徴です。

次回は、Caffeの使い方や構築方法などを紹介

 次回はこれらライブラリ・フレームワークの中でもリクルートグループで積極的に活用しているCaffeに関して、その使い方や構築方法などを紹介します。

筆者紹介

石川 信行(いしかわ のぶゆき)

リクルートテクノロジーズ ITソリューション統括部 ビッグデータ部 シニアアーキテクト

兼 アドバンスドテクノロジーラボ

2009年リクルートに新卒入社し、現リクルートテクノロジーズの前身となる組織に配属。Javaを用いたシステム開発に参加し、その後Hadoopの導入検証に従事。主要事業にHadoopを導入した後、ビッグデータ専門部隊に合流し、13年10月より現職。現在は、事業対応リーダー、画像解析など技術開発に従事。


Copyright © ITmedia, Inc. All Rights Reserved.

前のページへ |       
ページトップに戻る