- QQplot
橫坐標表示的是屬性的其中一個測量值1,縱坐標表示另一個測量值2。散點是分位點。點的橫縱坐標是這個測量值1和測量值2的分位點的取值。
from scipy import stats from matplotlib import pyplot as plt import statsmodels.api as sm import numpy as np # example with the new ProbPlot class #對比兩個不同測試值的分布,而不是看測試值滿足什么既定分布 import numpy as np X = [5.89,49.59,59.98,159,17.99,56.99,82.75,142.19 ,31,125.5,4.5,22,52.9,61,33.5,328,128,142.19,229,189.4] Y= [1.4,1.5,2.2,2.7,3.2,3.9,4.1,4.1,4.6,4.8 ,4.9,5.3,5.5,5.8,6.2,8.9,11.6,18,22.9,38.2] x=np.array(X) y=np.array(Y) pp_x = sm.ProbPlot(x, fit=True) pp_y = sm.ProbPlot(y, fit=True) fig3 = pp_x.qqplot(other=pp_y, line='45') plt.show()
2 normalization
梯度下降的過程曲折,復雜的問題是因為沒有同等程度的看待各個特征,即我們沒有將各個特征量化到統一的區間。
所以數據標准化(歸一化)處理是數據挖掘的一項基礎工作,不同評價指標往往具有不同的量綱和量綱單位,這樣的情況會影響到數據分析的結果,為了消除指標之間的量綱影響,需要進行數據標准化處理,以解決數據指標之間的可比性。原始數據經過數據標准化處理后,各指標處於同一數量級,適合進行綜合對比評價。
Min-Max Scaling和Z-score normalization是常用的標准化處理方法。
- 指定空間的min-max scaling(1,10)
price |
5.89 |
49.59 |
59.98 |
159 |
17.99 |
56.99 |
82.75 |
142.19 |
31 |
125.5 |
weight |
1.4 |
1.5 |
2.2 |
2.7 |
3.2 |
3.9 |
4.1 |
4.1 |
4.6 |
4.8 |
price |
4.5 |
22 |
52.9 |
61 |
33.5 |
328 |
128 |
142.19 |
229 |
189.4 |
weight |
4.9 |
5.3 |
5.5 |
5.8 |
6.2 |
8.9 |
11.6 |
18 |
22.9 |
38.2 |
標准化空間為(1,10):原理公式:
將數據歸一化到[a,b]區間范圍的方法:
(1)首先找到樣本數據Y的最小值Min及最大值Max
(2)計算系數為:k=(b-a)/(Max-Min)
(3)得到歸一化到[a,b]區間的數據:norY=a+k(Y-Min)
"""normolization 1-10 """ import numpy as np def MaxMinNormalization(x): min_x=np.min(x) max_x=np.max(x) k=(10-1)/(max_x-min_x) norx=(x-min_x)*k+1 return norx nums = [5.89,49.59,59.98,159,17.99,56.99,82.75,142.19 ,31,125.5,4.5,22,52.9,61,33.5,328,128,142.19,229,189.4] print(MaxMinNormalization(nums))
3.評估方法
https://blog.csdn.net/hlang8160/article/details/78040311