R中用線性迴歸進行預測建模
預測模型對於預測未來結果和估算實際難以量化的指標非常有用。例如,資料科學家可以使用預測模型基於降雨和溫度預測作物產量,或確定具有某些特徵的患者是否更可能對新藥物反應嚴重。
在我們具體討 論線性迴歸 之前,讓我們自己回顧一下典型的 資料科學工作流程 。很多時候, 我們將從我們想要回答的問題開始 ,並執行以下操作:
- 收集與問題相關的一些資料(更多資料幾乎總是更好)。
- 如果需要,可以將資料清理,擴充和預處理為方便的形式。
- 對資料進行探索性分析以更好地瞭解資料。
- 使用您的發現作為指南,構建資料某些方面的模型。
- 使用該模型回答您開始的問題,並驗證您的結果。
線性迴歸是資料科學家用於預測建模的最簡單和最常見的監督機器學習演算法之一。 在這篇文章中,我們將使用線性迴歸來構建一個模型,該模型從人們易於研究的樹木測量指標來預測櫻桃樹的體積。
我們將在此部落格文章中使用R來探索此資料集並學習線性迴歸的基礎知識。 如果您不熟悉R,我們建議從R Data Analyst路徑獲取R基礎知識和R程式設計:中級課程。 它也有助於獲得一些非常基本的統計知識,但如果你知道平均值和標準偏差是什麼,你就可以跟隨它。 如果您想自己練習構建模型和視覺化,我們將使用以下R包:
- datasets 該軟體包包含各種練習資料集。 我們將使用其中一個“tree”來學習構建線性迴歸模型。
- GGPLOT2 我們將使用這個流行的資料視覺化包來構建我們的模型圖。
- GGally 該包擴充套件了ggplot2的功能。 我們將使用它來建立繪圖矩陣,作為我們最初的探索性資料視覺化的一部分。
- scatterplot3d 我們將使用此包來顯示具有多個預測變數的更復雜的線性迴歸模型。
無論如何,他們如何測量樹木的體積?
樹資料集包含在基礎R的資料集包中,它將幫助我們回答這個問題。 由於我們正在使用現有的(乾淨的)資料集,上面的步驟1和2已經完成,因此我們可以跳到第3步中的一些初步探索性分析。這個資料集是什麼樣的?
data(trees) # 從datasets包中獲取tree資料集 head(trees) # 檢視資料集前面幾行
str(trees) # 檢視變數的結構
該資料集由31個描述黑櫻桃樹的3個數值變數組成:
- 樹幹周長(in)
- 高度(英尺)
- 體積(ft3)
這些指標對於研究樹木生態學的林務員和科學家來說是有用的資訊。 使用基本的林業工具測量樹木高度和周長相當簡單,但測量樹木體積要困難得多。 如果您不想實際減少和拆除樹木,您必須採取一些技術上具有挑戰性和耗時的活動,如爬樹和進行精確測量。 能夠從高度和/或周長準確預測樹木體積將是有用的。
為了確定我們是否可以建立預測模型,第一步是檢視我們的預測變數和響應變數(在這種情況下是周長,高度和體積)之間是否存在關係。 讓我們做一些探索性的資料視覺化。 我們將使用GGally包中的ggpairs()函式建立一個繪圖矩陣,以檢視變數如何相互關聯。
ggpairs(data = trees, columns = 1:3, title = "trees data")
ggpairs()函式給出了每個變數組合的散點圖,以及每個變數的密度圖和變數之間的相關強度。 如果您之前使用過ggplot2,這個符號可能看起來很熟悉:GGally是ggplot2的擴充套件,它提供了一個簡單的介面來建立一些像這樣複雜的圖。
當我們檢視這些圖時,我們可以開始瞭解資料並提出問題。 相關係數提供有關變數與關係有多接近的資訊; 相關係數越接近1,關係越強。 散點圖讓我們視覺化變數對之間的關係。 散點圖中點具有清晰的視覺模式(與看起來像無形的雲相反)表明關係更強。
我們的問題:
哪些預測變數似乎與響應變數相關?從ggpairs()輸出看,周長似乎與體積有關:相關係數接近於1,並且這些點似乎具有線性模式。 高度和體積之間可能存在關係,但看起來較弱:相關係數較小,散點圖中的點更加分散。
變數之間關係的形狀是什麼?這種關係似乎是線性的; 從散點圖中,我們可以看到隨著樹周長的增加樹木體積不斷增加。
這種關係是強大的,還是淹沒訊號的資料中的噪音?高度和體積之間的關係不是那麼清楚,但是周長和體積之間的關係似乎很強。
現在我們對資料有了一個很好的整體把握,我們可以繼續進行第4步並做一些預測建模。
形成一個假設
一個假設是對我們認為我們的資料發生了什麼的有根據的猜測。 在這種情況下,讓我們假設櫻桃樹的周長和體積是相關的。 我們形成的每個假設都有相反的結論:“零假設”(H0)。 在這裡,我們的零假設是周長和體積無關。
在統計學中,零假設是我們使用我們的資料來支援或拒絕的假設; 我們不能說我們“證明”一個假設。 我們稱之為周長和體積與我們的“替代”假設(Ha)相關。
總結一下:
- H0:周長和體積之間沒有關係
- Ha:周長和體積之間有一些關係
我們的線性迴歸模型將用於檢驗我們的假設。 如果我們找到足夠強的證據來拒絕H0,那麼我們就可以使用該模型來預測來自周長的櫻桃樹體積。
構建線性迴歸模型
線性迴歸描述了感興趣的響應變數(或因變數)與一個或多個預測變數(或獨立變數)之間的關係。 它有助於我們將訊號(我們可以從預測變數中學習關於響應變數的資訊)與噪聲分離(我們無法從預測變數中瞭解響應變數)。 隨著我們的前進,我們將深入探討模型如何做到這一點。
原文連結: https://www.dataquest.io/blog/statistical-learning-for-predictive-modeling-r/
版權宣告:作者保留權利,嚴禁修改,轉載請註明原文連結。
資料人網是資料人學習、交流和分享的平臺http://shujuren.org 。專注於從資料中學習到有用知識。 平臺的理念:人人投稿,知識共享;人人分析,洞見驅動;智慧聚合,普惠人人。 您在資料人網平臺,可以1)學習資料知識;2)建立資料部落格;3)認識資料朋友;4)尋找資料工作;5)找到其它與資料相關的乾貨。 我們努力堅持做原創,聚合和分享優質的省時的資料知識! 我們都是資料人,資料是有價值的,堅定不移地實現從資料到商業價值的轉換!