今さら聞けない ディープラーニング入門
特徴を抽出する 畳み込み積分
画像認識に特化した多層ニューラル・ネットワーク構造
図1 データのパターンを学習する多層ニューラル・ネットワークの中でも「畳み込みニューラル・ネットワーク」(Convolutional Neural Network,CNN)は画像認識に特化した構造をもつ.画像クリックで動画を見る.または記事を読む.[提供・著]井上 祐寛 詳細:[VOD/KIT] ラズベリー・パイで学ぶエッジAIプログラミング入門 |
ディープラーニングと畳み込みニューラル・ネットワーク(CNN)とは
ディープラーニングは,機械学習の一分野であり,多層のニューラル・ネットワークを活用してデータのパターンを学習します.中でも,畳み込みニューラル・ネットワーク(Convolutional Neural Network,CNN)は画像認識に特化したネットワーク構造をもつ重要な手法です.
CNNの核となる「畳み込み層」は,入力データに対してフィルタと呼ばれる重み行列を適用することで特徴を抽出します.雪が積もった画像を分類するタスクでは,フィルタが画像中のエッジや模様を強調し,それを後続の層で分析します.この過程により,重要な情報が効率的に抽出され,分類精度を高めることが可能です.
CNNには以下の主な層が含まれます.
- 入力層:画像データを取り込む.たとえば,$12 \times 16$ に分割された小領域画像
- 畳み込み層(Convolution Layer):画像の特徴を抽出
- プーリング層(Pooling Layer):特徴マップの次元を削減し計算負荷を軽減
- 全結合層(Fully Connected Layer):抽出された特徴を基に分類を行う
- 出力層:最終的なラベル(例:「積雪あり」「積雪なし」)を出力
畳み込みのしくみとその応用
CNNの畳み込み処理は,フィルタを用いて画像の局所的な特徴を強調します.例えば,$11 \times 11$ の画像に $3 \times 3$ のフィルタを適用した場合,フィルタは画像内の部分領域ごとに重み付きの総和を計算し,特徴マップと呼ばれる新しい画像を生成します.この特徴マップは,元画像よりも小さなサイズとなりつつも,重要な情報を保持しています.
以下は具体例です.
- $11 \times 11$ の入力画像に $3 \times 3$ のフィルタを適用
- フィルタの重みと入力値の積和を計算して新たなピクセル値を生成
- この操作を画像全体にスライドさせて適用し,特徴マップを得る
動画のケースでは,ラズベリー・パイ 3 Model B を用いて定期的に撮影した24,000枚の画像を,「積雪あり(1)」と「積雪なし(0)」の2種類に分類しました.訓練データとして20,000枚を使用し,残り4,000枚でテストを行った結果,精度は98%以上に達しました.
畳み込みニューラル・ネットワークの強み
CNNの強みは,以下の3点に集約されます.
- 局所受容野:入力画像の局所的な情報を効率的に処理し,特徴を抽出
- 階層的特徴抽出:浅い層ではエッジや模様,深い層では抽象的な概念を学習可能
- パラメータの共有:フィルタを共有することで学習効率を向上させ,過学習を防止
動画の「積雪状態の認識とロード・ヒーティングの制御」の実験では,CNNのこうした特性を最大限活用しました.バッチ・サイズ32,エポック数500で訓練を行い,精度を向上させました.出力層のしきい値を0.5と設定し,それ以上を「積雪あり」と判定することで,効率的な分類が可能となっています.〈著:ZEPマガジン〉
著者紹介
- 株式会社クレスコ入社後,銀行向けシステムなど数多の開発にリード・エンジニアとして従事.後に自社ソリューションとなる統合認証システムの基礎を独力で開発するなど,アイデアと技術でクレスコを牽引する.技術研究所での機械学習研究を経て,人工知能を強みとする部門に異動.現在はテクニカルエバンジェリストとして企業が持つ業務課題へのAI適用に関するコンサルティング,機械学習に関する技術支援を行う一方,自ら研究テーマを持ち共同研究,実験システムの構築も担当.「SoftwareDesign」「やってみよう!機械学習」(技術評論社),「日経ソフトウェア」「AIプログラマになれる本」(日経BP)への記事寄稿,会津大学,はこだて未来大学,琉球大学,早稲田大学のほかWatson SummitやMicrosoftでの講演等,社外でも精力的に活動中
著書
- ラズパイ+USB SDRで作るFlightradar24 Businessアカウント・フィーダ,ZEPエンジニアリング株式会社.
- [VOD/KIT]ラズベリー・パイで学ぶエッジAIプログラミング入門,ZEPエンジニアリング株式会社.
- [VOD/KIT]世界の航空機を同時追跡!Flightradar24 ラズパイ・キット,ZEPエンジニアリング株式会社.
- [VOD/KIT]人工知能カメラM5StickVで作って学ぶ画像解析AI開発入門,ZEPエンジニアリング株式会社.
- いろんなことを試して学ぶ! Pythonプログラミング,2021年,日経BP.
- エッジAIプログラミング M5StickV 活用編,日経ソフトウェア2020年11月号,日経BP.
- エッジAIプログラミング M5StickV 準備編,日経ソフトウェア2020年7月号,日経BP.
- Kaggleに参戦しよう(連載),日経ソフトウェア2020年1月号,日経BP.
- Kaggleに参戦しよう(連載),日経ソフトウェア2019年9月号,日経BP.
- Kaggleに参戦しよう(連載),日経ソフトウェア2019年7月号,日経BP.
- AIプログラマになれる本,2019年,日経BP.
- やってみよう! 機械学習 第2章 機械学習の始め方,2019年,技術評論社.
- 人工知能で画像生成 応用編,日経ソフトウェア2019年1月号,日経BP.
- 人工知能で画像生成 基本編,日経ソフトウェア2018年11月号,日経BP.
- 自分で構築するか,APIで機能を使うか 機械学習の始め方,Software Design2018年4月号,技術評論社.
参考文献
- [VOD/Pi3A KIT]ラズパイ・キットで学ぶLinux I/Oボードの作り方・探し方・動かし方,ZEPエンジニアリング株式会社.
- [VOD/Pi KIT]ラズベリー・パイで学ぶLinux&Pythonプログラミング超入門,ZEPエンジニアリング株式会社.
- [VOD/PiZero KIT]Python×ラズパイで初めての量子コンピュータ,ZEPエンジニアリング株式会社.
- [VOD/Pi400 KIT]SLAMロボット&ラズパイ付き!ROSプログラミング超入門,ZEPエンジニアリング株式会社.
- [VOD/Pi KIT]ラズパイ×Pythonで動かして学ぶモータ制御入門,ZEPエンジニアリング株式会社.