![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习
文章平均质量分 73
越来越胖的GuanRunwei
前WEB开发码农,.NET发烧友,前NLP菜鸡,利物浦大学在读博士
展开
-
NER简单综述
目录什么是NERNER相关综述类论文NER数据集、评测方法、工具库NER相关的数据集NER评测方法完全匹配松弛匹配NER工具库NER主要方法基于规则的方法无监督学习方法基于特征的监督学习方法深度学习方法BiLSTM+CRFIDCNN+CRFBert+BiLSTM+CRFFLATNER任务的demo代码NER的应用NER未来的研究方向References什么是NERNER全称是命名实体识别(Named Enti原创 2022-04-20 10:08:13 · 4369 阅读 · 0 评论 -
大道至简 —— 条件随机场与逻辑回归、隐马尔科夫模型的比较
前言大道至简 —— 白话条件随机场Conditional Random Fields上一节我们讲到,为了建一个条件随机场,我们首先要定义一个特征函数集,每个特征函数都以整个句子,当前位置,位置和的标签为输入。然后为每一个特征函数赋予一个权重,然后针对每一个标注序列,对所有的特征函数加权求和,必要的话,可以把求和的值转化为一个概率值。那么,我们同样会发现,条件随机场在形式和作用上好像和逻辑回归和HMM有点相似。条件随机场和逻辑回归观察公式:上式含义为,对给定序列,标注序列在所有标注序.原创 2022-04-15 11:12:46 · 3102 阅读 · 0 评论 -
大道至简 —— 白话条件随机场Conditional Random Fields
前言李航大佬的《统计学习方法》相信很多人都拜读过,在条件随机场那章有非常多的理论证明和公式推导,非常之抽象,因此理解起来也比较困难。那么今天,我将会用一种大白话的方式将条件随机场具象化,让这玩意儿没有任何学习壁垒。一个例子假如你有小明同学一天内不同时段的照片,从小明起床到睡觉各个时间段都有。现在我们的任务是对这些照片进行分类,比如照片1是吃饭,那就给照片1打上吃饭的标签;照片2是睡觉,那就给照片2打上睡觉的标签;照片3是学习,那就给照片3打上学习的标签。但是,既然要分类,人工分类的效率毫无疑问是原创 2022-04-15 10:34:30 · 583 阅读 · 0 评论 -
EM算法小结
最近因科研工作需要,把EM重新过了一遍。特点迭代算法 每次迭代分为E步(求期望),M步(求极大) 用于含有隐变量的概率模型参数的极大似然估计或极大后验估计注:如果模型中仅有观测变量,那么仅需极大似然估计或贝叶斯估计即可。要点含有隐变量的概率模型的数据表示为,在这里,是观测变量,是隐变量,是模型参数。EM算法通过迭代求解观测数据的对数似然函数的极大化,实现极大似然估计。每次迭代包括两步:E步,求期望,即求关于的期望:我们称之为Q函数,这里是参数的第次的估计值;M步,求极大,即极大原创 2022-02-03 15:13:00 · 970 阅读 · 0 评论 -
简述主动学习Active Learning
目录1. 简介2. 模型分类3. 基本查询策略4. 经典方法5. 应用场景6. 实际应用可能存在的问题1. 简介主动学习是一种通过主动选择最有价值的样本进行标注的机器学习或人工智能方法。其目的是使用尽可能少的、高质量的样本标注使模型达到尽可能好的性能。也就是说,主动学习方法能够提高样本及标注的增益,在有限标注预算的前提下,最大化模型的性能,是一种从样本的角度,提高数据效率的方案,因而被应用在标注成本高、标注难度大等任务中,例如医疗图像、无人驾驶、异常检测、基于互联网大数据转载 2022-02-02 16:48:20 · 706 阅读 · 0 评论 -
浅析自回归模型
自回归模型用于预测时间序列中将来的值。使用该模型时,通常需要假定一个随机变量的值依赖于它前面的值。另外,该模型还假定前后值之间的关系是线性的,我们要做的就是拟合数据,以便给数据找到适当的参数。自回归模型的数学公式如下:上面公式中,c是常量,最后一项是随机分量,又名白噪声。这给我们提出了一个很常见的线性回归问题,但从实用性考虑,保持模型的简单性十分重要,因此我们只保留必要的滞后分量。按机器学习的专业术语来说,这些叫做特征。处理回归问题时,目前首先会选择使用python的scikit-learn原创 2021-10-04 10:28:08 · 2145 阅读 · 0 评论 -
傻子都能看懂的——详解AdaBoost原理
之前纠结是否要离开CSDN,最近还是决定留下来继续。关于Boost集成学习中有两个重要概念,分别为Bagging和Boost。其中Boost也被称为增强学习或提升法,是一种重要的集成学习方法,它能够将预测精度仅仅比随机猜测略高的弱学习器增强为预测精度很高的强学习器。这是在直接构造强学习器较为困难的情况下,为学习算法提供了一种有效的新思路和新方法。其中较为成功的是上个世纪90年代Yoav Freund和Robert Schapire提出的AdaBoost算法。Boost原理图可以将上图过程总结原创 2021-09-18 16:33:29 · 36797 阅读 · 26 评论 -
浅析集成学习(Ensemble Learning)
目录0 导语1 集成学习1.1 Bagging1.2 Boosting1.3 Stacking2. 代表算法2.1Random Forest2.1.1 思想2.1.2 优缺点2.2 Adaboost2.2.1 思想0 导语当做重要决定时,大家往往会考虑吸收多个专家而非仅仅一个人的意见。同样地,这种思想也可用于机器学习。机器学习领域内有许多回归或分类模型算法,我们自然是可以将这些算法组合起来,这种组合结果就被称为集成方法(ensemble me...原创 2021-05-08 19:52:13 · 719 阅读 · 0 评论 -
浅析生成对抗网络(Generative Adversarial Networks)
导语除却变分自编码器VAE(Variational Auto-Encoder), 生成对抗网络GAN(Generative Adversarial Networks)同样也是一种生成模型(Generative Model)。VAE中比较恶心的是隐变量z的求解,我们通常使用以下公式生成隐变量z的概率分布,通常假设p(z)服从标准正态分布(参数和可调整)。VAE的问题就在于我们无法对其进行直接优化,而是根据可能性推导和优化下限(相关博文后面会更新,详细推导VAE的整个过程)。在VAE中,..原创 2021-05-02 17:51:56 · 2254 阅读 · 3 评论 -
详解马尔科夫链
引言先不上定义,先以一个例子开头。例子最简单的一个例子:已知父母具有某项特长天赋的条件下,孩子也拥有的概率,与,已知祖宗十八代和父母的信息的条件下,孩子拥有这项天赋的概率,是一样的。 若要用人生的例子来讲,已知你大学学习情况下 和已知你在幼儿园小学初中高中大学的所有学习情况下,考研能不能考上的概率是一样的。再来个例子:有一只青蛙呆在井底(q=1),一层一层的向上跳,到达第i层之后,他能跳上去的概率和跳不上去(直接回到底层)的概率:也就是说,每一次这只青蛙站在比如第..原创 2021-03-29 16:54:35 · 2703 阅读 · 0 评论 -
简述迁移学习(Transfer Learning)
迁移学习定义《深度学习》第526页对于迁移学习的定义:迁移学习和域适应指的是在一种环境中学到的知识被用在另一个领域中来提高它的泛化性能。原创 2021-03-21 01:33:38 · 10464 阅读 · 0 评论 -
激活函数归纳
目录写在前面:1.Sigmoid2. tanh3.ReLU4. Leaky ReLU, PReLU(Parametric Relu), RReLU(Random ReLU)Sigmoid tanh ReLU LeakyReLU, PReLU(Parametric Relu), RReLU写在前面:神经网络为什么需要激活函数:首先数据的分布绝大多数是非线性的,而一般神经网络的计算是线性的,引入激活函数,是在神经网络中引入非线性,强化网络的学习能力。所以激活函数的最大特点就是原创 2021-03-17 02:32:10 · 472 阅读 · 0 评论 -
详解深度学习中的Dropout
1. Dropout简介1.1 Dropout出现的原因在机器学习的模型中,如果模型的参数太多,而训练样本又太少,训练出来的模型很容易产生过拟合的现象。在训练神经网络的时候经常会遇到过拟合的问题,过拟合具体表现在:模型在训练数据上损失函数较小,预测准确率较高;但是在测试数据上损失函数比较大,预测准确率较低。过拟合是很多机器学习的通病。如果模型过拟合,那么得到的模型几乎不能用。为了解决过拟合问题,一般会采用模型集成的方法,即训练多个模型进行组合。此时,训练模型费时就成为一个很大的问题,不仅训练转载 2021-03-14 19:05:34 · 972 阅读 · 0 评论 -
优化法——动量法
动量梯度下降(Gradient Descent With Momentum),简称为动量方法(Momentum),运行速度几乎总是快于标准的梯度下降算法,并且能够解决随机梯度下降所遇到的山谷震荡以及鞍部停滞问题,这部分内容请阅读上一篇博客梯度下降算法。根据梯度下降算法的参数更新公式:参数的更新仅仅取决于当前位置的梯度以及步长,试想一下这样一个情境:我们将某一个物品往山谷里丢,在梯度下降算法的规则下,该物品仅仅收到当前触碰在它身上的力,而忽略其他的力,例如重力、空气阻力等等。我们可以把它想象成一张原创 2021-03-13 18:33:22 · 1122 阅读 · 0 评论 -
一文看懂卷积神经网络-CNN(基本原理+独特价值+实际应用)
卷积神经网络 — CNN 最擅长的就是图片的处理。它受到人类视觉神经系统的启发。CNN 有2大特点:能够有效的将大数据量的图片降维成小数据量能够有效的保留图片特征,符合图片处理的原则目前 CNN 已经得到了广泛的应用,比如:人脸识别、自动驾驶、美图秀秀、安防等很多领域CNN 解决了什么问题?在 CNN 出现之前,图像对于人工智能来说是一个难题,有2个原因:图像需要处理的数据量太大,导致成本很高,效率很低 图像在数字化的过程中很难保留原有的特征,导致图像处理的准确率不高下面就详转载 2021-02-28 05:07:02 · 2996 阅读 · 0 评论 -
小议前馈神经网络(Feedforward Neural Network )
目录定义01 多层感知机(MLP)介绍02 深度神经网络的激活函数Sigmoid激活函数Tanh激活函数LReLU激活函数03 深度神经网络的损失函数均方误差损失函数交叉熵损失函数04 多层感知机的反向传播算法05 神经网络的训练技巧Data Augmentation参数初始化学习率Dropout原理Batch Normalization原理Regularizations(正则化)Model Ensemble(模型集成)06信息传.原创 2021-02-28 04:30:11 · 2808 阅读 · 0 评论 -
知识图谱
https://zhuanlan.zhihu.com/p/71128505https://www.cnblogs.com/huangyc/p/10043749.html转载 2021-02-08 04:33:34 · 144 阅读 · 0 评论 -
傻子博主都能看懂的——反向传播
内容转载自大佬博客:https://blog.csdn.net/weixin_38347387/article/details/82936585最近在看深度学习的东西,一开始看的吴恩达的UFLDL教程,有中文版就直接看了,后来发现有些地方总是不是很明确,又去看英文版,然后又找了些资料看,才发现,中文版的译者在翻译的时候会对省略的公式推导过程进行补充,但是补充的又是错的,难怪觉得有问题。反向传播法其实是神经网络的基础了,但是很多人在学的时候总是会遇到一些问题,或者看到大篇的公式觉得好像很难就退缩了,其实不转载 2021-02-05 03:15:01 · 276 阅读 · 0 评论 -
判别式模型和生成式模型
https://zhuanlan.zhihu.com/p/74586507原创 2021-02-04 23:40:15 · 189 阅读 · 0 评论 -
详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解
https://blog.csdn.net/u011508640/article/details/72815981转载 2021-01-13 05:01:51 · 368 阅读 · 0 评论 -
小议费雪线性判别(Fisher Linear Discriminant Analysis)
fisher 判决方式是监督学习,在新样本加入之前,已经有了原样本。原样本是训练集,训练的目的是要分类,也就是要找到分类线。一刀砍成两半!当样本集确定的时候,分类的关键就在于如何砍下这一刀!若以黑色的来划分,很明显不合理,以灰色的来划分,才是看上去合理的1.先确定砍的方向关键在于如何找到投影的向量u,与u的长度无关。只看方向找到样本点的中心均值m1,m2,以及在向量u上的投影的m1~,m2~。因为u的方向与样本点都有关,所以需要考虑一个含有所有样...转载 2020-11-19 03:02:53 · 1095 阅读 · 1 评论 -
PCA原理
https://blog.csdn.net/luoluonuoyasuolong/article/details/90711318转载 2020-11-18 03:20:14 · 189 阅读 · 0 评论 -
数据预处理之sklearn-preprocessing
预处理数1. 标准化:去均值,方差规模化Standardization标准化:将特征数据的分布调整成标准正太分布,也叫高斯分布,也就是使得数据的均值维0,方差为1.标准化的原因在于如果有些特征的方差过大,则会主导目标函数从而使参数估计器无法正确地去学习其他特征。标准化的过程为两步:去均值的中心化(均值变为0);方差的规模化(方差变为1)。在sklearn.preprocessing中提供了一个scale的方法,可以实现以上功能。from sklearn import preproc转载 2020-11-09 00:11:15 · 695 阅读 · 0 评论 -
详解sklearn中的r2_score
1.为什么RMSE不便于做过拟合的评判标准?在机器学习中,在讨论模型的性能时,我们常常会讲,一个好的模型,不仅要在训练集合上有好的表现,在新样本(或测试集)上也有上佳的表现才行。也就是说,我们要追求模型性能,也要兼顾模型的泛化指标,尽量避免让模型陷入过拟合陷阱。判断过拟合的一个简单方法就是,在同一种性能标准下,训练集合的误差显著小于在测试集合上的误差。自然,我们可以利用均方根误差(Root Mean Squared Error,简称RMSE)来衡量模型的好坏,但用它来衡量模型对数据的拟合程度转载 2020-11-08 23:05:32 · 40826 阅读 · 8 评论 -
ECS_FML——线性回归w矩阵
线性回归(linear regression),就是根据训练数据找到一组参数w,利用y= w*s 对新数据进行预测。通常使用误差函数为平方误差:使该误差最小化,求导令其导数为零求得系数w,利用矩阵可以表示为:该过程成为普通最小二乘法(ordinary least squares,OLS)但由于OLS只能找到数据最佳拟合直线,所以应用有限。引入局部加权线性回归(Locally Weighted Linear Regression, LWLR)给每个点赋予权重,误差函数为:,...转载 2020-10-28 05:05:55 · 988 阅读 · 0 评论 -
ECS_FML——正则化
目录1 过拟合的问题2 代价函数3 正则化线性回归4 正则化的逻辑回归模型1 过拟合的问题 到现在为止,我们已经学习了几种不同的学习算法,包括线性回归和逻辑回归,它们能够有效地解决许多问题,但是当将它们应用到某些特定的机器学习应用时,会遇到过拟合(over-fitting)的问题,可能会导致它们效果很差。 在这段视频中,我将为你解释什么是过度拟合问题,并且在此之后接下来的几个视频中,我们将谈论一种称为正则化(regularization)的技术,它可以改善或者减少过度拟.转载 2020-10-28 01:08:54 · 329 阅读 · 0 评论 -
机器学习中的8种常见疏忽以及对应的认知偏差
目录1 采样偏差2 引入无关的特征3 数据泄漏4 错误的补全缺少的数据项5 忽略对数据进行正则化6 忽略离群点7 忽略特征间的多重共线性8 选择了错误的评价指标随着机器学习工具的“傻瓜化”,越来越多的人在标准数据集上训练出了效果还不错的分类器,但这并不意味着到了真实的应用场景下,可以从头到尾做完一个项目,真实的环境中会出现数据太小,数据的特征不明晰,以及大量的缺失值等很多在标准数据集下预先不到的问题。针对具体的项目,需要了解行业的背景知识,和本领域的专家当面聊,从而有针对转载 2020-10-26 17:32:14 · 739 阅读 · 1 评论 -
傻子都能看懂的——梯度下降与损失函数
目录前言问题一:梯度是个啥?问题二:梯度下降有啥用?那么什么是损失函数(误差函数)?问题三:梯度为啥要下降?综上所述前言刚接触机器学习的同学避不开的一个专业名词就是梯度下降。顿时心里万马奔腾,其实很简单的,你先得理解概念才能看到那些公式不怂。(当然本文全程无公式,书写用时2小时,阅读估计10分钟)本文主要解决三个问题:1. 梯度到底是啥?2. 梯度下降有啥用?3. 为啥要下降?问题一:梯度是个啥?其实“梯度”你Ctr+H替换成“导数”就可...转载 2020-10-21 03:35:21 · 20780 阅读 · 22 评论 -
详解支持向量机SVM——以最通俗易懂的方式
引言支持向量机(Support Vector Machine, SVM)是一类按监督学习(supervised learning)方式对数据进行二元分类的广义线性分类器(generalized linear classifier),其决策边界是对学习样本求解的最大边距超平面(maximum-margin hyperplane)。——来自百度百科SVM与“三八线”不少人包括我自己在初识SVM时会感觉到高深难懂。这几天在网上看到有大佬用“三八线”引入SVM这个概念就觉得挺巧妙的。回忆下小时候原创 2020-08-25 20:09:51 · 4739 阅读 · 0 评论 -
sklearn中LogisticRegression的coef_和intercept_
对于线性回归和逻辑回归,其目标函数为:g(x) = w1x1 + w2x2 + w3x3 + w4x4 + w0如果有激活函数sigmoid,增加非线性变化 则为分类 即逻辑回归如果没有激活函数,则为回归对于这样的线性函数,都会有coef_和intercept_函数如下:lr = LogisticRegression()lr.coef_lr.intercept_coef_和intercept_都是模型参数,即为wcoef_为w1到w4intercept_为..转载 2020-08-25 15:41:07 · 6811 阅读 · 0 评论 -
Datawhale_day2决策树
介绍决策树是一种常见的分类模型,在金融分控、医疗辅助诊断等诸多行业具有较为广泛的应用。决策树的核心思想是基于树结构对数据进行划分,这种思想是人类处理问题时的本能方法。例如在婚恋市场中,女方通常会先看男方是否有房产,如果有房产再看是否有车产,如果有车产再看是否有稳定工作……最后得出是否要深入了解的判断。决策树的主要优点:具有很好的解释性,模型可以生成可以理解的规则。 可以发现特征的重要程度。 模型的计算复杂度较低。决策树的主要缺点:模型容易过拟合,需要采用减枝技术处理。 不能很好利用连原创 2020-08-24 10:47:48 · 198 阅读 · 0 评论 -
关于sklearn中的random_state参数
random_state的值相当于一种规则,通过设定为相同的数,每次分割的结果都是相同的,因而Accuracy这些值也都不会变原创 2020-08-23 17:00:49 · 917 阅读 · 0 评论 -
傻子都能看懂的——信息增益
关于信息熵请看之前一篇博客:傻子都能看懂的——信息熵(香农熵)关于条件熵请看之前一篇博客:傻子都能看懂的——条件而信息增益恰好是:信息熵-条件熵。换句话说,信息增益代表了在一个条件下,信息复杂度(不确定性)减少的程度。那么我们现在也很好理解了,在决策树算法中,我们的关键就是每次选择一个特征,特征有多个,那么到底按照什么标准来选择哪一个特征。这个问题就可以用信息增益来度量。如果选择一个特征后,信息增益最大(信息不确定性减少的程度最大),那么我们就选取这个特征。例子我们有如下数据.转载 2020-08-22 14:44:00 · 375 阅读 · 0 评论 -
傻子都能看懂的——条件熵
引言关于信息熵请看之前一篇博客:傻子都能看懂的——信息熵(香农熵)条件熵H(Y|X) 表示在已知随机变量X的条件下随机变量Y的不确定性。条件熵H(Y|X) 定义为X给定条件下Y的条件概率分布的熵对X的数学期望。如何理解这个数学期望,请看下图公式第二步,是不是一个经典的数学期望式子?第二步到第三步,也就是条件概率到联合概率:P(x,y)=P(x∩y)=P(x|y)*P(y)例子假如我们有上面数据:设随机变量Y={嫁,不嫁}我们可以统计出,嫁的个...原创 2020-08-22 11:13:32 · 5563 阅读 · 0 评论 -
Datawhale_day1逻辑回归
引言逻辑回归属于有监督机器学习。我们习惯将这类预测未来的问题称作回归问题,机器学习中按照目的不同可以分为两大类:回归和分类。那么逻辑回归既是用来完成分类任务的为什么名字中还有“回归”呢?大概是使用回归的思想去完成分类任务吧。、一个例子代码:import numpy as npimport matplotlib.pyplot as pltimport seaborn as snsfrom sklearn.linear_model import LogisticRegressio原创 2020-08-20 15:40:32 · 223 阅读 · 0 评论 -
Datawhale_day6
划水打卡,以防忘记,回头再补原创 2020-08-03 21:05:35 · 168 阅读 · 0 评论 -
Daywhale_day5
分词:import jiebaimport jieba.analyseimport jieba.posseg as psegimport codecs, sysdef cut_words(sentence): # print sentence return " ".join(jieba.cut(sentence)).encode('utf-8')f = codecs.open('wiki.zh.jian.text', 'r', encoding="utf8")tar原创 2020-07-29 15:43:26 · 157 阅读 · 0 评论 -
详解Hierarchical Softmax
1. 霍夫曼树输入:权值为(w1,w2,…wn)的n个节点输出:对应的霍夫曼树 将(w1,w2,…wn)看做是有n棵树的森林,每个树仅有一个节点 在森林中选择根节点权值最小的两棵树进行合并,得到一个新的树,这两颗树分布作为新树的左右子树。新树的根节点权重为左右子树的根节点权重之和 将之前的根节点权值最小的两棵树从森林删除,并把新树加入森林 重复步骤 2 和 3 直到森林里只有一棵树为止 下面我们用一个具体的例子来说明霍夫曼树建立的过程,我们有(a,b,c,d,原创 2020-07-29 11:07:40 · 5407 阅读 · 1 评论 -
小议负采样(Negative sampling)
训练一个神经网络意味着要输入训练样本并且不断调整神经元的权重,从而不断提高对目标的准确预测。每当神经网络经过一个训练样本的训练,它的权重就会进行一次调整。所以,词典的大小决定了我们的Skip-Gram神经网络将会拥有大规模的权重矩阵,所有的这些权重需要通过数以亿计的训练样本来进行调整,这是非常消耗计算资源的,并且实际中训练起来会非常慢。负采样(negative sampling)解决了这个问题,它是用来提高训练速度并且改善所得到词向量的质量的一种方法。不同于原本每个训练样本更新所有的权重,负采样每次原创 2020-07-29 10:40:47 · 3374 阅读 · 1 评论 -
Datawhale_day4
import pandas as pdimport fasttextimport osfrom sklearn.metrics import f1_score# 转换为fasttext需要的形式data_set = os.path.join(os.getcwd(), "数据集\\train_set.csv\\train_set.csv")train_df = pd.read_csv(data_set, sep='\t', nrows=15000)train_df['label_ft'] =.原创 2020-07-27 15:12:20 · 154 阅读 · 0 评论