logo
Loading...

使用GradientBoostingClassifier對於特徵選取結果問題 - Cupoy

首先是關於【GradientBoostingClassifier】,我建議在教材重點中,都應該至少提...

ml100-2,ml100-2-d29

使用GradientBoostingClassifier對於特徵選取結果問題

2019/05/21 02:19 AM
機器學習新手論壇
張小馬
觀看數:0
回答數:4
收藏數:5
ml100-2
ml100-2-d29

首先是關於【GradientBoostingClassifier】,我建議在教材重點中,都應該至少提到一次每次跑的結果都會不一樣,這樣可以少掉許多學員的疑問。


但接著真正的疑問是,以下是我跑了10次的結果,也與多名學員貼上來的數據雷同:

應該非常清楚,不管有什麼「每次跑都會不一樣」的這種問題,透過上圖,應能很清楚看出重要程度依序是:Sex、Pclass、Fare、Ticket,而往後的分數差異不大,名次也常替換,但Name無論如何都不會是一個很重要的特徵。(相信老師如果多跑幾次,也會發現這件事。)


而這是答案的結果:

1. 所以這是第一個問題,為什麼我們跑了十多次的結果,很明顯不會出現答案這樣的數據與排名,答案是否用了與我們不同的資料,或是不小心已經處理過了(只是忘記了順序),才導致這麼大的差異。這並不是【每次跑結果都會不一樣】就能解釋的。


2. 雖然我們應該會去懷疑答案中的Name不應該出現這麼高的分數才對,因為以【常識理解】(這是Day13老師教的),都會知道Name和Survived理應無關,也沒有後續分析的意義,這也是前些天某學員有提問到的。但其實我能理解,如果答案跑出來是長那樣,那後面拿了Ticket和Name這兩個object去跑,就還算情有可原啦~


3. 順便彙整一下Day29其他人的疑問,還包括了拿Name和Ticket【相加除以二】以及【相乘】的意義。我確實也不甚理解,根據老師的回覆,相加除以二是【一共有幾個1】、相乘是【or運算】,資質駑鈍,我真的看不懂,不好意思,能否稍加說明?


接著因為Ans用了這相加和加乘之後,分數提升到0.83,看起來好像有效。

但從我的提問1就能得知【背後資料可能是不同的】,所以Ans會有提升,但我們自己做卻不會。


所以我想這Day29整天所有延伸出來的問題,都和我本篇的提問1有關,還有勞個老師解惑,非常感謝!