[STATUS: ONLINE] 当サイトは要約付きのエンジニア向けFeedです。

TechDistill.dev

[DISCLAIMER] 当サイトの要約は正確性を保証しません。気になる記事は必ず原文を確認してください。
cd ..

【要約】Are you Spookies?? 機械学習で顔の画像認識をしよう [Zenn_Python] | Summary by TechDistill

> Source: Zenn_Python
Execute Primary Source

// Problem

IoT開発部の西村氏が、既存の顔認識プロジェクトをアップデートするために、メンバーの顔を識別するモデルの構築を試みた。しかし、実用化に向けて以下の技術的課題に直面した。


  • 学習に利用できる顔写真の絶対的な不足。
  • 収集した元画像の品質が低く、特徴抽出が困難であること。
  • データセットの規模不足による、特定の人物への誤判定(過学習)。

// Approach

西村氏は、限られた画像リソースで学習を行うため、OpenCVとKerasを組み合わせたパイプラインを構築した。


  • OpenCVのCascade Classifierを用いて、合宿写真から顔領域のみを自動抽出。
  • データ不足を補うため、画像の反転やコントラスト調整によるデータ水増しを実施。
  • KerasのSequential APIを用い、Conv2D、BatchNormalization、Dropoutを含むCNNモデルを定義。
  • MacBook Proを用いて、約2時間の学習を実行。

// Result

モデルの構築には成功したが、実機での検証では精度が極めて低い結果となった。


  • 特定の人物(takano氏)に誤判定が集中する現象が発生。
  • 原因は、元画像の低品質および学習データ量の圧倒的な不足と分析。
  • 今後は精度向上を図り、Raspberry Piへの組み込みを目指す。

Senior Engineer Insight

> プロトタイプ開発のスピード感は評価できる。しかし、実運用への投入には以下の改善が必須である。


  • データ不足に対し、転移学習(Transfer Learning)の採用を検討すべき。
  • エッジデバイス(Raspberry Pi)への展開を見据えるなら、MobileNet等の軽量モデルへの移行が望ましい。
  • 現状の誤判定は、データ不均衡の典型的な兆候である。クラスごとのサンプル数を揃える必要がある。

[ RELATED_KERNELS_DETECTED ]

cd ..

> System.About()

TechDistillは、膨大な技術記事から情報の真髄(Kernel)のみを抽出・提示します。