使用機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型預(yù)測(cè)汽車價(jià)格
目標(biāo)
在本文中,我們將對(duì)二手車定價(jià)做出預(yù)測(cè)。我們將使用不同的架構(gòu)開(kāi)發(fā)多種機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型。最后,我們將比較機(jī)器學(xué)習(xí)模型與深度學(xué)習(xí)模型的性能。
使用的數(shù)據(jù)
在這種情況下,我們使用了 kaggle 數(shù)據(jù)集。
有 17 個(gè)不同的變量:
IDPrice: 汽車價(jià)格(目標(biāo)欄)LevyManufacturerModelProd. yearCategoryLeather interiorFuel typeEngine volumeMileageCylindersGear box typeDrive wheelsDoorsWheelColorAirbags
要獲取數(shù)據(jù)并將其用于你的調(diào)查,請(qǐng)單擊以下鏈接 -
https://www.kaggle.com/datasets/deepcontractor/car-price-prediction-challenge
數(shù)據(jù)檢查
我們將在這部分查看數(shù)據(jù)。首先,讓我們看看數(shù)據(jù)中的列及其數(shù)據(jù)類型,以及任何缺失值。
數(shù)據(jù)集的信息
我們可以看到數(shù)據(jù)集有 19237 行 18 列。
有五個(gè)數(shù)字列和十三個(gè)類別列。我們可以立即觀察到數(shù)據(jù)中沒(méi)有缺失數(shù)字。
“Price”列/特征將是項(xiàng)目的目標(biāo)列或相關(guān)特征。
讓我們看看數(shù)據(jù)分布。
數(shù)據(jù)準(zhǔn)備
在這里,我們將清理數(shù)據(jù)并為模型訓(xùn)練做準(zhǔn)備。
“ID”列
我們刪除“ID”列,因?yàn)樗c汽車價(jià)格預(yù)測(cè)無(wú)關(guān)。
Levy 列
檢查'Levy'列后,我們發(fā)現(xiàn)它確實(shí)包含缺失值,但它們?cè)跀?shù)據(jù)中表示為'-',這就是為什么我們無(wú)法在數(shù)據(jù)中更早地捕獲缺失值.
在這種情況下,如果沒(méi)有“Levy”,我們會(huì)將“Levy”列中的“-”替換為“0”。我們也可以用“均值”或“中值”來(lái)推斷它,但你必須做出該決定。
Mileage 列
這里的“Mileage”列表示汽車行駛了多少公里。每次閱讀后,“公里”都寫在列中。我們將刪除它。
**“Engine Volume”列 **
與“Engine Volume”列一起,還寫入了發(fā)動(dòng)機(jī)的“種類”(渦輪增壓或非渦輪增壓)。我們將添加一個(gè)新列來(lái)顯示“引擎”的“類型”。
處理“離群值”
我們將檢查數(shù)值特征。以下是確定異常值的每個(gè)數(shù)值特征的快照
Levy:
Engine volume:
Mileage:
Cylinders:
Airbags:
離群值可以在 ‘Levy’, ‘Engine volume’, ‘Mileage’和“Cylinders”列中找到。我們將使用分位數(shù)間距 (IQR) 方法來(lái)消除這些異常值。
在統(tǒng)計(jì)學(xué)中,四分位數(shù)間距 (IQR) 是基于將數(shù)據(jù)集劃分為四分位數(shù)的可變性度量。IQR 是上四分位數(shù)和下四分位數(shù)之間的差值。它是一種不受異常值影響的穩(wěn)健的傳播度量。IQR 通常用于識(shí)別數(shù)據(jù)集中的異常值。
要計(jì)算 IQR,首先需要計(jì)算數(shù)據(jù)集的第 25 個(gè)和第 75 個(gè)百分位數(shù),然后通過(guò)從第 75 個(gè)百分位減去第 25 個(gè)百分位來(lái)計(jì)算 IQR。
使用 IQR 方法去除異常值后
我們可以觀察到現(xiàn)在特征中沒(méi)有異常值。
開(kāi)發(fā)額外的特征
“Mileage”和“Engine Volume”都是連續(xù)變量。在運(yùn)行回歸時(shí),我發(fā)現(xiàn)對(duì)這些變量進(jìn)行分箱有助于提高模型的性能。因此,我正在為這些特征/列開(kāi)發(fā)“Bin”特征。
用于開(kāi)發(fā)額外特征的代碼截圖
處理分類特征
處理機(jī)器學(xué)習(xí)中的分類特征是一項(xiàng)重要任務(wù),因?yàn)榇蠖鄶?shù)機(jī)器學(xué)習(xí)算法都是為處理數(shù)值數(shù)據(jù)而設(shè)計(jì)的。分類特征是表示為字符串的非數(shù)值數(shù)據(jù),例如顏色、國(guó)家或食物類型。為了在機(jī)器學(xué)習(xí)模型中使用這些特征,需要將它們轉(zhuǎn)化為數(shù)值數(shù)據(jù)。
有幾種方法可以處理 ML 中的分類特征。我使用 Ordinal Encoder 來(lái)處理分類列
檢查相關(guān)性
數(shù)據(jù)顯示,特征沒(méi)有高度關(guān)聯(lián)。然而,我們可以看到,在對(duì)“價(jià)格”列進(jìn)行對(duì)數(shù)轉(zhuǎn)換后,與一些屬性的相關(guān)性上升了,這是一個(gè)積極的事情。我們將利用對(duì)數(shù)轉(zhuǎn)換的“價(jià)格”來(lái)訓(xùn)練模型。
數(shù)據(jù)拆分和縮放
在數(shù)據(jù)上,我們將其分為 80-20。80% 的數(shù)據(jù)將用于訓(xùn)練,其余 20% 將用于測(cè)試。
我們將另外縮放數(shù)據(jù),因?yàn)椴⒎菙?shù)據(jù)中的所有特征值都具有相同的比例,并且具有不同的比例可能會(huì)導(dǎo)致模型性能不佳。
模型搭建
作為機(jī)器學(xué)習(xí)模型,我們創(chuàng)建了 LinearRegression、XGBoost 和 RandomForest,以及兩種深度學(xué)習(xí)模型,一種是小網(wǎng)絡(luò),另一種是大網(wǎng)絡(luò)。
我們開(kāi)發(fā)了 LinearRegression、XGBoost 和 RandomForest 基礎(chǔ)模型,所以就不多說(shuō)了,但是我們可以看到模型總結(jié)以及它們?nèi)绾闻c我們構(gòu)建的深度學(xué)習(xí)模型收斂。
深度學(xué)習(xí)模型——小網(wǎng)絡(luò)模型總結(jié)
深度學(xué)習(xí)——小型網(wǎng)絡(luò)模型摘要快照
深度學(xué)習(xí)模型——小型網(wǎng)絡(luò)訓(xùn)練和驗(yàn)證損失
深度學(xué)習(xí)模型——大型網(wǎng)絡(luò)
深度學(xué)習(xí)大網(wǎng)絡(luò)模型總結(jié)
深度學(xué)習(xí)——大型網(wǎng)絡(luò)訓(xùn)練和驗(yàn)證損失
模型效率:
我們使用性能矩陣 Mean_Squared_Error、Mean_Absolute_Error、Mean_Absolute_Percentage_Error 和 Mean_Squared_Log_Error 評(píng)估模型,結(jié)果如下所示。
我們應(yīng)用于數(shù)據(jù)集的所有模型的摘要
我們可以看到深度學(xué)習(xí)模型優(yōu)于機(jī)器學(xué)習(xí)模型。RandomForest 優(yōu)于所有機(jī)器學(xué)習(xí)模型。
結(jié)果
隨機(jī)森林模型的可視化
從圖中可以看出,模型的性能非常好,性能矩陣證明了這一點(diǎn)。
特征重要性
特征重要性是機(jī)器學(xué)習(xí) (ML) 中的一個(gè)重要概念,因?yàn)樗兄谧R(shí)別數(shù)據(jù)集中最相關(guān)的特征以預(yù)測(cè)目標(biāo)變量。它允許建模者了解每個(gè)特征在預(yù)測(cè)目標(biāo)變量中的貢獻(xiàn),并有助于識(shí)別對(duì)模型性能無(wú)用甚至有害的特征。
下面我們使用 SHAP 繪制了隨機(jī)森林模型的特征重要性:
所有變量的特征重要性快照
結(jié)論
在本文中,我們嘗試使用汽車數(shù)據(jù)中提供的眾多參數(shù)來(lái)預(yù)測(cè)汽車價(jià)格。我們構(gòu)建了機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型來(lái)預(yù)測(cè)汽車價(jià)格,并發(fā)現(xiàn)基于機(jī)器學(xué)習(xí)的模型在這些數(shù)據(jù)上的表現(xiàn)優(yōu)于基于深度學(xué)習(xí)的模型。
筆記本參考和代碼:
https://colab.research.google.com/drive/1-ivt7AjvEXMXdglMn5AHlTAMfW5oKT3J#scrollTo=J-2Z03_7_8iq
參考文章:
https://www.obviously.ai/post/data-cleaning-in-machine-learning
https://shap.readthedocs.io/en/latest/index.html
原文標(biāo)題 : 使用機(jī)器學(xué)習(xí)和深度學(xué)習(xí)模型預(yù)測(cè)汽車價(jià)格
發(fā)表評(píng)論
請(qǐng)輸入評(píng)論內(nèi)容...
請(qǐng)輸入評(píng)論/評(píng)論長(zhǎng)度6~500個(gè)字
最新活動(dòng)更多
-
10月31日立即下載>> 【限時(shí)免費(fèi)下載】TE暖通空調(diào)系統(tǒng)高效可靠的組件解決方案
-
即日-11.13立即報(bào)名>>> 【在線會(huì)議】多物理場(chǎng)仿真助跑新能源汽車
-
11月28日立即報(bào)名>>> 2024工程師系列—工業(yè)電子技術(shù)在線會(huì)議
-
12月19日立即報(bào)名>> 【線下會(huì)議】OFweek 2024(第九屆)物聯(lián)網(wǎng)產(chǎn)業(yè)大會(huì)
-
即日-12.26火熱報(bào)名中>> OFweek2024中國(guó)智造CIO在線峰會(huì)
-
即日-2025.8.1立即下載>> 《2024智能制造產(chǎn)業(yè)高端化、智能化、綠色化發(fā)展藍(lán)皮書》
推薦專題
- 1 【一周車話】沒(méi)有方向盤和踏板的車,你敢坐嗎?
- 2 特斯拉發(fā)布無(wú)人駕駛車,還未迎來(lái)“Chatgpt時(shí)刻”
- 3 特斯拉股價(jià)大跌15%:Robotaxi離落地還差一個(gè)蘿卜快跑
- 4 馬斯克給的“驚喜”夠嗎?
- 5 大模型“新星”開(kāi)啟變現(xiàn)競(jìng)速
- 6 海信給AI電視打樣,12大AI智能體全面升級(jí)大屏體驗(yàn)
- 7 AI 投流卷哭創(chuàng)業(yè)者
- 8 打完“價(jià)格戰(zhàn)”,大模型還要比什么?
- 9 馬斯克致敬“國(guó)產(chǎn)蘿卜”?
- 10 神經(jīng)網(wǎng)絡(luò),誰(shuí)是盈利最強(qiáng)企業(yè)?
- 高級(jí)軟件工程師 廣東省/深圳市
- 自動(dòng)化高級(jí)工程師 廣東省/深圳市
- 光器件研發(fā)工程師 福建省/福州市
- 銷售總監(jiān)(光器件) 北京市/海淀區(qū)
- 激光器高級(jí)銷售經(jīng)理 上海市/虹口區(qū)
- 光器件物理工程師 北京市/海淀區(qū)
- 激光研發(fā)工程師 北京市/昌平區(qū)
- 技術(shù)專家 廣東省/江門市
- 封裝工程師 北京市/海淀區(qū)
- 結(jié)構(gòu)工程師 廣東省/深圳市