2021年8月19日(木)
さて一昨日ぐらいから何回も繰り返していた直近の目標が達成された件であるが達成されていなかったかもしれない(デデドゥン!!!)。
画像分類器として用いる畳み込みニューラルネットワーク(CNN)は、用いるライブラリによってデータセットの作り方が異なる。
自分は Python の Tnsorflow を使っている。
画像をそのままデータセットとして用いる方法と、画像を数値に変換してデータセットに用いる方法がある。
最初に作ったのは画像を数値に変換する方法を採用したモデルだった。
このモデルでは Loss はゼロだし Accuracy は 100% だしで、本当にそうなら割とヤバい代物が出来上がった感がムンムンしていた。
今日は画像をそのままデータセットに落とし込んで学習データにするモデルを作成した。
このモデルの最適解はまだ見つけられていないが、挙動を見た感じでは Loss がゼロになったり Accuracy が 100% になったりすることは無さそうである。
つまり最初に作ったモデルにやはり問題がありそうだった。
予想としては「画像を数値に変換してからデータセットに落とし込む工程」に欠陥があるんだと思う。
学習データを1つにしても Loss ゼロ Accuracy 100% はどう考えてもおかしい気がする。
画像をそのまま分類すると言っても内部で数値化するわけだから、プログラム的には数値の方が扱いやすくてこんな結果になったのかもしれないとも考えている。
取り敢えずは数値化するモデルは、本当に正しく数値ができているのか、できているならその数値を正確にデータセット化できているのかをしっかり確認する必要がある。