目錄
一、線性回歸分析簡介
二、實作
三、結論
一、線性回歸分析簡介
什麼是回歸分析?
先來看看什麼是線性回歸
Finding the curve that best fits your data is called regression, and when that curve is a straight line, it’s called linear regression.找出符合資料規律的直線,就叫線性迴歸。
回歸分析是一種預測建模技術,它可以被用來研究應變數Y(目標)和自變數X(預測)之間的關係,常見於預測建模、時間序列建模和查找變數間關係等應用。舉個例子,透過回歸分析,我們能得出司機超速駕駛和發生交通事故次數之間的關係。
它是建模和資料分析的重要工具。回歸分析在圖像上表示為一條努力擬合所有數據點的曲線/線段,它的目標是使資料點和直線間的距離最小化。
以下面這張圖為範例,這是一張散點圖,上面藍色的點是我們的資料,而紅色那條就是我們的回歸線。y = ax+b則是我們的方程式。
為什麼要用回歸分析?
假設某公司想根據當前的公司狀況估算銷售增長率,而有一份資料表顯示財務增長率會影響銷售增長率。在此基礎上,這間公司就能用資料表的各項資訊預測公司未來銷售狀況。
除此之外,回歸分析還能揭示同一個變數帶來的不同影響,如價格變動幅度和促銷活動效益有多少。它為市場研究人員/資料分析師/資料科學家構建預測模型提供了評估所用的各種重要變數。
幾種常見的回歸分析方法
除了線性回歸之外,其實還有許多不同的回歸種類,像是線性回歸、Logistic回歸、多項式回歸
1.線性回歸
這是一種最常見的回歸模型,基本上自變數X是離散型或連續型的,應變數Y是連續型的。
在一元問題中,回歸線是一條直線,代表整體資料的趨勢。舉例來說,我們今天想用身高去預測體重,這時候我們的x就會是身高,而我們的y就會是體重,而透過這些身高的資料我們就能找到一條回歸線可以符合這些資料的趨勢。
2.Logistic回歸
Logistic回歸一般用於判斷事件成功/失敗的概率,如果應變數Y是一個二分類(不是0就是1,代表真/假),這時我們就應該用Logistic回歸。此回歸常用於分類問題。舉例來說,現在有一些貓與狗的資料,這時候我們就可以使用logistic 回歸去判斷這是一隻貓(0)或是狗(1)。
3.多項式回歸
多項式回歸是對線性回歸的延伸。線性回歸是假設自變數和應變數之間存在線性關係y=ax+b,通常只會有一個自變數與應變數。而多項式回歸強調的則是資料間的非線性關係y = a + bx + cx² + … + nx^k,通常涵蓋多個自變量,但要注意的是儘管更高階的多項式回歸可以獲得更低的誤差,但它導致過擬合的可能性也更高。
繼續閱讀|回目錄
二、實作-使用Python建立線性迴歸資料與預測
這次實作我們要利用工作經驗的年份去預測薪資,我們將會使用linear regression去做建模。
準備訓練數據
首先我們先取得一組工作經驗與薪資的對照表(salary.csv)
匯入套件
拆分x,y資料
拆分訓練集與測試集
導入線性模型
用測試集資料檢測模型
一些檢測模型好壞的指標
Coefficients (係數)也就是下方公式B1的部分
MSE(均方差)通常是越小越好
Coefficient of determination(決定係數)通常在統計學上叫做R-square,代表x和y的相關性
用圖說故事
由此圖可以看出工作經驗與薪水是呈現正相關的
繼續閱讀|回目錄
三、結論
線性回歸分析是一種有效的預測工具,使用 Python 進行線性回歸分析非常簡單方便。
您可以使用簡單的線性迴歸來建模兩個變數之間的關係,例如:
- 降雨量和作物產量
- 兒童的年齡和身高
- 溫度計中金屬汞的溫度和膨脹
繼續閱讀|回目錄
參考資料
教育部補助大專院校STEM領域及女性研發人才培育計畫目標為建構一個「以智慧物聯技術與實務應用為基礎的教育環境和實作場域」,並規劃出符合此STEM教育領域的創新特色課程,以畢業前進入企業實習的方式,讓學生了解相關產業界所面對的問題,再輔以業界實作場域的教育訓練活動,共同帶領學生發展出動手做、判斷與解決問題的相關技能;本計畫也規劃讓學生以專題實作的組隊方式,跟業界協力領導學生對外參與智慧物聯技術的應用競賽,不僅可以累積學生實務開發的能力,更能激發其潛能來幫助企業解決所面臨的難題。
Data Science Meetup 台灣資料科學社群的使命是「為資料科學人士與企業創建經濟機會」。我們相信大數據蘊藏著巨量的信息和價值,如何處理好大數據並發掘其潛藏的商業價值,就要靠資料科學有效的應用。21世紀是資料科學決勝時代,我們社群將為大家提供與資料科學相關的最新技術和資訊實戰攻略,並透過全球業界人士和學者幫助相關職業規劃與挑戰,社群活動包含
- 台北實體版聚
- 線上版聚
- Mentorship Program
歡迎加入我們社團瞭解更多資訊: https://www.facebook.com/groups/datasciencemeetup/