1
/
5

【誤差逆伝播法】ディープラーニングの勾配計算についてまとめてみた【株式会社ライトコード】

※弊社エンジニアの記事になります。

はじめに

ChatGPTやDeepLなどディープラーニングを用いた製品やサービスはたくさんありますが、その仕組みを全く知りませんでした。

「その仕組みを知りたい!」という気持ちからディープラーニングについて学習し始めたので、アウトプットも兼ねて今回、誤差逆伝播法の勾配を計算する部分について紹介したいと思います。ディープラーニングを勉強すると最初に躓く部分だと思うので、丁寧に説明できればと思います。

ディープランニング概要

ディープラーニングのモデルの学習の流れは以下の1~5のサイクルになっています。これらを繰り返すことで、より精度の高い出力ができるパラメータに更新し、精度の高いモデルを生成していきます。

  1. データを入力
  2. データを出力
  3. 損失を計算
  4. 勾配を計算
  5. パラメータを更新

今回は上記4番の「計算した損失から勾配を計算する仕組み」を紹介します。

誤差逆伝播法

これから紹介するMNIST画像の分類問題を行う中間層が2層のモデル(入力 → 中間層1 → 中間層2 → 出力 → 損失)を題材にします。

MNISTは手書き数字(0から9までの整数 = 10種類)の画像のデータセットです。

また、MNIST画像は( 28 \times 28) のグレー画像で、各ピクセルは0から255までの値をとります。

1画像につき784ピクセルのデータがあるので、入力データは ( N \times 784) ベクトルになります( Nはバッチ数です )。

入力 ( input ) から1つ目の中間層 ( layer1 ) への重み ( ( w_1 ) ) の次元は ( 784 \times 64) 、バイアス ( ( b_1 ) ) の次元は ( 1 \times 64) 、活性化関数は ReLU関数 としました。

ですので、中間層1の次元は ( N \times 64) になります。

1つ目の中間層から2つ目の中間層( layer2 )への重み ( ( w_2 ) ) の次元は ( 64 \times 64) 、バイアス ( ( b_2 ) ) の次元は ( 1 \times 64) 、活性化関数は ReLU関数 としました。

ですので、中間層2の次元は ( N \times 64) になります。

本モデルは10種類の分類問題なので、出力 ( output ) の次元を ( N \times 10) にする必要があります。

なので、2つ目の中間層から出力への重み ( ( w_3 ) ) の次元は ( 64 \times 10) 、バイアス ( ( b_3 ) ) の次元は ( 1 \times 10) 、活性化関数は softmax関数 としました。

また、損失関数には多値分類タスクによく使われるクロスエントロピー誤差を用います。( t ) は正解データを表しています。

記事の続きは下のリンクをクリック!

https://rightcode.co.jp/blog/information-technology/deep-learning-backpropagation-syain

【2024年卒】新卒採用エントリー開始しました!

特設ページはこちら:https://rightcode.co.jp/recruit/entry-2024

※募集は終了致しました。次回の募集までもうしばらくお待ちください

インターン募集!未経験ok、チャレンジ精神ある方求む

メディア運営:https://rightcode.co.jp/recruit/intern-media

社長と一杯飲みながらお話しませんか?(転職者向け)

特設ページはこちら: https://rightcode.co.jp/gohan-sake-president-talk

もっとワクワクしたいあなたへ

現在、ライトコードでは「WEBエンジニア」「スマホアプリエンジニア」「ゲームエンジニア」、「デザイナー」「WEBディレクター」「エンジニアリングマネージャー」「営業」などを積極採用中です!

有名WEBサービスやアプリの受託開発などの企画、開発案件が目白押しの状況です。

  • もっと大きなことに挑戦したい!
  • エンジニアとしてもっと成長したい!
  • モダンな技術に触れたい!

現状に満足していない方は、まずは、エンジニアとしても第一線を走り続ける弊社代表と気軽にお話してみませんか?

ネット上では、ちょっとユルそうな会社に感じると思いますが(笑)、
実は技術力に定評があり、沢山の実績を残している会社ということをお伝えしたいと思っております。

  • ライトコードの魅力を知っていただきたい!
  • 社風や文化なども知っていただきたい!
  • 技術に対して熱意のある方に入社していただきたい!

一度、【Wantedly内の弊社ページ】や【コーポレートサイト】をのぞいてみてください。

【コーポレートサイト】https://rightcode.co.jp/

【採用募集】https://rightcode.co.jp/recruit(こちらからの応募がスムーズ)

【wantedlyぺージ】https://www.wantedly.com/companies/rightcode

Invitation from 株式会社ライトコード
If this story triggered your interest, have a chat with the team?
株式会社ライトコード's job postings

Weekly ranking

Show other rankings
Like Hiroyuki Choshi's Story
Let Hiroyuki Choshi's company know you're interested in their content