Chainerによるディープラーニングプログラムの基礎と実装例

〜 最急降下法と誤差逆伝播法、Chainer 基本オブジェクトとプログラムのひな形、RNNのコード化、ChainerからのGPU利用 実装例紹介:NN・DLの肝となる回帰問題の典型例 〜

  • 従来のフィードフォワード型のフレームワークと異なり、柔軟性が高く使いやすいChainerについて習得する講座!
  • Chainerの原理から複雑なネットワークに対するプログラム作成法を学び、効率的なディープラーニングのコード化に活かそう!
  • 画像認識や自然言語処理などのディープラーニングの応用システムにつながる回帰問題の実装例を紹介します!

講師の言葉

 本講座は Chainer のチュートリアルです。 現在、非常に多くの Deep Learning フレームワークが存在しますが、Chainer はその柔軟性に大きな特徴があります。そのために複雑なネットワークでもそのプログラムの作成が容易です。その柔軟性は define-by-run という形で計算グラフを作る仕組みから生じています。

 本講座ではまずニューラルネットの基本を復習します。最急降下法と誤差逆伝播法が理解できれば、Chainer が define-by-run という仕組みを使って、それをどのように行っているかの大枠を理解できます。それと同時にChainer によるプログラムのひな形も理解できます。あとは個々の問題に対して、ひな形を拡張することで実際のコードが作成できることを学びます。

セミナー詳細

開催日時
  • 2017年04月25日(火) 10:30 ~ 17:30
開催場所 日本テクノセンター研修室
カテゴリー ソフト・データ・画像・デザイン
受講対象者 ・Chainer で Deep Learning のプログラムを作りたいと思っているが、どのようにプログラムを書けばよいかわからない方 ・ニューラルネットの基本と Chainer の仕組みを理解したい方
予備知識 ・大学初年度程度の数学知識 ・機械学習とは何かくらいは知っている ・プログラミングの経験がある、またはプログラムの基本をある程度知っている(どんな言語でもよいです。少しでもプログラミング経験があれば大丈夫だと思います)。 ・Python のエキスパートである必要はありませんが、ある程度、その文法を知っている方が理解しやすいと思います。
修得知識 ・ニューラルネットの基本が理解できる ・Chainer である程度複雑なモデル(ネットワーク)に対するプログラムを書けるようになる
プログラム

1. ニューラルネット

Deep Learning は従来のニューラルネットを多層にしたものです。ここではニューラルネットの基礎を解説します。具体的には、ニューラルネットが関数と見なせること、活性化関数を導入することで表現力が高まっていることを解説します。

  (1). ニューラルネットとは何か

  (2). ニューラルネットは関数

  (3). 活性化関数

  (4). ReLU と Maxout

2. 最急降下法と誤差逆伝播法

ニューラルネットは訓練データから関数を推定する回帰のモデルです。その推定方法が最急降下法になります。この最急降下法がいわゆる誤差逆伝播法と呼ばれるものであることを解説します。また回帰で問題となる過学習に対して、ニューラルネットではどのように対処しているかも解説します。

  (1). ニューラルネットにおける学習

  (2). 目的関数

  (3). 最急降下法

  (4). 過学習と Dropout

3. Chainer の仕組み

Deep Learning の学習とは関数のパラメータを推定する回帰の問題であり、最急降下法が使われます。最急降下法では勾配(微分値)を求める部分がポイントです。Chainer では define-by-run という形で勾配を求めていること解説します。

  (1). 合成関数と計算グラフ

  (2). 計算グラフを利用した勾配計算

  (3). define-and-run と define-by-run

4. Chainer の基本プログラム

まず Chainer で利用するオブジェクトを説明し、次に Chainer のプログラムのひな形を示します。次に簡単な分類問題を例として、その問題を解く Chainer のプログラムをそのひな形に沿って作ります。またミニバッチによる動作及び誤差の累積による動作を簡単な例で示し、それらの違いを説明します。

  (1). Chainer 基本オブジェクト

  (2). Chainer のプログラムのひな形

  (3). Chainer による分類問題の分類器構築プログラム

  (4). ミニバッチと誤差の累積

5. Recurrent Neural Network

Recurrent Neural Network (RNN) は従来のフィードフォワード型のネットワークではなく、少し複雑なネットワークです。このような複雑なネットワークに対してどのように Chainer でコード化するのかを示します。

  (1). RNN とは何か

  (2). RNN のネットワーク図

  (3). Chainer による RNN のプログラム

  (4). LSTM の利用

※CNNは直接扱いませんが、この章の内容はCNNにも役立ちます。

6. GPU の利用

現在、Deep Learning の学習には GPU は必須と言えます。導入に際しての基礎知識と、Chainer からの利用方法を解説します。

  (1). GPU とは何か

  (2). GPU の選択

  (3). CUDAとcuDNN の導入

  (4). CuPy

  (5). Chainer での GPU の利用

キーワード ニューラルネットワーク ディープラーニング 活性化関数 過学習 最急降下法 誤差逆伝播法 Dropout  define-and-run define-by-run GPU
タグ データ解析
受講料 一般 (1名):49,500円(税込)
同時複数申込の場合(1名):44,000円(税込)
会場
日本テクノセンター研修室
〒 163-0722 東京都新宿区西新宿2-7-1 新宿第一生命ビルディング(22階)
- JR「新宿駅」西口から徒歩10分
- 東京メトロ丸ノ内線「西新宿駅」から徒歩8分
- 都営大江戸線「都庁前駅」から徒歩5分
電話番号 : 03-5322-5888
FAX : 03-5322-5666
こちらのセミナーは受付を終了しました。
次回開催のお知らせや、類似セミナーに関する情報を希望される方は、以下よりお問合せ下さい。
contact us contact us
各種お問い合わせは、お電話でも受け付けております。
03-5322-5888

営業時間 月~金:9:00~17:00 / 定休日:土日・祝日