机器学习
文章平均质量分 91
IT莫莫
这个作者很懒,什么都没留下…
展开
-
机器学习 (一):线性回归
1. 最小二乘法与最大似然在回归问题中,我们最常用的就是最小二乘法,也就是均方误差MSE。 这个形式乍一看很合逻辑,也没有想过为什么会用这种形式。要衡量回归问题的误差,肯定要有模型和目标的差值,再平方一下,求导方便。但其实这个形式可...原创 2019-02-15 11:48:49 · 216 阅读 · 1 评论 -
关于Google Bert中的一些问题
1.Bert 中的双向transformer是什么Bert中提出了一个双向transformer,看着感觉很神秘,但是看下论文中的图这个其实就是transformer中的encoder层,很普通的结构。可以看到gpt中用的是decoder结构,当前词语只能看到它前面的字,看不到它后面的字。ELMo虽然也是双向的,但是它是left-to-right和right-to-left分开训练再融合。...原创 2019-01-27 13:22:01 · 758 阅读 · 0 评论 -
提升方法总结
1. Boosting提升方法通过改变训练样本权重,学习多个分类器,并将分类器线性组合提高分类性能。Boosting需要做到两件事,一是在每一轮如何改变训练数据的权值或概率分布;二是如何将弱分类器组合成一个强分类器。2. AdaBoost为了解决Boosting的两个要求,adaboost在每一轮提高被错分的样本的权值,降低正确分类样本的权值。在组合分类器的时候,给误分率小的分类器较大...原创 2018-11-11 12:37:29 · 455 阅读 · 0 评论 -
各种框架对变长rnn数据的处理
1. padding文本数据在处理的时候,由于各样本的长度并不一样,有的句子长有的句子短。抛开动态图、静态图模型的差异,由于需要进行矩阵运算,句长需要是等长的才可以,这就需要padding操作。padding一般是用最长的句子长度为最大长度,然后其他样本补0到最大长度,这样样本就是等长的了。但是注意padding后的样本如果不作处理只用普通的循环神经网络来做的话其实是有影响的,因为即使输入...原创 2018-11-02 13:46:55 · 5403 阅读 · 0 评论 -
attention详解
在seq2seq+attention入门里曾经提到一点attention,感觉这个东西很有意思,模型千变万化,也非常符合人类的思想,在这里详细介绍下attention1. 定义剥离开seq2seq模型,Google给了attention模型一个更加形式化的定义attention是由query和一系列<key,value>对组成的,query依次与{key_1,key_2.....原创 2018-11-01 12:50:22 · 2120 阅读 · 0 评论 -
word2vec分析
看过word2vec 中的数学原理详解之后,做一个记录word2vec中的基本知识就不多做记录了,比如cbow模型和skip-gram模型分别是预测中间词和周围词的。这里解释一下word2vec用到的两种计算方式,哈弗曼树编码hierarchical softmax,以及负采样。首先要知道的是不是没有这两种计算方式就没办法计算word2vec了,之所以要用这个是因为我们模型输出的结果是预测...原创 2018-10-29 13:07:18 · 318 阅读 · 0 评论 -
Kmeans算法总结
1. 定义Kmeans算法的过程较为简单1、从D中随机取k个元素,作为k个簇的各自的中心。2、分别计算剩下的元素到k个簇中心的相异度,将这些元素分别划归到相异度最低的簇。3、根据聚类结果,重新计算k个簇各自的中心,计算方法是取簇中所有元素各自维度的算术平均数。 4、将D中全部元素按照新的中心重新聚类。5、重复第4步,直到聚类结果不再变化。6、将结果输出。2.相异度...原创 2018-10-29 12:08:59 · 1791 阅读 · 0 评论 -
模型评价指标
首先介绍几个指标:TP:正确预测正类 FP:错误预测成正类,其实是负类FN:错误预测成负类,其实是正类 TN:正确预测成负类1.准确率(accuracy)预测正确的占所有样本的比例(TP+TN)/(TP+TN+FP+FN)2.召回率(recall)召回率(Recall)又叫查全率,含义是在实际为正的样本中被预测为正样本的概率TP/(TP+F...原创 2018-10-21 04:55:24 · 1478 阅读 · 0 评论 -
seq2seq+attention入门
前言本来是要了解attention模型,因为我自己的毕设主要在做分类,借此机会了解一下attention模型,其实之前实习的时候有用过seq2seq模型,现在在博客中补上记录。1. seq2seq1.简介seq2seq的介绍基本都是如下这张图,这种结构首先就是为了解决输出也是一个序列的问题。比如机器翻译,文本摘要等,它们输入的是一段序列,输出的同样也是序列,所以采用了这种encod...原创 2018-10-20 11:52:37 · 2822 阅读 · 0 评论 -
CNN总结(一)
1. 结构卷积神经网络是由若干个卷积层和池化层(Pooling)堆叠起来的结构,常见结构是多个卷积层连接一个池化层注意在特征较少的时候有一个小方法,只用卷积层,这时池化层会丢失部分信息。注意卷积是一个有长宽高的三维操作。第一层用了三个filter卷积出三层的feature maps,每一个filter卷积出一层。第二层是一个池化层进行下采样。注意这里的features已经是一个三维...原创 2018-10-19 13:10:33 · 172 阅读 · 0 评论 -
矩阵乘法的分析
1. 分类矩阵的乘法运算分为点乘和矩阵乘点乘矩阵点乘的运算如上图,对应点相乘的运算。如果相乘后再相加的话就是卷积运算。可以看到第一个两个矩阵的点并不能一一对应,一个维数是(2,1),一个维数是(2,3),最后结果的维数是(2,3),维数是1的那一维被复制后和后面的矩阵做点乘,这种方式被称作广播。广播语义广播可以扩展两个形状不同的矩阵使之成为相同形状的矩阵让那些需要形状相...原创 2018-10-18 06:47:54 · 1375 阅读 · 0 评论 -
二分类问题输出一个节点还是两个节点
这两天在学pytorch的时候,看到是莫凡的pytorch教程,在二分类中用的是softmax,输出是[0,1],[1,0]这样的标签,而不是0,1标签,自己看了看torch的api函数改成了sigmoid激活函数可以用0,1标签输出一个节点了。import torchfrom torch.autograd import Variableimport torch.nn.functiona...原创 2018-10-07 05:41:35 · 7836 阅读 · 3 评论 -
Keras 可视化
Keras可视化需要安装pydot和graphviz,需要先安装python graphviz,再安装软件graphvizWindowswindows下安装比较容易出问题,在我的电脑上使用pip安装不成功,使用conda安装比较简单1.安装graphviz软件https://graphviz.gitlab.io/_pages/Download/Download_windows.ht...原创 2019-03-28 00:09:27 · 125 阅读 · 0 评论