情境
「貧窮」是國家總會面臨的問題,但我們如何定義「貧窮人口」,月薪低於基本薪資就算貧窮?還是月薪無法支撐一個家庭生活起居的時候也算貧窮?一位無收入的遊民和一位領著略高於基本薪資的單親母親,誰比較貧窮呢?大概很多人會說遊民,因為他沒有「收入」。在已開發國家裡,常以政府記載的「收入」作為貧窮判斷依據。
但若在人均年收入不到500美元的發展中國家中,如何才算是貧窮呢?在這些國家中,人民的資料可能沒有被記載及保存,即使有也是殘缺的數據。在缺乏資料的狀況下,我們要怎麼知道誰才是最需要物資援助的家庭呢?
對於這些缺乏人民資料的發展中國家,世界銀行(World Bank)使用Proxy Means Test (PMT)模型判斷國家人民不同的貧窮程度,PMT模型不以收入與花費作為參數,而以家庭中成員、物資或是牆壁的材質等清楚且基本的可見指標作為依據,分類出需要最需要協助的族群。
任務目標
PMT模型雖然是現今常用的模型,但是當人口基數增加、或是地區改變時,模型便容易失去其準確性,失去本身的立意。本文章的任務目標為透過資料集,改良PMT模型的演算法更準確的找出最需要社會福利幫助的家庭!
解決方法
我們此次目標是利用機器學習模型區分出不同貧窮程度的家庭。但在建立模型前,需要先定義問題、了解資料與選出重要特徵,此三步驟能幫助我們更好的建立模型!定義問題與了解資料後,接著,可透過調整不同參數選出重要特徵,找出分類最貼近真實的模型!
根據世界銀行,PMT模型的指標需要符合兩個標準,首先PMT模型中的指標需要可以被查驗證實,另外指標必須和家庭的花費有關。此次資料集中總共有142個指標以及1個貧窮程度分類,其中142個指標中包括每月房租金額、是否有浴室、是否有冰箱等與花費有關的指標,貧窮程度分類涵蓋四種類別:1 = 非常貧窮, 2 = 中等貧窮 ,3 = 瀕臨貧窮, 4 = 不貧窮。
我們已經先定義出問題任務:找出新演算法能準確分出4種不同貧窮程度的家庭!下一步驟為了解資料,接著透過統計分析以及資料視覺化,分析出資料是否有異常值,或是找出各參數之間是否與分群結果有關。
異常值處理
在粗略了解資料及有哪些指標之後,資料科學家通常會花多數時間在清理資料與處理異常值以確保資料的正確性,因為資料在輸入或測量的時候,因人為或測量方法錯誤,而導致資料不正確。相同地,此資料集也需要先進行資料清理,與處理異常值。舉例而言,圖1. 為家庭ID 0172ab1d9的資料,此家庭貧窮程度應為3,但是在7562與7655列中,貧窮程度被輸入成2,因此需要先更正此錯誤,才能進行後續的資料分析。
資料中的參數有哪些?是否有錯誤?