version:python 3.6
環境:anaconda/jupyterlab 0.27.0
作業系統:windows 10
機器學習過程中,對模型表徵能力的測評是非常重要的一環。不同模型要求實現的目的不同,各個測評函式應視實際情況選擇使用,下面列舉一些筆者碰到的測評函式。後續將不斷地完善。
python的語言真的數學工具中的大殺器,python**的思維和數學語言的邏輯思維是一樣的。個人感覺能夠寫出數學表示式的**,就對該表示式理解了一大半。
1.基於mse係數(平均平方誤差)的測評:
m se
=1n∑
i=1n
∣pre
di−y
i∣2s
core
=11+
ms
emse = \frac^|pred_-y_i|^2}\\score = \frac
mse=n1
i=1
∑n∣
pred
i−y
i∣2
scor
e=1+
mse1
def calculatemse(x,y):
return 1 / (sum([(x - y)**2 for x,y in zip(x,y)])/len(x)+1)
2.基於ape的測評:ape
i=∣p
redi
−yi∣
max(
∣yi∣
,shr
esho
d)ap
e=1n
∑i=1
n∣pr
edi−
yi∣m
ax(∣
yi∣,
290000
)ape_i = -y_i|}}}\\ape = \frac\displaystyle \sum _^\frac-y_i|}}
apei=
max(
∣yi
∣,sh
resh
od)∣
pred
i−y
i∣
ape=
n1i
=1∑n
max
(∣yi
∣,2
9000
0)∣p
redi
−yi
∣其中,n - the total number of turbidity predictions submitted
pred(or y^) - the predicted turbidity value
y - the actual turbidity value
import numpy as np
def performance_metric(x,y):
a = [abs(x - y) for x,y in zip(x,y)]
b = [max(abs(y),290000) for y in y]
#c = [a[i] / b[i] for i in range(len(a))]
return sum(np.array(a) / np.array(b)) / len(x)
def performance_metric(x,y):
a = [abs(x - y) for x,y in zip(x,y)]
print(a)
b = [max(abs(y),5) for y in y]
print(b)
#c = [a[i] / b[i] for i in range(len(a))]
return sum(np.array(a) / np.array(b)) / len(x)
'''def performance_metric(x,y):
a = abs(np.array(x)-np.array(y))
b = max(abs(np.array(y)),5) #錯誤操作,
#max函式不知道是對列表求最大值還是y和5取最大值
#c = [a[i] / b[i] for i in range(len(a))]
return sum(np.array(a) / np.array(b)) / len(x)'''
x = [1,2,3]
y = [4,5,6]
performance_metric(x,y)
from: drivendata比賽_sustainable industry: rinse over run/2019.01.21 python幾種常見語法
no1.type自動匹配型別 name zhangsan age 18 print type name type自動匹配型別 print name s,age d name,age s 代表字元型別 d 代表數字 print hi your nme name your age str age str...
python的幾種函式
1 無參函式 def fun1 print 這個是無參函式 2.位置引數 有參 def fun2 a,b return a b 3.預設引數 def fun3 a,b 2 print a b fun3 1 結果3 fun3 1,4 結果5 4.可變引數 引數值可以是0到任意個,在函式內部,引數num...
python的幾種常見排序方法
簡單交換排序 n int input 請輸入需要排序的資料個數 x for i in range n for i in range n 1 for j in range i 1,n if x i x j x i x j x j x i 每次符合結果的都進行資料交換 print 排序後的資料 x 氣泡...