机器学习
文章平均质量分 89
hustlx
小硕一枚,兴趣人工智能、机器学习、图像处理。
展开
-
bp神经网络原理及其c++实现
1引言数字识别是模式识别领域 中的一个重要分支,数字识别一般通过特征匹配及特征判别的传统方法进行处理。特征匹配通常适用于规范化的印刷体字符的识别,而 特征判别多用于手写字符识别,这些方法还处于探索阶段,识别率还比较低。随着神经网络技术的飞速发展,其本身具有的高度并行性、较强的自组织能力和容错性、较好抑制噪声干扰能力等特点,为快速准确地进行数字识别开辟了新的途径。目前,对于指针式表而言,可以原创 2016-03-07 11:24:19 · 3337 阅读 · 0 评论 -
推荐系统算法
在推荐系统简介中,我们给出了推荐系统的一般框架。很明显,推荐方法是整个推荐系统中最核心、最关键的部分,很大程度上决定了推荐系统性能的优劣。目前,主要的推荐方法包括:基于内容推荐、协同过滤推荐、基于关联规则推荐、基于效用推荐、基于知识推荐和组合推荐。 一、基于内容推荐 基于内容的推荐(Content-based Recommendation)是信转载 2016-05-10 11:07:49 · 1148 阅读 · 0 评论 -
漫谈 Clustering (3): Gaussian Mixture Model高斯混合模型GMM
漫谈 Clustering (3): Gaussian Mixture Model by pluskid, on 2009-02-02, in Machine Learning 190 commentscluster_logo本文是“漫谈 Clustering 系列”中的第 4 篇,参见本系列的其他文章。上一次我们谈到了用 k-means 进行聚类的方法,这次我们来说一转载 2016-05-13 13:02:36 · 1816 阅读 · 0 评论 -
漫谈 Clustering (2): k-medoids
上一次我们了解了一个最基本的 clustering 办法 k-means ,这次要说的 k-medoids 算法,其实从名字上就可以看出来,和 k-means 肯定是非常相似的。事实也确实如此,k-medoids 可以算是 k-means 的一个变种。k-medoids 和 k-means 不一样的地方在于中心点的选取,在 k-means 中,我们将中心点取为当前 cluster 中所有数转载 2016-05-13 17:19:36 · 1144 阅读 · 0 评论 -
Adaboost 算法的原理与推导
Adaboost 算法的原理与推导0 引言 一直想写Adaboost来着,但迟迟未能动笔。其算法思想虽然简单:听取多人意见,最后综合决策,但一般书上对其算法的流程描述实在是过于晦涩。昨日11月1日下午,在我组织的机器学习班 第8次课上Z讲师讲决策树与Adaboost,其中,Adaboost讲得酣畅淋漓,讲完后,我知道,可以写本篇博客了。 无心啰嗦,本转载 2016-05-07 16:55:09 · 1184 阅读 · 0 评论 -
深度卷积网络
深度卷积网络 涉及问题:1.每个图如何卷积: (1)一个图如何变成几个? (2)卷积核如何选择?2.节点之间如何连接?3.S2-C3如何进行分配?4.16-120全连接如何连接?5.最后output输出什么形式?①各个层解释: 我们先要明确一点:每个层有多个Feature Map,每个F转载 2016-06-12 17:21:19 · 1100 阅读 · 0 评论 -
K-medodis和K-means
K-medodis看起来和K-means比较相似,但是K-medoids和K-means是有区别的,不一样的地方在于中心点的选取,在K-means中,我们将中心点取为当前cluster中所有数据点的平均值,在 K-medoids算法中,我们将从当前cluster 中选取这样一个点——它到其他所有(当前cluster中的)点的距离之和最小——作为中心点。重点内容K-MEANS算法的缺点:产生转载 2016-07-20 21:01:37 · 1540 阅读 · 0 评论 -
机器学习中常见的损失函数
一、分类算法中的损失函数在分类算法中,损失函数通常可以表示成损失项和正则项的和,即有如下的形式:J(w)=∑iL(mi(w))+λR(w)其中,L(mi(w))为损失项,R(w)为正则项。mi的具体形式如下:mi=y(i)fw(x(i))y(i)∈{−1,1}fw(x(i))=wTx(i)转载 2016-08-16 21:11:24 · 4606 阅读 · 0 评论 -
集成学习boosting、bagging
Jackknife,Bootstraping, bagging, boosting, AdaBoosting, Rand forest 和 gradient boosting这些术语,我经常搞混淆,现在把它们放在一起,以示区别。(部分文字来自网络,由于是之前记的笔记,忘记来源了,特此向作者抱歉)Bootstraping: 名字来自成语“pull up by your own boo转载 2016-08-29 17:14:59 · 803 阅读 · 0 评论 -
RNN和LSTM
Recurrent Neural Networks人类并不是每时每刻都从一片空白的大脑开始他们的思考。在你阅读这篇文章时候,你都是基于自己已经拥有的对先前所见词的理解来推断当前词的真实含义。我们不会将所有的东西都全部丢弃,然后用空白的大脑进行思考。我们的思想拥有持久性。传统的神经网络并不能做到这点,看起来也像是一种巨大的弊端。例如,假设你希望对电影中的每个时间点的时间类型进行分类。传统的神转载 2016-09-16 13:08:22 · 1663 阅读 · 0 评论 -
机器学习总结
朴素贝叶斯: 有以下几个地方需要注意: 1. 如果给出的特征向量长度可能不同,这是需要归一化为通长度的向量(这里以文本分类为例),比如说是句子单词的话,则长度为整个词汇量的长度,对应位置是该单词出现的次数。 2. 计算公式如下: 其中一项条件概率可以通过朴素贝叶斯条件独立展开。要注意一点就是 的计算方法,而由朴素贝叶斯的前提假设可知, = ,因此一般有两种,一种是转载 2016-09-27 19:21:39 · 1182 阅读 · 0 评论 -
划重点
机器学习:几种范数的区别、一范数的稀疏批量、随机梯度下降PCA主成分分析支持向量机推倒精确度、召回率和F1、ROC曲线、AUC神经网络推倒朴素贝叶斯推倒逻辑回归 (重点)推倒 频率学派和贝叶斯学派生成方法和判别方法ID3/C4.5/CART 决策树熵、互信息、KL散度过拟合、正则化偏差和方差感知机推倒k-means聚类推倒KKT条原创 2017-02-22 19:16:13 · 1195 阅读 · 0 评论 -
LDA 线性判别分析/Fisher线性判别
1. LDA是什么线性判别式分析(Linear Discriminant Analysis),简称为LDA。也称为Fisher线性判别(Fisher Linear Discriminant,FLD),是模式识别的经典算法,在1996年由Belhumeur引入模式识别和人工智能领域。基本思想是将高维的模式样本投影到最佳鉴别矢量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保转载 2016-05-10 14:16:58 · 1872 阅读 · 0 评论 -
机器学习总结二:逻辑回归Logistic Regression
机器学习总结之逻辑回归Logistic Regression逻辑回归logistic regression,虽然名字是回归,但是实际上它是处理分类问题的算法。简单的说回归问题和分类问题如下:回归问题:预测一个连续的输出。分类问题:离散输出,比如二分类问题输出0或1.逻辑回归常用于垃圾邮件分类,天气预测、疾病判断和广告投放。一、假设函数 因为是一个分类问题,所以我们希望原创 2016-04-14 17:01:31 · 7050 阅读 · 2 评论 -
层次聚类算法及其实现
层次聚类算法分为合并算法和分裂算法。合并算法会在每一步减少聚类中心的数量,聚类产生的结果来自前一步的两个聚类的合并;分裂算法与合并算法原理相反,在每一步增加聚类的数量,每一步聚类产生的结果都将是前一步聚类中心分裂得到的。合并算法现将每个样品自成一类,然后根据类间距离的不同,合并距离小于阈值的类。我用了基于最短距离算法的层次聚类算法,最短距离算法认为,只要两个类的最小距离小于阈值,就将两个类合并成一原创 2016-03-10 19:57:41 · 6162 阅读 · 0 评论 -
基于kmeans聚类算法的图像分割
Kmeans之前已经讲过了,其图像分割只不过是把之前的高斯数对换成图像二维像素点,彩色图像每个像素点有rgb三个分量,灰度图像只有一个分量。1编程实现 clear;clc;close all;data=imread('src1.bmp');imshow(data)[m,n,c]=size(data);[mu,pattern]=k_mean_Seg(data,2);for原创 2016-03-10 19:54:19 · 9937 阅读 · 2 评论 -
BP神经网络分类器的设计
1.BP神经网络训练过程论述 BP网络结构有3层:输入层、隐含层、输出层,如图1所示。图1 三层BP网络结构 3层BP神经网络学习训练过程主要由4部分组成:输入模式顺传播(输入模式由输入层经隐含层向输出层传播计算)、输出误差逆传播(输出的误差由输出层经隐含层传向输入层)、循环记忆训练(模式顺序传播与误差逆传播的计算过程反复交替循环进行)和学习结果判别(判定全局误差是原创 2016-03-10 20:12:54 · 18254 阅读 · 0 评论 -
朴素贝叶斯改进及其应用
1、贝叶斯定理设是类标号未知的数据样本,为某种假设,数据样本 属于某特定的类 C ,对于该分类问题,期望确定,即给定观测数据样本,假定成立的概率,称为后验概率,或称条件下的后验概率。分类就是要确定。例如,假定数据样本集由顾客组成,用他们的年龄和收入情况进行分类。假定表示顾客的年龄在31岁到40之间并且中等收入,表示顾客将购买电脑,则反映的是观察到顾客的年龄在31岁到40之间并且中等收入时,原创 2016-03-10 21:43:51 · 4529 阅读 · 0 评论 -
决策树及其python实现
1、剪枝由于悲观错误剪枝 PEP (Pessimistic Error Pruning)、代价-复杂度剪枝 CCP (Cost-Complexity Pruning)、基于错误剪枝 EBP (Error-Based Pruning)、最小错误剪枝 MEP (Minimum Error Pruning)都是用于分类模型,故我们用降低错误剪枝 REP ( Reduced Error Pru原创 2016-03-10 21:39:34 · 4595 阅读 · 0 评论 -
拉普拉斯特征图降维及其python实现
这种方法假设样本点在光滑的流形上,这一方法的计算数据的低维表达,局部近邻信息被最优的保存。以这种方式,可以得到一个能反映流形的几何结构的解。步骤一:构建一个图G=(V,E),其中V={vi,i=1,2,3…n}是顶点的集合,E={eij}是连接顶点的vi和vj边,图的每一个节点vi与样本集X中的一个点xi相关。如果xi,xj相距较近,我们就连接vi,vj。也就是说在各自节点插入一个边eij,如原创 2016-03-10 21:35:29 · 10715 阅读 · 1 评论 -
改进的SMO算法
S. S. Keerthi等人在Improvements to Platt’s SMO Algorithm for SVM Classifier Design一文中提出了对SMO算法的改进,纵观SMO算法,其核心是怎么选择每轮优化的两个拉格朗日乘子,标准的SMO算法是通过判断乘子是否违反原问题的KKT条件来选择待优化乘子的,由KKT条件:是否违反它,与这几个因素相关:拉格朗日乘子 、样本标原创 2016-03-10 21:15:14 · 3682 阅读 · 0 评论 -
kmeans算法及其实现
1.1Kmeans算法理论基础 K均值算法能够使聚类域中所有样品到聚类中心距离平方和最小。其原理为:先取k个初始聚类中心,计算每个样品到这k个中心的距离,找出最小距离,把样品归入最近的聚类中心,修改中心点的值为本类所有样品的均值,再计算各个样品到新的聚类中心的距离,重新归类,修改新的中心点,直到新的聚类中心和上一次聚类中心差距很小时结束。此算法结果受到聚类中心的个数和聚类中原创 2016-03-10 19:49:47 · 1983 阅读 · 0 评论 -
KNN及其改进算法的python实现
一、 马氏距离我们熟悉的欧氏距离虽然很有用,但也有明显的缺点。它将样品的不同属性(即各指标或各变量)之间的差别等同看待,这一点有时不能满足实际要求。例如,在教育研究中,经常遇到对人的分析和判别,个体的不同属性对于区分个体有着不同的重要性。因此,有时需要采用不同的距离函数。 如果用dij表示第i个样品和第j个样品之间的距离,那么对一切i,j和k,dij应该满足如下四个条件:原创 2016-03-10 21:07:27 · 6388 阅读 · 1 评论 -
PCA降维及其实现
1.1算法流程 假设有m个samples,每个数据有n维。1. 计算各个feature的平均值,计μj ;(Xj(i)表示第i个样本的第j维特征的value)μj = Σm Xj(i)/mmeanVals = mean(dataMat, axis=0)2. 将每一个feature scaling:将在不同scale上的feature进行归一化;3. 将特征进行mea原创 2016-03-10 21:24:07 · 1390 阅读 · 0 评论 -
为什么支持向量机要用拉格朗日对偶算法来解最大化间隔问题
1) 不等式约束一直是优化问题中的难题,求解对偶问题可以将支持向量机原问题约束中的不等式约束转化为等式约束;2) 支持向量机中用到了高维映射,但是映射函数的具体形式几乎完全不可确定,而求解对偶问题之后,可以使用核函数来解决这个问题。以上。并不一定要用拉格朗日对偶。要注意用拉格朗日对偶并没有改变最优解,而是改变了算法复杂度:在原问题下,求解算法的复杂度与样本维度(等于转载 2016-03-15 16:32:54 · 6686 阅读 · 0 评论 -
逻辑回归Logistic Regression
什么是逻辑回归?Logistic回归与多重线性回归实际上有很多相同之处,最大的区别就在于它们的因变量不同,其他的基本都差不多。正是因为如此,这两种回归可以归于同一个家族,即广义线性模型(generalizedlinear model)。这一家族中的模型形式基本上都差不多,不同的就是因变量不同。如果是连续的,就是多重线性回归;如果是二项分布,就是Logistic回归;转载 2016-04-13 13:55:57 · 1412 阅读 · 0 评论 -
极大似然估计,最大后验概率估计(MAP),贝叶斯估计
最大似然估计学习总结------MadTurtle1. 作用在已知试验结果(即是样本)的情况下,用来估计满足这些样本分布的参数,把可能性最大的那个参数作为真实的参数估计。2. 离散型设为离散型随机变量,为多维参数向量,如果随机变量相互独立且概率计算式为P{,则可得概率函数为P{}=,在固定时,上式表示的概率;当已知的时候,它又变成的函数,可以把它记为,称转载 2016-04-13 16:41:08 · 8574 阅读 · 0 评论 -
深度学习目录
一、机器学习基础1.线性代数2.概率信息论3.数值优化二、深度学习基础1.深度学习介绍2.感知器 3.人工神经网络4.前馈神经网络 5.BP算法 6.Hessian矩阵三、深度学习进阶---卷积神经网络1.CNN卷积神经网络(1).卷积层(一维卷积、二维卷积)(2).池化层(均值池化、最大池化)(3). 全转载 2017-03-17 21:25:21 · 2374 阅读 · 0 评论