运维开发网

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

运维开发网 https://www.qedev.com 2020-12-10 08:29 出处:51CTO 作者:wx5fadfd21e0805
python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)。此课程讲述如何运用python的sklearn快速建立机器学习模型。课程结合美国威斯康辛乳腺癌细胞临床数据,实操演练,建立癌细胞预测分类器。 课程讲述十大经典机器学习算法:逻辑回归,支持向量,KNN,神经网络,随机森林,xgboost,lightGBM,catboost。这些算法模型可以应用于各个领域数据。 本视频系列通俗易懂,课程针对学生和科研机构,python爱好者。 本视频教程系列有完整python代码,观众看后可以下载实际操作。 了解癌症肿瘤基本常识,建立健康生活方式,预防癌症,减轻癌症治疗成本。

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

据权威医学资料统计,全球大约每13分钟就有一人死于乳腺癌,乳腺癌已成为威胁当代人健康的主要疾病之一,并且随着发病率的增加,死亡率也逐渐增加,作为女性实在不能不重视。

其中前十位死因;女性乳腺癌为首因,其余顺序与全人群死因一致。其中,乳腺癌可能没有任何先兆,是一个隐形杀手。

有不少人的乳腺癌是没有任何征兆的,有可能只是发现肿块但没有任何不舒服的地方,但一检查就确诊乳腺癌的情况不在少数,更甚至于有些人已经发展到乳腺癌晚期,只能采取切除患病乳房的方式来挽救生命。因此一定要密切注意乳房的变化,每年体检一次,排除患癌因素最保险。有权威数据统计,中国将进入乳腺癌高峰期,到2021年中国将有250万人患乳腺癌!保养胸部将不再是“喜不喜欢、需不需要”可选问题,在未来的日子里乳腺癌预防将是每个不同年龄女人的必须选择。

乳腺癌的主要症状包括:

1、肿块

为95%乳腺癌病人的乎发症状。大多单发,少见多发,形态偏于圆形、椭圆形或不规则形。质地一般较硬、境界不清。个别如髓样癌质地较软,境界较清。多发于外上象限,肿块增大较快,早期可有活动度。

2、皮肤改变

常见为浅表静脉怒张,酒窝征和桔皮样皮肤。炎性乳癌病人胸部皮肤可大片颜色变暗,呈硬结、增厚,杂以癌性斑块和溃疡呈铠甲状胸壁。晚期乳癌可向浅表溃破,形成溃疡或菜花状新生物。

3、乳tou乳晕改变

乳房中央区乳腺癌,大导管受侵犯可致乳tou扁平、凹陷、回缩,甚至乳tou陷入晕下,导致乳晕变形。Paget氏病可出现乳tou、乳晕皮肤湿疹样改变。

4、乳tou溢液

乳腺癌伴溢液占乳癌总数的1.3-7%,且多见于管内癌、乳tou状癌。血性溢液多见,次为浆液性、浆血性、水样等也有。以溢液为唯一症状乳癌,极少见,且大多为早期管内癌、乳tou状癌,溢液乳腺癌多数先发现肿块后伴有溢液。

5、疼痛

早期出现的为无痛性肿块。乳癌合并囊性增生病时,可有胀痛、钝痛。晚期乳癌疼痛常提示肿瘤直接侵犯神经。

6、腋淋巴结肿大

作为乳腺癌首发症状少见(除非隐匿型乳腺癌)。大多提示乳腺癌病程进展,需排除上肢、肩背、胸部其他恶性肿瘤转移所致。

欢迎各位同学学习《python机器学习-乳腺癌细胞挖掘》课程,链接地址为

https://edu.51cto.com/sd/7036f

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

作者介绍

Toby,持牌照金融公司担任模型验证专家,国内最大医药数据中心数据挖掘部门负责人!和重庆儿科医院,中科院教授,赛柏蓝保持慢病数据挖掘项目合作!管理过欧美日中印巴西等国外药典数据库,马丁代尔数据库,FDA溶解度数据库,临床试验数据库,WHO药物预警等数据库。

课程概述

此课程讲述如何运用python的sklearn快速建立机器学习模型。课程结合美国威斯康辛乳腺癌细胞临床数据,实操演练,建立癌细胞预测分类器。

课程讲述十大经典机器学习算法:逻辑回归,支持向量,KNN,神经网络,随机森林,xgboost,lightGBM,catboost。这些算法模型可以应用于各个领域数据。

本视频系列通俗易懂,课程针对学生和科研机构,python爱好者。

本视频教程系列有完整python代码,观众看后可以下载实际操作。

了解癌症肿瘤基本常识,建立健康生活方式,预防癌症,减轻癌症治疗成本。

适用人群

研究生,博士生毕业论文,NCBI/SCI/Nature论文发布,python爱好者,机器学习,生物信息学,乳腺癌医学科研机构(课程有版权,引用需标注来源)

学习计划和方法

1.每天保证1-2个小时学习时间,预计14-30天可以学习完整门课程。

2.每节课的代码实操要保证,建议不要直接复制粘贴代码,自己实操一遍代码对大脑记忆很重要,有利于巩固知识。

3.第二次学习时要总结上一节课内容,必要时做好笔记,加深大脑理解。

4.不懂问题要罗列出来,先自己上网查询,查不到的可以咨询老师。

课程背景

警钟长鸣!癌症离我们远吗?《我不是药神》催人泪下,笔者在此揭露真相,癌症不是小概率疾病,癌症就在身边。癌症早期发现和控制可极大延长寿命和减少治疗费用。笔者下载美国威斯康辛临床数据,运用python sklearn建立乳腺癌分类器模型,可预测正常细胞和癌细胞。我国医院重视治疗,但忽略疾病预防教育。通过我多年机器学习数据挖掘,我发现疾病可防可控,通过自身努力,我们可以提前发现疾病早期症状或扼杀疾病于摇篮。希望此课程让广大医疗科研工作者认识疾病预防教育重要性。

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

课程目录

章节1我的主页和课前咨询答疑

课时1我的所有教学系列介绍

课时2如何联系作者和访问我的主页

课时3欢迎项目合作

课时4如何下载脚本和原始数据

课时5诚谢大家支持

章节2癌症常识

课时6警钟长鸣!癌症就在你身边

课时7癌症科普介绍

课时8病毒细菌诱发的癌症

课时9祸从口入-致癌食物大揭秘

课时10Python机器学习挖掘癌细胞概述

章节3python编程环境搭建

课时11Anaconda快速入门指南

课时12Anaconda下载安装

课时13Canopy下载和安装

课时14Python非官方扩展包下载地址

课时15python第三方包安装(pip和conda install)

课时16Anaconda Navigator导航器

课时17Anaconda安装不同版本python

课时18jupyter1_为什么使用jupyter notebook

课时19jupyter2_jupyter基本文本编辑操作

课时20如何用jupyter notebook打开指定文件夹内容?

课时21jupyter4_jupyter转换PPT实操

课时22jupyter notebook用matplotlib不显示图片解决方案

课时23conda-forge安装rdkit

章节4python基础知识

课时24为什么学习编程?大多数学校不会告诉你的秘密

课时25python官网

课时26Python文件基本操作

课时27变量_表达式_运算符_值

课时28字符串string

课时29程序基本构架(条件,循环)

课时30数据类型_函数_面向对象编程

课时31python2和3的区别

课时32编程技巧和学习方法

章节5sklearn机器学习基础知识

课时33机器学习数据库介绍

课时34机器学习书籍推荐

课时35Python数据科学常用的包

课时36如何选择算法

课时37sklearn算法速查表

课时38sklearn建模基础代码

课时39python数据科学入门介绍(选修)

章节6获取乳腺癌临床数据

课时40数据获取-乳腺癌细胞临床数据

章节7变量筛选和描述性统计

课时41spss因子分析-解释癌细胞特征

课时42变量筛选1-模型法

课时43变量筛选2-比例法percentile

课时44变量筛选3-方差法

课时45变量筛选4-KBest

课时46好变量/特征比算法更重要(英语-课外阅读)

章节8十大经典机器学习算法-建立乳腺癌细胞分类器

课时47逻辑回归logistic regression

课时48支持向量SVM

课时49KNN最近邻算法

课时50决策树-decision tree

课时51随机森林-random forest

课时52神经网络neural network

课时53xgboost

课时54lightgbm基础讲解

课时55lightGBM脚本实现

课时56catboost基础讲解

课时57catboost脚本实现

课时58常见算法优劣对比

课时59bagging VS boosting

课时60随机森林和boosting算法扩展知识(英文课外阅读)

章节9数据预处理

课时61pandasl数据处理基础知识

课时62哑变量处理-hotcode热编码

课时63imputer-缺失数据处理

课时64scale-数据标准化处理

章节10变量(特征)重要性

课时65逻辑回归和集成树算法变量(特征)重要性概述

课时66随机逻辑回归randomized logistic regression

课时67xgboost特征重要性

课时68catboost特征重要性

课时69lightgbm特征重要性

章节11模型调参

课时70遍历调参法

课时71单个参数网格调参

课时72多参数网格调参

课时73随机网格调参_random size search cv

章节12模型验证

课时74模型验证必要性-市场80%模型存在问题

课时75交叉验证cross validation

课时76混淆矩阵

课时77ROC曲线

课时78PSI(population stability index)模型稳定性

课时79基尼系数GINI index-模型区分能力指标

课时80KS(kolmogorov-smirnoff)-模型区分能力指标

章节13附录

课时81如何运用公开资料学习python(GitHub,kaggle,StackOverflow)

课时82显微镜下癌细胞

课时83python在生物分子学应用(英文课外扩展)

课时84SIR模型预测新冠状病毒2019-nCoV

乳腺癌建模数据

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

课程中十大经典机器学习算法震撼登场:逻辑回归,支持向量,KNN,神经网络,随机森林,xgboost,lightGBM,catboost。课程提供视频里讲解脚本,这些模型脚本可以应用于各个领域数据,包括金融反欺诈模型,信用评分模型,收入预测模型等等,为中小企业提供现成解决方案。

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

随机森林变量权重可视化

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

课程耗费三年时间,360度无死角的讲述整个模型开发周期,非市场上快餐教学。教程包括数据获取,数据预处理,变量筛选,模型筛选,模型评估,模型调参。

本视频系列通俗易懂,课程针对学生和科研机构,python爱好者。本视频教程系列有完整python代码,观众看后可以下载实际操作。这些模型代码可为中小型企业提供解决方案。

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

python机器学习编程环境搭建

python机器学习-乳腺癌细胞挖掘课程讲授初学者如何搭建python的Anaconda编程环境,Anaconda是一个集成数据科学编程框架,嵌入了sklearn,matplotlib,seaborn等常用机器学习和统计学包。

(1)下载anaconda

首先下载anaconda,这款框架比Python官网的编辑器更好用,下载网址为https://www.anaconda.com/download/

anaconda支持windows,Linux,苹果操作系统

支持32位和64位操作系统

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

(2)导入sklearn第三方包

anaconda下载安装好后打开,自带sklearn第三方包

命令行输入import sklearn,无报错就表示运行正常

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

(3)pip install安装其他第三方包

机器学习中,有时候需要导入其他包,而sklearn没有,这时就需要用pip install安装其他第三方包

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

(4)非官方扩展包下载地址

有时候pip install安装失败,我们需要去欧文大学下载Python非官方扩展包

Python有大量非官方扩展包,应用于各行各业,主要是数据科学,人工智能,爬虫等等,下载地址为https://www.lfd.uci.edu/~gohlke/pythonlibs/

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

乳腺癌细胞分类器建模

现在我们要用机器学习算法建立分类器,区分细胞为良性细胞或癌细胞。分类器就是解决二分类或多分类问题。

建立分类器算法很多,包括逻辑回归,xgboost,svm,神经网络等等。

今天我要介绍目前开源领域里最新的算法catboost。

catboost起源于俄罗斯搜索巨头yandex,准确率高,速度快,调参少,性价比高于xgboost

今天的CatBoost版本是第一个版本,以后将持续更新迭代。catboost三个特点:(1)“减少过度拟合”:这可以帮助你在训练计划中取得更好的成果。它基于一种构建模型的专有算法,这种算法与标准的梯度提升方案不同。(2)“类别特征支持”:这将改善你的训练结果,同时允许你使用非数字因素,“而不必预先处理数据,或花费时间和精力将其转化为数字。”(3)支持Python或R的API接口来使用CatBoost,包括公式分析和训练可视化工具。(4)有很多机器学习库的代码质量比较差,需要做大量的调优工作,”他说,“而CatBoost只需少量调试,就可以实现良好的性能。这是一个关键性的区别

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

catboost建立乳腺癌分类器代码 十行python代码建模

from sklearn.model_selection import train_test_split
import catboost as cb
from sklearn.datasets import load_breast_cancer
cancer=load_breast_cancer()
X, y = cancer.data,cancer.target
train_x, test_x, y_train, y_test=train_test_split(X,y,test_size=0.3,random_state=0)
cb = cb.CatBoostClassifier()
cb.fit(train_x, y_train)
print("accuracy on the training subset:{:.3f}".format(cb.score(train_x,y_train)))
print("accuracy on the test subset:{:.3f}".format(cb.score(test_x,y_test)))

大家可以看到catboost预测准确率非常高,训练集100%,测试集97.7%

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

Anaconda+KNN+网格调参+交叉验证

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

模型调参

python机器学习-乳腺癌细胞挖掘详细讲解模型调参技巧。调参是一门黑箱技术,需要经验丰富的机器学习工程师才能做到。幸运的是sklearn有调参的包,入门级学者也可尝试调参。

如果参数不多,可以手动写函数调参,如果参数太多可以用GridSearchCV调参,如果参数多的占用时间太长,可以用randomSizeCV调参,节约调参时间

GridSearchCV

如果参数太多可以用GridSearchCV调参

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

(1)单参数调参

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

(2)多参数调参

因为有n_neighbors和weights两个参数,因此诞生了60个结果

因为有两个参数,所以得到最佳模型:weight=distance,n_neighbor=12

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

RandomSizeSearchCV

randomSizeCV调参类似于GridSearchCV的抽样

如果参数多的占用时间太长,可以用randomSizeCV调参,节约调参时间。

randomSizeCV调参准确率会略低于GridSearchCV,但可以节约大量时间。

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

randomSizeCV调参代码

from sklearn.grid_search import RandomizedSearchCV
import matplotlib.pyplot as plt
#交叉验证
from sklearn.cross_validation import cross_val_score
from sklearn.datasets import load_breast_cancer
from sklearn.neighbors import KNeighborsClassifier

#导入数据
cancer=load_breast_cancer()
x=cancer.data
y=cancer.target

#调参knn的邻近指数n
k_range=list(range(1,31))
weight_options=['uniform','distance']
param_dist=dict(n_neighbors=k_range,weights=weight_options)

knn=KNeighborsClassifier()
#n_iter为随机生成个数
rand=RandomizedSearchCV(knn,param_dist,cv=10,scoring='accuracy',
                        n_iter=10,random_state=5)

rand.fit(x,y)
rand.grid_scores_
print('best score:',rand.best_score_)
print('best params:',rand.best_params_)

欢迎各位同学学习更多的相关知识:

python机器学习生物信息学,博主录制,2k超清

https://edu.51cto.com/sd/3a516

python机器学习-乳腺癌细胞挖掘(sklearn十大经典算法建模)

0

精彩评论

暂无评论...
验证码 换一张
取 消