机器学习
文章平均质量分 86
氵冫丶
这个作者很懒,什么都没留下…
展开
-
支持向量机(Support Vector Machines SVM)基础学习
支持向量机简介:原创 2014-10-25 09:16:59 · 1534 阅读 · 0 评论 -
支持向量机之线性可分支持向量机(一)
简介支持向量机(support vector machines,SVM)是一种二分类分类模型。它的基本模型是定义在特征空间上的间隔最大的线性分类器,间隔最大使得它有别于感知机;支持向量机还包括核技巧,这使得它成为实质上的非线性分类器。支持向量机的学习策略就是间隔最大化,可形式化为一个求解凸二次规划(convex quadratic programming)的问题,也等价于正则化的合页损失函数的最小化原创 2015-08-18 20:20:06 · 9557 阅读 · 1 评论 -
支持向量机之线性支持向量机(三)
线性支持向量机与软间隔最大化线性支持向量机学习的对偶算法求解 wbwb线性支持向量机学习算法支持向量机合页损失函数线性支持向量机与软间隔最大化线性支持向量机对特征空间上的训练数据集T={(x1,y1),(x2,y2),...,(xN,yN)}T=\left\{ (x_1,y_1),(x_2,y_2),...,(x_N,y_N)\right\},其中xi∈χ=Rn,yi={+1,−1}x_原创 2015-08-25 20:23:14 · 1346 阅读 · 1 评论 -
支持向量机之非线性支持向量机(四)
非线性支持向量机与核函数可看之前关于支持向量机的基础资料: 线性可分支持向量机 对偶学习算法 线性支持向量机核技巧对于非线性分类问题,可以转换成线性问题求解。 首先,将原始特征空间数据映射到新的空间 然后,在新的空间利用线性可分支持向量机方法求解核函数设X\color{Red}{X}是输入空间,设H\color{Red}{H}是特征空间,如果存在一个从X−>H\color{Red}{X->原创 2015-09-02 21:49:31 · 2172 阅读 · 0 评论 -
支持向量机之对偶学习算法(二)
接上节这里讲的是支持向量机的拉格朗日对偶学习算法\color{Red}{对偶学习算法}对偶学习算法拉格朗日对偶性问题原问题对偶问题原始问题与对偶问题的关系KKT条件对偶学习算法接上求解wbcolorRedwb线性可分支持向量机学习算法支持向量对偶学习算法上节的问题是: minw,b12||w||2\color{Red}{\underset {w,b}{min} \frac{原创 2015-08-22 10:16:48 · 2373 阅读 · 0 评论 -
EM算法
简介EM算法是一种迭代算法,用于含有隐含变量(hidden variable)的概率模型参数的极大似然估计,或极大后验概率估计。EM算法的每次迭代由两部组成:E步,求期望(expectation);M步,求极大值(maximization)。所以又称为期望极大算法(expectation maximization),简称EM算法概率模型有时候同时含有观测变量和隐含变量,如果只含有观测变量,对于给定的原创 2015-08-07 21:04:38 · 955 阅读 · 0 评论 -
机器学习常见算法分类汇总
来源链接 机器学习无疑是当前数据分析领域的一个热点内容。很多人在平时的工作中都或多或少会用到机器学习的算法。这里IT经理网为您总结一下常见的机器学习算法,以供您在工作和学习中参考。机器学习的算法很多。很多时候困惑人们都是,很多算法是一类算法,而有些算法又是从其他算法中延伸出来的。这里,我们从两个方面来给大家介绍,第一个方面是学习的方式,第二个方面是算法的类似性。学习方式根据数据类型的不同,对一个问原创 2015-11-16 19:12:23 · 714 阅读 · 0 评论 -
NMF非负矩阵分解
非负矩阵分解(Non-negative Matrix Factorization,NMF)是把一个矩阵分解成两个矩阵乘积的形式,来分解多维数据。 对于给定的矩阵VV进行分解,分解形式如下: V≈WHV \approx W H VV是n∗mn*m维度的,nn是数据的维度,mm是数据样本的数量,WW是n∗rn*r维度的,HH是r∗mr*m维度的,其中r≤min{n,m}r \leq原创 2015-11-01 19:23:27 · 2116 阅读 · 1 评论 -
卡方检验
卡方检验(Chi-square test/Chi-Square Goodness-of-Fit Test)什么是卡方检验卡方检验是一种用途很广的计数资料的假设检验方法。它属于非参数检验的范畴,主要是比较两个及两个以上样本率( 构成比)以及两个分类变量的关联性分析。其根本思想就是在于比较理论频数和实际频数的吻合程度或拟合优度问题。它在分类资料统计推断中的应用,包括:两个率或两个构成比比较的卡方检验;多原创 2016-01-02 11:06:06 · 11604 阅读 · 0 评论 -
ChiMerge 算法
基本思想ChiMerge 是监督的、自底向上的(即基于合并的)数据离散化方法。它依赖于卡方检验:具有最小卡方值的相邻区间合并在一起,直到满足确定的停止准则。 基本思想:对于精确的离散化,相对类频率在一个区间内应当完全一致。因此,如果两个相邻的区间具有非常类似的类分布,则这两个区间可以合并;否则,它们应当保持分开。而低卡方值表明它们具有相似的类分布。 参考 参考: 1. ChiMerge:Di原创 2016-01-02 20:51:12 · 11617 阅读 · 3 评论 -
支持向量机之序列最小最优化算法
基础博客 线性可分支持向量机 对偶学习算法 线性支持向量机 非线性支持向量机简介序列最小最优化(sequential minimal optimization,SMO)算法,是1988年Platt提出的。 论文PDF链接应用SMO算法要解决的凸二次规划的对偶问题是: minα12∑Ni=1∑Nj=1αiαjyiyjK(xi,xj)−∑Ni=1\color{Red}{\underset原创 2016-01-24 19:47:35 · 3827 阅读 · 3 评论 -
朴素贝叶斯分类
朴素贝叶斯分类核心思想选择具有最高概率的类别 如: P(ci|X)>P(cj|X)P(c_i|X)>P(c_j|X),则属于cic_i类 P(ci|X)<P(cj|X)P(c_i|X)<P(c_j|X),则属于cjc_j类条件概率P(A|B)=P(A,B)P(B)P(A|B)=\frac{P(A,B)}{P(B)} 理解为:在已知事件BB发生的情况下,AA事件发生的概率,也就是条件概率。等于原创 2015-07-11 12:52:18 · 926 阅读 · 0 评论 -
决策树ID3 Java程序
决策树基本概念ID3算法,利用信息增益进行分类属性经典数据集@relation weather.symbolic@attribute outlook {sunny, overcast, rainy}@attribute temperature {hot, mild, cool}@attribute humidity {high, normal}@attribute windy {TRUE, F原创 2016-05-26 10:59:56 · 2836 阅读 · 1 评论 -
决策树C4.5 Java程序
决策树理论介绍 ID3 Java程序利用信息增益率选择特征 只需要在上面的ID3程序中增加计算划分信息函数就好了 信息划分的函数/** * 计算划分信息,或者叫做划分熵,计算index对于特征不同取值可能的信息熵 * @param splitData * @param index 第几个特征 * @return */ public do原创 2016-05-26 21:26:48 · 1605 阅读 · 0 评论 -
决策树
决策树基本知识: 1.决策树是一种利用结点和有向边组成的层次结构 2.分类or回归算法 3.监督学习 4.存在能够是数据集准确分类的树,无论是否真的存在这样的树,但是这是NP难问题 5.针对4,一般决策树的学习策略是以损失函数为目标函数的最小化 树种三种节点: 1.根结点: 没有入边,有零或者多条出边 2.内部结点:恰有一个入边、两个或者多个出边 3.叶子结点:恰有一个入边,没有出原创 2016-05-25 22:13:39 · 2369 阅读 · 0 评论 -
Logistic Regression Java程序
理论介绍 节点定义package logistic;public class Instance { public int label; public double[] x; public Instance(){} public Instance(int label,double[] x){ this.label = label; th原创 2016-05-30 20:29:28 · 2182 阅读 · 1 评论 -
Logistic Regression
Logistic RegressionLogistic 函数f(x)=11+e−xf(x) = \frac{1}{1+e^{-x}} 函数图像 逻辑斯蒂回归是分类算法,其分类原理是利用Logistic函数计算对当前数据计算其属于某一类的后验概率P(Y|X)P(Y|X),选取最大的后验概率对应的类别作为分类标签二分类对于训练数据集{x1,x2,x3,...,xm}\left \{ x_原创 2016-05-29 16:04:29 · 735 阅读 · 0 评论 -
LDA线性判别分析Python程序
理论讲解需要导入的包# -*- coding: utf-8 -*-import numpy as np import csvfrom matplotlib import pyplot as pltimport math导入数据集def read_iris(): from sklearn.datasets import load_iris from sklearn import原创 2015-08-04 21:48:10 · 8047 阅读 · 1 评论 -
高斯密度的贝叶斯分类
这里说的也就是对连续值得贝叶斯分类 对于离散的情况可产考: 贝叶斯理论基础 贝叶斯邮件分类这里也是假设各个特征之间是互相独立的f(x,μ,σ)=12π√∗σexp−(x−μ)22∗σ2\color{Red}{f(x,\mu,\sigma) = \frac{1}{\sqrt{2 \pi}*\sigma }exp{- \frac{(x-\mu)^2}{2*\sigma^2}}}说明:xx是你要输入原创 2015-08-29 10:12:20 · 1055 阅读 · 0 评论 -
Kmeans聚类Python程序
之前写过两个关于kmeans的博客 kmeans理论介绍 kmeans与dbscan的对比再说下算法的过程: 1.随机的选取k个聚类中心,这个k是有自己设置的 2.计算数据集到k个聚类中心的距离 3.对一条数据,分配到距k个聚类中心最近的类中 4.得到新的k个数据,计算聚类中心 5.更新2,3,4当类别不再变化时结束迭代Python程序 计算欧式距离 # 计算欧式距离def原创 2015-08-02 17:38:49 · 1602 阅读 · 0 评论 -
R语言主成分分析之SVD
#全数据集PCA all_col_mean = colMeans(data.learn.x) #计算训练集每一列的均值 data.learn.PCAx = data.learn.x cols = ncol(data.learn.x) #获取列数 all_col_sd = apply(data.learn.x,2,sd) for (j in 1:cols){原创 2014-11-18 19:55:39 · 6701 阅读 · 0 评论 -
Kmeans聚类
k-means聚类之前看了好多关于kmeans聚类的资料,大致意思稍微了解了,但是自己写程序还是编不出来。最主要的原因是自己的编程能力太差了。本科时候没有怎么写过代码,java话说是使用率很高的编程语言,我只能说我只是能看懂简单的代码。C也就是个计算机二级、三级的水平吧。计算机四级考了两次都没过。。。废话少说扯正题。算法流程:1.随机选取k个点作为初始质心2.计算所有数据到原创 2015-01-11 19:35:43 · 880 阅读 · 0 评论 -
聚类与分类的区别
简单地说,分类就是按照某种标准给对象贴标签(label),再根据标签来区分归类。根据标签训练模型。简单地说,聚类是指事先没有“标签”而通过某种成团分析找出事物之间存在聚集性原因的过程。由模型训练标签。 区别是,分类是事先定义好类别 ,类别数不变 。分类器需要由人工标注的分类训练语料训练得到,属于有指导学习范畴。聚类则没有事先预定的类别,类别数不确定。 聚类不需要人工标注和预先训练分类器,类别原创 2014-12-26 16:47:58 · 1010 阅读 · 0 评论 -
常见的连续概率密度函数
均匀密度函数均匀密度函数,在a~b上使常数,其他是0。根据该类概率密度函数在样本空间上的积分等于1,可知道对于均匀多维随机变量,以二维为例显然密度函数密度函数可以用于0~1之间的连续随机变量。密度函数定义如下:,其中阿尔法,白塔是控制概率密度函数形状的参数,必须是正直。高斯密度函数定义域在实数域,随机变量Y的高斯概率密度函数定义如原创 2015-02-04 20:05:14 · 6468 阅读 · 0 评论 -
常用的矩阵求导
如下:原创 2015-02-05 17:08:33 · 561 阅读 · 0 评论 -
Kmeans聚类与dbscan聚类对比
kmeans聚类特点: 1.无监督学习2.人为的输入要聚的类数k3.一般是计算的欧式距离判断相似性4.每次随机的选取k个聚类中心,聚类结果受随机选取的类中心影响比较大5.简单算法过程:1.输入训练数据集,类别K2.随机的选取K条数据,作为K个类的中心3.计算所有数据到2中的K个类中心的距离4.根据3的结果,与某个类最近的数据化为一类5.根据4,从新得到K个类,并计算K个类的中心6.更新上面的的过程原创 2015-06-29 21:37:22 · 8333 阅读 · 0 评论 -
特征选择之PCA变换
Principle Component AnalysisPCA(Principal Component Analysis)是一种常用的数据分析方法。PCA变换后的各数据维度线性无关,根据数据的主要特征值,提取数据的主要特征分量,即可用于高维数据的降维。优缺点优点:降低数据的复杂度,识别最重要的几个特征 缺点:不是必须的,只适用于数值型数据理论知识 将向量XiX_{i}投影到单位向量VV上的结果是原创 2015-07-02 21:32:32 · 1837 阅读 · 0 评论 -
特征选择之SVD分解
Singular Value Decomposition奇异值分解( The singular value decomposition ) 是线性代数中一种重要的矩阵分解。能够用小得多的数据表示原始数据集,并且能够去除噪声和冗余。优缺点优点:可去除噪声,降维 缺点:只适用数值型数据理论知识SVD是讲原始数据矩阵Data分解成三个矩阵⋃,∑,VT\bigcup ,\sum ,V^{T} 若原始矩阵原创 2015-07-02 22:12:21 · 1961 阅读 · 0 评论 -
梯度下降法
概念梯度下降法(gradient descent)或最速下降法(steepest descent)是求解无约束最优问题的一种常用的方法,实现简单。梯度下降法是迭代算法,每一步需要求解目标函数的梯度。假设f(x)是RnR^{n}上具有一阶连续偏导数的函数。求解的约束最优化问题是: minxεRnf(x)\underset{x\varepsilon R^{n}}原创 2015-07-05 13:16:15 · 1272 阅读 · 0 评论 -
重采样---不平衡分类
重采样方法是通过增加稀有类训练样本数的*上采样( up sampling) 和减少大类样本数的*下采样( down sampling)使不平衡的样本分布变得比较平衡,从而提高分类器对稀有类的识别率。最原始的上采样方法是复制稀有类的样本,但是这样做容易导致过学习[,并且对提高稀有类识别率没有太大帮助. 较高级的上采样方法则采用一些启发式技巧,有选择地复制稀有类样本,或者生成新的稀有类样本. Chawl原创 2015-07-12 21:28:23 · 3378 阅读 · 1 评论 -
朴素贝叶斯之邮件分类
实例上一章介绍了贝叶斯分类的理论基础,下面举个例子说明。 有如下数据集: P(Y=1)=915,P(Y=−1)=615P(Y=1)=\frac{9}{15},P(Y=-1)=\frac{6}{15} 对特征X(1),Y=1X^{(1)},Y=1 P(X(1)=1|Y=1)=29,P(X(1)=2|Y=1)=39,P(X(1)=3|Y=1)=49P(X^{(1)}=1|Y=1)=\frac{2原创 2015-07-11 21:09:32 · 1846 阅读 · 0 评论 -
Logistic应用于二分类
回归方程z=w0x0+w1x1+w2x2+w3x3+...wnxnz=w_0x_0+w_1x_1+w_2x_2+w_3x_3+...w_nx_n =wTx=w^Tx 表示两个向量对应元素的相乘 xx是分类器的输入特征 ww是我们需要求的最佳参数算法过程每个回归系数初始化为1 重复R次: 。。。计算整个数据的梯度 。。。使alpha*grandient更新回归系数向量 。。。返回回归系原创 2015-07-19 18:52:37 · 1008 阅读 · 5 评论 -
线性判别分析(Linear Discriminant Analysis)
概念线性判别分析(Linear Discriminant Analysis)是一种根据分类特征有监督方法的降维算法。LDA是将高维数据投影到低维数据,同时保证不同类尽量的分得开,即:类内距离尽量的近,类间距离尽量的远。二分类数据做LDA对于DD维的样本x={x(1),x(2),...,x(N)}x=\left\{ x^{(1)},x^{(2)},...,x^{(N)}\right\} 设ww是投影原创 2015-08-01 21:48:57 · 1476 阅读 · 0 评论 -
Python实现KNN算法
导入的包import csv import random import math import operator读取数据:def loadDataSet(filename,split,trainingSet=[] , testSet = []): with open(filename,'rb') as csvfile: lines = csv.reader(csvfil原创 2015-08-28 20:22:38 · 869 阅读 · 0 评论 -
最大熵模型
序列最小化算法(sequential minimal optimization,SMO)算法,是解决原创 2015-08-01 20:36:37 · 831 阅读 · 0 评论 -
CART
简介回归树分类树建树简介分类与回归树( Classification And Regression Tree,CART)模型由Breiman等人1984年提出,是应用广泛的决策树学习方法。可以用于分类也可以用于回归。CART是在给定输入随机变量X条件下输出随机变量Y的条件概率分布的学习方法。CART假设决策树是二叉树,内部结点特征的取值为是和否。这样的决策树等价于递归地二分每个特征,将输入空间原创 2016-06-14 19:59:44 · 1394 阅读 · 0 评论