您好,登錄后才能下訂單哦!
怎么在Python中執行套索和嶺回歸,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
導入庫
與任何項目一樣,導入常用的庫,這將有助于執行基本的數據操作和繪圖。
現在可以開始探索性數據分析。
探索性數據分析
首先導入數據集并查看前五行:
你應該看到:
請注意,Unnamed:0 列無用。把它拿出來。
現在數據集如下所示:
如您所見,只有三種廣告媒介,銷售是目標變量。
看看每個變量如何通過制作散點圖來影響銷售。首先構建一個輔助函數來制作散點圖:
現在可以為每個功能生成三個不同的圖。
得到以下內容:
關于電視廣告上花錢的銷售
關于花在廣播廣告上的錢的銷售
關于報紙廣告花費的銷售額
正如您所看到的,電視和廣播廣告似乎是銷售的良好預測因素,而銷售和報紙廣告之間似乎沒有相關性。
幸運的是,數據集不需要進一步處理,因此準備立即進行建模!
模型
多元線性回歸 - 最小二乘擬合
在完成之前,先來看看代碼的樣子。
首先,導入LinearRegression和cross_val_score 對象。第一個將允許擬合線性模型,而第二個對象將執行k倍交叉驗證。
然后定義特征和目標變量。
該cross_val_score將返回MSE的陣列為每個交叉驗證步驟。在例子中有五個。因此,采用MSE的意思并打印出來。應該得到-3.0729的負MSE。
現在,看看嶺回歸或套索是否會更好。
嶺回歸
對于嶺回歸,引入了GridSearchCV。這將允許使用一系列不同的正則化參數自動執行5次交叉驗證,以便找到alpha 的最佳值。
代碼如下所示:
然后,可以通過以下方式找到最佳參數和最佳MSE:
應該看到alpha的最佳值為20,負MSE為-3.07267。這是基本多元線性回歸的略微改進。
套索
對于套索,遵循與嶺回歸非常相似的過程:
在這種情況下,alpha的最佳值為1,負MSE為-3.0414,這是所有三個模型的最佳分數!
現在知道如何在Python中使用套索和嶺回歸。在這種情況下已經看到套索是最合適的方法,正則化值為1。
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。