人工智能
文章平均质量分 82
ACdreamers
这个作者很懒,什么都没留下…
展开
-
梯度下降法终极版
在之前的文章中,我用梯度下降法实现了Logistic回归,当时用的是批量梯度下降法,现在就来进一步了解梯度下降法的原理以及在机器学习中的应用。 常见的梯度下降法主要有两种:(1)批量梯度下降法 (2)随机梯度下降法 现在假设样本的个数为,对单个样本来说,有一个维的向量,代表这个样本的个特征,还有一个值为预测值,要拟合的函数设为,那么误差准则函数为原创 2015-03-26 23:03:53 · 8916 阅读 · 4 评论 -
协同过滤算法
今天要讲的主要内容是协同过滤,即Collaborative Filtering,简称CF。 Contents 1. 协同过滤的简介 2. 协同过滤的核心 3. 协同过滤的实现 4. 协同过滤的应用 1. 协同过滤的简介 关于协同过滤的一个最经典的例子就是看电影,有时候不知道哪一部电影是我们喜欢的或者评分比较高的,那原创 2015-03-30 00:13:37 · 69715 阅读 · 16 评论 -
文本特征属性选择
今天,来学习文本的特征属性选择,在机器学习中,特征属性的选择通常关系到训练结果的可靠性,一个好的特征属性通常能起到满意的分类效果。凡是特征选择,总是在将特征的重要程度量化后再进行选择,而如何量化特征的重要性,就成了各种方法间最大的不同。接下来就介绍如何有效地进行文本的特征属性选择。 Contents 1. TF-IDF与特征属性选择 2. 信息增益与特征属性选原创 2015-03-27 00:36:52 · 7203 阅读 · 0 评论 -
随机森林
前面介绍过决策树的三种实现:ID3算法,C4.5算法和CART算法。虽然这些决策树有很多优良的性质,比如训练时间复杂度较低,模型容易展示等等,但是同时单决策树有一些不好的地方,比如容易over-fitting,虽然剪枝可以减少这种现象的发生,但是还是不够的。为了减少决策树的不足,近年来又提出了许多模型组和+决策树的算法,这些算法都是生成N棵决策树,虽然这N棵树都很简单,但是它们综合起来原创 2015-03-27 01:45:12 · 8430 阅读 · 1 评论 -
L2正则化方法
在机器学习中,无论是分类还是回归,都可能存在由于特征过多而导致的过拟合问题。当然解决的办法有 (1)减少特征,留取最重要的特征。 (2)惩罚不重要的特征的权重。 但是通常情况下,我们不知道应该惩罚哪些特征的权重取值。通过正则化方法可以防止过拟合,提高泛化能力。 先来看看L2正则化方法。对于之前梯度下降讲到的损失函数来说,在代价函数后面加上一个正则化项,得到原创 2015-05-30 12:51:00 · 22548 阅读 · 0 评论 -
径向基(RBF)神经网络
RBF网络能够逼近任意非线性的函数。可以处理系统内难以解析的规律性,具有很好的泛化能力,并且具有较快的学习速度。当网络的一个或多个可调参数(权值或阈值)对任何一个输出都有影响时,这样的网络称为全局逼近网络。由于对于每次输入,网络上的每一个权值都要调整,从而导致全局逼近网络的学习速度很慢,比如BP网络。如果对于输入空间的某个局部区域只有少数几个连接权值影响输出,则该网络称为局部逼近网络,原创 2015-06-02 16:51:56 · 21317 阅读 · 2 评论 -
SlopOne推荐算法
在开源框架taste中有SlopOne的Java实现,效果不错。原创 2015-06-03 18:41:30 · 4500 阅读 · 0 评论 -
K-D树
K-D树,即K-Dimensional Tree,是一种高维索引树型数据结构。常用于大规模高维数据空间的最邻近或者K邻近查找,例如图像检索中高维图像特征向量的K邻近匹配,对KNN算法的优化等。 Contents 1. K-D树的基本原理 2. K-D树的改进(BBF算法) 3. K-D树的C++实现 4. K-D树的开源框架介绍 1.原创 2015-03-27 01:49:11 · 17228 阅读 · 2 评论 -
BP神经网络
今天来讲BP神经网络,神经网络在机器学习中应用比较广泛,比如函数逼近,模式识别,分类,数据压缩,数据挖掘等领域。接下来介绍BP神经网络的原理及实现。 Contents 1. BP神经网络的认识 2. 隐含层的选取 3. 正向传递子过程 4. 反向传递子过程 5. BP神经网络的注意点 6. BP神经网络的C++实现 1. BP神经原创 2015-03-26 22:28:25 · 200154 阅读 · 52 评论 -
多项式回归模型(Office Prices)
题目:https://www.hackerrank.com/challenges/predicting-office-space-price 分析:还是上次的房价预测题目,指明要用多项式回归拟合。在多元多项式拟合时候,目标函数表示如下 对其目标函数求偏导得到 很容易写出代码。 代码:#coding:ut原创 2015-05-28 21:00:31 · 8688 阅读 · 0 评论 -
FaceBook机器学习开源DL模块
据GIGAOM报道,近日,Facebook人工智能研究院(FAIR)开源了一系列软件库,以帮助开发者建立更大、更快的深度学习模型。开放的软件库在Facebook被称作模块。用它们替代机器学习领域常用的开发环境Torch中的默认模块,可以在更短的时间内训练更大规模的神经网络模型。 如果想了解更多的内容,可以参考下面的一些文章。 1. Facebook开源深度学习软件库,帮助开原创 2015-03-27 02:03:17 · 3620 阅读 · 0 评论 -
决策树之CART算法
在之前介绍过决策树的ID3算法实现,今天主要来介绍决策树的另一种实现,即CART算法。 Contents 1. CART算法的认识 2. CART算法的原理 3. CART算法的实现 1. CART算法的认识 Classification And Regression Tree,即分类回归树算法,简称CART算法,它是决策树的一种实原创 2015-03-27 01:38:05 · 85101 阅读 · 21 评论 -
交叉验证
今天来讲一种在机器学习中常用的精度测试方法,叫做交叉验证。它的目的是得到可靠稳定的模型,具体做法是拿出大部分数据进行建模,留小部分样本用刚刚建立的模型进行预测,并求出这小部分样本预测的误差,记录它们的平方和,这个过程一直进行,直到所有的样本都恰好被预测了一次,交叉验证在克服过拟合问题上非常有效。接下来介绍一些常用的交叉验证方法。 1. 10折交叉验证 10折原创 2015-03-27 01:12:57 · 13969 阅读 · 1 评论 -
Logistic回归与梯度下降法
Logistic回归为概率型非线性回归模型,是研究二分类观察结果与一些影响因素之间关系的一种多变量分析方法。通常的问题是,研究某些因素条件下某个结果是否发生,比如医学中根据病人的一些症状来判断它是否患有某种病。 在讲解Logistic回归理论之前,我们先从LR分类器说起。LR分类器,即Logistic Regression Classifier。在分类情形下,经过学习后的LR分原创 2015-03-26 22:46:49 · 16215 阅读 · 8 评论 -
Logistic回归与牛顿迭代法
在上一篇文章中,我讲述了Logistic回归的原理以及它的梯度上升法实现。现在来研究Logistic回归的另一种实现,即牛顿迭代法。 在上篇文章中,我们求出Logistic回归的似然函数的偏导数为 由于是一个多元函数,变元是,多元函数求极值问题以前已经讲过,参考如下文章 链接:http://blog.csdn.net/acdream原创 2015-03-26 22:56:21 · 16258 阅读 · 4 评论 -
决策树之ID3算法
今天,我来讲解的是决策树。对于决策树来说,主要有两种算法:ID3算法和C4.5算法。C4.5算法是对ID3算法的改进。今天主要先讲ID3算法,之后会讲C4.5算法和随机森林等。 Contents 1. 决策树的基本认识 2. ID3算法介绍 3. 信息熵与信息增益 4. ID3算法的C++实现 1. 决策树的基本认识原创 2015-03-27 00:32:39 · 86787 阅读 · 24 评论 -
局部加权回归
通常情况下的线性拟合不能很好地预测所有的值,因为它容易导致欠拟合(under fitting),比如数据集是一个钟形的曲线。而多项式拟合能拟合所有数据,但是在预测新样本的时候又会变得很糟糕,因为它导致数据的过拟合(overfitting),不符合数据真实的模型。 今天来讲一种非参数学习方法,叫做局部加权回归(LWR)。为什么局部加权回归叫做非参数学习方法呢? 首先参数学习方法是原创 2015-03-27 00:46:27 · 11438 阅读 · 0 评论 -
KNN算法
KNN算法是机器学习里面常用的一种分类算法,假设一个样本空间被分为几类,然后给定一个待分类所有的特征数据,通过计算距离该数据的最近的K个样本来判断这个数据属于哪一类。如果距离待分类属性最近的K个类大多数都属于某一个特定的类,那么这个待分类的数据也就属于这个类。 Contents 1. KNN算法介绍 2. KNN算法的C++实现 1. KNN算法原创 2015-03-27 01:26:15 · 4663 阅读 · 2 评论 -
决策树之C4.5算法
C4.5算法是机器学习中的一个重要的决策树算法,它是对ID3算法的改进,相对于ID3算法主要有以下几个改进 (1)用信息增益率来选择属性 (2)在决策树的构造过程中对树进行剪枝 (3)对非离散数据也能处理 (4)能够对不完整数据进行处理 接下来分别详细讲述这几点的改进方案 (1)用信息增益率来选择属性 在ID3算法中,我们知道是用信息增原创 2015-03-27 01:43:29 · 7687 阅读 · 0 评论 -
朴素贝叶斯分类
今天,我学习了朴素贝叶斯分类,接下来,我会详细讲述它的原理以及在文本分类中的应用。 Contents 1. 分类问题的定义 2. 贝叶斯定理 3. 贝叶斯分类原理 4. 特征属性划分的条件概率及Laplace校准 5. 贝叶斯文本分类实例 1. 分类问题的定义 已知集合和集合,确定映射规则,使得任意,有且 仅有一个使得原创 2015-03-27 00:40:47 · 5351 阅读 · 1 评论 -
数据归一化处理
在机器学习中领域中的数据分析之前,通常需要将数据标准化,利用标准化后得数据进行数据分析。不同评价指标往往具有不同的量纲和量纲单位,这样的情况会影响到数据分析的结果,为了消除指标之间的量纲影响,需要进行数据标准化处理,以解决数据指标之间的可比性。原始数据经过数据标准化处理后,各指标处于同一数量级,适合进行综合对比评价。 Contents 1. 归一化的定义原创 2015-03-27 01:22:46 · 53430 阅读 · 2 评论 -
房价预测(HackerRank)
从今天开始要多做一些关于机器学习方面的竞赛题目,题目来源主要是Hackerrank和Kaggle。原创 2015-05-23 21:50:36 · 5481 阅读 · 0 评论