机器学习
文章平均质量分 91
森耶耶爱笑嘻
苟利...
展开
-
(转载)PCA的数学原理
PCA(Principal Component Analysis)是一种常用的数据分析方法。PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降维。网上关于PCA的文章有很多,但是大多数只描述了PCA的分析过程,而没有讲述其中的原理。这篇文章的目的是介绍PCA的基本数学原理,帮助读者了解PCA的工作机制是什么。当然我并不打算把文章写成纯...原创 2016-10-27 09:33:48 · 145 阅读 · 0 评论 -
机器学习算法 ---- 正规方程组
监督学习之正规方程组上一篇博客是介绍了梯度下降法,旨在每一次迭代都从下降梯度最大的方向进行,最终找到全局最大值!但是,这样的效率往往是不高的,无论是批量梯度下降法还是改进后的随机梯度下降法,在大样本的情况下都需要进行迭代。那么今天学习的正规方程组就希望用一个式子就将参数表示出来。 数学概念和定理的引入这里要得到正规方程组,需要一些高等数学和线性代数的知识,在此引入:(公式太难打...原创 2016-01-24 12:27:10 · 421 阅读 · 0 评论 -
机器学习算法 ---- 梯度下降法
机器学习在当今社会应用越来越广泛,如计算机视觉、机器人控制、无人机无人车技术等等,都离不开机器学习算法。而机器学习并不像学习一门语言那样简单,算法的实质是数学,有了数学的推导结果,运用什么样的语言那就因人因事而异了。要学好机器学习,要有一定的数学功底以及能潜下心来做一些数学上的研究,而不是打开电脑就敲代码,。当然,学习的最终目的是应用,我期待能将学习到的东西运用到生活中的点点滴滴!首先...原创 2016-01-24 10:54:01 · 197 阅读 · 0 评论 -
OpenCVforAndroid应用之银行卡号识别 ------ 搞定开发环境
前阵子的考试、旅游让我有很长一阵子没来博客看看,现在寒假了,是时候写点、看点新的东西了!前面我主要围绕着基于OpenCV的机器学习算法在图像识别处理上的应用来展开学习的,当然这些个技术(如银行卡号识别)最终都是要运用到实际生活中的。我们就拿银行卡号识别来说,大家用的最多的微信实际上就有了这个功能。大家打开微信钱包,绑定银行卡的时候是否在输入框右侧看到一个照相机一样的按钮呢,那就是实现银行卡...原创 2016-01-22 21:04:37 · 638 阅读 · 0 评论 -
OpenCV+SVM简单应用-------路面箭头分类
问题内容:路面箭头检测与识别(该部分主要介绍基于SVM的分类,也就是识别,检测问题暂不谈)问题背景:路面箭头识别在无人车中有着重要的作用: 1.车道线等重要信息的检测,需要排除路面箭头的干扰; 2.需要根据路面箭头的指示,完成下一步动作问题描述:为了简化这个问题,重点描述基于OpenCV的SVM路面箭头分类,我...原创 2016-12-12 14:49:27 · 2091 阅读 · 5 评论 -
银行卡号识别(四) --- 基于k最近邻的银行卡提取及识别
一、提取方法的修正 上回说道,我们使用cvFindContours函数来找银行卡上的数字的外包矩形,从而从银行卡上将数字抠下来进行识别,但是,使用后会发现有如下两个问题: (1)不好筛选 提供的图片大小不一样,那么数字的外包矩形框的大小也就不一样,如果简单地采用面积的办法进行筛选,那么这种方法的适应性是非常的差的。 (2)外...原创 2015-12-13 15:37:51 · 1444 阅读 · 5 评论 -
银行卡号识别(三) --- 基于k最近邻的数字识别测试
在进行完预处理之后,我们可以开始用算法识别数字了。首先我们不做那么复杂的、一连串银行卡数字的识别,而是做一个数字的测试。 一、机器算法的引入-----K近邻算法K最近邻(k-Nearest Neighbour,KNN)分类算法是一个理论上比较成熟的算法,也是最简单的机器学习算法之一。顾名思义,k最近邻实际上就是取和待分类物最相似的k个模板,然后这k个模板中所占比例最高的类别就是最后...2015-12-09 20:00:52 · 1542 阅读 · 3 评论 -
银行卡号识别(二) --- 再预处理
上回书说道,我们对银行卡进行了一系列的预处理后,得到了下面的结果: 银行卡下半部分严重影响到了检测的效果,所以在进行机器学习前,我们还需要做一点处理,把下半部分的噪声给消除掉。思路:首先,针对农行卡颜色的特点(目前暂时只讨论农行卡)上半部分颜色相对较浅,下半部分颜色较深,而银行卡号属深色,所以往往会出现上图所示的---下半部分大面积噪声,上半部分可能没有或者有细微的...2015-12-09 00:19:35 · 2190 阅读 · 0 评论 -
银行卡号识别(一) --- 预处理
受到微信钱包的启发,现在决心做一个类似的东东来玩一玩 -------------- 银行卡号识别 凡事要循序渐进,本次我们先来探讨静态银行卡号的识别,识别的方法有很多,那么在识别之前往往还有很多预处理的工作要做,接下来我将一一介绍。 目标图片 一、灰度图像 我们将图像导入后,往往是三通道的...2015-12-04 00:18:44 · 2892 阅读 · 0 评论 -
(转载)Scikit Learn: 在python中机器学习
Scikit Learn: 在python中机器学习Warning警告:有些没能理解的句子,我以自己的理解意译。翻译自:Scikit Learn:Machine Learning in Python作者: Fabian Pedregosa, Gael Varoquaux先决条件Numpy, ScipyIPythonmatplotlibscikit-l...原创 2016-11-14 10:22:35 · 138 阅读 · 0 评论 -
模型评价(一) AUC大法
问题:AUC是什么AUC能拿来干什么AUC如何求解(深入理解AUC)AUC是什么混淆矩阵(Confusion matrix)混淆矩阵是理解大多数评价指标的基础,毫无疑问也是理解AUC的基础。丰富的资料介绍着混淆矩阵的概念,这里用一个经典图来解释混淆矩阵是什么。 显然,混淆矩阵包含四部分的信息: 1. True negative(TN),称为真阴率,表明实际是负...2017-07-30 00:32:01 · 390 阅读 · 0 评论