<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          機(jī)器學(xué)習(xí)100天學(xué)習(xí)計劃 — 第2天 線性回歸

          共 2097字,需瀏覽 5分鐘

           ·

          2020-12-29 10:57

          一起學(xué)!機(jī)器學(xué)習(xí)100天學(xué)習(xí)計劃 (第1天 數(shù)據(jù)預(yù)處理)


          今天是機(jī)器學(xué)習(xí)100天學(xué)習(xí)計劃的第2天,我們將實現(xiàn)一個簡單的線性回歸模型。


          線性回歸模型就是基于單一特征(X)來預(yù)測結(jié)果(Y),回歸任務(wù)的難點在于找到最佳的擬合線,而我們使用機(jī)器學(xué)習(xí)訓(xùn)練模型的目的就是為了找到這條最佳的擬合線。


          構(gòu)建模型的整個流程如下:


          第零:準(zhǔn)備

          開始之前,你要確保Python和pip已經(jīng)成功安裝在電腦上,如果沒有,請訪問這篇文章:超詳細(xì)Python安裝指南?進(jìn)行安裝。

          如果你用Python的目的是數(shù)據(jù)分析,可以直接安裝Anaconda:Python數(shù)據(jù)分析與挖掘好幫手—Anaconda,它內(nèi)置了Python和pip.

          此外,推薦大家用VSCode編輯器:Python 編程的最好搭檔—VSCode 詳細(xì)指南

          準(zhǔn)備輸入命令安裝依賴,如果你沒有VSCode編輯器,Windows環(huán)境下打開 Cmd (開始-運行-CMD),蘋果系統(tǒng)環(huán)境下請打開 Terminal (command+空格輸入Terminal),如果你用的是VSCode編輯器或Pycharm,可以直接在下方的Terminal中輸入命令:

          pip install?pandas
          pip install?numpy
          pip install?matplotlib
          pip install?scikit-learn


          第一步:數(shù)據(jù)預(yù)處


          按照第一天學(xué)習(xí)的數(shù)據(jù)預(yù)處理知識,這一步我們將執(zhí)行以下步驟:


          1.導(dǎo)入庫
          2.導(dǎo)入數(shù)據(jù)集
          3.檢查缺失數(shù)據(jù)
          4.劃分?jǐn)?shù)據(jù)集
          5.特征歸一化(縮放)


          代碼如下,studentscores.csv 和本文完整源代碼,可在Python實用寶典公眾號后臺回復(fù):機(jī)器學(xué)習(xí)2?下載。


          from?sklearn.model_selection import?train_test_split
          import?pandas as?pd
          import?numpy as?np
          import?matplotlib.pyplot as?plt

          dataset = pd.read_csv('studentscores.csv')
          X = dataset.iloc[:, : 1].values
          Y = dataset.iloc[:, 1].values

          X_train, X_test, Y_train, Y_test = train_test_split(
          ????X, Y, test_size=1/4, random_state=0)


          第二步:訓(xùn)練模型


          使用 sklearn 的 LinearRegression 能夠很輕易地實現(xiàn)一個線性模型的訓(xùn)練。


          我們曾經(jīng)在這篇文章中講解過:Python 用5行代碼學(xué)機(jī)器學(xué)習(xí)—線性回歸


          from?sklearn.linear_model import?LinearRegression
          regressor = LinearRegression()
          regressor = regressor.fit(X_train, Y_train)


          第三步:預(yù)測結(jié)果


          基于 sklearn 優(yōu)秀的代碼封裝能力,預(yù)測測試集的結(jié)果僅需要一行代碼:


          Y_pred?= regressor.predict(X_test)


          第四步:可視化


          單純看數(shù)據(jù)不是很直觀,我們可以使用 matplotlib 將數(shù)據(jù)可視化。


          在真正的實際生活應(yīng)用中,使用 matplotlib 進(jìn)行數(shù)據(jù)可視化這一步往往是在訓(xùn)練模型之前做的,因為我們拿到數(shù)據(jù)后該做的第一步是探索性數(shù)據(jù)分析,也叫EDA分析。


          不過因為這是一篇教程似的文章,并沒有需要進(jìn)行探索性數(shù)據(jù)分析的必要,因此我們略過了EDA分析。


          訓(xùn)練集可視化:


          plt.scatter(X_train, Y_train, color='red')
          plt.plot(X_train, regressor.predict(X_train), color='blue')
          plt.show()



          測試集可視化:


          plt.scatter(X_test, Y_test, color='red')
          plt.plot(X_test, regressor.predict(X_test), color='blue')
          plt.show()


          這樣,我們便完成了一次簡單線性回歸模型的訓(xùn)練和測試,還是比較簡單的。


          如果你想看進(jìn)一步的應(yīng)用,可以閱讀這篇文章:

          Python 用5行代碼學(xué)機(jī)器學(xué)習(xí)—線性回歸


          我們的文章到此就結(jié)束啦,如果你喜歡今天的Python 實戰(zhàn)教程,請持續(xù)關(guān)注Python實用寶典。

          有任何問題,可以在公眾號后臺回復(fù):加群,回答相應(yīng)紅字驗證信息,進(jìn)入互助群詢問。

          原創(chuàng)不易,希望你能在下面點個贊和在看支持我繼續(xù)創(chuàng)作,謝謝!

          點擊下方閱讀原文可獲得更好的閱讀體驗

          Python實用寶典?(pythondict.com)
          不只是一個寶典
          歡迎關(guān)注公眾號:Python實用寶典

          瀏覽 66
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  成人黄色在线播放 | 欧美乱妇日本无乱码特黄大片 | 操逼免费网站 | 欧美色色资源 | 人人草人人 |