日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人工智能 > ChatGpt >内容正文

ChatGpt

【机器学习PAI实践一】搭建心脏病预测案例

發布時間:2025/4/5 ChatGpt 46 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【机器学习PAI实践一】搭建心脏病预测案例 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

產品地址:https://data.aliyun.com/product/learn?spm=a21gt.99266.416540.102.OwEfx2

一、背景

心臟病是人類健康的頭號殺手。全世界1/3的人口死亡是因心臟病引起的,而我國,每年有幾十萬人死于心臟病。 所以,如果可以通過提取人體相關的體側指標,通過數據挖掘的方式來分析不同特征對于心臟病的影響,對于預測和預防心臟病將起到至關重要的作用。本文將會通過真實的數據,通過阿里云機器學習平臺搭建心臟病預測案例。

二、數據集介紹

數據源: UCI開源數據集heart_disease
針對美國某區域的心臟病檢查患者的體測數據,共303條數據。具體字段如下表:

字段名含義類型描述
age年齡string對象的年齡,數字表示
sex性別string對象的性別,female和male
cp胸部疼痛類型string痛感由重到無typical、atypical、non-anginal、asymptomatic
trestbps血壓string血壓數值
chol膽固醇string膽固醇數值
fbs空腹血糖string血糖含量大于120mg/dl為true,否則為false
restecg心電圖結果string是否有T波,由輕到重為norm、hyp
thalach最大心跳數string最大心跳數
exang運動時是否心絞痛string是否有心絞痛,true為是,false為否
oldpeak運動相對于休息的ST depressionstringst段壓數值
slop心電圖ST segment的傾斜度stringST segment的slope,程度分為down、flat、up
ca透視檢查看到的血管數string透視檢查看到的血管數
thal缺陷種類string并發種類,由輕到重norm、fix、rev
status是否患病string是否患病,buff是健康、sick是患病

三、數據探索流程

數據挖掘流程如下:

整體實驗流程:

1.數據預處理

數據預處理也叫作數據清洗,主要在數據進入算法流程前對數據進行去噪、填充缺失值、類型變換等操作。本次實驗的輸入數據包括14個特征和1個目標隊列。需要解決的場景是根據用戶的體檢指標預測是否會患有心臟病,每個樣本只有患病或不患病兩種,是分類問題。因為本次分類實驗選用的是線性模型邏輯回歸,要求輸入的特征都是double型的數據。
輸入數據展示:

我們看到有很多數據是文字描述的,在數據預處理的過程中我們需要根據每個字段的含義將字符型轉為數值。
1)二值類的數據
二值類的比較容易轉換,如sex字段有兩種表現形式female和male,我們可以將female表示成0,把male表示成1。
2)多值類的數據
比如cp字段,表示胸部的疼痛感,我們可以通過疼痛的由輕到重映射成0~3的數值。

數據的預處理通過sql腳本來實現,具體請參考SQL腳本-1組件,

select age, (case sex when 'male' then 1 else 0 end) as sex, (case cp when 'angina' then 0 when 'notang' then 1 else 2 end) as cp, trestbps, chol, (case fbs when 'true' then 1 else 0 end) as fbs, (case restecg when 'norm' then 0 when 'abn' then 1 else 2 end) as restecg, thalach, (case exang when 'true' then 1 else 0 end) as exang, oldpeak, (case slop when 'up' then 0 when 'flat' then 1 else 2 end) as slop, ca, (case thal when 'norm' then 0 when 'fix' then 1 else 2 end) as thal, (case status when 'sick' then 1 else 0 end) as ifHealth from ${t1};

2.特征工程

特征工程主要是包括特征的衍生、尺度變化等。本例中有兩個組件負責特征工程的部分。

1)過濾式特征選擇
主要是通過這個組件判斷每個特征對于結果的影響,通過信息熵和基尼系數來表示,可以通過查看評估報告來顯示最終的結果。

2)歸一化
因為本次實驗選擇的是通過邏輯回歸二分類來進行模型訓練,需要每個特征去除量綱的影響。歸一化的作用是將每個特征的數值范圍變為0到1之間。歸一化的公式為result=(val-min)/(max-min)。
歸一化結果:

3.模型訓練和預測

本次實驗是監督學習,因為我們已經知道每個樣本是否患有心臟病,所謂監督學習就是已知結果來訓練模型。解決的問題是預測一組用戶是否患有心臟病。

1)拆分
首先通過拆分組件將數據分為兩部分,本次實驗按照訓練集和預測集7:3的比例拆分。訓練集數據流入邏輯回歸二分類組件用來訓練模型,預測集數據進入預測組件。

2)邏輯回歸二分類
邏輯回歸是一個線性模型,在這里通過計算結果的閾值實現分類。具體的算法詳情推薦大家在網上或者書籍中自行了解。邏輯回歸訓練好的模型可以在模型頁簽中查看。

3)預測
預測組件的兩個輸入分別是模型和預測集。預測結果展示的是預測數據、真實數據、每組數據不同結果的概率。

4.評估

通過混淆矩陣組件可以評估模型的準確率等參數,

通過此組件可以方便的通過預測的準確性來評估模型。

四.總結

通過以上數據探索的流程我們可以得到以下的結論。

1)特征權重
我們可以通過過濾式特征選擇得到每個特征對于結果的權重。

-可以看出thalach(心跳數)對于是否發生心臟病影響最大。
-性別對于心臟病沒有影響
2)模型效果
通過上文提供的14個特征,可以達到百分之八十多的心臟病預測準確率。模型可以用來做預測,輔助醫生預防和治療心臟病。

五、其它

免費體驗:阿里云數加機器學習平臺

總結

以上是生活随笔為你收集整理的【机器学习PAI实践一】搭建心脏病预测案例的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。