机器学习相关
文章平均质量分 94
ZSYGOOOD
这个作者很懒,什么都没留下…
展开
-
笔记(总结)-从马尔可夫模型到条件随机场-3
本篇紧接上篇笔记(总结)-从马尔可夫模型到条件随机场-2,讲述条件随机场(Conditional Random Field)。条件随机场定义先给出几个相关概念的定义。 随机场:可看成是一组随机变量的集合(这组随机变量对应同一个样本空间)。这些随机变量之间可能有依赖关系,当给每一个位置中随机变量按照某种分布随机赋予相空间(相空间是一个用以表示出一系统所有可能状态的空间,...原创 2018-07-14 16:28:30 · 626 阅读 · 0 评论 -
笔记-NLP相关调研
由于实验室目前研究方向偏重于NLP和知识图谱,在学习了一段时间机器学习相关内容后,也决定暂时侧重于NLP相关内容的研究。对NLP方面的相关调研工作做一个总结,顺序不分先后。这部分内容可能和笔记-深度学习场景调研有交集,在此就不重复写已有的东西。依存句法分析(Dependency Parsing,DP)、语义依存分析(Samantic Dependency Parsing,SDP)、语义角色标注...原创 2018-06-29 11:41:17 · 412 阅读 · 1 评论 -
笔记-深度学习场景调研
深度学习的大潮如火如荼,但深度学习并非所有问题的最好答案。那么哪些方向已经较为成熟应用了深度学习并取得了较好效果呢,通过了解深度学习如何解决不同的问题,从而更深入理解深度学习算法的特点与适用性,做了相关调研,附上链接如下:深度学习在图像领域的应用,图像分类、图像识别、语义分割、视频检测…这是深度学习最初放光的领域,也是当前研究的最热点,不同类型的网络层出不穷,很少的一部分沉淀下来成为了经典。理...原创 2018-06-29 10:56:55 · 606 阅读 · 0 评论 -
笔记(总结)-自编码器(Autoencoders)
AE自编码器(下简记为AE)为一类特殊的神经网络,该网络输入维度等于输出维度,通过网络隐层的复杂神经元结构,尝试学习数据的内在特征(pattern),从而达到特征提取、数据降维、生成新数据等多种目的。简单的AE和MLP类似,except输入维度等于输出维度。此时输入数据的标签即为自身,模型的损失函数cost=cost(output, input),用来评估输出是否很好地重新构建了输入。...原创 2017-12-19 23:29:56 · 1998 阅读 · 0 评论 -
机器学习面试题-索引
做面试题是一个很好的回顾所学知识的方式。通常,面试官都有着非常扎实的基础和实践经验,提出的问题能更切中算法、模型的本质。通过面试题来检验自己的学习效果,是否对一个问题理解透彻,也能为将来可能的面试提前做一些准备。本文对知乎专栏BAT机器学习面试1000题下的内容进行了总结索引,方便之后的查阅使用。根据完成情况持续更新。以下给出专栏中每个链接下的问题,并打上标签。BAT机器学习面试1...原创 2018-02-27 11:00:55 · 638 阅读 · 0 评论 -
笔记(总结)-PCA(主成分分析)
主成分分析是一种特征抽取手段,通过将样本从原始空间映射到低维空间实现特征数量的减少,而低维空间中某一维度实际上是原始空间的一种“杂糅”表示。在之前的博客中提到过参考链接,由于PCA涉及的数学手段包括矩阵、特征值和特征向量,参考笔记-矩阵与特征值这一篇,对其有一定理解后再来看PCA算法就比较清晰了。首先给出PCA算法:对所有样本进行中心化:xi←xi−1m∑mi=1xixi←xi−1m...原创 2018-02-07 10:50:09 · 655 阅读 · 0 评论 -
笔记(总结)-利用GMM和EM算法解决聚类问题
对Gaussian Mixture Model和Expectation Maximization算法一直以来了解不多,一来直接使用这两个方法的场景少,二来初看这两个算法确实有些一头雾水,不太理解为什么要这么做。上学期的课又涉及到了这部分,还是咬牙把这块给啃了下来,结合“周志华西瓜书”,在聚类场景下对这两部分做下总结。高斯混合(Mixture of Gaussian)nnn维随机变量xx...原创 2018-02-09 17:10:01 · 1656 阅读 · 0 评论 -
笔记(总结)-SVM(支持向量机)的理解-3
上篇讲述的Soft Margin SVM是为了解决线性不可分的问题,它解决问题的逻辑是通过允许一部分样本分得不那么准确(进入“楚河汉界”)甚至错分,使得在绝大多数样本能够正确地线性可分。本篇引入核函数(kernel),从另一个思维角度来解决线性不可分问题。问题引入当样本在某个特征空间不可分时,可以通过将样本映射到另一个特征空间,在该空间中样本分布满足线性可分条件,再使用SVM进行学习分...原创 2018-02-03 10:00:56 · 390 阅读 · 0 评论 -
笔记(总结)-SVM(支持向量机)的理解-2
上一篇我们讨论了SVM的建模由来与推导过程,最终得出了SVM的对偶问题和解的形式,不过这都基于一个重要前提,即样本集是线性可分的。为了解决线性不可分情况下的分类问题,我们引入soft margin SVM,即软间隔SVM。为了处理上述情况,我们不再要求样本集全部位于“楚河汉界”外,放宽限制,允许数据点进入“楚河汉界”甚至错分,引入松弛变量ξξ\xi,如下所示: 此时对应的约束条件为:...原创 2018-02-02 14:29:23 · 309 阅读 · 0 评论 -
笔记(总结)-SVM(支持向量机)的理解-4
前三篇主要是介绍SVM的原理。最初SVM的原问题是凸二次优化问题,有现成的算法可以求解,费尽周折转换到对偶问题,一是在对偶问题形势下可以使用核函数,二是对偶问题我们可以高效求解。本篇主要介绍如何求解SVM。SMO:Sequential Minimal OptimizationCoordinate Ascent(坐标上升法)回到我们的对偶问题: maxW(α)=∑iαi−12∑...原创 2018-02-03 13:35:00 · 381 阅读 · 0 评论 -
笔记(总结)-SVM(支持向量机)的理解-1
SVM即支持向量机作为神经网络复兴前的最强大模型,建模和推导有着严密的数学推导作为基础,在训练完成后计算速度也较快,得到了广泛的应用。本文先阐述SVM的基本问题和推导过程,再引入软间隔的SVM,最后引入核函数和求解方法。问题引入考虑简单的二分类问题,我们想找一个“最好”的超平面来分隔两类样本。可以看到,在样本点线性可分的情况下,能够找到多个超平面。但其中黑色超平面直观上来看是最合理的,...原创 2018-02-02 13:20:25 · 521 阅读 · 0 评论 -
笔记-CRF
CRF在序列标注任务上有着广泛的应用,由于使用了全局的信息,能取得比HMM更好的效果。学习参考链接如下:如何用简单易懂的例子解释条件随机场(CRF)模型?它和HMM有什么区别?基于CRF序列标注的中文依存句法分析器的Java实现简明条件随机场CRF介绍 | 附带纯Keras实现DL4NLP —— 序列标注:BiLSTM-CRF模型做基于字的中文命名实体识别sequence-la...原创 2018-06-29 12:47:50 · 271 阅读 · 0 评论 -
笔记-AutoML
深度学习发展至今,虽然取得了很多成果,但其使用门槛依旧很高。对神经网络进行调参从而达到解决问题的效果,需要使用者具有一定的机器学习背景和调参经验,现实情况往往是(不论工业界还是学术界)使用学术界经过沉淀后的经典模型与典型参数设置,并在之上做细微的调整。这极大地限制了人们的思维,网络结构仍然是基于人的经验。既然计算机算法到目前为止已经具有了相当的智能水平,能否让算法来设计神经网络架构并评判优劣呢?G...原创 2018-06-29 13:32:53 · 742 阅读 · 0 评论 -
笔记-变分自编码器(Variational Auto Encoder,VAE)
从大数据时代——>人工智能,生活中各场景下的大数据问题都能用大数据+人工智能算法的配方进行求解。诸如分类、回归等有监督学习问题都得到了很好的解决,但监督学习需要大量标注数据,这一限制使得很多场景无法依靠人工智能的红利。因此,无监督学习正慢慢成为研究热点。VAE便是其中的典型代表。VAE的设计结构具有严谨的数学理论指导,粗略看了一遍,没有太理解,在此mark住,以后有需要再回来学习。链接如下:...原创 2018-06-29 13:42:39 · 652 阅读 · 0 评论 -
笔记(总结)-注意力机制(Attention)简述
本篇主要针对注意力(Attention)机制进行简要描述。Attention是为了解决Sequence-to-Sequence中的一些问题而提出的,本身的逻辑十分简洁。Attention的产生过程反映了解决问题的一种最直接的思路,正如Resnet中提出“残差”的概念一样,简单直接的就能解决问题,而且思路没有绕任何弯子。这在科研工作中是十分难得的。下面结合机器翻译问题来回顾下这整个过程。Se...原创 2018-07-20 09:33:52 · 3707 阅读 · 1 评论 -
笔记(总结)-从马尔可夫模型到条件随机场-2
本篇紧接上篇笔记(总结)-从马尔可夫模型到条件随机场-1,讲述最大熵模型(Maximum Entropy Model)。最大熵模型先来简单介绍下熵的概念,看看为什么要“最大熵”建模。 熵用来度量随机变量的不确定性。即熵越大,不确定性越大。举个例子,给定一个骰子,问抛出去后最终每个面朝上的概率是多少?一般人都会回答“等概率”。为什么这么回答?因为对这个“一无所知的“骰子,假...原创 2018-07-13 21:13:30 · 449 阅读 · 0 评论 -
笔记(总结)-序列标注问题与求解
在讲述了大量的概率图模型后,本篇介绍下它发挥作用的主要场景——序列标注(Sequence Labaling)。序列包括时间序列以及general sequence,但两者无异。连续的序列在分析时也会先离散化处理。常见的序列有如:时序数据、本文句子、语音数据、等等。常见的序列问题有:拟合、预测未来节点(走势分析,如股票预测、销量预测等)判定序列所属类别,即分类问题(如语音识别,判断声音序列所...原创 2018-07-18 10:52:30 · 4817 阅读 · 0 评论 -
笔记(总结)-从马尔可夫模型到条件随机场-1
本篇针对概率图模型做一个总结。顺序依次为: 马尔可夫模型(Markov Model,下称MM)⟹⟹\Longrightarrow 隐马尔可夫模型(Hidden Markov Model,下称HMM) 最大熵模型(Maximum Entropy Model,下称MEM)⟹⟹\Longrightarrow 最大熵隐马模型(Maximum Entropy Markov Model,下称MEMM)...原创 2018-07-12 10:36:23 · 1229 阅读 · 0 评论 -
笔记(总结)-循环神经网络
起源全连接神经网络能够很好地拟合复杂的样本特征,卷积神经网络能很好地建模局部与全局特征的关系。但它们都只能处理定长的输入、输出,而自然语言的处理对象一般是变长的语句,句子中各元素出现的顺序先后暗含着时序关系,循环神经网络(Recurrent Neural Network,下称RNN)能够较好地处理这种关系。基本结构RNN的基本思想是:将处理对象在时序上分解为具有相同结构的单元,单元...原创 2018-07-11 22:25:49 · 628 阅读 · 0 评论 -
笔记(总结)-卷积神经网络
神经网络是一棵根深叶茂的大树,有过许多果实,可是都略显青涩,无法摘食。直到2010年后,这棵大树才真正可谓硕果累累,其中最璀璨甘甜的就是卷积神经网络(Convolutional Neural Network,下称CNN)。在这之后,神经网络再次成为科研界的热点,在这个数据和算力初具规模的时代,神经网络终于展现出了应用的价值。闲话到此,只是想说明CNN对于神经网络的意义。本篇将主要讨论CNN的模型原...原创 2018-07-11 09:47:21 · 447 阅读 · 0 评论 -
笔记(总结)-神经语言模型和词向量
之前笔记(总结)-统计语言模型主要介绍了统计语言模型。可以看到,最终对句子的建模为(以二元文法为例): P(S)=p(w1)p(w2|w1)...p(wn|wn−1)P(S)=p(w1)p(w2|w1)...p(wn|wn−1)P(S)=p(w_1)p(w_2|w_1)...p(w_n|w_{n-1})核心问题在于如何计算参数p(wi|wi−1)p(wi|wi−1)p(w_i|w_{i-1}...原创 2018-07-09 16:15:36 · 2848 阅读 · 0 评论 -
笔记(总结)-统计语言模型
在自然语言处理的相关问题中,如何表示句子是建模分析的关键。与传统的图像、音频等天然可转化为计算机编码的元素不同,自然语言需要经过复杂编码才能被计算机识别。并且,这种编码是机械式的简单排列,设计初衷是为了解决自然语言的存储问题,编码本身不带有任何语言层面的信息。因此,直接使用自然语言的编码对文字进行转换而后建模是不可靠的,过程中丢失了太多的信息。语言模型正是解决了这样的问题。语言模型有很多种...原创 2018-07-09 11:34:35 · 632 阅读 · 0 评论 -
笔记-图嵌入(Graph Embedding)
图嵌入(Graph Embedding,也叫Network Embedding)是一种将图数据(通常为高维稠密的矩阵)映射为低微稠密向量的过程,能够很好地解决图数据难以高效输入机器学习算法的问题。知识图谱属于异构图数据,即节点与边不只一种类型。了解图嵌入能帮助理解图数据的处理过程,拓展思考问题的思路(传统ML基本都是table类型的数据),也能对未来可能的知识图谱研究做一些铺垫准备。学习参考链接如...原创 2018-06-29 14:26:37 · 13875 阅读 · 0 评论 -
笔记-文本分类
文本分类是NLP领域最基本的应用场景,现实生活中很多问题都能划归为文本分类问题,诸如垃圾邮件分类、有害评论检测、新闻主题分类等。学术界里文本分类也是研究热点,从最初的模式识别方法到机器学习方法,再到近年来的深度学习方法,各类新型的算法都会尝试在文本分类上验证效果。而文本分类问题的普遍性也使得其成为了人工智能落地的一个重要案例。学习文本分类相关问题的解决方案,能在屏蔽NLP底层基础技术(诸如分词、词...原创 2018-06-29 14:14:21 · 400 阅读 · 0 评论 -
kaggle-Corporación Favorita Grocery Sales Forecasting
该项比赛1月15日就已经结赛了,但由于之后进入期末,备考花费了大量的时间,没来得及整理相关内容。现在终于有时间好好回顾比赛,并对这次比赛的过程进行记录。Corporación Favorita Grocery Sales Forecasting本次比赛是预测商品销量,给出的训练数据为<单位销量,日期,商店ID,商品ID,推销活动标签>,其中单位销量是待预测值,基本上属于回归...原创 2018-02-08 11:17:31 · 2651 阅读 · 4 评论 -
笔记-AlphaGo解析
最近在知乎上看到一篇文章,从minimax入手讲AlphaGo。讲解通俗易懂,正好最近算法课BDB也讲了些minimax,学习之。链接如下:浅述:从 Minimax 到 AlphaZero,完全信息博弈之路(1)做的笔记如下:P1-left part P1-right part P2原创 2018-01-13 14:33:58 · 1110 阅读 · 0 评论 -
笔记-Python库-matplotlib, numpy, scipy, pandas
用Python作数据分析时,常用的基础库有matplotlib, numpy, scipy, pandas,功能强大且繁杂。记下来所有的用法是不实际的,需要做的是记住每个库大概有哪些功能,在具体场景中能快速找到相关文档并使用。知乎上有个相关问题,下面高赞答案给出了很多学习资源和学习思路,可供参考和查阅:如何系统地学习Python 中 matplotlib, numpy, scipy, pand...原创 2018-02-11 16:54:09 · 406 阅读 · 0 评论 -
笔记-Tukey Method发现outliers(离群点)
在大规模数据集中,由于噪声、扰动、采样过程误差等等原因,会出现一些数据点偏移整个数据集。假想整个数据集由某未知分布生成,则这些点可以看做该未知分布下的噪声采样。在可视化情况下,这些点显著偏移了数据集的点群,故称为离群点。而众多机器学习算法对数据分布都存在着一定的假设或期待数据集较为“规整”。因此在数据挖掘中,常需要在预处理中去除该类点,让算法能更好地发现“正常”数据间存在的关系。Tukey Meth原创 2017-11-30 14:31:58 · 3326 阅读 · 0 评论 -
笔记-GridSearchCV
机器学习的“炼丹”(调参)过程是一个十分痛苦的过程。一方面很多数据特性不能人为解释,另一方面我们对于调用的算法库并不十分了解。导致调参过程具有一定的玄学性。当缺乏理论指导时,对参数的任意设置可能带来意想不到的效果,而这种设置又是拍脑袋拍出来的,所以需要一种方法,来搭配不同的参数来测试模型。sklearn中的GrdiSearchCV就具有这样的作用,给定参数列表,它会自由组合众多参数,对模型进行测试,原创 2017-11-30 14:50:50 · 454 阅读 · 0 评论 -
笔记-Bagging与随机森林
集成学习中有两类方法,bagging和boosting。bagging使用众多弱学习器进行并行拟合,不同的学习器之间取长补短,能达到甚至超越强学习器的效果。bagging的有效实现是随机森林算法,也是在数据挖掘比赛中常使用的基础方法。参考链接如下:Bagging与随机森林算法原理小结 - 刘建平Pinard - 博客园原创 2017-12-01 00:00:28 · 361 阅读 · 0 评论 -
笔记-缺失值处理
缺失值(missing value)是机器学习建模过程中最让人头疼的问题之一。重要属性的缺失更是会让模型的预测效果变差,容易让模型过拟合。解决方法主要有三类:删除含缺失值的数据行(instance)、删除含缺失值的数据列(feature)、填充缺失值。在以下链接中都有涉及:机器学习中如何处理缺失数据? - 知乎面对数据缺失,如何选择合适的机器学习模型?原创 2017-12-04 13:46:09 · 486 阅读 · 0 评论 -
笔记-GBDT&Xgboost
数据挖掘模型中,树模型解释性强、拟合效果好、调参更有依据…在比赛中多次使用。其中从最基础的决策树—>CART—>复杂的GBDT—>高效实现的xgboost,原理和工程实现都大不相同。列出学习过程中的参考链接:【十大经典数据挖掘算法】CART - Treant - 博客园简单易学的机器学习算法——梯度提升决策树GBDT - CSDN博客GBDT(MART) 迭代决策树入门教程 | 简介 - CSDN博原创 2017-12-04 14:32:44 · 423 阅读 · 0 评论 -
笔记-cross validation(交叉验证)
机器学习任务中,最终目标是最小化模型在测试集(test dataset)上的错误(error)。在只有训练数据情况下,我们想模拟“训练”—>“测试”这一过程,即利用一部分数据集进行训练,再在另一部分数据集上进行假想测试。由于测试的数据集是属于训练数据的一部分,有label来验证测试结果,故能给建模调参提供依据,这部分带有label的测试数据叫做验证集(validation dataset)。每次按不原创 2017-12-04 14:51:54 · 330 阅读 · 0 评论 -
kaggle-House Price Prediction
房价预测问题,kaggle回归类入门题。做该比赛时,参考链接如下:数据分析: Comprehensive data exploration with Python | Kaggle正则化线性模型: Regularized Linear Models | Kaggle原创 2017-11-30 13:43:44 · 1567 阅读 · 0 评论 -
kaggle-Digit Recognition(手写数字识别)
DR(手写数字识别)问题是多分类问题的入门题目,可以采用多种机器学习方法进行求解。同时由于是图像类问题,可以使用CNN(卷积神经网络)求解。列出做该比赛时的参考链接:Digit Recognition【机器学习算法实现】logistic回归__基于Python和Numpy函数库 - wepon的专栏 - 博客频道 - CSDN.NETKaggle入门——使用scikit-learn解决DigitRe原创 2017-11-30 13:40:42 · 639 阅读 · 0 评论 -
kaggle-Titanic
kaggle入门题——Titanic。给出写代码时参考的notebook:传送门原创 2017-11-30 13:34:06 · 353 阅读 · 0 评论 -
笔记-Kaggle竞赛入门
鉴于之前看过两遍斯坦福Ng的机器学习课程,最近想通过kaggle来入手数据挖掘,通过实际问题加深对于算法、问题解决过程的理解。在网上找了一些对kaggle比赛过程的介绍与参赛心得,参考链接如下:kaggle home pagekaggle入门教程-传送门1kaggle入门教程-传送门2原创 2017-06-16 08:57:05 · 443 阅读 · 0 评论 -
笔记-梯度下降
Gradient Descent(梯度下降)作为机器学习中求解目标(损失)函数最值的方法,迭代求解速度快,逻辑清晰。学习中参考链接如下:深入梯度下降(Gradient Descent)算法 - ooon - 博客园原创 2017-11-30 14:21:47 · 273 阅读 · 0 评论 -
笔记-SVM
SVM(支持向量机)在深度学习算法崛起前是机器学习中最强大的算法,可以应用在分类与回归问题上,具有诸多优势。学习时建议先阅读周志华西瓜书相关部分,而后参考一些博客。若想要有更深入的理解,可以观看斯坦福大学机器学习cs229中SVM部分。参考链接如下:该博主关于SVM算法的系列文章讲解十分详细: 机器学习算法与Python实践之(二)支持向量机(SVM)初级原创 2017-11-30 14:16:26 · 270 阅读 · 0 评论 -
笔记-SVD&PCA
SVD(奇异值分解)能够提取出最能代表一个矩阵的“特征方向”,在机器学习中最为重要的应用是PCA(主成分分析)。周志华西瓜书中讲得较为详细,结合以下参考链接可以有一个较好的理解。在同类型博客中笔记-矩阵与特征值给出的知乎问题链接下,某回答很好地解释了矩阵分解在PCA中的应用,十分具有参考性。机器学习中的数学(5)-强大的矩阵奇异值分解(SVD)及其应用 - LeftNotEasy - 博客园奇异值分原创 2017-11-30 14:05:16 · 270 阅读 · 0 评论