
机器学习
文章平均质量分 86
小白的进阶
立体视觉,机器学习,Python,搜索
展开
-
BM25算法 原理简介
bm25 是什么?bm25 是一种用来评价搜索词和文档之间相关性的算法,它是一种基于概率检索模型提出的算法,再用简单的话来描述下bm25算法:我们有一个query和一批文档Ds,现在要计算query和每篇文档D之间的相关性分数,我们的做法是,先对query进行切分,得到单词$q_i$,然后单词的分数由3部分组成:query中每个单词和之间的相关性 单词$q_i$和D之间的相关性 每个单词的权重最后对于每个单词的分数我们做一个求和,就得到了query和文档之间的分数。...原创 2021-09-06 20:10:27 · 18321 阅读 · 2 评论 -
最大似然估计与最大后验概率的区别与联系
最大似然估计(MLE):最大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”。简单而言,假设我们要统计全国人口的身高,首先假设这个身高服从服从正态分布,但是该分布的均值与方差未知。我们没有人力与物力去统计全国每个人的身高,但是可以通过采样,获取部分人的身高,然后通过最大似然估计来获取上述假设中的正态分布的均值与方差。最大似然估计中采样需满足一个很重要的原创 2017-09-22 14:42:00 · 24904 阅读 · 3 评论 -
逻辑回归实现文本分类
基于sklearn的文本分类—逻辑回归本文是文本分类的第一篇,记录使用逻辑回归进行文本分类任务,数据集下载地址:http://thuctc.thunlp.org/文本分类的主要内容如下: - 1.基于逻辑回归的文本分类 - 2.基于朴素贝叶斯的文本分类 - 3.使用LDA进行文档降维以及特征选择 - 4.基于SVM的文本分类 - 5.基于多层感知机MLPC的文本分类 - 6.基于卷积神经网络词级别...转载 2018-05-01 14:56:29 · 8610 阅读 · 1 评论 -
文本分类算法比较与总结
本文对常用的几种文本分类算法进行了比较与总结,主要阐述它们之间的优劣,为算法的选择提供依据。 一、Rocchio算法 Rocchio算法应该算是人们思考文本分类问题最先能想到的,也是最符合直觉的解决方法。基本的思路是把一个类别里的样本文档各项取个平均值(例如把所有“体育”类文档中词汇“篮球”出现的次数取个平均值,再把“裁判”取个平均值,依次做下去),就可以得到一个新的向量,形象的称之为“质心”,质...原创 2018-04-21 10:37:57 · 19085 阅读 · 0 评论 -
Softmax回归函数
Softmax回归模型,该模型是logistic回归模型在多分类问题上的推广,在多分类问题中,类标签 可以取两个以上的值。 Softmax回归模型对于诸如MNIST手写数字分类等问题是很有用的,该问题的目的是辨识10个不同的单个数字。Softmax回归是有监督的,不过后面也会介绍它与深度学习/无监督学习方法的结合。(译者注: MNIST 是一个手写数字识别库,由NYU 的Yann LeCun 等...转载 2018-06-13 14:15:38 · 2619 阅读 · 0 评论 -
Python中的逻辑回归(Logistic Regression)函数
1. 概述 在scikit-learn中,与逻辑回归有关的主要是这3个类。LogisticRegression, LogisticRegressionCV 和logistic_regression_path。其中LogisticRegression和LogisticRegressionCV的主要区别是LogisticRegressionCV使用了交叉验证来选择正则化系数C。而Logistic...原创 2018-05-30 17:13:13 · 40533 阅读 · 1 评论 -
Python Numpy详细介绍
NumPy - 简介NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。Numeric,即 NumPy 的前身,是由 Jim Hugunin 开发的。 也开发了另一个包 Numarray ,它拥有一些额外的功能。 2005年,Travis Oliphant 通过将 Numarray 的功能集成到 Num...转载 2018-08-02 20:02:21 · 3495 阅读 · 1 评论 -
SVM算法原理及Python实现
Svm(support Vector Mac)又称为支持向量机,是一种二分类的模型。当然如果进行修改之后也是可以用于多类别问题的分类。支持向量机可以分为线性核非线性两大类。其主要思想为找到空间中的一个更够将所有数据样本划开的超平面,并且使得本本集中所有数据到这个超平面的距离最短。一、基于最大间隔分隔数据1.1支持向量与超平面 在了解svm算法之前,我们首先需要了解一下线性分类器这...原创 2018-09-18 19:53:18 · 50003 阅读 · 12 评论 -
十大机器学习算法
一、介绍机器学习算法,是一种可以从数据中学习、从经验中提升自己而不需要人类干预的算法。学习的内容可能是一个从输入映射到输出的函数、无标记数据中的隐含结构或者是“基于实例的学习(instance-based learning)”,这种学习通过把新的实例与存储在内存中的训练数据进行比较,给新的实例赋予一个类别标记。“基于实例的学习”不会在这些具体的实例上创造一层抽象。二、机器学习算法的种类...原创 2018-09-19 14:34:48 · 814 阅读 · 0 评论 -
分类(classification)与回归(regression)的关系
分类模型和回归模型本质一样,分类模型是将回归模型的输出离散化。举几个例子:1. Logistic Regression 和 Linear Regression:Linear Regression: 输出一个标量 wx+b,这个值是连续值,所以可以用来处理回归问题。 Logistic Regression:把上面的 wx+b 通过 sigmoid函数映射到(0,1)上,并划分一个阈值,...原创 2018-10-15 15:17:19 · 24432 阅读 · 3 评论 -
随机森林(RandomForest)
随机森林就是通过集成学习的思想将多棵树集成的一种算法,它的基本单元是决策树,而它的本质属于机器学习的一大分支——集成学习(Ensemble Learning)方法。首先介绍一下什么是集成学习,在集成学习中,主要分为bagging算法和boosting算法。我们先看看这两种方法的特点和区别。Bagging(套袋法)bagging的算法过程如下:1.从原始样本集中使用Bootstrapi...原创 2018-10-15 15:45:53 · 1120 阅读 · 0 评论 -
机器学习中的损失函数分析与比较
损失函数(loss function)是用来估量你模型的预测值f(x)与真实值Y的不一致程度,它是一个非负实值函数,通常使用L(Y, f(x))来表示,损失函数越小,模型的鲁棒性就越好。损失函数是经验风险函数的核心部分,也是结构风险函数重要组成部分。模型的结构风险函数包括了经验风险项和正则项,通常可以表示成如下式子:其中,前面的均值函数表示的是经验风险函数,L代表的是损失函数,后面原创 2017-09-21 22:02:12 · 7519 阅读 · 0 评论 -
生成式和判别式的联系与区别
生成式模型与判别式模型的区别生成式模型(Generative Model)与判别式模型(Discrimitive Model)是分类器常遇到的概念,它们的区别在于:对于输入x,类别标签y:产生式模型估计它们的联合概率分布P(x,y)判别式模型估计条件概率分布P(y|x)生成式模型可以根据贝叶斯公式得到判别式模型,但反过来不行。原创 2017-09-21 20:29:42 · 1595 阅读 · 0 评论 -
机器学习-组合算法总结
组合模型下面简单的介绍下Bootstraping, Bagging, Boosting, AdaBoost, RandomForest 和Gradient boosting这些组合型算法.1.BootstrapingBootstraping: 名字来自成语“pull up by your own bootstraps”,意思就是依靠你自己的资源,称为自助法,它是一种有放回的原创 2017-09-18 14:41:49 · 2039 阅读 · 0 评论 -
决策树算法Matlab实现(train+test)
决策树是一种特别简单的机器学习分类算法。决策树想法来源于人类的决策过程。举个最简单的例子,人类发现下雨的时候,往往会有刮东风,然后天色变暗。对应于决策树模型,预测天气模型中的刮东风和天色变暗就是我们收集的特征,是否下雨就是类别标签。构建的决策树如下图所示 决策树模型构建过程为,在特征集合中无放回的依次递归抽选特征作为决策树的节点——当前节点信息增益或者增益率最大,当前节点的值作为当前节点转载 2017-07-13 15:34:08 · 22737 阅读 · 16 评论 -
利用机器学习方法确定各个特征的权重
在有的时候,我们需要学习出特征在分类器中所占的比重,例如判断某个人是否具有贷款资格,特征收入应该比年龄要更重要一些,那么具体重要多少,我们可以通过训练数据学习出来。第一个办法可以借鉴决策树中特征选择的思想,以贷款为例,特征向量={年龄,收入,有房子,婚否}。通过计算每个特征Ai在训练数据集下的信息增益: gi(D,Ai)=H(D)−H(D|Ai),i=1,2,3,4转载 2017-08-08 17:23:51 · 21084 阅读 · 0 评论 -
机器学习之逻辑回归算法
下面是转载的内容,主要是介绍逻辑回归的理论知识,先总结一下自己看完的心得简单来说线性回归就是直接将特征值和其对应的概率进行相乘得到一个结果,逻辑回归则是这样的结果上加上一个逻辑函数这里选用的就是Sigmoid函数,在坐标尺度很大的情况下类似于阶跃函数在确认特征对应的权重值也就是回归系数的时候最常用的方法是最大似然法,EM参数估计,这个是在一阶导数能够有解的前提下转载 2017-07-27 11:01:43 · 1232 阅读 · 0 评论 -
机器学习----梯度下降、回归
本文由LeftNotEasy所有,发布于http://leftnoteasy.cnblogs.com。如果转载,请注明出处,在未经作者同意下将本文用于商业用途,将追究其法律责任。前言: 这个系列主要想能够用数学去描述机器学习,想要学好机器学习,首先得去理解其中的数学意义,不一定要到能够轻松自如的推导中间的公式,不过至少得认识这些式子吧,不然看一些相关的论文可就看不懂了,这个系列转载 2017-08-24 13:44:10 · 464 阅读 · 0 评论 -
机器学习----偏差、方差、线性回归
本文由LeftNotEasy所有,发布于http://leftnoteasy.cnblogs.com。如果转载,请注明出处,在未经作者同意下将本文用于商业用途,将追究其法律责任。如果有问题,请联系作者 wheeleast@gmail.com前言: 机器学习可不是一个完全的技术性的东西,之前和部门老大在outing的时候一直在聊这个问题,机器学习绝对不是一个一个孤立的算法堆砌起转载 2017-08-24 13:47:35 · 1265 阅读 · 0 评论 -
机器学习----LDA、PCA
本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系wheeleast@gmail.com前言: 第二篇的文章中谈到,和部门老大一宁出去outing的时候,他给了我相当多的机器学习的建议,里面涉及到很多的算法的意义、学习方法等等。一宁上次给我提到,如果学习分类算法,转载 2017-08-24 13:50:20 · 512 阅读 · 0 评论 -
机器学习----SVD
本文由LeftNotEasy发布于http://leftnoteasy.cnblogs.com, 本文可以被全部的转载或者部分使用,但请注明出处,如果有问题,请联系wheeleast@gmail.com。也可以加我的微博: @leftnoteasy前言: 上一次写了关于PCA与LDA的文章,PCA的实现一般有两种,一种是用特征值分解去实现的,一种是用奇异值分解去实现的。在上篇转载 2017-08-24 13:52:13 · 382 阅读 · 0 评论 -
机器学习算法优缺点比较
本文主要回顾下几个常用算法的适应场景及其优缺点!(提示:部分内容摘自网络)。机器学习算法太多了,分类、回归、聚类、推荐、图像识别领域等等,要想找到一个合适算法真的不容易,所以在实际应用中,我们一般都是采用启发式学习方式来实验。通常最开始我们都会选择大家普遍认同的算法,诸如SVM,GBDT,Adaboost,现在深度学习很火热,神经网络也是一个不错的选择。假如你在乎精度(accuracy)的原创 2017-09-18 13:45:19 · 1362 阅读 · 0 评论 -
L1正则化和L2正则化的解释
正则化(Regularization)机器学习中几乎都可以看到损失函数后面会添加一个额外项,常用的额外项一般有两种,一般英文称作ℓ1-norm和ℓ2-norm,中文称作L1正则化和L2正则化,或者L1范数和L2范数。L1正则化和L2正则化可以看做是损失函数的惩罚项。所谓『惩罚』是指对损失函数中的某些参数做一些限制。对于线性回归模型,使用L1正则化的模型建叫做Lasso回归,使用转载 2017-09-18 16:27:28 · 2441 阅读 · 0 评论 -
逻辑回归原理介绍及Matlab实现
一、逻辑回归基本概念1. 什么是逻辑回归逻辑回归就是这样的一个过程:面对一个回归或者分类问题,建立代价函数,然后通过优化方法迭代求解出最优的模型参数,然后测试验证我们这个求解的模型的好坏。Logistic回归虽然名字里带“回归”,但是它实际上是一种分类方法,主要用于两分类问题(即输出只有两种,分别代表两个类别)回归模型中,y是一个定性变量,比如y=0或1,logis原创 2017-09-27 15:17:49 · 33882 阅读 · 18 评论 -
监督学习最常见的四种算法
在机器学习中,无监督学习(Unsupervised learning)就是聚类,事先不知道样本的类别,通过某种办法,把相似的样本放在一起归位一类;而监督型学习(Supervised learning)就是有训练样本,带有属性标签,也可以理解成样本有输入有输出。所有的回归算法和分类算法都属于监督学习。回归(Regression)和分类(Classification)的算法区别在于输出...原创 2017-07-12 10:37:04 · 83130 阅读 · 2 评论