Help us understand the problem. What is going on with this article?

写真の情景を表現するオノマトペ

Neural Network Console Challenge

ソニーが開発したプログラミングなしでディープランニングを実装できるツールである Neural Network Console(以降 NNC)を用いたコンテストのテーマとして「写真の情景を表現するオノマトペ」を作成

  • 内容:NNC を用いて PIXTA の写真素材を画像分類
  • 期間:2020年3月4日(水) - 2020年3月27日(金)
  • リンク: Neural Network Console Challenge

もともと私自身写真が好きで PIXTA の1万枚の画像に興味があったことと、Neural Network を勉強するのにちょうど良いきっかけと思い応募。4つのテーマのうち、『人物画像を NNC で学習させ新しいオノマトペ(擬音語/擬声語/擬態語)の画像カテゴリ分類を作り出す』のコンテストに参加

Neural Network の設計と学習

設計の方向性

  • 写真全体の雰囲気で分類
    PIXTA の画像が情景に合わせた色合いに出来上がっているので、色合いから情景ごとに分類し、それぞれオノマトペを当てはめた。

  • 情景の分類

    1. 海、空などを基調とした画像
    2. 森林や草木などのを基調とした画像
    3. 古い町並みや紅葉などオレンジ系(暖色系)の画像
    4. 日没間際や夜景などの全体的に輝度が低い(ダークブルー系)画像
    5. オフィスや会議などの白黒系の色が多い画像
    6. 複数の人が談笑している明るい雰囲気の画像
    7. 人の写っていない料理の画像(おまけ)
  • オノマトペ
    上記1~7の分類に対してそれぞれ以下のオノマトペを割り当てた。

    1. キラキラ
    2. さっそう
    3. しっとり
    4. しっぽり
    5. シャキッ!
    6. わいわい
    7. ごくり

アノテーション

画像ファイルには「絞り値」、「露出時間」、「ISO速度」、「焦点距離」等の情報が含まれるものの、これらの情報から機械的に振り分けることは難しいと判断し、目視にて各場景の特徴量が強く出ているように見える画像を選び 1万枚の中から 808枚を選択した。今回は時間の都合上、特徴量の強く出ている写真のみを抽出したが、時間があればもう少し特徴量の少ない写真を用いた場合の結果についても試してみたい。
下記が画像分類例

  • キラキラ

image.png

学習用データ提供:PIXTA
  • さっそう

image.png

学習用データ提供:PIXTA
  • しっとり

image.png

学習用データ提供:PIXTA
  • しっぽり

image.png

学習用データ提供:PIXTA
  • シャキッ!

image.png

学習用データ提供:PIXTA
  • わいわい

image.png

学習用データ提供:PIXTA
  • ごくり

image.png

学習用データ提供:PIXTA

データセットの準備

目視で分類したデータを 64x64 にリサイズし、80% を Train data、20% を Test Dataとして使用

NNCのモデルの作成

下記に示す Convolutional Neural Network で Train、Test を実施
image.png

学習の精度向上

最初の Convolution の Kernel Shape を 7x7、5x5、3x3 の3通りについてテスト。それぞれの結果は以下の通りとなった。

Kernel Shape 7x7 5x5 3x3
Accuracy 0.9135 0.9506 0.9506
Avg.Precision 0.8954 0.9254 0.9410
Avg.Recall 0.9038 0.9422 0.9555
Avg.F-Measures 0.8961 0.9308 0.9467

こちらが一番精度の高かった 3x3 の Confusion Matrix。
image.png

y:label=1 「さっそう」を y'=4 「シャキッ!」と誤検出しているケースがいくつかあった。「さっそう」の中に下記のようにいくつか黒色の多い画像が含まれていたのが原因と推測し、こちらを除外して再度学習させたところ以下のような結果になった。なお一部画像除外後の画像の枚数は合計771枚である。
image.png

学習用データ提供:PIXTA

「さっそう」から除外した画像と結果

image.png

その他の画像の分類

今回作成したモデルで1万枚の全画像を分類した。今回タイトルに設定した「写真の情景を表現するオノマトペ」には適合しない画像についても分類を実施し、意図した特徴量にて画像を分類できているかを確認することができた。以下分類結果の抜粋である。

  • キラキラ(y'_0 の確率が高い画像)

    image.png

    学習用データ提供:PIXTA
  • さっそう(y'_1 の確率が高い画像)
    image.png

    学習用データ提供:PIXTA
  • しっとり(y'_2 の確率が高い画像)
    image.png

    学習用データ提供:PIXTA
  • しっぽり(y'_3 の確率が高い画像)
    image.png

    学習用データ提供:PIXTA
  • シャキッ!(y'_4 の確率が高い画像)
    image.png

    学習用データ提供:PIXTA
  • わいわい(y'_5 の確率が高い画像)
    image.png

    学習用データ提供:PIXTA
  • ごくり(y'_6 の確率が高い画像)
    image.png

    学習用データ提供:PIXTA

まとめ

今回初めて NNC を使用した画像分類を実施し、

  • NNC がとても使い勝手の良いツールであること
  • 色合いや人数、人の有無などを高精度で識別し画像を分類可能なこと
  • 目的に合った Dataset を準備することの重要性

について理解することができ有意義な検討を行うことができた。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした