質問編集履歴

2

追記しました。

2020/09/07 06:07

投稿

oinari03
oinari03

スコア59

test CHANGED
File without changes
test CHANGED
@@ -354,6 +354,14 @@
354
354
 
355
355
  個人的にはlossの値がおかしいのだろうなとは思っていますが、具体的にどうおかしくて、どう訂正すればいいのかが見当がつきません。
356
356
 
357
+ bathsizeを4などに増やしたらむしろlossが上がってしまいました...
358
+
359
+
360
+
361
+
362
+
363
+ できれば画像を増やす以外の方法を教えていただけるとありがたいです。
364
+
357
365
 
358
366
 
359
367
  なぜ、lossが振動してしまってるんでしょうかね....

1

ソースコードを変更しました。

2020/09/07 06:07

投稿

oinari03
oinari03

スコア59

test CHANGED
File without changes
test CHANGED
@@ -32,6 +32,8 @@
32
32
 
33
33
  実行コード(train.py)
34
34
 
35
+ バッチサイズ=32,epoch=100
36
+
35
37
  ```
36
38
 
37
39
  import torch
@@ -162,7 +164,7 @@
162
164
 
163
165
  sample_size = len(train_dataset) #129
164
166
 
165
- # num_iters = sample_size // 32 #129 // 32 = 4.03
167
+ # num_iters = sample_size // 32 #129 // 32 = 32.03
166
168
 
167
169
 
168
170
 
@@ -176,7 +178,7 @@
176
178
 
177
179
  #start epoch
178
180
 
179
- epoch_num = 2
181
+ epoch_num = 100
180
182
 
181
183
  for epoch in range(epoch_num): # loop over the dataset multiple times
182
184
 
@@ -188,7 +190,9 @@
188
190
 
189
191
  inputs, labels = data[0].to(device), data[1].to(device)
190
192
 
191
- print(labels)
193
+ # print("label={}".format(labels))
194
+
195
+ print("inputs={}".format(inputs))
192
196
 
193
197
  # zero the parameter gradients
194
198
 
@@ -254,6 +258,8 @@
254
258
 
255
259
 
256
260
 
261
+
262
+
257
263
  ```
258
264
 
259
265
  ### 実行結果
@@ -262,9 +268,9 @@
262
268
 
263
269
  ```
264
270
 
265
- inputs, labels = data[0].to(device), data[1].to(device)
271
+ inputs, labels = data[0].to(device), data[1].to(device)
266
-
272
+
267
- print(labels)
273
+ print("label={}".format(labels))
268
274
 
269
275
  ```
270
276
 
@@ -276,59 +282,59 @@
276
282
 
277
283
  $ python train.py
278
284
 
279
- tensor([0, 0, 1, 0, 1, 1, 0, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0,
285
+ label=tensor([0, 1, 1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 1, 1,
280
-
286
+
281
- 0, 0, 1, 1, 1, 0, 0, 0], device='cuda:0')
287
+ 1, 0, 1, 0, 0, 0, 0, 0], device='cuda:0')
282
-
288
+
283
- torch.Size([32, 9216])
289
+ torch.Size([32, 9216])
284
-
290
+
285
- tensor([0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0, 0,
291
+ label=tensor([0, 0, 0, 0, 1, 1, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 1, 1,
286
-
292
+
287
- 1, 0, 1, 0, 0, 1, 1, 1], device='cuda:0')
293
+ 0, 1, 1, 0, 1, 1, 1, 1], device='cuda:0')
288
-
294
+
289
- torch.Size([32, 9216])
295
+ torch.Size([32, 9216])
290
-
296
+
291
- tensor([0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1,
297
+ label=tensor([0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 0, 1, 1, 1, 0, 0, 1, 0, 1, 1, 1, 0, 1,
292
-
298
+
293
- 0, 1, 0, 0, 1, 0, 1, 0], device='cuda:0')
299
+ 0, 1, 1, 0, 1, 1, 1, 0], device='cuda:0')
294
-
300
+
295
- torch.Size([32, 9216])
301
+ torch.Size([32, 9216])
296
-
302
+
297
- tensor([0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1,
303
+ label=tensor([1, 1, 0, 0, 1, 0, 0, 0, 1, 1, 1, 1, 0, 1, 1, 0, 0, 0, 1, 0, 0, 0, 0, 1,
298
-
304
+
299
- 0, 0, 1, 1, 0, 1, 1, 1], device='cuda:0')
305
+ 1, 1, 0, 0, 1, 1, 0, 0], device='cuda:0')
300
-
306
+
301
- torch.Size([32, 9216])
307
+ torch.Size([32, 9216])
302
-
308
+
303
- tensor([0], device='cuda:0')
309
+ label=tensor([1], device='cuda:0')
304
310
 
305
311
  torch.Size([1, 9216])
306
312
 
307
- tensor([0, 0, 0, 1, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 1, 0, 0, 0, 1,
313
+ label=tensor([0, 1, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 1, 0, 0, 1, 1, 1, 1, 0, 1, 1,
308
-
314
+
309
- 0, 0, 1, 1, 0, 1, 0, 1], device='cuda:0')
315
+ 1, 0, 1, 1, 1, 0, 0, 1], device='cuda:0')
310
-
316
+
311
- torch.Size([32, 9216])
317
+ torch.Size([32, 9216])
312
-
318
+
313
- tensor([1, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 1, 1, 1, 0,
319
+ label=tensor([0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 0, 0,
314
-
320
+
315
- 1, 1, 1, 0, 1, 1, 1, 1], device='cuda:0')
321
+ 1, 0, 0, 1, 1, 0, 1, 1], device='cuda:0')
316
-
322
+
317
- torch.Size([32, 9216])
323
+ torch.Size([32, 9216])
318
-
324
+
319
- tensor([0, 1, 0, 1, 0, 1, 1, 1, 0, 0, 0, 0, 0, 1, 1, 1, 0, 1, 0, 0, 0, 0, 0, 1,
325
+ label=tensor([0, 1, 1, 0, 1, 1, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 1, 1, 0, 1, 1, 1, 0,
320
-
326
+
321
- 0, 0, 1, 0, 0, 0, 1, 1], device='cuda:0')
327
+ 0, 0, 1, 1, 1, 0, 1, 0], device='cuda:0')
322
-
328
+
323
- torch.Size([32, 9216])
329
+ torch.Size([32, 9216])
324
-
330
+
325
- tensor([0, 0, 1, 1, 0, 1, 0, 1, 1, 1, 1, 0, 1, 1, 0, 1, 0, 1, 0, 1, 1, 0, 1, 0,
331
+ label=tensor([0, 0, 0, 0, 1, 0, 1, 1, 1, 0, 0, 0, 1, 0, 0, 0, 1, 1, 0, 1, 1, 0, 1, 0,
326
-
332
+
327
- 0, 1, 0, 1, 1, 0, 0, 0], device='cuda:0')
333
+ 0, 1, 0, 1, 1, 0, 0, 1], device='cuda:0')
328
-
334
+
329
- torch.Size([32, 9216])
335
+ torch.Size([32, 9216])
330
-
336
+
331
- tensor([1], device='cuda:0')
337
+ label=tensor([1], device='cuda:0')
332
338
 
333
339
  torch.Size([1, 9216])
334
340
 
@@ -338,6 +344,12 @@
338
344
 
339
345
 
340
346
 
347
+ 次にinputの中身を表示したいと思います。
348
+
349
+
350
+
351
+
352
+
341
353
  ### まとめ
342
354
 
343
355
  個人的にはlossの値がおかしいのだろうなとは思っていますが、具体的にどうおかしくて、どう訂正すればいいのかが見当がつきません。