0
我創建了高斯過程模型並用嘈雜的目標進行訓練。我實現了噪聲作爲一個參數的α[N_SAMPLES次]根據在過去的文檔scikit學習18.嘈雜目標的高斯過程的交叉驗證錯誤
model = GaussianProcessRegressor(kernel=kernel,n_restarts_optimizer=0, alpha=dy_train ** 2)
它工作直到我想執行交叉驗證。它提出了一個錯誤,阿爾法參數和實際目標的長度不等於:
scores = cross_val_score(model, X_test, y_test)
ValueError: alpha must be a scalar or an array with same number of entries as y.(35 != 10)
我理解的錯誤,但我不知道如何正確定義的α向量交叉驗證。請提出任何建議?
感謝
謝謝你的解釋和代碼。這似乎很容易。你是什麼意思「非常奇怪的啓發式」?我將「alpha」參數理解爲表示目標數據不確定性的噪聲係數。由於每個採樣的噪聲方差發生變化,因此alpha參數是標準誤差的向量。因爲我是高斯過程迴歸和機器學習的初學者,所以對於如何正確模擬輸出數據的高斯噪聲的建議,我將不勝感激。 –
通過非常奇怪的啓發式我的意思是將alpha設置爲目標值的平方(您現在通過傳遞dy_train ** 2) - 爲什麼要這樣做?除非您對數據有深入的瞭解,並且知道這正是依賴性值的行爲方式,否則我不會看到任何意見。它是**正則化**添加到訓練中的半定矩陣估計器。是的,這與噪音有關,但這種方式更加複雜,您提供的價值觀沒有意義。阿爾法應該很小... 1e-3 - 1e-5可能已經是一個很大的價值,你正在添加y ** 2. – lejlot
我明白了,但是在GP模型中實現噪聲響應的正確方法是什麼? –