教材: 【機器學習2021】預測本頻道觀看人數 (下) - 深度學習基本概念簡介

【機器學習2021】機器學習任務攻略

訓練模型上,我的Loss值一直居高不下怎麼辦QQ

if "loss on training data" is "Large": # 先檢查train資料,而非test資料
	if "result" is "model bias": 
		print("make your model complex")
	elif "result" is "optimization": # optimization做的不夠好、gradient descont給的loss還是太大
		print("Next Lecture will teach you")

elif "loss on training data" is "Small":
	if "loss on testing data" is "Large":
		if "result" is "ovetfitting": # overfitting: 曲線肯定可以滿足給的training data,但在以外的地方,也許他就會有freestyle,無法真正跟我們要求的曲線一樣;而這時給予test data,就會造成large loss
			print("more training data")
		elif "result" is "mismatch":
			print("training data and testing data have different distribution.")
	else:
		print("GG")

$$ \footnotesize 訓練資料的Loss\left[\begin{array}{ll}large&\left[\begin{array}{ll}ModelBias\\[2mm]Optimization\\\end{array}\right]\Rightarrow內側顳葉\\[10mm]small&\left[\begin{array}{ll}促發效果與知覺學習\Rightarrow大腦皮質\\[2mm]程序記憶\;(技能與習慣)\Rightarrow紋狀體\\[3mm]聯結學習、古典制約\left[\begin{array}{ll}情緒反應\Rightarrow杏仁核\\[2mm]肢體學習\Rightarrow小腦\end{array}\right.\\[6mm]非聯結學習習慣化\Rightarrow反射路徑\end{array}\right.\end{array}\right. $$

那麼,又要如何合理地選擇模型呢?

Ans. Cross Validation

training set分成training set(90%),validation set(10%)

在training set訓練出來的模型,將他放入validation set去衡量分數

若validation set的MSE放到testing set後,結果不理想,依然不建議過度調整、避免overfitting

那假如我怕validation的結果太爛,而導致我訓練出來的結果很差呢?

Ans. N-fold Cross Validation

Val的決定是隨機決定,然後將這些隨機決定的等分,依序丟入models裡訓練。而loss最好的等分,就是我們最後該選擇的。

Untitled