0
這種方法給了我一個任務序列化錯誤:阿帕奇星火任務序列化
def singleItemPrediction(userid : Int, item : Int) = {
val userAndItems = useritemrating.filter({x => x._1 == userid && x._2 != item})
val userMean = userAndItems.aggregate(0.0)((accum, rating) => accum + rating._3, _+_)/userAndItems.count()
userMean + userAndItems.aggregate(0.0)((accum, ui) => accum + avgDev(userid, item, ui._2), _+_)/userAndItems.count()
}
改變底線(所返回的)到:
avgDev(userid, item1, item2), _+_)/userAndItems.count()
不給一個錯誤!
我不明白爲什麼,有什麼區別?這與aggregate
動作調用avgDev
方法有關,但我不確定爲什麼會發生這種情況。我一直有這些問題並繼續解決它們,我想知道它們爲什麼會發生,所以我可以停止犯同樣的錯誤,並通過反覆修復代碼的這種情況。
沒有看到您完整的相關代碼(如類),這是不可能的告訴是什麼問題。有些東西指的是不是「Serializable」的東西。既然你似乎在尋找調試這類問題的一般方法,那就是我的回答。希望能幫助到你! – 2015-04-05 10:44:47
是的,它的幫助,我現在已經得到了我的頭...我想!謝謝,丹尼爾! – monster 2015-04-06 17:47:16