亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何在不使用 Scikit-Learn 的情況下對歸一化數據執行回歸后檢索原始系數?

如何在不使用 Scikit-Learn 的情況下對歸一化數據執行回歸后檢索原始系數?

蝴蝶不菲 2022-01-18 17:13:28
我正在使用pandas如下所示的文件讀取數據:data.head()   ldr1  ldr2  servo0   971   956     -21   691   825   -1052   841   963    -263   970   731     444   755   939    -69我繼續規范化這些數據以執行梯度下降:my_data = (my_data - my_data.mean())/my_data.std()my_data.head()       ldr1      ldr2     servo0  1.419949  1.289668  0.3664821 -0.242834  0.591311 -1.5804202  0.647943  1.326984 -0.0871653  1.414011  0.090200  1.2359724  0.137231  1.199041 -0.899949我執行多元回歸并最終得到標準化數據的擬合參數:Thetas:  [[ 0.31973117  0.45401309 -0.12941108]]我想在原始數據上繪制最適合的平面,而不是使用歸一化 thetas 的歸一化數據。我曾經scipy.optimize.curve_fit執行多元線性回歸并提出最佳擬合參數。我知道原始 thetas 應該接近以下內容:[   0.26654135   -0.15218007 -107.79915373]在不使用 Scikit-Learn 的情況下,如何獲得原始數據集的“原始”thetas 以便進行繪圖?任何建議將不勝感激。根據下面的答案:mldr1     731.891429ldr2     714.080000servo    -21.388571dtype: float64sldr1     168.392347ldr2     187.583221servo     52.904576dtype: float64然后我繼續:original_thetas = np.dot(theta, s) + m產生:original_thetasldr1     862.420572ldr2     844.609144servo    109.140572dtype: float64我不確定我執行的計算是否不正確,或者所提供的方法是否不適用于系數本身。
查看完整描述

1 回答

?
蠱毒傳說

TA貢獻1895條經驗 獲得超3個贊

我相信你只需要存儲平均值和標準差


m = data.mean()

s = data.std()

然后逆變換


theta * s + m


查看完整回答
反對 回復 2022-01-18
  • 1 回答
  • 0 關注
  • 142 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號