7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ドローン空撮画像を洪水判定してみる - OCI 生成AIサービス / Cohere Embed 4 編

7
Last updated at Posted at 2026-03-17

Generated Image March 17, 2026 - 9_34PM.jpg

はじめに

この記事は、以下の記事の続編です。

前回の精度向上編では、Cohere Multimodal Embed 3(Cohere 社 API 経由)で生成した画像の埋め込みベクトルを線形分類器に入力して訓練し、F2スコアを最適化指標として洪水画像の分類精度を向上させました。

今回は、OCI 生成AIサービス(OCI Generative AI Service)に Cohere Embed 4cohere.embed-v4.0)に埋め込みモデルを差し替えて同じ検証を行い、Embed 3 との精度差を確認してみました。分類器のアーキテクチャやハイパーパラメータチューニングの方法は前回と同一です。

Cohere Embed 4 とは

Cohere Embed 4(cohere.embed-v4.0)は、Cohere 社の最新のマルチモーダル埋め込みモデルで、OCI 生成AIサービス上でオンデマンドおよび専用AIクラスター(Dedicated AI Cluster)の両方で利用可能です。

Embed 3 からの主な変更点は以下のとおりです。

項目 Embed 3 Embed 4
埋め込みベクトルの次元 1,024 1,536
最大入力トークン数 512 128,000
テキストと画像の混在入力 非対応 対応(※)

今回の検証では、画像単体の埋め込みのみを使用していますので、混在入力などの新機能は活用していませんが、埋め込みベクトルの品質向上が分類精度にどう影響するかを確認します。
※テキストと画像を1つのベクトルへ埋め込む新機能は、この記事執筆時点では OCI 生成AIサービスでは未対応です。対応したら何か試してみたいです。

結果概要

Embed 4 での改善結果(評価データ)

指標 ゼロショット(Embed 4) 線形分類器・F2最適化(Embed 4) 改善率
正解率(Accuracy) 0.9667 0.9689 +0.23%
適合率(Precision) 0.9231 0.8689 -5.87%
再現率(Recall) 0.8136 0.8983 +10.42%
F1スコア 0.8649 0.8833 +2.14%
F2スコア 0.8333 0.8923 +7.07%

注目ポイント(Embed 3 との違い)

Embed 3 ではゼロショットの適合率が 40.0% と低く、線形分類器を導入して 75.7% まで大幅に改善することがメインテーマでした。一方、Embed 4 ではゼロショットの時点で適合率が 92.3% と非常に高いため、線形分類器の役割が異なります。

  • Embed 4 のゼロショットは適合率は高いが再現率が 81.4% にとどまる(見逃しがやや多い)
  • 線形分類器を導入することで再現率が 89.8% に向上(+10.4ポイント)
  • 適合率は 92.3% → 86.9% とやや低下するが、F2スコアは 83.3% → 89.2% に向上

つまり、Embed 3 では「誤検知を減らす」ことが線形分類器の主な効果でしたが、Embed 4 では「見逃しを減らす」ことが主な効果となっています。

アプローチ

前回と同じアプローチです。

  1. Cohere Embed 4 で画像の埋め込みベクトルを生成
  2. 分類クラスのキャプション埋め込みベクトルを生成
  3. 画像埋め込みベクトルに対して線形分類器をトレーニング
  4. F2スコアを最大化するハイパーパラメータを探索
  5. 最適化されたモデルで予測を実施

F2スコアを用いる理由は前回と同じく、洪水検出においては「見逃し」(偽陰性、False Negative)を最小化することが重要だからです。

F2 = 5 × (Precision × Recall) / (4 × Precision + Recall)

環境とデータセット

前回の記事と同様に、FloodNet Datasetを使用しています。

各データの件数
訓練データ数: 1445
検証データ数: 448
評価データ数: 450
埋め込みベクトルの次元: 1536

それぞれのデータセットに同程度の割合で正例(洪水:Flooded)が含まれていること、多数クラス(non-flooded)と少数クラス(flooded)には大きな不均衡があることは前回と同じです。

データ 画像数 non-flooded flooded
訓練データ 1,445 1,263 182
検証データ(テスト) 448 390 58
評価データ 450 391 59

線形分類器のトレーニング

モデル選択とハイパーパラメータ最適化

前回と同様、2つの線形分類器を検討しました。

  1. ロジスティック回帰
  2. 線形SVM

F2スコアを最大化するためのハイパーパラメータをグリッドサーチで最適化しています。

トレーニング結果

ロジスティック回帰の出力例
ロジスティック回帰のF1交差検証スコア: 0.8426 ± 0.0858
ロジスティック回帰のF2交差検証スコア: 0.8352 ± 0.0916
ロジスティック回帰の最適パラメータ(F2最適化): {'classifier__C': 5e-05, 'classifier__class_weight': {0: 1, 1: 7}}
ロジスティック回帰の最高F2スコア: 0.8841
線形SVMの出力例
線形SVMのF1交差検証スコア: 0.7743 (+/- 0.1368)
線形SVMのF2交差検証スコア: 0.8105 (+/- 0.1604)
線形SVMの最適パラメータ(F2最適化): {'classifier__C': 0.001, 'classifier__class_weight': None}
線形SVMの最高F2スコア: 0.8539

前回(Embed 3)と比較すると、ロジスティック回帰のグリッドサーチ最高F2スコアは 0.8442 → 0.8841 に向上しています。最適パラメータは class_weight={0: 1, 1: 7} と同傾向で、少数クラス(flooded)に大きな重みづけをする設定が最適でした。

モデルの評価(検証データ)

出力例(ロジスティック回帰(F2最適化) の評価)
===== ロジスティック回帰(F2最適化) の評価 =====
正解率(Accuracy): 0.9732
適合率(Precision): 0.8966
再現率(Recall): 0.8966
F1スコア: 0.8966
F2スコア: 0.8966

分類レポート:
              precision    recall  f1-score   support

 non-flooded       0.98      0.98      0.98       390
     flooded       0.90      0.90      0.90        58

    accuracy                           0.97       448
   macro avg       0.94      0.94      0.94       448
weighted avg       0.97      0.97      0.97       448
出力例(線形SVM(F2最適化) の評価)
===== 線形SVM(F2最適化) の評価 =====
正解率(Accuracy): 0.9732
適合率(Precision): 0.9259
再現率(Recall): 0.8621
F1スコア: 0.8929
F2スコア: 0.8741

分類レポート:
              precision    recall  f1-score   support

 non-flooded       0.98      0.99      0.98       390
     flooded       0.93      0.86      0.89        58

    accuracy                           0.97       448
   macro avg       0.95      0.93      0.94       448
weighted avg       0.97      0.97      0.97       448

ロジスティック回帰モデルが F2 の最適化(再現率を重視しながら適合率とのバランス)という観点では優れていると評価できます。 これは前回(Embed 3)と同じ結論です。

評価

評価データ(訓練やモデル選定に使っていないデータ)をロジスティック回帰モデルで分類した結果は以下のとおりでした。

最終評価
=== 評価データでの最終評価(F2最適化モデル) ===
===== 評価データでの最良モデル(F2最適化) の評価 =====
正解率(Accuracy): 0.9689
適合率(Precision): 0.8689
再現率(Recall): 0.8983
F1スコア: 0.8833
F2スコア: 0.8923

分類レポート:
              precision    recall  f1-score   support

 non-flooded       0.98      0.98      0.98       391
     flooded       0.87      0.90      0.88        59

    accuracy                           0.97       450
   macro avg       0.93      0.94      0.93       450
weighted avg       0.97      0.97      0.97       450

ゼロショットとの比較

ゼロショットとの比較
===== モデル比較: コサイン類似度 vs F2最適化線形分類器 =====
コサイン類似度の正解率: 0.9667
F2最適化線形分類器の正解率: 0.9689
改善率: 0.23%

コサイン類似度の適合率: 0.9231
F2最適化線形分類器の適合率: 0.8689
改善率: -5.87%

コサイン類似度の再現率: 0.8136
F2最適化線形分類器の再現率: 0.8983
改善率: 10.42%

コサイン類似度のF1スコア: 0.8649
F2最適化線形分類器のF1スコア: 0.8833
改善率: 2.14%

コサイン類似度のF2スコア: 0.8333
F2最適化線形分類器のF2スコア: 0.8923
改善率: 7.07%
  • 洪水の画像を正しく洪水と分類できているかどうかを表す再現率(Recall)は、ゼロショットの 81.4% から線形分類器では 89.8% へ +10.4ポイントの大幅な向上を示しています
  • F2スコアは 83.3% から 89.2% へ +7.1ポイント向上しています
  • 適合率はゼロショットの 92.3% から 86.9% へやや低下していますが、これは再現率を重視する F2スコア最適化の意図どおりの結果です

誤分類された画像の分析

評価データ450枚のうち、誤分類は 14枚 でした。

分類 件数
正しく分類された画像 436
誤分類された画像 14
うち偽陰性(見逃し) 6
うち偽陽性(誤検知) 8

偽陰性の画像を確認すると、信頼度スコアが閾値付近のものが含まれており、浸水域がごく一部にとどまる画像や、水面と舗装路面の区別が難しい画像などが該当しています。

Embed 3 vs Embed 4 の全体比較

前回の精度向上編(Embed 3)と今回(Embed 4)の結果をまとめて比較します。

ゼロショット(コサイン類似度ベース)の比較

指標 Embed 3 Embed 4 差分
正解率(Accuracy) 0.8111 0.9667 +15.56ポイント
適合率(Precision) 0.4000 0.9231 +52.31ポイント
再現率(Recall) 0.8814 0.8136 -6.78ポイント
F1スコア 0.5503 0.8649 +31.46ポイント
F2スコア 0.7104 0.8333 +12.29ポイント

ゼロショットの段階で Embed 4 は Embed 3 を大きく上回っています。特に適合率が 40.0% → 92.3% と劇的に改善されており、Embed 4 の画像埋め込みの品質が大幅に向上していることがわかります。ただし再現率は若干低下しており、Embed 4 のゼロショットは「慎重に(確信が持てるものだけ浸水と判定する)」傾向があるようです。

線形分類器(F2最適化)の比較

指標 Embed 3 Embed 4 差分
正解率(Accuracy) 0.9489 0.9689 +2.00ポイント
適合率(Precision) 0.7571 0.8689 +11.18ポイント
再現率(Recall) 0.8983 0.8983 ±0
F1スコア 0.8217 0.8833 +6.16ポイント
F2スコア 0.8660 0.8923 +2.63ポイント
誤分類数 14

線形分類器を組み合わせた場合でも、Embed 4 は Embed 3 を全指標で上回っています(再現率は同値)。特筆すべきは適合率が 75.7% → 86.9% と +11.2ポイント改善されている点で、Embed 4 の高品質な埋め込みが線形分類器の学習にも良い影響を与えていることがわかります。

検証データでのモデル評価の比較

指標 Embed 3 Embed 4 差分
正解率(Accuracy) 0.9688 0.9732 +0.44ポイント
適合率(Precision) 0.8667 0.8966 +2.99ポイント
再現率(Recall) 0.8966 0.8966 ±0
F1スコア 0.8814 0.8966 +1.52ポイント
F2スコア 0.8904 0.8966 +0.62ポイント

まとめ

OCI 生成AIサービスの Cohere Embed 4 を使ったドローン空撮画像の洪水判定について検証しました。

Embed 4 の効果

  • ゼロショットの段階で大幅な精度向上: Embed 3 ではゼロショットの適合率が 40.0% と実用に課題がありましたが、Embed 4 では 92.3% と劇的に改善。埋め込みモデルの世代交代の効果が顕著に現れました
  • 線形分類器との組み合わせでさらに再現率を改善: Embed 4 のゼロショットでは再現率がやや低め(81.4%)でしたが、線形分類器を導入することで 89.8% に向上。F2スコアも 89.2% を達成しました
  • Embed 3 対比で全指標が改善(線形分類器使用時): 特に適合率が +11.2ポイント改善され、誤検知の少ない分類が実現できています

OCI 生成AIサービスで利用可能に

前回の Embed 3 の検証では Cohere 社の API を直接利用していましたが、Embed 4 は OCI 生成AIサービス上で利用可能です。OCI の他のサービス(Oracle Database の AI Vector Search など)と組み合わせて、一貫した ML パイプラインを OCI 上で構築できる点も実用上のメリットです。

今後の展望

洪水判定のような用途に本格的に導入するためには、再現率、適合率ともにさらに改善が必要かと思います。Embed 4 は混在入力(テキストと画像を同一ペイロードで処理)にも対応しているため、画像にメタデータ(撮影場所、日時、天候情報など)をテキストとして付加した埋め込みを生成することで、さらなる精度向上が期待できるかもしれません。

参考

7
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?