2012-07-22 27 views
1

手頭的問題是我需要一個數學方法來模擬一組x,y值的符號。具體來說,我知道有方法使用多項式迴歸,但是,如果我只關心值的符號(+/-),是否有更簡單的方法?我現在這樣做的方法:使用numpy的有損多項式迴歸

import numpy 
numpy.polyfit(x_bytearray,y_bytearray) 

不過,我只關心結果是否給了我一個正值當y_bytearray值爲正,負的,如果y_bytearray值爲負。無論如何,除了最小二乘法之外,還有什麼方法來修改polyfit代碼以使用不同的加權方法?

編輯 X的符號是符號(X)= X/ABS(X)(-1或1)和擬合的多項式或其他表達式必須僅滿足要求,即符號(y_bytearray [I]) == sign(computed_y [i])。

+0

對不起沒有清楚: 輸入曲線y() - > plusorminus(任何x,或只有x在x_bytearray中)? 你能舉一個好/壞plusminus()的例子嗎? – denis 2012-07-22 08:19:24

+0

聽起來像你想要的東西像泊松迴歸。 – talonmies 2012-07-22 17:59:51

+0

爲什麼會這樣?如果對於一些建模函數p(x)<0,其中y_bytearray [x] <0並且p(x)> 0,其中y_bytearray [x]> 0,我顯然最終得到了有意義的近似值。多項式迴歸不一定是線性的。 – 2012-07-26 04:32:16

回答

1

最小二乘法很受歡迎,因爲它很簡單易於計算。還有很多其他可能的方法,但它們不太可能在圖書館中實施,所以你必須自己做。

另一個需要研究的問題是二元分類。有很多分類方法,但其中最好的是隨機森林。