机器学习
文章平均质量分 51
JIN_嫣熙
Life is sad at times, but it is up to you to make your own life happy.
展开
-
【机器学习】通俗易懂的条件概率公式
博主一位同学准备公务员考试,问了一道行测题:某考生回答一道4选1的选择题,假设他知道正确答案的概率为二分之一,他不知道正确答案时猜对的概率应该为四分之一。考试结束后他发现这道题答对了,那么他知道正确答案的概率是()。A、四分之三B、五分之四C、六分之五D、八分之七刚看到题目时,读了半天,发现越想越乱,很快就被绕晕了。拿起笔,整理下思路,发现确实是道有意思的题目,下面一起看下解题思路。首先,复习下条...原创 2018-06-22 21:17:25 · 5666 阅读 · 0 评论 -
【机器学习】HOG detectMultiScale 参数分析
前段时间学习了HOG描述子及其与SVM结合在行人检测方面的应用。当我们用训练好的模型去检测测试图像时,我们会用到detectMultiScale() 这个函数来对图像进行多尺度检测。这是opencv3.1里的参数解释可以看到一共有8个参数。1.img(必需)这个不用多解释,显然是要输入的图像。图像可以是彩色也可以是灰度的。2.foundLocations存取检测到的...转载 2018-11-13 11:23:01 · 1376 阅读 · 0 评论 -
hog训练流程及源码分析
一、网上一些参考资料 在博客目标检测学习_1(用opencv自带hog实现行人检测) 中已经使用了opencv自带的函数detectMultiScale()实现了对行人的检测,当然了,该算法采用的是hog算法,那么hog算法是怎样实现的呢?这一节就来简单分析一下opencv中自带 hog源码。 网上也有不少网友对opencv中的hog源码进行了...转载 2018-11-12 16:12:31 · 1118 阅读 · 1 评论 -
【opencv+机器学习】error C3083: 'ml': the symbol to the left of a '::' must be a type问题原因
基于VS和opencv,进行机器学习的人脸识别算法时,碰到如下问题:问题原因:opencv版本是2.3.1,较低;改成opencv3.0以上版本,问题解决。原创 2018-11-12 16:47:47 · 729 阅读 · 0 评论 -
最推荐的深度学习课程
深度学习工程师 - 吴恩达给你的人工智能第一课。https://mooc.study.163.com/smartSpec/detail/1001319001.htm原创 2018-11-15 10:28:23 · 1564 阅读 · 0 评论 -
AI算法工程师必备技术,快快积累!
技术计算机基础重要程度:**本部分大多出现在笔试中,面试中也略有出现。计算机基础虽然不是重点,但是很容易被忽略掉的内容,一来是本科学的课程,研究生早忘光了;二来很多同学觉得我是搞算法的,这些不是开发问的问题么?殊不知计算机基础是非常重要的部分,算法工程师首先要是一个工程师,对计算机不够了解怎么做出更鲁棒的网络结构,怎么能提高计算效率?这部分主要是4门最重要的基础课和对linux...转载 2018-11-15 10:42:56 · 2178 阅读 · 0 评论 -
基于TensorFlow的2个机器学习简单应用实例
根据数据建立了一个线性模型,并设计了一个损失模型。 在我们的线性模型 y=W×x+b中,不断的改变W和b的值,来找到一个使loss最小的值。使用梯度下降(Gradient Descent)优化算法,通过不断的改变模型中变量的值,来找到最小损失值。1、实例一#引入TensorFlow模块import tensorflow as tf#创建节点保存W和b,并初始化W = tf.Var...原创 2018-12-10 09:49:15 · 1919 阅读 · 0 评论 -
机器学习项目流程
在微博上看到七月算法寒老师总结的完整机器的学习项目的工作流程,结合天池比赛的经历写的。现在机器学习应用非常流行,了解机器学习项目的流程,能帮助我们更好的使用机器学习工具来处理实际问题。1. 理解实际问题,抽象为机器学习能处理的数学问题 理解实际业务场景问题是机器学习的第一步,机器学习中特征工程和模型训练都是非常费时的,深入理解要处理的问题,能避免走很多弯路。理...转载 2019-01-03 09:59:04 · 245 阅读 · 0 评论 -
【机器学习】基于实战项目的SVM算法库使用方法详解
0. 学习背景 本人在进行车道线检测项目中使用到了LBP+SVM算法来改善高复杂度场景下的车道线特征提取效果,主要流程如下:提取训练集中车道线的LBP特征,然后训练一个SVM分类器。在测试时,使用相同的特征提取方法,将特征值输入SVM分类器中,根据“决策面”方程,即超平面方程即可得到每个测试样本到分类超平面的距离,即该样本对应的“得分”。 使用了自带的SVM算法库...转载 2019-01-16 09:50:42 · 1437 阅读 · 0 评论 -
【机器学习】梯度提升树(GBDT)的原理小结
在集成学习之Adaboost算法原理小结中,我们对Boosting家族的Adaboost算法做了总结,本文就对Boosting家族中另一个重要的算法梯度提升树(Gradient Boosting Decison Tree, 以下简称GBDT)做一个总结。GBDT有很多简称,有GBT(Gradient Boosting Tree), GTB(Gradient Tree Boostin...转载 2019-01-16 10:34:26 · 404 阅读 · 0 评论 -
【机器学习】LBP特征融合最大灰度差、平均灰度、平均梯度改善SVM检测效果
把正负样本12×30内的averageGray、maxPixelDiff,添加到LBPFeature后;再把梯度Mat(size(12,30))展开成一行添加到LBPFeature后。组成新的sampleFeatureMat,进行训练。//计算输入图片的最大灰度差、平均灰度、平均梯度int calAverageGary(const Mat &inImg, int &maxG...原创 2019-01-16 14:02:54 · 1209 阅读 · 7 评论 -
【机器学习】改善LBP特征提高SVM的可分性的经验总结(一)
1、等价模式LBP的最初效果正样本2343,负样本5883,直接计算等价模式LBP特征图,再使用SVM训练一个分类器。CvTermCriteria criteria = cvTermCriteria(CV_TERMCRIT_ITER, 1000, FLT_EPSILON);CvSVMParams param(CvSVM::C_SVC, CvSVM::LINEAR, 0, 0.5, 0...原创 2019-01-16 14:18:16 · 743 阅读 · 0 评论 -
【机器学习】改善LBP特征提高SVM的可分性的经验总结(二)
1、直方图均衡后,效果变差equalizeHist(testImg, testImg); //直方图均衡imshow("直方图均衡后", testImg);结论:由于直方图均衡会明显改变原来的明暗分布,反而降低可分性,检测效果显著变差。效果如下: 2、把SVM.predict输出为1的框,求平均灰度,小于设定阈值的不保留//设计12×30的滑窗遍历300×720的...原创 2019-01-16 14:50:50 · 575 阅读 · 2 评论 -
PCA与LDA两种降维方法原理的简要对比
1、PCA(主成分分析)无监督的,选择的是投影后数据方差最大的方向。因此PCA假设方差越大,代表的信息量越大,使用主成分来表示原始数据可以去除冗余的维度,达到降维的目的。2、LDA(线性判别分析)有监督的,选择的是投影后类内方差小、类间方差大的方向。用到了类别标签信息,为了找到数据中具有判别性的维度,使原始数据在这些方向上投影后,不同类别尽可能区分开来。 例如:语音设别中,如果...原创 2019-01-22 23:09:24 · 2165 阅读 · 1 评论 -
深度神经网络的分布式训练概述:常用方法和技巧全面总结
论文地址:https://arxiv.org/abs/1810.11787深度学习已经为人工智能领域带来了巨大的发展进步。但是,必须说明训练深度学习模型需要显著大量的计算。在一台具有一个现代 GPU 的单台机器上完成一次基于 ImageNet 等基准数据集的训练可能要耗费多达一周的时间,研究者已经观察到在多台机器上的分布式训练能极大减少训练时间。近期的研究已经通过使用 2048 个 GPU 的...转载 2019-01-30 09:49:38 · 2087 阅读 · 0 评论 -
矩阵的特征值、特征向量及其代码求解实现
如果把矩阵看成运动,描述运动最重要的参数当属运动的速度和方向。为了帮助大家理解,我们可以形象地认为:特征值就是运动的速度,特征向量就是运动的方向。Python代码:import numpy as npw, v = np.linalg.eig(np.array([[1, -2], [2, -3]]))print('特征值:{}\n特征向量:{}'.format(w,v))计...原创 2018-11-05 16:35:48 · 6603 阅读 · 3 评论 -
PCA(主成分分析)降维的概念、作用及算法实现
1、PCA降维的概念Principal Component Analysis(PCA):主成分分析法,是最常用的线性降维方法。它的目标是通过某种线性投影,将高维的数据映射到低维的空间中表示,即把原先的n个特征用数目更少的m个特征取代,新特征是旧特征的线性组合。并期望在所投影的维度上数据的方差最大,尽量使新的m个特征互不相关。从旧特征到新特征的映射捕获数据中的固有变异性。以此使用较少的数据维度,...原创 2018-11-06 11:18:53 · 6764 阅读 · 0 评论 -
协方差、协方差矩阵的数学概念及算法计算
在讲解协方差之前,我们先一起回忆一下样本的均值、方差、标准差的定义。方差,协方差和协方差矩阵1、概念方差(Variance)是度量一组数据的分散程度。方差是各个样本与样本均值的差的平方和的均值: 协方差(Covariance)是度量两个变量的变动的同步程度,也就是度量两个变量线性相关性程度。如果两个变量的协方差为0,则统计学上认为二者线性无关。注意两个无关的变量并非完全独立,只...原创 2018-11-06 09:29:15 · 35462 阅读 · 3 评论 -
【机器学习】LBP+SVM实现特征检测
初步学习机器学习,参考HOG SVM 车辆检测(https://www.cnblogs.com/louyihang-loves-baiyan/p/4658478.html)、LBP特征原理(https://blog.csdn.net/q1007729991/article/details/52995734)及LBP特征的实现及LBP+SVM分类 (https://blog.csdn.net/qia...原创 2018-06-16 11:17:17 · 4966 阅读 · 1 评论 -
【机器学习】对挑选后的训练样本进行连续重命名
#include <opencv2/opencv.hpp>#include <windows.h>#include <stdio.h>#include <string>#include <iostream>using namespace std;using namespace cv;int main(){ char ...原创 2018-07-10 20:22:35 · 246 阅读 · 1 评论 -
信赖域反射算法求解非线性大规模边界约束极小化问题
原创 2018-07-05 19:56:42 · 3574 阅读 · 4 评论 -
【机器学习】算法面试知识点整理(持续更新中~)
1、监督学习(SupervisedLearning):有类别标签的学习,基于训练样本的输入、输出训练得到最优模型,再使用该模型预测新输入的输出;代表算法:决策树、朴素贝叶斯、逻辑回归、KNN、SVM、神经网络、随机森林、AdaBoost、遗传算法。2、半监督学习(Semi-supervisedLearning):同时使用大量的未标记数据和标记数据,进行模式识别工作;代表算法:self-traini...原创 2018-07-06 21:21:20 · 571 阅读 · 0 评论 -
【机器学习】最近邻算法KNN原理、流程框图、代码实现及优缺点
通过机器学习教学视频,初识K-Means算法,对原理公式推导、Python代码实现部分小程序,有了一些自己的理解。因此在此整理一下,既是对自己学习的阶段性总结,也希望能和更多的朋友们共同交流学习相关算法,如有不完善的地方欢迎批评指正。前后花费3天时间,不断修改,完善后才发出来,转载请注明出处,谢谢!1、K-Means概念及原理2、K-Means算法流程3、K-Means代码实现4、K-Means优...原创 2018-07-14 12:57:20 · 23984 阅读 · 0 评论 -
【机器学习】K-Means算法的原理流程、代码实现及优缺点
通过机器学习教学视频,初识KNN算法,对原理和算法流程通过小应用进行Python实现,有了自己的一些理解。因此在此整理一下,既是对自己学习的阶段性总结,也希望能和更多的朋友们共同交流学习相关算法,如有不完善的地方欢迎批评指正。1、K-Means算法原理DT,全称Decision Trees,即常说的决策树算法。2、K-Means流程框图在建立训练集时,3、K-Means代码实现参照麦子学院4、K-...原创 2018-07-14 16:53:49 · 34962 阅读 · 1 评论 -
Python初学者之TypeError: unhashable type: 'list'问题分析
使用Python实现机器学习k-近邻算法,创建数据集和标签时,出现了“TypeError: unhashable type: 'list'”错误,无法正确打印出group和labels。1、错误代码与错误信息具体代码实例如下:from numpy import *import operatordef creatDataSet(): group = {[[1.0, 1.1...原创 2018-07-28 14:18:11 · 266481 阅读 · 11 评论 -
数据挖掘之3种数据归一化方法及代码实现
学习数据挖掘、机器学习的同学们应该经常碰到数据归一化(也称标准化),数据的不同特征种类(评价指标)的取值范围差别可能很大,如果不做处理会影响数据分析的结果。因此需要把数据进行标准化处理,将数据进行比例缩放,以消除不同特征间量纲和取值范围差异带来的影响。数据归一化处理对基于距离的数据挖掘算法尤为重要。下面就简要介绍3种常用的数据归一化方法。1、最大最小归一化该方法也称离差标准化,其核心思...原创 2018-08-01 23:09:19 · 6168 阅读 · 0 评论 -
【机器学习】批量更新多个文件夹中图片的命名
#include <opencv2/opencv.hpp>#include <windows.h>#include <stdio.h>#include <string>#include <iostream>#include <ctime>#include <windows.h>#include &a原创 2018-09-30 15:56:09 · 886 阅读 · 0 评论 -
【opencv】经典的细化提取骨架理论及源代码
做项目时碰到特征的骨架提取,找了挺多相关资料,发现这篇博客讲的最完整,而且通俗易懂,完美解决碰到的问题,特转载如下,供更多的人学习。转自:https://www.cnblogs.com/mikewolf2002/p/3327183.html本章我们学习一下Hilditch算法的基本原理,从网上找资料的时候,竟然发现两个有很大差别的算法描述,而且都叫Hilditch算法。不知道那一个才是正宗的,...转载 2018-09-30 16:06:16 · 6184 阅读 · 3 评论 -
【机器学习】最容易实现的基于OpenCV的人脸检测代码、检测器及检测效果
基于opencv自带的人脸检测模型,实现简单的人脸检测功能,可作为机器学习初学者练手使用。简单易学,具体的方法及代码如下。1、运行结果输入原图输出结果2、工程需要加载的opencv库如下:3、用到的人脸检测器4、具体实现代码#include <opencv.hpp>#include <opencv2/core/core.hpp>...原创 2018-10-24 14:18:53 · 706 阅读 · 4 评论 -
【机器学习】基于opencv实现目标检测,error LNK2001: unresolved external symbol "public: virtual bool CvSVM::train...
1、链接错误如下:2、错误原因opencv的工程属性中没有添加机器学习库。3、解决办法添加依赖库:opencv_ml231.lib,如下截图:原创 2018-10-24 16:38:18 · 386 阅读 · 0 评论 -
【机器学习】最简单易懂的行人检测功能实现
加载训练好的行人分类器,实现行人检测功能。代码中用到的训练好的行人分类器"pedestrianDetect.xml"下载路径:https://download.csdn.net/download/lyq_12/10742144一、效果如下:1、输入原图2、输出结果二、代码实现如下:#include <iostream>#include <fst...原创 2018-10-24 16:59:42 · 3387 阅读 · 0 评论 -
【机器学习】HOG+SVM进行车辆检测的流程及源码
在进行机器学习检测车道线时,参考了这篇博文,基于LBP+SVM实现了车道线检测的初步效果。觉得讲解很到位,代码也容易理解和修改,故在此分享,供更多人学习。HOG SVM 车辆检测 近期需要对卡口车辆的车脸进行检测,首先选用一个常规的检测方法即是hog特征与SVM,Hog特征是由dalal在2005年提出的用于道路中行人检测的方法,并且取的了不错的识别效果。在人脸检测方面目前主流的方法,先...转载 2018-10-30 10:44:20 · 9945 阅读 · 78 评论 -
Docker 的基本原理及快速入门
什么是dockerDocker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护。Docker 自开源后受到广泛的关注和讨论,以至于 dotCloud 公司后来都改名为 Docker Inc...转载 2019-01-30 15:46:12 · 257 阅读 · 0 评论