日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

机器学习实验

發(fā)布時間:2023/12/8 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 机器学习实验 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

日萌社

人工智能AI:Keras PyTorch MXNet TensorFlow PaddlePaddle 深度學習實戰(zhàn)(不定時更新)


Azure機器學習模型搭建實驗

Azure平臺簡介

Azure Machine Learning(簡稱“AML”)是微軟在其公有云Azure上推出的基于Web使用的一項機器學習服務(wù),機器學習屬人工智能的一個分支,它技術(shù)借助算法讓電腦對大量流動數(shù)據(jù)集進行識別。這種方式能夠通過歷史數(shù)據(jù)來預測未來事件和行為,其實現(xiàn)方式明顯優(yōu)于傳統(tǒng)的商業(yè)智能形式。

微軟的目標是簡化使用機器學習的過程,以便于開發(fā)人員、業(yè)務(wù)分析師和數(shù)據(jù)科學家進行廣泛、便捷地應用。

這款服務(wù)的目的在于“將機器學習動力與云計算的簡單性相結(jié)合”。

AML目前在微軟的Global Azure云服務(wù)平臺提供服務(wù),用戶可以通過站點:https://studio.azureml.net/?申請免費試用。


一、項目背景

【項目簡介】

Azure Machine Learning(簡稱“AML”)是微軟在其公有云Azure上推出的基于Web使用的一項機器學習服務(wù),機器學習屬人工智能的一個分支,它技術(shù)借助算法讓電腦對大量流動數(shù)據(jù)集進行識別。這種方式能夠通過歷史數(shù)據(jù)來預測未來事件和行為,其實現(xiàn)方式明顯優(yōu)于傳統(tǒng)的商業(yè)智能形式。微軟的目標是簡化使用機器學習的過程,以便于開發(fā)人員、業(yè)務(wù)分析師和數(shù)據(jù)科學家進行廣泛、便捷地應用。這款服務(wù)的目的在于“將機器學習動力與云計算的簡單性相結(jié)合”。AML目前在微軟的Global Azure云服務(wù)平臺提供服務(wù),用戶可以通過站點:https://studio.azureml.net/?申請免費試用。

【項目涉及知識點】

  • 下載、處理和上傳收入普查的數(shù)據(jù)集;
  • 創(chuàng)建一個新的Azure機器學習實驗;
  • 訓練和評價一個預測模型;

二、項目基本需求及目的

【項目需求】

了解機器學習從數(shù)據(jù)到建模并最終評估預測的整個流程。

【項目目的】

根據(jù)人口普查數(shù)據(jù)預測不同人員收入情況


三、項目準備工作

【項目平臺】

1,PC機,如果你的電腦內(nèi)存低于512M,希望你不要安裝虛擬機及項目所需的環(huán)境。

2,注冊Azure平臺并免費使用


四、項目實現(xiàn)步驟

【項目實現(xiàn)步驟】

1、數(shù)據(jù)集簡介及準備

1.1 數(shù)據(jù)集簡介

UCI機器學習數(shù)據(jù)庫的網(wǎng)址:http://archive.ics.uci.edu/ml/

該數(shù)據(jù)庫是加州大學歐文分校(UniversityofCaliforniaIrvine)提出的用于機器學習的數(shù)據(jù)庫,這個數(shù)據(jù)庫目前共有187個數(shù)據(jù)集,其數(shù)目還在不斷增加,UCI數(shù)據(jù)集是一個常用的標準測試數(shù)據(jù)集。數(shù)據(jù)庫不斷更新,是所有學習人工智能、機器學習等都需要用到的數(shù)據(jù)庫,是看文章、寫論文、測試算法的必備數(shù)據(jù)集。數(shù)據(jù)庫種類涉及生活、工程、科學各個領(lǐng)域,記錄數(shù)也是從少到多,最多達幾十萬條。

我們使用其中:美國人口普查數(shù)據(jù)集(https://archive.ics.uci.edu/ml/datasets/census+income)的數(shù)據(jù),該數(shù)據(jù)從美國1994年人口普查數(shù)據(jù)庫抽取而來,可以用來預測居民收入是否超過50K/year。該數(shù)據(jù)集類變量為年收入是否超過50k,屬性變量包含年齡,工種,學歷,職業(yè),人種等重要信息,

值得一提的是,14個屬性變量中有7個類別型變量,數(shù)據(jù)集各屬性:其中序號0~13是屬性, 14是類別

數(shù)據(jù)集局部圖如下圖所示:

注1: 已清洗的數(shù)據(jù)僅供本課程學習使用,有一定的模擬性質(zhì)。如需要更多的信息,則需要從原始數(shù)據(jù)按照相應的目的進行清洗。注2: CSV 格式是數(shù)據(jù)分析工作中常見的一種數(shù)據(jù)格式。CSV 意為逗號分隔值(Comma-Separated Values),其文件以純文本形式存儲表格數(shù)據(jù)(數(shù)字和文本)。每行只有一條記錄,每條記錄被逗號分隔符分隔為字段,并且每條記錄都有同樣的字段序列。 CSV 格式能被大多數(shù)應用程序所支持,廣泛用于在不同的系統(tǒng)之間轉(zhuǎn)移數(shù)據(jù),是一種容易被兼容的格式。實驗樓中大量的數(shù)據(jù)分析類課程都使用了 CSV 格式的數(shù)據(jù)集,不僅如此,我們也推薦你在今后的數(shù)據(jù)分析工作中應用此格式來存儲數(shù)據(jù)。

2、Azure云平臺的機器學習應用

2.1 觀察數(shù)據(jù)集

現(xiàn)在,用 Microsoft Excel 或任何其他電子表格工具中打開 adult.data 文件,并為其添加網(wǎng)站中屬性列表的詳細信息,這些信息如下列出。注意,其中的一部分屬性值為連續(xù)的,因為它們以數(shù)值的形式表現(xiàn),另一部分則為離散的。

????年齡(age),連續(xù)值

????工作種類(Workclass)個人(Private), 無限責任公司(Self-emp-not-inc), 有限責任公司(Self-emp-inc), 聯(lián)邦政府(Federal-gov), 地方政府( Local-gov), 州政府(State-gov), 無薪人員(Without-pay), 無工作經(jīng)驗人員(Never-worked)離散值

????序列號(Fnlwgt)連續(xù)值

????教育情況(Education)?Bachelors, Some-college, 11th, HS-grad, Prof-school, Assoc-acdm, Assoc-voc, 9th, 7th-8th, 12th, Masters, 1st-4th, 10th, Doctorate, 5th-6th, Preschool )離散值

?????受教育年限(Education-num),連續(xù)值

?????婚姻狀況(Marital-status)?已婚(Married-civ-spouse),離婚(Divorced),未婚(Never-married),離異(Separated),喪偶(Widowed),已婚配偶缺席(Married-spouse-absent)、 再婚(Married-AF-spouse),離散值

????職業(yè)情況(Occupation)技術(shù)支持(Tech-support),維修工藝(Craft-repair),服務(wù)行業(yè)(Other-service)、 銷售(Sales)、 執(zhí)行管理(Exec-managerial)、 專業(yè)教授(Prof-specialty),清潔工(Handlers-cleaners),機床操控人員(Machine-op-inspct)、 行政文員(Adm-clerical)、 養(yǎng)殖漁業(yè)(Farming-fishing)、 運輸行業(yè)(Transport-moving),私人房屋服務(wù)(Priv-house-serv),保衛(wèi)工作(Protective-serv), 武裝部隊(Armed-Forces)職業(yè)情況,離散值

????親屬情況(Relationship)妻子(Wife),子女(Own-child),丈夫(Husband),外來人員(Not-in-family)、 其他親戚(Other-relative)、 未婚(Unmarried),離散值

????種族膚色(Race)白人(White),亞洲太平洋島民(Asian-Pac-Islander),阿米爾-印度-愛斯基摩人(Amer-Indian-Eskimo)、 其他(Other),黑人(Black)離散值

????性別(Sex )男性(Female),女性( Male),離散值

????資本盈利(Capital-gain )連續(xù)值

????資本損失(Capital-loss) ,連續(xù)值

????每周工作時間(Hours-per-week ),連續(xù)值

????國籍(Native-country )美國(United-States)、 柬埔寨(Cambodia)、 英國(England),波多黎各(Puerto-Rico),加拿大(Canada),德國(Germany),美國周邊地區(qū)(關(guān)島-美屬維爾京群島等)(Outlying-US(Guam-USVI-etc)),印度(India)、 日本(Japan)、 希臘(Greece)、 美國南部(South)、 中國(China)、 古巴(Cuba)、 伊朗(Iran)、 洪都拉斯(Honduras),菲律賓(Philippines)、 意大利(Italy)、 波蘭(Poland)、 牙買加(Jamaica)、 越南(Vietnam)、 墨西哥(Mexico)、 葡萄牙(Portugal)、 愛爾蘭(Ireland)、 法國(France)、多米尼加共和國(Dominican-Republic)、 老撾(Laos)、 厄瓜多爾(Ecuador)、 臺灣(Taiwan)、 海地(Haiti)、 哥倫比亞(Columbia)、 匈牙利(Hungary)、 危地馬拉(Guatemala)、 尼加拉瓜(Nicaragua)、蘇格蘭(Scotland)、 泰國(Thailand)、 南斯拉夫(Yugoslavia),薩爾瓦多(El-Salvador)、 特立尼達和多巴哥(Trinadad&Tobago)、 秘魯(Peru),香港(Hong),荷蘭(Holland-Netherlands)離散值

????收入 (incom)?>50K, <=50K ,離散值

注意,在插入這些列的標題后,一定要以 .csv 格式保存,且保存時將文件命名為 Adult.data.csv 。

2.2 導入數(shù)據(jù)

2.2.1 總結(jié)數(shù)據(jù)集

總括一下數(shù)據(jù)集的數(shù)據(jù)特征:

????1,十四個與結(jié)果相關(guān)的唯一屬性

????2,數(shù)據(jù)集的實例數(shù)為 48,842

????3,預測任務(wù)是確定用戶是否一年收入超過$50,000美元。

此人口收入的普查數(shù)據(jù)集以被微軟作為一個樣本數(shù)據(jù)提供出來了,在其成人普查收入的二元分類(Adult Census Income Binary Classification)數(shù)據(jù)集中便可以找到。以下我們將手動地一步步全面地介紹整個Azure機器學習工作流過程,很有可能,您的用于預測模型地真實數(shù)據(jù)集來自于其他外部資源,因此了解機器學習是怎么從開始至結(jié)束的全過程是很有必要的。

2.2.2 數(shù)據(jù)上載至Azure機器學習實驗

將人口收入普查數(shù)據(jù)集添加了列標題后,我們即可將數(shù)據(jù)上載至Azure機器學習工作區(qū),并將其納入預測模型。點擊屏幕左下方的"+",然后選擇上傳的數(shù)據(jù)集。下圖顯示上傳本地數(shù)據(jù)文件的選項。

?下一步,點擊從本地文件選擇即"FROM LOCAL FILE",您可看見如下圖所示的上載界面。在此界面您可指定上載文件的屬性,比如文件的位置、名稱(本例中我們使用 Adult.data.csv )和類型(通常是CSV類型),以及新的數(shù)據(jù)集的可選說明。

完成信息的輸入并點擊簽入按鈕后,您的數(shù)據(jù)集將異步加載至您的第一個Azure機器學習實驗的工作區(qū)中:

2.2.3 創(chuàng)建新的Azure機器學習實驗

創(chuàng)建新的實驗的方法是點擊屏幕左下角的"+NEW"按鈕,選擇"實驗"(EXPERIMENT)>"空白實驗"(Blank Experiment):

請注意,除了空白實驗之外,還有許多示例實驗模板可供您加載和修改,以便您快速掌握Azure機器學習的實踐。 完成新的空白實驗的加載后,您可見到如下圖所示的Azure ML Studio可視化設(shè)計界面

可以看到設(shè)計器由三個主要區(qū)域構(gòu)成:

????左側(cè)導航窗格?此區(qū)域包含Azure機器學習模塊的可搜索列表,此模型可用于創(chuàng)建預測分析模型。

????????按功能區(qū)域分組的模塊

????????數(shù)據(jù)集的讀取和格式轉(zhuǎn)換;

????????使用和訓練機器學習算法;

????????評估預測模型的結(jié)果。

????中間窗格 在可視化設(shè)計器中,Azure機器學習的實驗類似于流程圖的形式,可以通過拖拽左側(cè)窗格中的功能模塊至可視化設(shè)計器的中間窗格組裝成工作流。模塊可以自由的被拖放在中間窗格的任意位置,模塊之間通過輸入和輸出端口之間畫線連接。

右側(cè)窗體?在屬性視圖中,可在右側(cè)窗體查看和設(shè)置被選擇模塊的屬性。

在左側(cè)窗體展開"已保存的數(shù)據(jù)集(Saved Datasets)"選項,便可以看到我們上載的用于Azure機器學習的 Adult.data.csv 數(shù)據(jù)文件出現(xiàn)在數(shù)據(jù)集的列表中,如圖顯示 Adult.data.csv 將被拖放至可視化設(shè)計器的中間窗體:

2.3 分割數(shù)據(jù)集

通常,創(chuàng)建Azure 機器學習實驗后,我們都會將數(shù)據(jù)集分割為兩個分組即訓練數(shù)據(jù)驗證數(shù)據(jù),這樣做有兩個特定目的:

?1,訓練數(shù)據(jù)通常用來創(chuàng)建預測模型,基于機器學習算法發(fā)現(xiàn)歷史數(shù)據(jù)中的固有模式。

?2,驗證數(shù)據(jù)的分組用來測試訓練數(shù)據(jù)創(chuàng)建的預測模型對于已知結(jié)果預測的精度和概率。

執(zhí)行以下的步驟將數(shù)據(jù)集分割成兩部分。

????1,在左側(cè)窗體中展開"Data Transformation"即數(shù)據(jù)轉(zhuǎn)換模塊。

????2,拖動"Split"即分割模塊至Azure機器學習設(shè)計器。

????3,連接"Split"模塊與 Adult.data.csv 數(shù)據(jù)集。

????4,點擊分割模塊并設(shè)置"Fraction of rows in the first output dataset"為0.8。這將80%的數(shù)據(jù)分割至訓練數(shù)據(jù)集中。

以上操作就將數(shù)據(jù)集中的80%的數(shù)據(jù)用于訓練模型,我們可使用剩余的20%數(shù)據(jù)驗證模型的精度。

2.4 模型訓練

借助Azure機器學習算法"教"模型如何評估數(shù)據(jù):在左側(cè)窗體中展開"Machine Learning"即機器學習模塊,然后展開"Train"子模塊,將"Train Model"拖放至設(shè)計器中,最后在設(shè)計器中連接"Train Model"和"Split"圖形。

然后,我們展開"Machine Learning"即機器學習模塊下的"Initialize Model"即初始化模型,展開"Classfication"即分類子模塊。在此實驗中,我們使用"Two-Class Boosted Decision Tree"即雙類提升的決策樹算法。在左側(cè)窗體中選中該算法模塊并將其拖放至設(shè)計器中,至此您的實驗應該如下圖所示。


2.5 選擇預測項

要完成算法的配置,我們需要指定數(shù)據(jù)集中的哪一列數(shù)據(jù)作為輸出或者預測列,數(shù)據(jù)集中的任意列將基于其他列的數(shù)據(jù)做預測。若要執(zhí)行此操作,在設(shè)計器中點擊"Train Model",屬性窗體將在Azure ML Studio的右側(cè)窗體中顯示, 若您在設(shè)計器中設(shè)置,請選擇"Launch column selector"即啟動列選擇器,選擇"Include"和列名稱為"income"即收入的列。

下圖所示的列選擇器將數(shù)據(jù)集中的收入列作為預測列,即要預測的是用戶收入。如下圖所示。

按照這種方式,Azure機器學習算法從每行數(shù)據(jù)中的其他列訓練模型,以預測收入。我們使用數(shù)據(jù)集中的80%基于已知的輸入和輸出數(shù)據(jù)訓練訓練模型。

至此,我們已經(jīng)做好訓練模型的準備,選擇屏幕底端的"RUN"即運行選項,然后靜待Azure機器學習訓練我們的模型。您會注意到,實驗每個階段完成的時候,綠色的復選框就出現(xiàn)在每個操作的右側(cè),如下圖所示。

2.6 模型評分

現(xiàn)在我們已經(jīng)訓練完成新的Azure機器學習預測模型,下一步我們從解決方案的適用性的角度評估預測結(jié)果的正確性,以確定模型的精度。請牢記,Azure機器學習解決方案偉大之處在于迭代開發(fā),最終成功的關(guān)鍵是快速試錯。

如要實現(xiàn)對模型的評價,首先展開Azure ML Studio左側(cè)的"Machine Learning"即機器學習模塊,然后展開"Score Model"即評分模型子模塊,將"Score Model"拖放至設(shè)計器中,下一步連接"Score Model"和"Train Model",最后鏈接"Score Model"和"Split"模塊。至此,基本上就完成了利用數(shù)據(jù)集中20%的數(shù)據(jù)評估預測模型的準確性。

下一步,單擊屏幕底部的"Run"即運行按鈕等待處理的結(jié)果(每個模塊右側(cè)出現(xiàn)綠色的復選標記表示運行完畢)。下圖是機器學習實驗預測收入的運算過程截圖。

2.7 模型計算結(jié)果的可視化

當所有的模型運算結(jié)束后,將鼠標懸停在"Score Model"即評分模型上點擊右鍵,從快捷菜單中選擇"Visualize"即可視化,如下圖所示。

當您選擇可視化新訓練的模型數(shù)據(jù)選項后,會生成一個新的頁面。在可視化的界面中滑動滾動條至最右端,您會發(fā)現(xiàn)兩個額外的列顯示在數(shù)據(jù)集中,如下圖所示。

可以看到現(xiàn)在有兩個額外的列添加到了我們的數(shù)據(jù)集中:

1,"Scored Lables"即評分標簽表示數(shù)據(jù)集中此行數(shù)據(jù)的預測結(jié)果

2,"Scored Probabilities"即評分概率表示收入水平超過 $50000 的概率 (或可能性)。

在我們數(shù)據(jù)集中新增的列提供了算法針對每行數(shù)據(jù)計算的預測結(jié)果和概率因子。概率因子是模型基于數(shù)據(jù)集中其他列數(shù)據(jù)預測結(jié)果的準確度的概率估計。通常情況下,預測分析是一個多輪迭代的過程。可能您會嘗試許多不同的算法,或者將他們聯(lián)合使用(在高級的機器學習主題文章中被稱為集成)以證明預測模型的有效性。

2.8 模型評估

Azure機器學習最引入注目的功能之一就是它能夠快速評估不同的算法,只要輕點鼠標就可完成這些功能,這一切都歸功于評估模型。確定模型的精準度的方法很簡單,我們只要使用Azure ML Studio內(nèi)置的評估模型就輕松完成模型的評價。

若要執(zhí)行此操作,在Azure ML Studio的左側(cè)導航窗格中點擊"Machine Learning"即機器學習模塊,選擇"Evaluate"即評估子模塊,最后選擇"Evaluate Model"即評估模型的模塊,將其拖至可視化設(shè)計器頁面中的"Score Model"模塊下方。連接"Split Model"和"Score Model"即分割模型和評分模型,以及"Evaluate Model"和"Score Model"即評價模型和評分模型,如下圖所示。

?點擊Azure ML Studio 屏幕底部的"Run"即運行按鈕,在執(zhí)行過程中您可以查看實驗中每個模塊的運行情況,如果模塊運行完畢會在模塊的右側(cè)顯示綠色的復選標記。整個過程運行完畢后,右鍵單擊評估模型的模塊底部連接器,在快捷菜單中選擇"Visualize"即可視化:

五、總結(jié)

5.1 曲線和度量指標

???評估模型模塊會產(chǎn)生一套曲線和度量指標,讓您對于評分模型的結(jié)果或者兩個評分模型的對比情況一目了然。評分結(jié)果以以下三種形式展示:

????ROC曲線(Receiver Operator Characteristic)即受試者工作特征曲線反映的是真陽性占總的實際陽性的比例。將它與在各種閾值設(shè)置情況下假陽性占總的實際陰性的比例進行對比。對角連線表示50%預測的準確性,并可作為評價的基準以便后續(xù)提高。曲線位于左邊高出對角線的部分表示模型的精準度高,當然您也會希望實驗的結(jié)果曲線出現(xiàn)在此區(qū)域。

????準確率和召回率是衡量信息檢索系統(tǒng)性能的重要指標。準確率是指檢索到相關(guān)文檔數(shù)占檢索到的文檔總數(shù)的比例,而召回率是指檢索到相關(guān)文檔數(shù)占所有相關(guān)文檔總數(shù)的比例。

????lift曲線是數(shù)據(jù)挖掘分類器最常用的方式之一,與ROC曲線不同的是lift考慮分類器的準確性,也就是使用分類器獲得的正類數(shù)量和不使用分類器隨機獲取正類數(shù)量的比例。

可視化結(jié)果中,您可看到兩個數(shù)據(jù)集("訓練"數(shù)據(jù)集和"驗證"數(shù)據(jù)集)幾乎完全相同,即紅色和藍色曲線幾乎完全重合,這表明我們的預測模型相當準確。Azure 機器學習入門的初衷就是構(gòu)建合理準確的預測模型,并在下一個階段中進行應用。

5.2 保存實驗

在此步驟中,我們將要保存實驗的副本。在屏幕的底部點擊"Save As"另存為按鈕。在后面的實驗中,你可能將實驗的核心功能做出重大的修改,所以要先將實驗另存,保存的名稱建議具有描述性的說明,比如 Azure 機器學習的收入預測——訓練模型試驗(Azure ML Income Prediction – Train Model Experiment)。

總結(jié)

以上是生活随笔為你收集整理的机器学习实验的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。