AIが青を赤と認識!? スマートパックテスト開発で起きた珍プレーとその教訓
はじめに
生成AIや機械学習を使った開発では、「精度の追求」と同じくらい「予想外の珍プレー」が起こります。今回は、私がインターン先で体験した“AIが青を赤と認識した事件”を紹介します。笑いあり、学びありのエピソードです。
プロジェクト概要
私が参加していたのは、水質検査用アプリ「スマートパックテスト」の開発プロジェクト。AIがカメラで撮影した試薬チューブの色を自動判定し、水中の成分濃度を測定する仕組みを作っていました。
- 使用技術:YOLOv8, OpenCV, Python
- 目的:RGB値から濃度を推定するAIモデルの開発
- チーム構成:AIエンジニア、アプリ開発者、デザイナーなど
開発初期、私たちは「AIが人間より正確に色を見分けてくれる」と信じていました。
しかし――それが、大きな勘違いでした。
珍プレー①:AIが「青」を「赤」と認識!
ある日、銅(Cu)イオンのテストを行っていたときのこと。結果を確認すると、AIが明るい青の液体を「赤」と判定していました。
🤖「高濃度です!警告レベル!」
👤「いやいや、見た目どう見ても青やん…」
混乱するチーム。ログを調べると、AIはRGBのB値よりR値を高く見積もっていたのです。
原因は、撮影環境の光のムラとデータセットの偏りでした。
珍プレー②:AIは正直すぎた
さらに調べると、別の画像では“照明の反射”で影が赤みを帯びており、AIはそれを忠実に「赤」と学習していました。
AIは間違っていない。人間の撮影環境が間違っていた。そう、AIは嘘をつかない。ただ、文脈を知らないだけ。「AIの珍プレー=人間の凡ミス×正直な学習結果」でした。
好プレー:カメラキャリブレーションで大逆転!
そこで私たちは、撮影条件を見直しました。
# 白色基準を導入してホワイトバランス補正
gray_card = cv2.imread("white_reference.jpg")
corrected = cv2.cvtColor(image, cv2.COLOR_BGR2LAB)
- グレーカードを使って光源補正
- 白タイルで基準値キャリブレーション
- データセットを再構築して露光差を平均化
すると、認識精度が一気に改善!再学習後のAIは、もう青を赤と間違えることはなくなりました。まさに“珍プレーが生んだ好プレー”でした。
学びと教訓
この経験で得た教訓は3つです。
- AIの失敗は、人間の環境設定の写し鏡。
- 「AIを信じすぎない」ことが信頼の第一歩。
- 笑い話にできるチームが、一番強い。
おわりに
生成AIや機械学習は魔法ではありません。でも、失敗の中にこそ「AIと人間の共創のヒント」があります。珍プレーを恐れず、むしろ楽しみながら改良を重ねていく。それが、AI開発の醍醐味だと思います。