<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>

          《如何打一場數(shù)據(jù)挖掘賽事》入門版

          共 3961字,需瀏覽 8分鐘

           ·

          2022-07-26 16:54


          這是一份簡易的競賽教程,我們的目的是幫助同學(xué)們邁出 AI 訓(xùn)練大師之路的第一步。數(shù)據(jù)挖掘中會有很多需要學(xué)習(xí)的地方,建議入門的同學(xué)可以暫時(shí)不用著急去弄懂各個(gè)代碼的原理,先跑通代碼,然后看代碼中的涉及的知識點(diǎn)去查詢相關(guān)資料進(jìn)行學(xué)習(xí),這樣能讓你學(xué)習(xí)更加有目標(biāo)性,也容易找到學(xué)習(xí)的樂趣。千里之行,始于足下,從這里,開啟你的 AI 學(xué)習(xí)之旅吧!

          —— 貢獻(xiàn)者:牧小熊、駱秀韜

          一、準(zhǔn)備步驟

          1.1 平臺注冊與比賽報(bào)名

          1. 賽事鏈接:
            https://challenge.xfyun.cn/topic/info?type=diabetes&ch=ds22-dw-gzh02

          2. 注冊(記得填寫個(gè)人信息)

          點(diǎn)擊頁面右上角:注冊
          填寫個(gè)人信息,注冊成功
          1. 點(diǎn)擊報(bào)名參賽,顯示成功報(bào)名
          點(diǎn)擊:報(bào)名參賽
          報(bào)名成功

          1.2 數(shù)據(jù)下載

          數(shù)據(jù)獲取

          • 官網(wǎng)下載數(shù)據(jù):下載數(shù)據(jù)及實(shí)名認(rèn)證。
            詳細(xì)操作可查看:https://xj15uxcopw.feishu.cn/docx/doxcn11gwo7cEuAXWhCrDld4Inb
          • 請把數(shù)據(jù)文件和代碼文件放在同一個(gè)文件夾下,保證正常運(yùn)行

          1.3 參考資料

          python環(huán)境的搭建請參考:

          • Mac設(shè)備:Mac上安裝Anaconda最全教程 https://zhuanlan.zhihu.com/p/350828057
          • Windows設(shè)備:Anaconda超詳細(xì)安裝教程
             https://blog.csdn.net/fan18317517352/article/details/123035625

          二、實(shí)踐思路

          本次比賽是一個(gè)數(shù)據(jù)挖掘賽,需要選手通過訓(xùn)練集數(shù)據(jù)構(gòu)建模型,然后對驗(yàn)證集數(shù)據(jù)進(jìn)行預(yù)測,預(yù)測結(jié)果進(jìn)行提交。

          本題的任務(wù)是構(gòu)建一種模型,該模型能夠根據(jù)患者的測試數(shù)據(jù)來預(yù)測這個(gè)患者是否患有糖尿病。這種類型的任務(wù)是典型的二分類問題(患有糖尿病 / 不患有糖尿病),模型的預(yù)測輸出為 0 或 1 (患有糖尿病:1,未患有糖尿病:0)

          機(jī)器學(xué)習(xí)中,關(guān)于分類任務(wù)我們一般會想到邏輯回歸、決策樹等算法,在這個(gè) Baseline 中,我們嘗試使用決策樹來構(gòu)建我們的模型。我們在解決機(jī)器學(xué)習(xí)問題時(shí),一般會遵循以下流程:

          2.1 代碼實(shí)現(xiàn)

          以下代碼,請?jiān)趈upyter notbook或python編譯器環(huán)境中實(shí)現(xiàn)

          #安裝相關(guān)依賴庫 如果是windows系統(tǒng),cmd命令框中輸入pip安裝,參考上述環(huán)境配置
          #!pip install sklearn
          #!pip install pandas
          #---------------------------------------------------
          #導(dǎo)入庫
          #----------------數(shù)據(jù)探索----------------
          import pandas as pd
          from sklearn.tree import DecisionTreeClassifier
          #數(shù)據(jù)預(yù)處理
          data1=pd.read_csv('比賽訓(xùn)練集.csv',encoding='gbk')
          data2=pd.read_csv('比賽測試集.csv',encoding='gbk')
          #label標(biāo)記為-1
          data2['患有糖尿病標(biāo)識']=-1
          #訓(xùn)練集和測試機(jī)合并
          data=pd.concat([data1,data2],axis=0,ignore_index=True)
          #將舒張壓特征中的缺失值填充為-1
          data['舒張壓']=data['舒張壓'].fillna(-1)

          #----------------特征工程----------------
          """
          將出生年份換算成年齡
          """

          data['年齡']=2022-data['出生年份']  #換成年齡

          """
          人體的成人體重指數(shù)正常值是在18.5-24之間
          低于18.5是體重指數(shù)過輕
          在24-27之間是體重超重
          27以上考慮是肥胖
          高于32了就是非常的肥胖。
          """

          def BMI(a):
              if a<18.5:
                  return 0
              elif 18.5<=a<=24:
                  return 1
              elif 24<a<=27:
                  return 2
              elif 27<a<=32:
                  return 3
              else:
                  return 4

          data['BMI']=data['體重指數(shù)'].apply(BMI)

          #糖尿病家族史
          """
          無記錄
          叔叔或者姑姑有一方患有糖尿病/叔叔或姑姑有一方患有糖尿病
          父母有一方患有糖尿病
          """

          def FHOD(a):
              if a=='無記錄':
                  return 0
              elif a=='叔叔或者姑姑有一方患有糖尿病' or a=='叔叔或姑姑有一方患有糖尿病':
                  return 1
              else:
                  return 2

          data['糖尿病家族史']=data['糖尿病家族史'].apply(FHOD)
          """
          舒張壓范圍為60-90
          """

          def DBP(a):
              if 0<=a<60:
                  return 0
              elif 60<=a<=90:
                  return 1
              elif a>90:
                  return 2
              else:
                  return a
          data['DBP']=data['舒張壓'].apply(DBP)

          #------------------------------------
          #將處理好的特征工程分為訓(xùn)練集和測試集,其中訓(xùn)練集是用來訓(xùn)練模型,測試集用來評估模型準(zhǔn)確度
          #其中編號和患者是否得糖尿病沒有任何聯(lián)系,屬于無關(guān)特征予以刪除
          train=data[data['患有糖尿病標(biāo)識'] !=-1]
          test=data[data['患有糖尿病標(biāo)識'] ==-1]
          train_label=train['患有糖尿病標(biāo)識']
          train=train.drop(['編號','患有糖尿病標(biāo)識','出生年份'],axis=1)
          test=test.drop(['編號','患有糖尿病標(biāo)識','出生年份'],axis=1)

          #----------------模型訓(xùn)練----------------
          model = DecisionTreeClassifier()
          model.fit(train, train_label) 
          y_pre=model.predict(test)
          y_pre

          #----------------結(jié)果輸出----------------
          result=pd.read_csv('提交示例.csv')
          result['label']=y_pre
          result.to_csv('result-de.csv',index=False)

          2.2 結(jié)果提交

          在提交結(jié)果處提交,提交 預(yù)測結(jié)果.csv(程序生成的CSV文件),查看自己的成績排名

          選擇剛才生成的result.csv點(diǎn)擊提交
          點(diǎn)擊我的成績查看結(jié)果

          ·················END·················

          推薦閱讀

          1. 我在字節(jié)做了哪些事

          2. 寫給所有數(shù)據(jù)人。

          3. 從留存率業(yè)務(wù)案例談0-1的數(shù)據(jù)指標(biāo)體系

          4. 數(shù)據(jù)分析師的一周

          5. 超級菜鳥如何入門數(shù)據(jù)分析?


          歡迎長按掃碼關(guān)注「數(shù)據(jù)管道」

          瀏覽 47
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <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>
                  青娱乐精品盛宴 | 日本不卡视频在线播放 | 先锋资源在线视频 | 蜜桃人妻无码AV天堂二区 | 黑人操逼免费视频 |