决策树原理、Scikit-learn实现及其在生物信息中的应用

之前转过一篇文章:2016年GitHub排名前20的Python机器学习开源项目(转),说明现在已经有了很多很好的机器学习的包,我们不必从底层开始实现,只要懂点算法、会看文档,一般人也能玩好机器学习。

随着生信领域的数据量越来越多,我们得到知识的途径必然会发生变化,慢慢地我们将不再使用固定呆板的模型,而是使用灵活的机器学习方法从海量数据中提取出知识。

现在我准备开一系列的机器学习算法原理及python包的实例的文章,开始全面的熟悉python和机器学习。


决策树--从原理到实现    机器学习 - CSDN

算法杂货铺——分类算法之决策树(Decision tree)

决策树学习笔记整理

Scikit-learn中的决策树

看完上面几个教程基本就能搞懂决策树了。

首先需要一些信息论的基础:

信息增益:ID3,g(D,A) = H(D)-H(D|A),表示了特征A使得数据集D的分类不确定性减少的程度。

信息增益比:C4.5,g‘(D,A)=g(D,A) / H(D),消除了H(D)的影响

基尼指数:CART,(经济学中也有个基尼指数反应社会的贫富差距,链接

ID3算法就是对各个feature信息计算信息增益,然后选择信息增益最大的feature作为决策点将数据分成两部分。

C4.5与ID3相比其实就是用信息增益比代替信息增益,因为信息增益有一个缺点:信息增益选择属性时偏向选择取值多的属性。

CART(classification and regression tree)的算法整体过程和上面的差异不大,然是CART的决策是二叉树的每一个决策只能是“是”和“否”,换句话说,即使一个feature有多个可能取值,也只选择其中一个而把数据分类两部分而不是多个,它用到的是基尼指数。


注意:Scikit-learn在Linux上很好安装,直接使用pip就可以,而在Windows上很麻烦,乱七八糟的错误。

 

 


生物信息领域:Decision Tree Classifiers in Bioinformatics

 

待续~

posted @   Life·Intelligence  阅读(987)  评论(0编辑  收藏  举报
(评论功能已被禁用)
编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
TOP
点击右上角即可分享
微信分享提示