Re: [討論] 跑實驗數據要跑多次取平均嗎
路過看到這篇 自己剛好有參與過幾篇ML相關PAPER 來隨手回一下
想到啥就打啥可能有點亂 另外有錯也麻煩推文講一下我再修改
以下只講正規作法 先不討論一些偷雞做法
首先 實驗的目的就是為了證明自己的架構/做法比別人更好
那實驗重點就是要用嚴謹的方式來證明這一點
以下先把資料來源分成三種
1. 公開Dataset
2. 自己產生Dataset (假資料)
3. 自己收集的Dataset (真實資料)
然後看文中似乎沒有很熟所以這邊稍微講一次
Training Dataset : 丟下去訓練的Dataset
Validation Dataset : 訓練"時"驗證的Dataset
Testing Dataset : 訓練"完"驗證Model成效的Dataset
其中Train Val選擇上都比較自由
而Testing則是要固定 才能在不同Model間有統一比較標準
再來"通常"來說 Train Val Testing 應該彼此獨立
不該有重疊資料
但某些做法Train Val可以在特殊情況下重疊 例如要觀察某個Data是否無法學習之類的
而Test則是完全不該重疊
Test有重疊基本上就等於作弊了
----
以下討論不同種類資料來源時的分割法
1:
如果是1的話 那就比較簡單了
Training Validation 使用公開Dataset中Trainning data
數量比例任意
而Testing則是跑完公開Dataset中"所有" Testing data
結果一般而言是選自己Train出來Model中最好的那個
2:
由於是自己產生的假資料
所以可以先假設資料本身算是均勻的
再來因為是自己產生 所以數量理論上可以看自己心情要加多少就多少
那這時候通常是Train Val任意
Test則是參考相關Paper中 他們最後Testset使用的Data數量 再自己稍微加多一點
例如別人通常用2000~4000張來Test的話 自己可以抓個4000張~5000張之類的
選好之後Testing應該要固定
*注意A
由於是自己產的Data 所以跟別人做比較時 會有Model使用不同Data Train所造成的差異
如果要證明自己架構比較好 那應該要將別人的Model使用自己的Data Train過之後
再跑同一組Test data做比較
3:
自己收集的真資料
這時候可以假設資料是真實性高 並且不均勻的
如果想要驗證自己Model不會因為Data本身的Bias而造成結果差異過大
可以跑推文中所提到的K-Fold 來證明
選擇Testing的部分 由於你資料是不均勻的
所以選擇通常來說
是均勻選擇資料本身的分布
例如以人的年齡來說 可能以5歲唯一級距
然後從0~80歲分成16個Group
每1個Group中隨機選擇n張 以保證最後Testdata的年齡分布是平均的
選擇完Test data之後 一樣Train Val自己任意分
Test data數量可以參考相關Paper中Real world Data的數量
以及自己收集難度去估計
例如別人Test Real World 300張 自己只收集了600張 那可能就拿其中200張當Test
另外 驗證別人Model時同樣需要注意前面的注意A
最後 通常來說
Train : Val 大約都是8:2
Test越多越好 實務上通常是參考別人的數量自己做差不多數字
---
Model選擇上
標準做法是選擇自己Validation最好的去跑Test
實際發Paper做法通常是把所有Model都拿去跑Test然後選最好的那組當結果...
至於時間上就自己看能負擔到哪吧
更偷雞的做法就不提了
多看多跑多比較 就知道....
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.231.64.172 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/graduate/M.1663592894.A.8D0.html
推
09/19 21:37,
1年前
, 1F
09/19 21:37, 1F
推
09/19 22:25,
1年前
, 2F
09/19 22:25, 2F
推
09/20 00:38,
1年前
, 3F
09/20 00:38, 3F
→
09/20 00:38,
1年前
, 4F
09/20 00:38, 4F
推
09/20 02:07,
1年前
, 5F
09/20 02:07, 5F
推
09/20 02:24,
1年前
, 6F
09/20 02:24, 6F
→
09/20 03:10,
1年前
, 7F
09/20 03:10, 7F
→
09/20 03:10,
1年前
, 8F
09/20 03:10, 8F
→
09/20 03:12,
1年前
, 9F
09/20 03:12, 9F
推
09/20 04:24,
1年前
, 10F
09/20 04:24, 10F
推
09/20 08:22,
1年前
, 11F
09/20 08:22, 11F
→
09/20 08:22,
1年前
, 12F
09/20 08:22, 12F
→
09/20 08:22,
1年前
, 13F
09/20 08:22, 13F
推
09/20 09:58,
1年前
, 14F
09/20 09:58, 14F
推
09/20 10:13,
1年前
, 15F
09/20 10:13, 15F
→
09/20 10:16,
1年前
, 16F
09/20 10:16, 16F
推
09/20 10:50,
1年前
, 17F
09/20 10:50, 17F
推
09/20 11:15,
1年前
, 18F
09/20 11:15, 18F
推
09/21 03:38,
1年前
, 19F
09/21 03:38, 19F
→
09/21 03:39,
1年前
, 20F
09/21 03:39, 20F
推
09/21 15:53,
1年前
, 21F
09/21 15:53, 21F
推
09/21 16:24,
1年前
, 22F
09/21 16:24, 22F
→
09/21 19:30,
1年前
, 23F
09/21 19:30, 23F
→
09/21 19:30,
1年前
, 24F
09/21 19:30, 24F
→
09/21 19:31,
1年前
, 25F
09/21 19:31, 25F
推
09/22 00:47,
1年前
, 26F
09/22 00:47, 26F
推
09/22 12:09,
1年前
, 27F
09/22 12:09, 27F
→
09/22 12:09,
1年前
, 28F
09/22 12:09, 28F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
討論
23
63