
机器学习
DocPark
在读研究生
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
机器学习:线性可分的SVM(Python实现)
实现是利用了SMO算法,该算法的计算过程在非线性那篇文章中讲过了,下面给出实现代码。import numpy as npimport randomdef selectJrand(i,m): j = i while (j==i): j = int(random.uniform(0,m)) return jdef clipAlpha(aj,H,L): ...原创 2020-03-05 21:43:25 · 1698 阅读 · 0 评论 -
机器学习:非线性SVM分类器(原理+python实现)
看这篇文章的前提是已经熟知了SVM在线性可分情况下的分类原理,这篇文章的重点是在线性不可分情况下,该如何利用SVM实现分类。一 线性不可分与SVM的目标简单来讲,线性不可分的含义为:不能通过用一条直线或一个平面将数据集分隔开来,比如数据集是下图这样:由左图可知,我们是无法利用直线来将平面上的数据点进行分类,但是将这些数据投放点到空间时,我们可以用一个平面来实现对数据点的分类。在上述分类的过...原创 2020-03-05 21:37:25 · 6289 阅读 · 2 评论 -
机器学习:IDE3决策树(原理+python实现)
不管对决策树的知识了解有多少,这次通过一个简单的例子来就能够了解它的原理和明白实现的方法。实际场景对于一个眼科医生而言,当面对病人是否需要佩戴隐形眼镜时,只需要通过几个问题就能够判断出病人是需要带软,硬还是不能带隐形眼镜。因此我们的数据集就是病人的四个特征(‘age’, ‘prescript’, ‘astigmatic’, 'tearRate’)的组合以及对应的结论(),获取数据点击这里,提取...原创 2020-02-19 10:54:11 · 1202 阅读 · 0 评论 -
机器学习:多项式模型朴素贝叶斯分类器(原理+python实现)
简介多项式朴素贝叶斯也是多用于文本处理,其原理和计算的流程和伯努利朴素贝叶斯基本一致,唯一的区别在于单词的计数方式,由《伯努利朴素贝叶斯》一文可知,在文本处理的环节中,我们将单词是否出现在词组作为特征,但在多项式朴素贝叶斯中,我们将单词在词组中出现的次数作为特征,因此只需要更改文中setOfWords2Vec的函数即可,变成如下方式:def bagOfWords2VecMN(vocabList...原创 2020-02-17 19:36:04 · 4291 阅读 · 1 评论 -
机器学习:高斯朴素贝叶斯分类器(原理+python实现)
一 原理具体例子我们通过判定花萼长度,花萼宽度,花瓣长度,花瓣宽度的尺寸大小来识别鸢尾花的类别。关于数据集,是通过sklean加载而来,这次只采用前一百个数据进行训练,使得花的类别只有0和1两个类别,因此我们这次目标是通过花的四个特征来判断类别是0还是1。from sklearn.datasets import load_irisdef create_data(): iris = ...原创 2020-02-17 22:25:58 · 8396 阅读 · 1 评论 -
机器学习:伯努利朴素贝叶斯分类器(原理+python实现)
伯努利朴素贝叶斯分类器主要用于文本分类,下面我们以一个具体的例子,来讲述下伯努利朴素贝叶斯的原理和实现逻辑。具体例子:已知我们有八个句子以及每个句子对应的类别,即中性或侮辱性。那么再给出一个句子,我们来判断该句子是中性还是侮辱性,即计算该句子是中性的概率大还是侮辱性的概率大,概率大的类别即为我们判断的类别。首先要把句子进行处理,即把句子分解成拥有多个单词的单词组,句子对应的单词组以及类别...原创 2020-02-17 15:46:32 · 5317 阅读 · 1 评论 -
机器学习:Adaboost算法(原理+python实现)
Adaboost算法一 算法的实质对于指定的分类器G(x),其分类效果可能未必理想,那么Adaboot算法则通过将分类器进行线性组合来提升分类效果,其表达式如下:其中,x为数据的特征,f(x)为数据对应的分类类别,a_m为加权权重。G_m (x)为分类器函数G(x)第m次训练时数据所对应的分类类别,a_m为第m次训练时所对应的加权权重。二 算法的实现**输入:**针对一个训练集其中x...原创 2020-02-16 16:18:46 · 1992 阅读 · 2 评论