Python基于邏輯回歸分類模型、決策樹分類模型汉规、隨機森林分類模型和XGBoost分類模型實現(xiàn)乳腺癌分類預測項目實戰(zhàn)

說明:這是一個機器學習實戰(zhàn)項目(附帶數(shù)據(jù)+代碼+文檔+代碼講解)啄枕,如需數(shù)據(jù)+代碼+文檔+代碼講解可以直接到文章最后獲取。

1.項目背景

在當今醫(yī)療健康領域为狸,乳腺癌作為威脅女性健康的主要惡性腫瘤之一辐怕,其早期診斷與精準治療對于提高患者生存率至關重要社搅。隨著醫(yī)學信息學與人工智能技術的飛速發(fā)展青扔,利用大數(shù)據(jù)分析逻炊、機器學習以及深度學習等先進手段構建乳腺癌分類預測模型佑淀,已成為研究熱點和臨床實踐的重要方向卷要。

近年來僧叉,全球乳腺癌發(fā)病率持續(xù)上升瓶堕,成為全球范圍內(nèi)女性癌癥發(fā)病率最高的疾病之一谭梗。盡管乳腺癌在早期發(fā)現(xiàn)時治療效果較為理想凄吏,但傳統(tǒng)的診斷方法如鉬靶攝影、超聲檢查及組織活檢等存在一定的局限性图柏,如誤診率蚤吹、漏診率問題以及對患者造成的身體與心理負擔随抠。因此拱她,開發(fā)高效、準確且便捷的乳腺癌分類預測模型诸蚕,不僅能夠提高診斷效率背犯,還能促進個性化醫(yī)療方案的制定漠魏,為患者帶來更為及時有效的干預措施妄均。

研究意義:

提升早期診斷率:通過分析乳腺影像學、生物標志物壤巷、遺傳學及臨床數(shù)據(jù)瞧毙,構建的預測模型能夠有效識別乳腺癌早期跡象宙彪,為患者爭取寶貴的治療時間释漆。

個性化醫(yī)療策略:結合患者的個體差異,預測模型能輔助醫(yī)生定制化治療方案檀训,實現(xiàn)精準醫(yī)療峻凫。

資源優(yōu)化配置:高效預測模型可減少不必要的檢查和治療览露,優(yōu)化醫(yī)療資源分配差牛,減輕公共衛(wèi)生系統(tǒng)的負擔偏化。

促進科研進展:模型的開發(fā)與驗證過程能夠深化對乳腺癌生物學機制的理解,推動相關基礎研究與技術創(chuàng)新驶冒。

基于以上背景骗污,本研究擬采用先進的機器學習算法沈条,結合豐富的乳腺癌臨床數(shù)據(jù)集,構建一個高度準確且具有臨床實用價值的乳腺癌分類預測模型涕烧。最終目標是為乳腺癌的早期篩查與精準管理提供科學依據(jù)议纯,進而改善患者預后仲翎,提升公眾健康水平溯香。?

本項目通過邏輯回歸分類模型玫坛、決策樹分類模型包晰、隨機森林分類模型和XGBoost分類模型實現(xiàn)乳腺癌分類預測伐憾。?????

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

本次建模數(shù)據(jù)來源于網(wǎng)絡(本項目撰寫人整理而成)树肃,數(shù)據(jù)項統(tǒng)計如下:

數(shù)據(jù)詳情如下(部分展示):

3.數(shù)據(jù)預處理

3.1?用Pandas工具查看數(shù)據(jù)

使用Pandas工具的head()方法查看前五行數(shù)據(jù):?

關鍵代碼:

3.2數(shù)據(jù)缺失查看

使用Pandas工具的info()方法查看數(shù)據(jù)信息:

從上圖可以看到,總共有31個變量乡话,數(shù)據(jù)中無缺失值耳奕,共569條數(shù)據(jù)屋群。

關鍵代碼:?

3.3數(shù)據(jù)描述性統(tǒng)計

通過Pandas工具的describe()方法來查看數(shù)據(jù)的平均值谓晌、標準差纸肉、最小值喊熟、分位數(shù)芥牌、最大值壁拉。

關鍵代碼如下:?

4.探索性數(shù)據(jù)分析

4.1 label變量柱狀圖

用Matplotlib工具的plot()方法繪制柱狀圖:

4.2?label=1樣本mean radius變量分布直方圖

用Matplotlib工具的hist()方法繪制直方圖:

4.3?相關性分析

從上圖中可以看到,數(shù)值越大相關性越強痘昌,正值是正相關辆苔、負值是負相關驻啤。

5.特征工程

5.1?建立特征數(shù)據(jù)和標簽數(shù)據(jù)

關鍵代碼如下:

5.2?數(shù)據(jù)均衡化

通過上圖可以看到骑冗,數(shù)據(jù)均衡化后沐旨,標簽兩種樣本的數(shù)量一致榨婆。

5.3?數(shù)據(jù)集拆分

通過train_test_split()方法按照80%訓練集良风、20%測試集進行劃分烟央,關鍵代碼如下:

6.構建分類模型?

主要使用邏輯回歸分類算法疑俭、決策樹分類算法、隨機森林分類算法和XGBoost分類算法啄寡,用于目標分類挺物。??

6.1?構建模型?

7.模型評估

7.1評估指標及結果?

評估指標主要包括準確率识藤、查準率痴昧、查全率、F1分值等等秧骑。

從上表可以看出,4個模型的F1分值都在0.9以上侵歇,說明這模型效果較好惕虑,其中邏輯回歸模型F1最高為0.9718磨镶。 ????

7.2?分類報告

邏輯回歸分類模型:

從上圖可以看出琳猫,分類為0的F1分值為0.97脐嫂;分類為1的F1分值為0.97账千。

決策樹分類模型:

從上圖可以看出,分類為0的F1分值為0.95鞭衩;分類為1的F1分值為0.94论衍。

隨機森林分類模型:

?從上圖可以看出饲齐,分類為0的F1分值為0.97捂人;分類為1的F1分值為0.96滥搭。

XGBoost分類模型:

從上圖可以看出瑟匆,分類為0的F1分值為0.97;分類為1的F1分值為0.96疾嗅。

7.3?混淆矩陣

邏輯回歸分類模型:

從上圖可以看出代承,實際為0預測不為0的 有4個樣本渐扮;實際為1預測不為1的 有0個樣本。?

決策樹分類模型:

從上圖可以看出膀估,實際為0預測不為0的 有5個樣本察纯;實際為1預測不為1的 有3個樣本捐寥。?

隨機森林分類模型:

從上圖可以看出握恳,實際為0預測不為0的 有2個樣本捺僻;實際為1預測不為1的 有3個樣本。

XGBoost分類模型:

從上圖可以看出拔稳,實際為0預測不為0的 有2個樣本巴比;實際為1預測不為1的 有3個樣本轻绞。

7.4?ROC曲線

邏輯回歸分類模型:

從上圖可以看出政勃,邏輯回歸分類模型的AUC值為1.0兼砖。

決策樹分類模型:

從上圖可以看出讽挟,決策樹分類模型的AUC值為0.94戏挡。

隨機森林分類模型:

從上圖可以看出褐墅,隨機森林分類模型的AUC值為0.99妥凳。

XGBoost分類模型:

從上圖可以看出逝钥,XGBoost分類模型的AUC值為1.0艘款。

8.結論與展望

綜上所述哗咆,本文采用了邏輯回歸益眉、決策樹、隨機森林和XGBoost算法來構建分類模型澈歉,最終證明了4種模型效果良好埃难,其中邏輯回歸模型效果最優(yōu)涤久。此模型可用于日常產(chǎn)品的預測拴竹。??

說明:進入作者個人主頁栓拜,可以查看更多文章內(nèi)容,點擊作者頭像挑势,可進入作者個人主頁

項目代碼:

# label變量柱狀圖??

plt.rcParams['font.sans-serif'] = ['SimHei'] # 指定默認字體

plt.rcParams['axes.unicode_minus'] = False # 解決保存圖像是負號'-'顯示為方塊的問題

# kind='bar' 繪制柱狀圖

df['label'].value_counts().plot(kind='bar') # 繪圖

plt.xlabel("label變量") # 設置x軸名稱

# 繪制直方圖 bins:控制直方圖中的區(qū)間個數(shù) auto為自動填充個數(shù) color:指定柱子的填充色

plt.hist(data_tmp, bins='auto', color='g') # 繪圖

# 項目資源如下:

#? ? https://docs.qq.com/sheet/DTVd0Y2NNQUlWcmd6?tab=BB08J2

# 數(shù)據(jù)均衡化

?from imblearn.over_sampling import RandomOverSampler, SMOTE # 導入過采樣工具

model_SMOTE = SMOTE(random_state=0) # 建立過采樣模型

x_SMOTE_resampled, y_SMOTE_resampled = model_SMOTE.fit_resample(X, y) # 過采樣后樣本結果

x_SMOTE_resampled = pd.DataFrame(x_SMOTE_resampled, columns=X.columns.values) # 構建DataFrame框架

y_SMOTE_resampled = pd.DataFrame(y_SMOTE_resampled, columns=['label']) # 構建DataFrame框架

?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市香拉,隨后出現(xiàn)的幾起案子凫碌,更是在濱河造成了極大的恐慌胃榕,老刑警劉巖勋又,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件楔壤,死亡現(xiàn)場離奇詭異挺邀,居然都是意外死亡,警方通過查閱死者的電腦和手機疲眷,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門狂丝,熙熙樓的掌柜王于貴愁眉苦臉地迎上來哗总,“玉大人讯屈,你說我怎么就攤上這事涮母。” “怎么了沪蓬?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長营搅。 經(jīng)常有香客問我剧防,道長峭拘,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任狮暑,我火速辦了婚禮鸡挠,結果婚禮上,老公的妹妹穿的比我還像新娘搬男。我一直安慰自己拣展,他們只是感情好,可當我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布缔逛。 她就那樣靜靜地躺著备埃,像睡著了一般姓惑。 火紅的嫁衣襯著肌膚如雪按脚。 梳的紋絲不亂的頭發(fā)上于毙,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天,我揣著相機與錄音辅搬,去河邊找鬼唯沮。 笑死,一個胖子當著我的面吹牛堪遂,可吹牛的內(nèi)容都是我干的介蛉。 我是一名探鬼主播,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼溶褪,長吁一口氣:“原來是場噩夢啊……” “哼币旧!你這毒婦竟也來了?” 一聲冷哼從身側響起猿妈,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤佳恬,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后于游,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體毁葱,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年贰剥,在試婚紗的時候發(fā)現(xiàn)自己被綠了倾剿。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡蚌成,死狀恐怖前痘,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情担忧,我是刑警寧澤芹缔,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站瓶盛,受9級特大地震影響最欠,放射性物質發(fā)生泄漏。R本人自食惡果不足惜惩猫,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一芝硬、第九天 我趴在偏房一處隱蔽的房頂上張望轧房。 院中可真熱鬧拌阴,春花似錦奶镶、人聲如沸迟赃。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽左刽。三九已至,卻和暖如春摄乒,著一層夾襖步出監(jiān)牢的瞬間悠反,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留驴一,地道東北人嗅虏。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子旦委,可洞房花燭夜當晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容