機器學習 通俗說擬合

2022-04-05 02:34:51 字數 2350 閱讀 8365

import numpy as np

import matplotlib.pyplot as plt

x = [1,2,3,4,5,6,7,8,9]

y = [0.199,0.389,0.580,0.783,0.980,1.177,1.380,1.575,1.711]

t1=t2=t3=t4=0

n = len(x)

for i in range(n):

t1+=y[i]

t2+=x[i]

t3+=x[i]*y[i]

t4+=x[i]**2

a = (t1*t2/n-t3)/(t2*t2/n-t4)

b = (t1-a*t2)/n

x = np.array(x) # list 變換成陣列 !!

y = np.array(y) # list 變換成陣列 !!

plt.plot(x,y,'o',label = 'original data',markersize = 10) #markersize 指定點的大小

其實 python 自帶最小二乘法進行擬合,from scipy optimize import curve_fit    

欠擬合:光看書不做題覺得自己會了,上了考場啥都不會。

過擬合: 做課後題全都能做對,上了考場還是啥都不會。

差不多的擬合: 做了題,背了老師給畫了重點,考試60分過了。

優秀的擬合: 課後題全能作對,考試100分。特徵選擇就是劃重點。

那種不上課不做題考試前看書也能考出高分的學神是自帶特徵選擇功能和強大擬合能力的bug。哦對了,無師自通的小神童們是自適應能力加泛化能力強。

ml中回歸就是一種解題方法, regression  (由果索因)的過程, 一種歸納的思想,看到大量資料出現的連續結果時,推導出他們之間的關係規律。

擬合就是把平面上一系列的點,用一條光滑的曲線連線起來。因為這條曲線有無數種可能,從而有各種擬合方法。擬合的曲線一般可以用函式表示,根據這個函式的不同有不同的擬合名字。

殘差分析,理想情況下 v = gt  但是實際測量的時絕對是v = gt + e, e 是乙個小範圍的**分布,將e 控制到最小範圍內 ,e 要滿足u=0的 正態分佈, 如 y= ax+b +e   ==》 e = |ax+b-y|   通過最小二乘法 實現求解即可。

過擬合(overfitting),我們通過對資料樣本觀察分析,歸納出乙個完整的資料對映模型,但是歸納過程中有時為了迎合所有樣本向量點而使得描述過於複雜。overfit

過擬合危害如下

1.描述複雜,引數繁多,計算邏輯多。

2.失去了泛化能力。

過擬合原因一般如下

1. 訓練樣本太少,無法提取有效資訊量。

2. 力求 最好 導致描述複雜化。。。。

overfit 如下圖

欠擬合(underfit)就是模型沒有很好地捕捉到資料特徵,不能夠很好地擬合資料, 模型學習能力低。

原因如下

1.引數過少,訓練樣本太少或者 樣本的向量維度提取太少==>模型不準確

2. 擬合不當,擬合方法不對

underfit 由於建模時考慮欠缺,導致誤差太大 基本是無用功。

非線性回歸一般很複雜要慎用,非線性回歸一般分兩類

1.單個輸入 單個輸出的這種 如指數曲線,對數曲線這樣的  y =logx

2. 含有兩個或者以上的輸入與輸出 這叫多元非線性回歸,對此做法一般也是盡量轉換為線性的,這叫內蘊線性回歸,如s = a*e(cd),兩邊取對數logs = loga + cd ,不能轉換為線性的叫內蘊非線性回歸。

訓練集已知結果標籤label的情況下,如果結果為離散的幾個值則稱為分類,  如果結果是已知的連續值則稱為 回歸(就是通過資料推到出內在的規律), 如果結果未知,在訓練過程中將訓練集分組 這叫聚類。

機器學習基礎 過擬合,欠擬合

最左邊屬於欠擬合,最右邊過擬合。欠擬合是對資料擬合的不好,在訓練集和測試集上的表現都很差。過擬合在訓練集上表現得很好,在測試集上表現得不好 欠擬合原因 模型過於簡單 使用更複雜的模型,整合 訓練次數不夠 增加訓練次數 過擬合原因 模型過於複雜 訓練資料少 資料中雜訊多 解決過擬合方法 簡化模型 減少...

學習筆記 機器學習之過擬合

如果認為訓練資料中的每乙個元素都是正確的,並且以此去精確地擬合模型,那麼得到已將低泛化的模型。這就是 過擬合 兩種典型的方法 正則化 驗證 正則化是一種數值方法,這種方法試圖構建乙個盡可能簡單的模型結構。簡化後的模型可以以較低的效能代價避免過擬合。它保留一部分訓練資料用於觀察模型的效能。驗證集不用於...

機器學習過擬合問題

過擬合的定義 在對已知的資料集合進行學習的時候,我們選擇適應度最好的模型最為最終的結果。雖然我們選擇的模型能夠很好的解釋訓練資料集合,但卻不一定能夠很好的解釋測試資料或者其他資料,也就是說這個模型過於精細的刻畫了訓練資料,對於測試資料或者其他新的資料泛華能力不強。發生過擬合的原因 1 使用過於複雜的...