机器学习
驴客图世界
这个作者很懒,什么都没留下…
展开
-
最小二乘法 最小二乘问题
一般所讲最小二乘是一大类问题,而不是方法。Ng所讲的最小二乘法,是一种切结线性最小二乘问题的方法。线性回归目标函数简单,可以用直接利用最小二乘的矩阵公式:对于逻辑回归,其目标函数比较复杂,则无法像线性回归一步直接算出最终解,而采用梯度下降法或牛顿法来求解。总结最小二乘的目标:求误差的最小平方和,对应线性和非线性对于线性最小二乘的解释closed-form,即x=;对于非原创 2016-05-14 22:14:00 · 1095 阅读 · 0 评论 -
逻辑回归-梯度下降法 python实现
机器学习的基本框架:模型、目标(cost function)、算法Step1:对于一个问题,需要首先建立一个模型,如回归或分类模型;step2:通过最小分类误差、最大似然或最大后验概率建立模型的代价函数;step3:最优化问题求解a.如果优化函数存在解析解,则可以通过一般的求值方法-对代价函数求导,找到倒数为0的点,即是最大值或者最小孩子;b.如果上述方法求优化函数导数比较原创 2016-05-14 21:58:49 · 5512 阅读 · 1 评论 -
KMeans的C++及Python实现
1. C++实现#include #include #include #include #include using namespace std;const int k = 3;const int dims = 4;const int dataNum = 150;typedef vector Tuple;void doKmeans(vector& tuples);vo原创 2016-04-20 15:41:44 · 1355 阅读 · 1 评论 -
k近邻算法识别手写数字Python实现
数据集:(参见python实战教程)训练数据:trainingDigits 2000多个.txt文件测试数据:testDigits 约900个.txt文件均为32*32大小from numpy import *import osimport knnOperatorimport pdbdef img2vector(filename,d): #d=32 return原创 2016-05-10 21:49:47 · 1731 阅读 · 1 评论 -
kmeans优缺点 及改进
Kmeans:优点:简单易实现缺点:可能收敛于局部最小值(对初始k个聚类中心的选择敏感),在大规模数据集上收敛较慢适用数据类型:数值型数据度量聚类效果的指标:SSE(sum of squared error, 误差平方和),SSE值越小表示数据点越接近于他们的质心,聚类效果也越好改进方法:簇划分二分k均值算法:请参考博客:http://blog.csdn.n原创 2016-04-29 10:49:53 · 5265 阅读 · 0 评论 -
knn算法C++实现
knn的C++实现,有不对的地方请各位指正!谢谢!knn原理请见:http://blog.csdn.net/u013593585/article/details/51284537#include #include #include #include #include using namespace std;typedef vector Tuple;const int k =原创 2016-05-12 21:02:39 · 2804 阅读 · 1 评论 -
knn算法python实现
K最近邻(k-Nearest Neighbor,KNN)分类算法思路:如果一个样本在特征空间中的k个最相似的样本中的大多数属于某一个类别,则该样本也属于这个类别。KNN算法还可用于回归。方法是通过找出一个样本的k个最近邻居,将这些邻居的属性的平均值赋给该样本,就可以得到该样本的属性。更有用的方法是将不同距离的邻居对该样本产生的影响给予不同的权值(weight),如权值与距离成正比(组合函数原创 2016-04-29 22:30:52 · 5736 阅读 · 2 评论 -
二分k均值 Python实现
Kmeans:优点:简单易实现缺点:可能收敛于局部最小值(对初始k个聚类中心的选择敏感),在大规模数据集上收敛较慢适用数据类型:数值型数据度量聚类效果的指标:SSE(sum of squared error, 误差平方和),SSE值越小表示数据点越接近于他们的质心,聚类效果也越好改进方法:簇划分二分k-均值算法:算法思想:首先将所原创 2016-04-27 20:16:48 · 2401 阅读 · 1 评论 -
二分K均值c++实现
二分k均值原理及Python实现请见:(1)http://blog.csdn.net/u013593585/article/details/51280052(2)http://blog.csdn.net/u013593585/article/details/51263980 Python实现C++代码:基于python的思路写的(求指点)#include #inc原创 2016-05-12 21:08:02 · 1429 阅读 · 1 评论 -
最小二乘法及C++实现
最小二乘法--使得观测值与理论值得偏差平方和最小。以一元线性回归说明:假设从总体中获取了n组观察值(x1,y1),(x2,y2)......(xn,yn)。则对于这n个点,选择最佳拟合曲线的标准为:使得总的残差最小。则有三个标准:(1)使用“残差和最小”。缺点:残差和存在相互抵消的问题;(2)使用“残差绝对值和最小”。缺点:计算麻烦;(3)使用“残差平方和最小”(最小二乘)原创 2016-05-14 10:01:16 · 4757 阅读 · 0 评论 -
准确率(Precision)和召回率(Recall)
正类 负类 检索到 TP 检索到且为真 FP 检索到但为假 未检索到 FN 未被检索到但未真(真的被检索成假的) TN 未被检索到且未假 准确率Precision:TP/(TP+FP) 检索出来的正类总数/检索到的总数,衡量查准率(检索出来的条目有多少是准确的)召回率Recall:TP/(TP+FN)检索出来的正类总数/正类总数,衡量查...原创 2016-06-21 16:13:08 · 5123 阅读 · 0 评论