検索
AI for SE
ローコード/ノーコード
クラウドネイティブ
Windows 11/365
Pythonコードで理解するニューラルネットワーク入門
Pythonコードで理解するニューラルネットワーク入門
ニューラルネットワークの仕組みや挙動を、数学理論からではなく、Pythonコードから理解しよう。フルスクラッチでニューラルネットワーク(DNN:Deep Neural Network)を実装していく。
■ 基礎編 ■
第1回
Pythonでニューラルネットワークを書いてみよう
(2022/02/09)
本連載(基礎編)の目的
・本連載(基礎編)の特徴
ニューラルネットワークの図
訓練(学習)処理全体の実装
モデルの定義と、仮の訓練データ
ステップ1. 順伝播の実装
・1つのノードにおける順伝播の処理
・重み付き線形和
・活性化関数:シグモイド関数
・活性化関数:恒等関数
・順伝播の処理全体の実装
・順伝播による予測の実行例
・今後のステップの準備:関数への仮引数の追加
第2回
図とコードで必ず分かるニューラルネットワークの逆伝播
(2022/02/16)
ステップ2. 逆伝播の実装
・逆伝播の目的と全体像
・損失関数:二乗和誤差
・1つのノードにおける逆伝播の処理
・(1)逆伝播していく誤差情報
・(2)活性化関数を偏微分
・(3)線形和を重み/バイアス/入力で偏微分
・(4)各重み/バイアス/各入力の勾配を計算
・逆伝播の処理全体の実装
・逆伝播の実行例
第3回
Pythonで実装するニューラルネットワークを完成させよう
(2022/02/28)
ステップ3. パラメーター(重みとバイアス)更新の実装
・1つのパラメーターの更新
・パラメーター更新の処理全体の実装
・パラメーター更新の実行例
3つのステップを呼び出す最適化処理の実装
・最適化処理:学習方法と勾配降下法
・最適化の処理全体の実装
回帰問題を解くデモ
■ 応用編 ■
第4回
NumPyでニューラルネットワークをフルスクラッチ実装してみよう
(2022/06/22)
本連載(応用編)の目的
本連載(応用編)のポイント
NumPyのインポート
訓練(学習)処理全体の実装
モデルの定義と、仮の訓練データ
ステップ1. 順伝播の実装
・1つの層における順伝播の処理
・重み付き線形和
・活性化関数:シグモイド関数
・活性化関数:恒等関数
・順伝播の処理全体の実装
・順伝播による予測の実行例
・今後のステップの準備:関数への仮引数の追加
ステップ2. 逆伝播の実装
・損失関数:二乗和誤差
・1つのノードにおける逆伝播の処理
・(1)逆伝播していく誤差情報
・(2)活性化関数を偏微分
・(3)線形和を重み/バイアス/入力で偏微分
・(4)各重み/バイアス/各入力の勾配を計算
・逆伝播の処理全体の実装
・逆伝播の実行例
ステップ3. パラメーター(重みとバイアス)更新の実装
・1つのパラメーターの更新
・1つの層内にある全パラメーターの更新
・パラメーター更新の処理全体の実装
・パラメーター更新の実行例
3つのステップを呼び出す最適化処理の実装
・最適化の処理全体の実装
回帰問題を解くデモ
■ 発展編 ■
総合記事ランキング
Excelでプルダウンリスト(ドロップダウンリスト)を作成する方法
ドイツの州、3万台の自治体PCを「Linux」「LibreOffice」に移行すると発表
【Windows 10/11】「net user」コマンドでユーザーアカウントをコマンドラインから管理する
Microsoftは、Microsoft Azureの本番環境で起きるメモリリークの問題にどう対処しているのか
ひと目で分かるWindows 10/11 サポート期限一覧【2024年版】
【Excel】セル内で文字列を改行する方法
【Excel】チェックボックスを作成する
Microsoft Copilotの基本的な設定と使い方
Linux 6.8カーネル採用の「Ubuntu 24.04 LTS」リリース
2024年1月の「WinRE更新エラー」は、なぜ、どのように発生したのか? どうやって解決するつもりなのか?