ごはんと飲み物は紙一重

このブログはモチベーションアップのために情報工学関連について記事を更新していこうと思います。三日坊主にならないよう頑張ります。

【俺妹】俺の黒猫をディープラーニングで精度を高めないわけがない No.1

1年勉強した成果を見せる

去年の夏,深層学習のコトハジメとして初めて自分自身でオリジナルとしてやってみた画像認識だけど,初めて触ることが多く結局ソースや学習など様々な面で課題を残したままスルーしてしまったので再挑戦をしてみようかと.

データセットの見直し

正直データを回転したデータはあまり結果としてかさ増しした意味はなかったので,別の方法で整えてみようと思う.

回転のデータを削除(かさ増しした分の削除)

とりあえずはデータ整理.貴重なデータはしっかり活用していかないと.というわけでここはシェルさんに頼る形で.

num=`ls -1 | wc -l`
start=`expr $num \/ 5 \* 2`
for i in `seq $start $num`
    do
        rm $i.jpg
    done

まずはかさ増しした分を削除.数値とかはうまい具合に調整して使った.なんで2/5が良かったのかはわかんね.

学習画像の生成

今回見直す箇所としては,

  • データのかさ増し(様々な方法で)
  • 画像の正規化

前回制度が96.9%といえど本当にその精度なのか?と疑ってしまうような結果だったので,まずは学習データの見直しから.

画像の正規化

前回のデータはカラーのまま学習データとして通したので,今回はよりデータを学習しやすいように,

  • 画像の明度(輝度)の調整
  • グレースケール化

の2個を行う.正規化はそんなに難しくなかったので,dataset_adjust.ipynbに記述して変換.

変換前

f:id:ST_ha1cyon:20170516232443j:plainf:id:ST_ha1cyon:20170516232444j:plainf:id:ST_ha1cyon:20170516232655j:plainf:id:ST_ha1cyon:20170516232656j:plainf:id:ST_ha1cyon:20170516232657j:plainf:id:ST_ha1cyon:20170516232658j:plain

変換後

f:id:ST_ha1cyon:20170516232536j:plainf:id:ST_ha1cyon:20170516232635j:plainf:id:ST_ha1cyon:20170516232537j:plainf:id:ST_ha1cyon:20170516232637j:plainf:id:ST_ha1cyon:20170516232638j:plainf:id:ST_ha1cyon:20170516232639j:plain

かなりいい感じ.次はいろいろなフィルタを使ってデータのかさ増しをやっていこうと思う.

↓一応githubで管理もどきしてみてる. github.com