前回、TensorFlowのC++APIでMNISTを作ったときに気づいたのですが、MNISTってほとんどがPythonで書かれていて、C言語で書かれたもはほとんどみあたりません。
MNISTって簡単だからC言語の標準ライブラリ関数だけでかけるんじゃない?
おじさん、世の中にないものは作りたくなってしまう・・・。
大学生とかが課題ででそうだけどなぁ。
数時間でできそうなので、C言語で書かれたシンプルなMNISTを作ってみました。
コードはこちら。
https://github.com/yomei-o/Tiny-MNIST
---------------------------
[train 100] 0.610000
[train 200] 0.720000
[train 300] 0.810000
[train 400] 0.860000
[train 500] 0.900000
[train 600] 0.890000
[train 700] 0.830000
[train 800] 0.900000
[train 900] 0.880000
[train 1000] 0.930000
[train 1100] 0.920000
[train 1200] 0.920000
[train 1300] 0.890000
[train 1400] 0.910000
[train 1500] 0.840000
[train 1600] 0.860000
[train 1700] 0.930000
[train 1800] 0.930000
[train 1900] 0.870000
[train 2000] 0.960000
--------------------------------------------------------
--------------------------------------------------------
--------------------------------------------------------
--------------------------------------------------------
--------------------------------------------------------
--------------------------------------------------------
--------------------------------------11111111----------
----------------------------------111111111111----------
--------------------------1111111111111111--------------
----------------111111111111111111111111----------------
--------------111111111111111111111111------------------
--------------111111111111----11111111------------------
----------------------------11111111--------------------
----------------------------11111111--------------------
--------------------------11111111----------------------
--------------------------111111------------------------
------------------------111111--11----------------------
----------------11111111111111111111--------------------
----------------11111111111111111111--------------------
------------------1111111111----------------------------
--------------------111111------------------------------
--------------------111111------------------------------
--------------------111111------------------------------
------------------111111--------------------------------
------------------111111--------------------------------
------------------1111----------------------------------
--------------------------------------------------------
--------------------------------------------------------
0: 0.000501
1: 0.160337
2: 0.023977
3: 0.000703
4: 0.005110
5: 0.005704
6: 0.002674
7: 0.715114
8: 0.043781
9: 0.042101
------------------------
なんかできた。
学習がめんどくさいので2000回くらいしかやっていませんが、10000回くらいやればもっと正解率が上がるはず。
C言語でTensorflowとか使わなくてもMNISTって簡単に作れんだね。
0 件のコメント:
コメントを投稿