0

發現關於許多轉換,可以在目標值(Y列)被應用於數據集的,如框-Cox變換後我得知線性迴歸模型需要被以與正態分佈目標值訓練是有效的。(https://stats.stackexchange.com/questions/298/in-linear-regression-when-is-it-appropriate-to-use-the-log-of-an-independent-va如果使用正態分佈的目標值進行訓練,非線性迴歸算法性能會更好嗎?

我想知道是否這同樣適用於非線性迴歸算法。現在我看到kaggle上的人使用log轉換來減少異方差,通過使用xgboost,但他們從來沒有提到它是否也用於獲取正態分佈的目標值。

我試過做一些研究,並在第11頁的Andrew Ng的講義筆記(http://cs229.stanford.edu/notes/cs229-notes1.pdf)中發現,許多線性和非線性算法使用的最小二乘成本函數是通過假設正態分佈錯誤。我相信如果錯誤應該是正態分佈的,那麼目標值也應該是一樣的。 如果這是真的,那麼使用最小二乘成本函數的所有迴歸算法應該對正態分佈的目標值更好地工作。

因爲xgboost使用最小二乘成本函數進行節點分割(http://cilvr.cs.nyu.edu/diglib/lsml/lecture03-trees-boosting.pdf - 幻燈片13),那麼如果我使用box-cox轉換來轉換目標值以訓練模型,然後應用反轉box-cox轉換在輸出上以獲得預測值。 這在理論上會給出更好的結果嗎?

+0

如果你從非正常誤差的線性函數生成的數據和應用線性迴歸它的配合不會是最爲有效的,但因爲它是給予足夠的數據一致估計你會收斂到正確的答案 - 搜索在https://en.wikipedia.org/wiki/Ordinary_least_squares中保持一致。如果您以某種方式轉換數據,這意味着底層曲線不再是線性的,則線性迴歸無法爲您返回正確的答案。 – mcdowella

+0

謝謝你的答案,但主要問題涉及非線性迴歸。 –

回答

1

你的猜想「我相信,如果錯誤應該被正態分佈,則目標值應爲好。」是完全錯誤的。所以你的問題根本沒有任何答案,因爲它不是一個有效的問題。

有目標變量沒有假設是正常的。

入門轉變並不意味着錯誤的目標變量是正態分佈的。事實上,這可能會破壞正常。

0

這是太長的評論。我不知道這應該是什麼意思:「線性迴歸模型需要使用正態分佈的目標值進行訓練,以提高效率。」以什麼方式高效?

線性迴歸模型是全局模型。它們只是適合整個數據的一個表面。操作是矩陣操作,因此「訓練」模型的時間僅取決於數據的大小。目標的分佈與建模性能無關。而且,它與模型評分表現無關。

因爲目標通常是而不是正態分佈,所以我當然希望這種分佈對於機器學習算法不需要有效工作是必需的。

+0

我已經改變了標題,希望你會發現它更簡潔。另外,假設正態分佈的目標值來自誤差(殘差)應該正態分佈的需要。我相信用非高斯分佈目標值訓練模型將產生非高斯分佈式預測值。我發現兩個非高斯變量的線性組合很可能產生正態分佈變量(殘差),因此假設目標值應該是正態分佈的。但我可能是錯的,所以如果我是的話請糾正。 –