teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

6

2021/05/08 01:54

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -252,4 +252,5 @@
252
252
  ・・・というかこれもう、元のプログラムに即して、画像からテキストファイルを作成し、そのテキストファイルを読み込む、みたいにした方がいいんでしょうか・・・?
253
253
 
254
254
  ちょっとミスを見つけたんですが、テストの所一部record使わないとrecord使ってる意味がないですね、
255
+
255
- だミスあるかも知れなぐには編集ません
256
+ まあ。。元はcsv読み込んでいのだら、コードでcsv作成して読み込んだ方が良いですかね、色々ややこいし

5

追記しましたー。

2021/05/08 01:54

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -6,65 +6,8 @@
6
6
 
7
7
  ```python
8
8
  from google.colab import drive
9
- drive.mount('/content/drive')
10
9
 
11
- import sys
12
- import numpy as np
13
10
 
14
- sys.path.append('/content/drive/My Drive')
15
-
16
- import ActivationFunction as AF
17
- from PIL import Image
18
-
19
- # PILで開いたうえでデータをNumpy形式にする
20
- # (例えばJPEGは圧縮されていてNumpyな配列になっていないので、
21
- # そこからNumpyのデータ空間(?)に持ってくる必要がある)
22
- tefilename = "50.png"
23
- teimg = Image.open("drive/My Drive/mnist_dataset/" + tefilename)
24
- teimg = teimg.resize((10, 10))
25
- teimg = np.asarray(teimg)
26
-
27
- def extract(x, y):
28
- # カラー画像の時Gだけ抜き取りたい
29
- if len(x.shape) == 3:
30
- h, w, ch = x.shape
31
-
32
- # RGBのGだけ抜き取りたい
33
- return x[:,:,y]
34
-
35
- v_max, v_min = 300, 200
36
-
37
- def diff(x):
38
- imgrows, lenrows, imgcolumns, lencolumns = [], [], [], []
39
- for (img, imgt) in zip(x, x.T):
40
- rows = img[(v_min<img)&(v_max>img)]
41
- columns = imgt[(v_min<imgt)&(v_max>imgt)]
42
- imgrows.append(rows)
43
- lenrows.append(len(rows))
44
- imgcolumns.append(columns)
45
- lencolumns.append(len(columns))
46
- return lenrows + lencolumns
47
-
48
- test_data_list = []
49
-
50
- test_data_list.append([0] + diff(extract(teimg, 1))) # 略
51
-
52
- print("test_data_list" ,test_data_list)
53
-
54
- # 見本データに対しても同様に
55
- # exについて同様に
56
- training_data_list = []
57
-
58
- for i in range(10):
59
- for e in range(1):
60
- trad = Image.open("drive/My Drive/mnist_dataset/" + str(10*i+e) + ".png")
61
- trad = trad.resize((10, 10))
62
- trad = np.asarray(trad)
63
- #g #b #r 抽出後diffしてappend
64
- training_data_list.append([i] + diff(extract(trad, 1))) # 略
65
-
66
- print("training_data_list" ,training_data_list)
67
-
68
11
  中略(以下に書いたコード参照)
69
12
 
70
13
  scoreboard_array = np.asarray(scoreboard)
@@ -149,7 +92,7 @@
149
92
  # exについて同様に
150
93
  training_data_list = []
151
94
 
152
- for i in range(1):
95
+ for i in range(10):
153
96
  for e in range(1):
154
97
  trad = Image.open("drive/My Drive/mnist_dataset/" + str(10*i+e) + ".png")
155
98
  trad = trad.resize((10, 10))
@@ -210,9 +153,11 @@
210
153
  # 隠れ層
211
154
  x_h = np.dot(self.w_ih, o_i)
212
155
  o_h = self.af(x_h)
156
+ print("o_h" ,o_h)
213
157
 
214
158
  # 出力層
215
159
  x_o = np.dot(self.w_ho, o_h)
160
+ print("x_o" ,x_o)
216
161
  o_o = self.af(x_o)
217
162
 
218
163
  return o_o
@@ -249,11 +194,11 @@
249
194
  # テスト
250
195
  scoreboard = []
251
196
  for record in test_data_list:
252
- idata = (np.array(test_data_list[0][1:]) / 255.0 * 0.99) + 0.01
197
+ idata = (np.array(record[1:]) / 255.0 * 0.99) + 0.01
253
198
  predict = nn.feedforward(idata)
254
199
  plabel = np.argmax(predict)
255
200
  np.set_printoptions(threshold=10000)
256
- print("predict" ,predict)
201
+ print("predict=o_o" ,predict)
257
202
  print("plabel" ,plabel)
258
203
  pass
259
204
 
@@ -264,27 +209,29 @@
264
209
 
265
210
  Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount("/content/drive", force_remount=True).
266
211
  test_data_list [[0, 10, 4, 2, 4, 4, 4, 4, 4, 4, 8, 10, 4, 2, 2, 6, 6, 2, 2, 4, 10]]
267
- training_data_list [[0, 10, 4, 2, 4, 4, 4, 4, 4, 4, 8, 10, 4, 2, 2, 6, 6, 2, 2, 4, 10]]
212
+ training_data_list [[0, 10, 4, 2, 4, 4, 4, 4, 4, 4, 8, 10, 4, 2, 2, 6, 6, 2, 2, 4, 10], [1, 10, 8, 5, 5, 7, 7, 8, 7, 3, 4, 10, 10, 6, 6, 1, 1, 3, 8, 9, 10], [2, 10, 4, 3, 8, 7, 6, 6, 7, 2, 2, 10, 6, 5, 4, 3, 3, 2, 4, 8, 10], [3, 10, 4, 2, 7, 6, 5, 7, 5, 3, 5, 10, 7, 5, 6, 4, 4, 1, 2, 5, 10], [4, 10, 7, 6, 5, 5, 5, 2, 2, 7, 8, 10, 7, 6, 6, 6, 2, 1, 1, 8, 10], [5, 10, 3, 8, 7, 3, 5, 7, 4, 3, 9, 10, 7, 3, 5, 5, 5, 4, 4, 6, 10], [6, 10, 5, 5, 7, 3, 3, 5, 4, 4, 8, 10, 5, 3, 3, 5, 4, 4, 3, 7, 10], [7, 10, 2, 4, 7, 7, 7, 7, 7, 7, 10, 10, 9, 7, 5, 4, 4, 5, 6, 8, 10], [8, 8, 4, 4, 4, 4, 2, 5, 4, 4, 8, 10, 5, 2, 3, 4, 4, 2, 2, 5, 10], [9, 10, 4, 2, 5, 5, 3, 4, 6, 4, 7, 10, 7, 3, 2, 4, 4, 4, 2, 4, 10]]
268
213
  #epoch 0
269
- train: 0 / 1
214
+ train: 0 / 10
270
215
  idata [0.04882353 0.02552941 0.01776471 0.02552941 0.02552941 0.02552941
271
216
  0.02552941 0.02552941 0.02552941 0.04105882 0.04882353 0.02552941
272
217
  0.01776471 0.01776471 0.03329412 0.03329412 0.01776471 0.01776471
273
218
  0.02552941 0.04882353]
274
219
  tdata [0.99 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01]
220
+ 中略
221
+ tdata [0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.99]
222
+ o_h [[0.44149295]
223
+ [0.47443682]
224
+ 中略
225
+ [0.5014706 ]]
226
+ x_o [[ -2.09106513]
227
+ 中略
228
+ [ -2.25102428]]
275
- predict [[9.64636153e-01]
229
+ predict=o_o [[1.09968282e-01]
276
- [2.99907387e-01]
230
+ 中略
277
- [1.16165869e-06]
278
- [9.99965583e-01]
279
- [1.79569353e-01]
280
- [1.86221042e-01]
281
- [1.19130905e-02]
231
+ [9.52611495e-02]]
282
- [1.09462110e-02]
283
- [1.15735189e-05]
284
- [3.39788516e-04]]
285
- plabel 3
232
+ plabel 6
286
233
  performance: nan
287
- /usr/local/lib/python3.7/dist-packages/ipykernel_launcher.py:160: RuntimeWarning: invalid value encountered in double_scalars
234
+ /usr/local/lib/python3.7/dist-packages/ipykernel_launcher.py:162: RuntimeWarning: invalid value encountered in double_scalars
288
235
 
289
236
  まあつまり、trainingは、画像番号0しか入力していないのに、画像番号は存在しない3になっており、これは毎度引っかかっているlist in list構造問題であり、
290
237
  ```python

4

ミス発見しました。

2021/05/08 01:03

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -302,4 +302,7 @@
302
302
  これを画像番号2のデータ・・・
303
303
  として処理したいのですが、どうすればいいんでしょうか。]
304
304
 
305
- ・・・というかこれもう、元のプログラムに即して、画像からテキストファイルを作成し、そのテキストファイルを読み込む、みたいにした方がいいんでしょうか・・・?
305
+ ・・・というかこれもう、元のプログラムに即して、画像からテキストファイルを作成し、そのテキストファイルを読み込む、みたいにした方がいいんでしょうか・・・?
306
+
307
+ ちょっとミスを見つけたんですが、テストの所一部record使わないとrecord使ってる意味がないですね、
308
+ まだミスあるかも知れないので、すぐには編集しません。

3

補足致しました。

2021/05/08 00:43

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -300,4 +300,6 @@
300
300
  これを画像番号1のデータ
301
301
  [1, 10, 8, 5, 5, 7, 7, 8, 7, 3, 4, 10, 10, 6, 6, 1, 1, 3, 8, 9, 10]
302
302
  これを画像番号2のデータ・・・
303
- として処理したいのですが、どうすればいいんでしょうか。
303
+ として処理したいのですが、どうすればいいんでしょうか。]
304
+
305
+ ・・・というかこれもう、元のプログラムに即して、画像からテキストファイルを作成し、そのテキストファイルを読み込む、みたいにした方がいいんでしょうか・・・?

2

追記致しました。

2021/05/07 13:20

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -1,3 +1,7 @@
1
+ 自分でニューラルネットワークを作ろう
2
+ https://qiita.com/takahiro_itazuri/items/d2bea1c643d7cca11352#comment-a59cd26161ee56ea1220
3
+ を元に作ったコードなんですが・・・。
4
+
1
5
  コードと出力結果はBA決定後、中略します。
2
6
 
3
7
  ```python
@@ -61,6 +65,100 @@
61
65
 
62
66
  print("training_data_list" ,training_data_list)
63
67
 
68
+ 中略(以下に書いたコード参照)
69
+
70
+ scoreboard_array = np.asarray(scoreboard)
71
+ print('performance: ', scoreboard_array.sum() / scoreboard_array.size)
72
+ ```
73
+
74
+ 以下画像
75
+ 0.png~9.png
76
+ ![イメージ説明](e4eba86e1c5e4829b23d390423937c52.png)
77
+ 10.png~19.png
78
+ ![イメージ説明](5555d091671f64cf9b7b57ee4e388f35.png)
79
+ 20.png~29.png
80
+ ![イメージ説明](da47018600947164c60a2c475c7bc168.png)
81
+ 以下同様。
82
+ ![イメージ説明](ea1d58a032b2a5fc3d0b4d5f5eadbfad.png)
83
+ ![イメージ説明](d61d67edbceac0a92a4cff446de213ca.png)
84
+ ![イメージ説明](6a1ae91a8a6bc83ab4aae502c25725ca.png)
85
+ ![イメージ説明](af54edf1cce86248b854ad53f81667fe.png)
86
+ ![イメージ説明](64d64e6f0bdbcf3e0329d2cdbd61a9f8.png)
87
+ ![イメージ説明](dc1026fecda6aa5457e34aff36b065f1.png)
88
+ ![イメージ説明](5c87798f3b4c32fbd871afad7dc57bea.png)
89
+
90
+ 出力結果
91
+ Mounted at /content/drive
92
+ test_data_list [[0
93
+ 中略
94
+ /usr/local/lib/python3.7/dist-packages/ipykernel_launcher.py:160: RuntimeWarning: invalid value encountered in double_scalars
95
+
96
+ plabelが判定結果の画像ファイル名前です、testファイルは50.pngそのものですので、5と出力させたいのですが、9になったり7になったりしてしまいます。
97
+
98
+
99
+ というか気づいたのですが、こちらのコード
100
+
101
+ ```python
102
+ from google.colab import drive
103
+ drive.mount('/content/drive')
104
+
105
+ import sys
106
+ import numpy as np
107
+
108
+ sys.path.append('/content/drive/My Drive')
109
+
110
+ import ActivationFunction as AF
111
+ from PIL import Image
112
+
113
+ # PILで開いたうえでデータをNumpy形式にする
114
+ # (例えばJPEGは圧縮されていてNumpyな配列になっていないので、
115
+ # そこからNumpyのデータ空間(?)に持ってくる必要がある)
116
+ tefilename = "1.png"
117
+ teimg = Image.open("drive/My Drive/mnist_dataset/" + tefilename)
118
+ teimg = teimg.resize((10, 10))
119
+ teimg = np.asarray(teimg)
120
+
121
+ def extract(x, y):
122
+ # カラー画像の時Gだけ抜き取りたい
123
+ if len(x.shape) == 3:
124
+ h, w, ch = x.shape
125
+
126
+ # RGBのGだけ抜き取りたい
127
+ return x[:,:,y]
128
+
129
+ v_max, v_min = 300, 200
130
+
131
+ def diff(x):
132
+ imgrows, lenrows, imgcolumns, lencolumns = [], [], [], []
133
+ for (img, imgt) in zip(x, x.T):
134
+ rows = img[(v_min<img)&(v_max>img)]
135
+ columns = imgt[(v_min<imgt)&(v_max>imgt)]
136
+ imgrows.append(rows)
137
+ lenrows.append(len(rows))
138
+ imgcolumns.append(columns)
139
+ lencolumns.append(len(columns))
140
+ return lenrows + lencolumns
141
+
142
+ test_data_list = []
143
+
144
+ test_data_list.append([0] + diff(extract(teimg, 1))) # 略
145
+
146
+ print("test_data_list" ,test_data_list)
147
+
148
+ # 見本データに対しても同様に
149
+ # exについて同様に
150
+ training_data_list = []
151
+
152
+ for i in range(1):
153
+ for e in range(1):
154
+ trad = Image.open("drive/My Drive/mnist_dataset/" + str(10*i+e) + ".png")
155
+ trad = trad.resize((10, 10))
156
+ trad = np.asarray(trad)
157
+ #g #b #r 抽出後diffしてappend
158
+ training_data_list.append([i] + diff(extract(trad, 1))) # 略
159
+
160
+ print("training_data_list" ,training_data_list)
161
+
64
162
  # 3層ニューラルネットワーク
65
163
  class ThreeLayerNetwork:
66
164
  # コンストラクタ
@@ -139,6 +237,7 @@
139
237
  if i % 1000 == 0:
140
238
  print(' train: {0:>5d} / {1:>5d}'.format(i, data_size))
141
239
  idata = (np.array(training_data_list[i][1:]) / 255.0 * 0.99) + 0.01
240
+ # 変更の余地あり
142
241
  tdata = np.zeros(onodes) + 0.01
143
242
  tdata[training_data_list[i][0]] = 0.99
144
243
  print("idata" ,idata)
@@ -161,98 +260,44 @@
161
260
  scoreboard_array = np.asarray(scoreboard)
162
261
  print('performance: ', scoreboard_array.sum() / scoreboard_array.size)
163
262
  ```
263
+ の出力結果が以下のようになるわけですが、
164
264
 
165
- 以下画像
166
- 0.png~9.png
167
- ![イメージ説明](e4eba86e1c5e4829b23d390423937c52.png)
168
- 10.png~19.png
169
- ![イメージ説明](5555d091671f64cf9b7b57ee4e388f35.png)
170
- 20.png~29.png
171
- ![イメージ説明](da47018600947164c60a2c475c7bc168.png)
172
- 以下同様。
173
- ![イメージ説明](ea1d58a032b2a5fc3d0b4d5f5eadbfad.png)
174
- ![イメージ説明](d61d67edbceac0a92a4cff446de213ca.png)
175
- ![イメージ説明](6a1ae91a8a6bc83ab4aae502c25725ca.png)
176
- ![イメージ説明](af54edf1cce86248b854ad53f81667fe.png)
177
- ![イメージ説明](64d64e6f0bdbcf3e0329d2cdbd61a9f8.png)
178
- ![イメージ説明](dc1026fecda6aa5457e34aff36b065f1.png)
179
- ![イメージ説明](5c87798f3b4c32fbd871afad7dc57bea.png)
180
-
181
- 出力結果
182
- Mounted at /content/drive
183
- test_data_list [[0, 10, 3, 8, 7, 3, 5, 7, 4, 3, 9, 10, 7, 3, 5, 5, 5, 4, 4, 6, 10]]
184
- training_data_list [[0, 10, 4, 2, 4, 4, 4, 4, 4, 4, 8, 10, 4, 2, 2, 6, 6, 2, 2, 4, 10], [1, 10, 8, 5, 5, 7, 7, 8, 7, 3, 4, 10, 10, 6, 6, 1, 1, 3, 8, 9, 10], [2, 10, 4, 3, 8, 7, 6, 6, 7, 2, 2, 10, 6, 5, 4, 3, 3, 2, 4, 8, 10], [3, 10, 4, 2, 7, 6, 5, 7, 5, 3, 5, 10, 7, 5, 6, 4, 4, 1, 2, 5, 10], [4, 10, 7, 6, 5, 5, 5, 2, 2, 7, 8, 10, 7, 6, 6, 6, 2, 1, 1, 8, 10], [5, 10, 3, 8, 7, 3, 5, 7, 4, 3, 9, 10, 7, 3, 5, 5, 5, 4, 4, 6, 10], [6, 10, 5, 5, 7, 3, 3, 5, 4, 4, 8, 10, 5, 3, 3, 5, 4, 4, 3, 7, 10], [7, 10, 2, 4, 7, 7, 7, 7, 7, 7, 10, 10, 9, 7, 5, 4, 4, 5, 6, 8, 10], [8, 8, 4, 4, 4, 4, 2, 5, 4, 4, 8, 10, 5, 2, 3, 4, 4, 2, 2, 5, 10], [9, 10, 4, 2, 5, 5, 3, 4, 6, 4, 7, 10, 7, 3, 2, 4, 4, 4, 2, 4, 10]]
265
+ Drive already mounted at /content/drive; to attempt to forcibly remount, call drive.mount("/content/drive", force_remount=True).
266
+ test_data_list [[0, 10, 4, 2, 4, 4, 4, 4, 4, 4, 8, 10, 4, 2, 2, 6, 6, 2, 2, 4, 10]]
267
+ training_data_list [[0, 10, 4, 2, 4, 4, 4, 4, 4, 4, 8, 10, 4, 2, 2, 6, 6, 2, 2, 4, 10]]
185
268
  #epoch 0
186
- train: 0 / 10
269
+ train: 0 / 1
187
270
  idata [0.04882353 0.02552941 0.01776471 0.02552941 0.02552941 0.02552941
188
271
  0.02552941 0.02552941 0.02552941 0.04105882 0.04882353 0.02552941
189
272
  0.01776471 0.01776471 0.03329412 0.03329412 0.01776471 0.01776471
190
273
  0.02552941 0.04882353]
191
274
  tdata [0.99 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01]
192
- idata [0.04882353 0.04105882 0.02941176 0.02941176 0.03717647 0.03717647
193
- 0.04105882 0.03717647 0.02164706 0.02552941 0.04882353 0.04882353
194
- 0.03329412 0.03329412 0.01388235 0.01388235 0.02164706 0.04105882
195
- 0.04494118 0.04882353]
196
- tdata [0.01 0.99 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01]
197
- idata [0.04882353 0.02552941 0.02164706 0.04105882 0.03717647 0.03329412
198
- 0.03329412 0.03717647 0.01776471 0.01776471 0.04882353 0.03329412
199
- 0.02941176 0.02552941 0.02164706 0.02164706 0.01776471 0.02552941
200
- 0.04105882 0.04882353]
201
- tdata [0.01 0.01 0.99 0.01 0.01 0.01 0.01 0.01 0.01 0.01]
202
- idata [0.04882353 0.02552941 0.01776471 0.03717647 0.03329412 0.02941176
203
- 0.03717647 0.02941176 0.02164706 0.02941176 0.04882353 0.03717647
204
- 0.02941176 0.03329412 0.02552941 0.02552941 0.01388235 0.01776471
205
- 0.02941176 0.04882353]
206
- tdata [0.01 0.01 0.01 0.99 0.01 0.01 0.01 0.01 0.01 0.01]
207
- idata [0.04882353 0.03717647 0.03329412 0.02941176 0.02941176 0.02941176
208
- 0.01776471 0.01776471 0.03717647 0.04105882 0.04882353 0.03717647
209
- 0.03329412 0.03329412 0.03329412 0.01776471 0.01388235 0.01388235
210
- 0.04105882 0.04882353]
211
- tdata [0.01 0.01 0.01 0.01 0.99 0.01 0.01 0.01 0.01 0.01]
212
- idata [0.04882353 0.02164706 0.04105882 0.03717647 0.02164706 0.02941176
213
- 0.03717647 0.02552941 0.02164706 0.04494118 0.04882353 0.03717647
214
- 0.02164706 0.02941176 0.02941176 0.02941176 0.02552941 0.02552941
215
- 0.03329412 0.04882353]
216
- tdata [0.01 0.01 0.01 0.01 0.01 0.99 0.01 0.01 0.01 0.01]
217
- idata [0.04882353 0.02941176 0.02941176 0.03717647 0.02164706 0.02164706
218
- 0.02941176 0.02552941 0.02552941 0.04105882 0.04882353 0.02941176
219
- 0.02164706 0.02164706 0.02941176 0.02552941 0.02552941 0.02164706
220
- 0.03717647 0.04882353]
221
- tdata [0.01 0.01 0.01 0.01 0.01 0.01 0.99 0.01 0.01 0.01]
222
- idata [0.04882353 0.01776471 0.02552941 0.03717647 0.03717647 0.03717647
223
- 0.03717647 0.03717647 0.03717647 0.04882353 0.04882353 0.04494118
224
- 0.03717647 0.02941176 0.02552941 0.02552941 0.02941176 0.03329412
225
- 0.04105882 0.04882353]
226
- tdata [0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.99 0.01 0.01]
227
- idata [0.04105882 0.02552941 0.02552941 0.02552941 0.02552941 0.01776471
228
- 0.02941176 0.02552941 0.02552941 0.04105882 0.04882353 0.02941176
229
- 0.01776471 0.02164706 0.02552941 0.02552941 0.01776471 0.01776471
230
- 0.02941176 0.04882353]
231
- tdata [0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.99 0.01]
232
- idata [0.04882353 0.02552941 0.01776471 0.02941176 0.02941176 0.02164706
233
- 0.02552941 0.03329412 0.02552941 0.03717647 0.04882353 0.03717647
234
- 0.02164706 0.01776471 0.02552941 0.02552941 0.02552941 0.01776471
235
- 0.02552941 0.04882353]
236
- tdata [0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.01 0.99]
237
- predict [[0.09394095]
275
+ predict [[9.64636153e-01]
238
- [0.00319134]
276
+ [2.99907387e-01]
239
- [0.66808832]
277
+ [1.16165869e-06]
278
+ [9.99965583e-01]
279
+ [1.79569353e-01]
280
+ [1.86221042e-01]
281
+ [1.19130905e-02]
240
- [0.99999112]
282
+ [1.09462110e-02]
241
- [0.99994398]
242
- [0.12350166]
283
+ [1.15735189e-05]
243
- [0.99984316]
284
+ [3.39788516e-04]]
244
- [0.0187543 ]
245
- [0.15001126]
246
- [0.19432732]]
247
285
  plabel 3
248
286
  performance: nan
249
287
  /usr/local/lib/python3.7/dist-packages/ipykernel_launcher.py:160: RuntimeWarning: invalid value encountered in double_scalars
250
288
 
289
+ まあつまり、trainingは、画像番号0しか入力していないのに、画像番号は存在しない3になっており、これは毎度引っかかっているlist in list構造問題であり、
290
+ ```python
291
+ predict = nn.feedforward(idata)
292
+ ```
251
- plabelが判定結果の画像ファイル名前testファイルは50.pngそですので、5と出力させたいのです、9にったり7なったりしてしまいます。
293
+ ここfeedforwardしたidataがidataつまりtarining_data1番目list(呼び方が分からなn番目(呼び方分からい)を画像番号n該当するとして計算ており、
252
- ところどころprintしているのは、コードの仕組みを知るためで深い意味はありません。
253
- 1つの画像から取り込む情報ですが、R,G,Bの三種類を取り込んだり、列、行を両方取り込んだりしましたが、結果はあまり変わりません。
254
- 今のところコードに致命的なエラーはないように思えます。
255
- もっと、「似た数列を持つ画像は判定できるようにする」にはどのような改良を加えれば良いでしょうか。
256
- 活性化関数とかを変えたら変わるんでしょうか?
257
294
 
295
+ training_data_list [[0, 10, 4, 2, 4, 4, 4, 4, 4, 4, 8, 10, 4, 2, 2, 6, 6, 2, 2, 4, 10]]
296
+
258
- 何となく、まず考え付いたのが、乱数の影響いので、これを適切な乱数に変えるいう点ですかね?
297
+ 10画像番号0,4画像番号1,2が画像番号2・・・となってのですが実際は(最初のコードに書たよに)
298
+
299
+ training_data_list [[0, 10, 4, 2, 4, 4, 4, 4, 4, 4, 8, 10, 4, 2, 2, 6, 6, 2, 2, 4, 10]
300
+ これを画像番号1のデータ
301
+ [1, 10, 8, 5, 5, 7, 7, 8, 7, 3, 4, 10, 10, 6, 6, 1, 1, 3, 8, 9, 10]
302
+ これを画像番号2のデータ・・・
303
+ として処理したいのですが、どうすればいいんでしょうか。

1

追記しました。

2021/05/07 13:11

投稿

退会済みユーザー
title CHANGED
File without changes
body CHANGED
@@ -253,4 +253,6 @@
253
253
  1つの画像から取り込む情報ですが、R,G,Bの三種類を取り込んだり、列、行を両方取り込んだりしましたが、結果はあまり変わりません。
254
254
  今のところコードに致命的なエラーはないように思えます。
255
255
  もっと、「似た数列を持つ画像は判定できるようにする」にはどのような改良を加えれば良いでしょうか。
256
- 活性化関数とかを変えたら変わるんでしょうか?
256
+ 活性化関数とかを変えたら変わるんでしょうか?
257
+
258
+ 何となく、まず考え付いたのが、乱数の影響が強いので、これを適切な乱数に変える、という点ですかね?