├── .gitignore ├── README.md └── docs ├── doc_001.md ├── doc_002.md ├── doc_003.md ├── doc_004.md ├── doc_005.md └── doc_006.md /.gitignore: -------------------------------------------------------------------------------- 1 | .idea 2 | *swp 3 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # ML 自学者周刊 2 | 3 | 本刊物在公众号「 **进击的龙** 」每周连载,欢迎关注。 4 | 5 | ## 2019 6 | 7 | **11 月**:[第 5 期](docs/doc_005.md) | [第 6 期](docs/doc_006.md) 8 | 9 | **10 月**:[第 4 期](docs/doc_004.md) | [第 3 期](docs/doc_003.md) | [第 2 期](docs/doc_002.md) | [第 1 期](docs/doc_001.md) 10 | 11 | 12 | ## 组织者 13 | 14 | - [黄海广](https://github.com/fengdu78) 15 | - [公子龙](https://mp.weixin.qq.com/s/FBmYWfdh8Vi5NnVmt6M82Q) 16 | 17 | ## 加入我们 18 | 19 | 扫描二维码,关注公众号,回复「 **自学** 」加入我们。 20 | 21 | 22 | -------------------------------------------------------------------------------- /docs/doc_001.md: -------------------------------------------------------------------------------- 1 | > 这里记录自学者的学习内容,欢迎留言投稿你的自学内容。 2 | 3 | ### 刊首语 4 | 5 | 创刊第 1 期,会一直坚持下去,希望能够做到 100 期。一直以来,同学们都在坚持分享。好的自学内容,还是放出来让大家多看看、多交流为好。欢迎投稿,每周一起学习进步! 6 | 7 | #### 学习ALBERT 8 | 9 | ALBERT A LITE BERT:是一个轻量级的 BERT 模型,和BERT比有三个变化点: 10 | - 嵌入向量参数化的因式分解不再将 one-hot 向量直接映射到大小为 H 的隐藏空间,而是先将它们映射到一个低维词嵌入空间 E,然后再映射到隐藏空间。通过这种分解,研究者可以将词嵌入参数从 O(V × H) 降低到 O(V × E + E × H),这在 H 远远大于 E 的时候,参数量减少得非常明显,减少计算量,加快计算时间。 11 | - 跨层参数共享:所有层权重共享 12 | - 句间连贯性损失:句间建模使用基于语言连贯性的损失函数。对于 ALBERT,研究者使用了一个句子顺序预测(SOP)损失函数,它会避免预测主题,而只关注建模句子之间的连贯性。 13 | 14 | #### 目标跟踪 PRCF 15 | 16 | 本文研究了池操作对视觉跟踪的影响,提出了一种新的ROI池相关滤波算法。虽然基于roi的池算法在许多基于深度学习的应用中得到了成功的应用,但是在视觉跟踪领域,尤其是在基于相关滤波的方法中,却很少考虑到它。由于相关滤波公式并不能真正提取出正样本和负样本,所以快速R-CNN等基于roi的池是不可行的。通过数学推导,给出了实现基于roi的池的另一种解决方案。提出了一种具有等式约束的相关滤波算法,通过该算法可以等价地实现基于roi的池。提出了一种求解优化问题的交替方向乘法器(ADMM)算法,并在傅里叶域中给出了一种有效的求解方法。 17 | 论文阅读笔记:http://haha-strong.com/2019/09/23/20190923-RoiCF/ 18 | 19 | #### 大数据系统工程架构 20 | ![](https://mmbiz.qpic.cn/mmbiz_jpg/ZVbHwHpkBy8icS8NicN5P2yTjsRicVrC640tL9HicobPZ1NPaw8AcWEk5o9zD8ch78nIjeiclwJQachV5CMTvlmaMlA/640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1) 21 | 22 | #### 温习XGBoost 23 | 24 | 最近温习了 XGBoost,通过重读论文,阅读一些公众号的推送和博客,重新把公式推导了一遍,详细了解损失函数,泰勒展开,节点分裂,如果选择最优划分等具体过程,此外,了解了一些并行化的处理方式。 25 | - [公众号文章:XGBoost超详细推导,终于有人讲明白了!](https://mp.weixin.qq.com/s/7n1nzGL7r789P9sv0GEkDA) 26 | - 论文:https://arxiv.org/pdf/1603.02754.pdf 27 | - PPT:https://homes.cs.washington.edu/~tqchen/pdf/BoostedTree.pdf 28 | - 并行处理:[Parallel Gradient Boosting Decision Trees](http://zhanpengfang.github.io/418home.html) 29 | 30 | #### 小样本学习 31 | 32 | 最近老师给的任务涉及到小样本学习问题,读了以下针对小样本学习的MTL算法,交流一下我学到的东西,理解不准确的地方还望指正。 33 | 34 | Meta-Transfer Learning for Few-Shot Learning是CVPR 2019接收的论文,第一作者是新加坡国立大学的Qianru Sun,根据Papers With Code这个网站的评估,该算法截止到今天是SOTA for Few-Shot Image Classification on Fewshot-CIFAR100 - 10-Shot Learning。 35 | 36 | 元学习的架构已经被提出,并广泛应用到小样本检测问题上,元学习的核心是利用大量相似的小样本检测任务,以学习如何去适应一个新的小样本学习任务。传统的DNN网络在处理小样本学习问题时会有过拟合的问题,因此元学习通常使用浅层神经网络,但是这也限制了网络的性能。针对上述问题,这篇文章提出了一种新型的小样本检测算法,叫做MTL,它采用了一种深层神经网络用于小样本检测问题。M是指meta,代表着多种多样的任务,T是指transfer,通过学习每个任务的DNN权重的缩放和移位功能,可以实现权重的传递。 37 | 38 | 除此之外,这篇文章介绍了一种方法,该方法对于提升算法性能非常有帮助。传统的元学习方法受到两方面的限制: 39 | - 这些方法需要大量类似的任务来进行元训练,而找到大量相似任务是非常困难的; 40 | - 每个任务通常由低复杂度的浅层神经网络构成,以避免模型出现过拟合,因此无法使用更深更强大的体系结构。 41 | 42 | 1. 第一步:训练DNN网络在大尺度数据集上,并且将低层固定为特征提取器,需要注意的是,迁移给小样本学习任务的特征提取器的相关权重而不是DNN的最后一层权重。 43 | 2. 第二步:元迁移学习阶段,MTL学习特征提取神经元的缩放和移位参数,从而能够快速适应Few-shot Learning任务。具体实现过程在论文的4.2节,讲道理我只是看懂了一部分,相比于传统的方法,这篇论文在传递到小样本学习任务时,冻结迁移过来的权重,不进行更新,而其他的相关权重正常进行更新,感觉这篇文章的精髓在于这一部分的冻结操作和迁移过程的精妙操作。具体怎么迁移的,还需在继续学习下。 44 | 3. 第三步:为了提升整体学习水平,使用HT元批量学习策略。HT元批量学习策略是指挑选检测失败的案例进行附加训练,重点强调识别错误的例子,“在失败中成长”…,根据本文的试验,效果还不错。 45 | 46 | - 文章下载地址:https://arxiv.org/pdf/1812.02391v3.pdf 47 | - 文章源代码:https://github.com/y2l/meta-transfer-learning-tensorflow 48 | 49 | #### 推公式 50 | 51 | 路漫漫其修远兮,吾将上下而求索。手推牛顿法,混合高斯模型,SVM,核方法,EM,CRF,MCMC等等。这里极度推荐b站shuhuai的视频,里面的公式解析极其细致! 52 | ![](https://mmbiz.qpic.cn/mmbiz_png/ZVbHwHpkBy8icS8NicN5P2yTjsRicVrC6403nbdvFHsTjgwXMX1SkV26G3CwyicSYiaZNwAguORO5OtqVZ2s2SrjZPQ/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1) 53 | -------------------------------------------------------------------------------- /docs/doc_002.md: -------------------------------------------------------------------------------- 1 | ### 刊首语 2 | 3 | 这里记录ML自学者群体,每周分享优秀的学习心得与资料。由于微信不允许外部链接,需要点击文末的「阅读原文」,才能访问文中的链接。 4 | 5 | --- 6 | 7 | ### 本期内容 8 | 9 | **目录** 10 | 11 | **一、学习心得分享** 12 | - 图像超分辨和图像高分辨的区别 13 | - 挖掘模板,辅助对话生成 14 | - 学习梯度优化算法 15 | 16 | **二、机器学习解答** 17 | - 为什么SVM不会过拟合 18 | - GBDT和XGBOOST的区别有哪些 19 | - 如何入门NLP,比较茫然 20 | 21 | **三、资料整理** 22 | - 论文类 23 | - 工具类 24 | 25 | --- 26 | 27 | ### 学习心得分享 28 | 29 | #### 图像超分辨和图像高分辨的区别 30 | 31 | 图像超分辨和图像高分辨之间的区别是:**图像超分辨描述**是图像由小到大的一个变化过程,**图像高分辨**是图像本身较大的一个状态。对于图图像的超分辨任务SR通常使用比较深的卷积神经网络编码成较高分辨率的图像过程,该方向比较难的一个点是SISR单张图像超分辨在医学、天文、安防方面有广泛使用,通常都是插值重构的方案,但是这种方法有一定局限性。 32 | 33 | 代码地址:https://github.com/lightningsoon/Residual-Dense-Net-for-Super-Resolution 34 | 35 | 论文地址:https://arxiv.org/abs/1802.08797 36 | 37 | 在上面的论文和代码中是以三个模块实现超分辨的单张功能,模块一是密集型残差网络RDB、模块二是局部特征混合LFF、模块三是LRL局部特征学习。因为卷积神经网络和图像中距离像素较远的关联关系较弱所以局部特征更能表达深度特征能力。整个RDN主要包括4个部分:隐藏特征提取网络(SFENet),残差密集模块(RDBs),密集特征融合(DFF),和最后的上采样网络(UPNet)。 38 | 39 | #### 挖掘模板,辅助对话生成 40 | 41 | EMNLP2019的一篇文章,对话领域中,训练语料(通常指的是post-response的语句对形式)较难采集。而无序的语句较容易获得。利用这些大量无监督语料,来提升机器对话回复的质量,是本文提出新的探索方向。作者将大量无序语句和少量对话语句对相结合,从无序语句中学习对话模板(template),模板涵盖了语义和语法的信息,作为先验知识,从而辅助对话response的生成。数据集采用了微博和知乎的语料,模型结构如下所示。 42 | 43 | 论文名称:Low-Resource Response Generation with Template Prior 44 | 45 | 论文地址:https://arxiv.org/abs/1909.11968 46 | 47 | 48 | #### 学习梯度优化算法 49 | 50 | 这篇博客是梯度优化算法综述,附上一些读后感。 51 | 1. SGD : 每次朝着梯度的反方向进行更新。 52 | 2. Momentum:动能积累,每次更新时候积累 SGD 的更新方向,也就是每次参数更新时,不单单考虑当前的梯度方向,还考虑之前的梯度方向,当然之前的梯度会有一个衰减因子。 53 | 3. Adagrad:自动调节学习率大小,对于频繁更新的参数,学习率小;对于很少更新的参数,学习率大。怎么判断参数频繁更新呢?可以为更新公式设置一个分母:梯度平方累加和的平方根。这样当分母越大,说明之前该参数越频繁更新,反之则很少更新。存在问题:当迭代次数多了之后,由于是累加操作,分母越来越大,学习率会变得非常小,模型更新会很慢。 54 | 4. Adadelta:作为 Adagrad 的拓展,是解决学习率消失的问题。在这里不会直接叠加之前所有的梯度平方,而是引入了一个梯度衰退的因子,使得时间久远的梯度对此刻参数更新的影响会消失。RMSProp 的思想和其类似。 55 | 5. Adam:结合 Momentum 和 Adadelta 两种优化算法的优点。对梯度的一阶矩估计(First Moment Estimation,即梯度的均值)和二阶矩估计(Second Moment Estimation,即梯度的未中心化的方差)进行综合考虑,计算出更新步长。 56 | 57 | 文章地址:http://ruder.io/optimizing-gradient-descent/ 58 | 59 | --- 60 | 61 | ### 机器学习问答 62 | 63 | #### [为什么svm不会过拟合](https://www.zhihu.com/question/20178589/answer/29950675) 64 | 65 | SVM当然会过拟合,而且过度拟合的能力还非常强。首先我想说说什么叫过度拟合?就是模型学岔路了,把数据中的噪音当做有效的分类标准。 66 | 67 | 通常越是描述能力强大的模型越容易过度拟合。描述能力强的模型就像聪明人,描述能力弱的如:”一次线性模型“像傻子,如果聪明人要骗人肯定比傻子更能自圆其说对不对?而SVM的其中一个优化目标:最小化||W||,就是抑制它的描述能力,聪明人是吧,只允许你用100个字,能把事情说清楚不? 68 | 69 | 这就是为什么regularization能够对抗过度拟合,同时它也在弱化模型的描述能力。但只要能说话就能说谎,就能歪曲事实对不对?别把SVM想得太复杂,你就可以把它当做一个线性分类器,只不过它优化了分类平面与分类数据之间距离。 70 | 71 | #### [GBDT和XGBOOST的区别有哪些](https://zhuanlan.zhihu.com/p/30316845) 72 | 73 | 1. 传统GBDT以CART作为基分类器,xgboost还支持线性分类器,这个时候xgboost相当于带L1和L2正则化项的逻辑斯蒂回归(分类问题)或者线性回归(回归问题)。 74 | 2. 传统GBDT在优化时只用到一阶导数信息,xgboost则对代价函数进行了二阶泰勒展开,同时用到了一阶和二阶导数。顺便提一下,xgboost工具支持自定义代价函数,只要函数可一阶和二阶求导。 75 | 3. Xgboost在代价函数里加入了正则项,用于控制模型的复杂度。正则项里包含了树的叶子节点个数、每个叶子节点上输出的score的L2模的平方和。从Bias-variance tradeoff角度来讲,正则项降低了模型的variance,使学习出来的模型更加简单,防止过拟合,这也是xgboost优于传统GBDT的一个特性。 76 | 4. Shrinkage(缩减),相当于学习速率(xgboost中的eta)。xgboost在进行完一次迭代后,会将叶子节点的权重乘上该系数,主要是为了削弱每棵树的影响,让后面有更大的学习空间。实际应用中,一般把eta设置得小一点,然后迭代次数设置得大一点。(补充:传统GBDT的实现也有学习速率) 77 | 5. 列抽样(column subsampling)。xgboost借鉴了随机森林的做法,支持列抽样,不仅能降低过拟合,还能减少计算,这也是xgboost异于传统gbdt的一个特性。 78 | 79 | #### 如何入门NLP,比较茫然 80 | 81 | 先了解什么是词向量 onehot和 word2vec,然后了解最基础的文本分类任务,跑下经典的机器学习模型和现在的cnn、rnn分类模型。这些代码都不多的,用pytorch或者tf实现下挺快的,可以照着代码敲一遍,有感觉了就离入门近一些了。再然后,看看nlp常见的任务,ner,mrc,nli,等等。对了,推荐直接跟着斯坦福的nlp公开课走一遍吧,很快的。 82 | 83 | 课程名:CS224d - Deep Learning for Natural Language Processing 84 | 85 | 课程地址:http://cs224d.stanford.edu 86 | 87 | --- 88 | 89 | ### 资料整理 90 | 91 | #### 论文类 92 | - [APDrawingGAN:人脸秒变艺术肖像画](https://mp.weixin.qq.com/s/Ok9ediwb35LzQiT9YVKfWA) 93 | - [NeurIPS 2019 | 用于弱监督图像语义分割的新型损失函数](https://mp.weixin.qq.com/s/CbORYhJQn27J0G4G6XpODw) 94 | - [Doc2EDAG:一种针对中文金融事件抽取的端到端文档级框架](https://mp.weixin.qq.com/s/irYEpq9pkeZYoSRcp4auew) 95 | 96 | #### 工具类 97 | - [三行代码提取PDF表格数据](https://mp.weixin.qq.com/s/VOU9bZTYENI0wZnP9SmAtQ) 98 | - [PyTorch 1.3发布:能在移动端部署](https://mp.weixin.qq.com/s/NNTA7B_ZZNruh01Nax26Mg) 99 | - [谷歌工程师:Tensorflow2.0 简单粗暴教程中文版](https://mp.weixin.qq.com/s/sG2Xp0vLzlW5zE1k7myB4w) 100 | 101 | --- 102 | 103 | ### 加入我们 104 | 105 | 公众号内回复「自学」,即可加入ML自学者俱乐部社群。可以投稿每周学习心得或者看到的优质学习资料,助力团体共同学习进步。 106 | 107 | --- 108 | 109 | ### 参考来源 110 | 111 | - [ML自学者俱乐部投稿](https://github.com/Dikea/ML-SelfStudy-Weekly) 112 | - [黄博的机器学习圈子](https://t.zsxq.com/eaeYv7a) 113 | - [知乎机器学习话题](https://zhihu.com) 114 | 115 | --- 116 | 117 | [点击阅读上一期内容](https://mp.weixin.qq.com/s/aqn1jN1_ZqC_KAsSLG9SYg) 118 | -------------------------------------------------------------------------------- /docs/doc_003.md: -------------------------------------------------------------------------------- 1 | ###
刊首语
2 | 3 | 这里记录ML自学者群体,每周分享优秀的学习心得与资料。由于微信不允许外部链接,需要点击文末的「**阅读原文**」,才能访问文中的链接。 4 | 5 | --- 6 | 7 | 8 | 前几天看到一则新闻,AI界的网红老师Siraj,遭吃瓜群众大规模打假。 9 | 10 | Siraj原本是靠在视频网站上传AI教学视频的博主,被称为AI界的最强Rapper,吸粉百万。 11 | 12 | 当然,他是为了最终能够通过粉丝的支持来进行盈利,这无可厚非。但有件事他做错了,而且是原则性错误。 13 | 14 | 首先,他的教学代码一般是从Github开源项目复制而来,而且删除了原作者的信息。更过分的事情是,他发表的论文,也是大段不加改动的,从其他论文处复制粘贴,甚至直接截图过来。 15 | 16 | ![592fbd2e05c77679d5daf66342637f8e.png](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8UlUic5MEQePcibjicaGVlt6ucZLibyic7mWfczA1ez4xT6bicqX4Kmw7Ucy8w6d4ibdKbF8OB8EIwSCfbKw/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1) 17 | 18 | 于是成了千夫所指,人设一夜崩塌。 19 | 20 | 这个悲惨的故事,告诉我们,想要成名,还得靠脚踏实地的好好学习。来,看看大家本周都学了什么。 21 | 22 | --- 23 | 24 | ###
本期内容
25 | 26 | **心得分享** 27 | 28 | - 骨骼动作识别模型:AGC-LSTM 29 | - 对FM模型的学习 30 | - 多任务学习概述 31 | - 机器人在对话中推荐物品 32 | - 分水岭分割方法 33 | 34 | **学习周记** 35 | 36 | - Mr.WR 37 | - 贺 38 | - 君君 39 | - 千禧 40 | 41 | 42 | **资料分享** 43 | 44 | - 超轻量级人脸检测模型 45 | - 中文自然语言处理语料 46 | 47 | --- 48 | 49 | ###
自学心得
50 | 51 | #### 骨骼动作识别新模型:AGC-LSTM 52 | 53 | 本周写了一个软件著作权,并将其邮寄到中国版权保护中心。阅读动作识别综述论文,和再次阅读CVPR论文, 54 | 55 | ![f54b90d1fe19e01ba63bf293a8699137.png](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8UlUic5MEQePcibjicaGVlt6uceKvicIDzSe1uykyDdajouZzhJsrTR6czNuT5nLGAPz1AVOa9Vgp34dg/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1) 56 | 57 | 该篇论文首次提出AGC-LSTM网络。不仅能够分别的提取数据在时间和空间上的特征,而且还能查出两者之间的共现联系。在AGC-LSTM顶层,提出了一个时间分层结构,该结构不仅可以提高学习高等级表示的能力,而且还能显著的减少计算代价。 58 | 59 | 论文名称: An attention enhanced graph convolutional LSTM Network for Skeleton-Based Action Recognition 60 | 61 | [论文地址](https://arxiv.org/pdf/1902.09130.pdf) 62 | 63 | #### 对FM模型的学习 64 | 65 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8UlUic5MEQePcibjicaGVlt6ucdVkVo26oPnF11Ric6BftWdteHxiclZIzN4AMu662FqxxC5I7CiaVOKQxA/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1) 66 | 67 | 68 | 这周学习FM模型,FM在计算广告和推荐系统中十分常用,主要优点在于考虑了特征交叉,并且算法的时间复杂度仍然还是线行的。 69 | 70 | 实际业务中,对于离散型的特征经常使用one-hot编码,传统的特征交叉方法使得特征维度扩张较为迅速,而且二阶项的系数很容易训练不充分,而在 FM 中,对于每个特征都学习了一个Embedding二阶项的系数就转化成了特征Embedding之间的内积。 71 | 72 | 在FM的论文中,比较了SVM和FM之间的优劣和FM与MF的联系,SVM 中的多项式核也可以完成特征交叉,但是并不适合高维稀疏的数据。 73 | 74 | MF可以理解为,在评分任务中,把用户对于物品的评分,分解为用户 Embedding 和物品 Embedding 的内积; 75 | 76 | FM 的重点在于二阶项的计算方式的改写(改写成线性时间),在这里附上论文和一些其他看过的博客。 77 | 78 | 论文: 79 | - [FM算法详解](https://blog.csdn.net/bitcarmanlee/article/details/52143909) 80 | - [FM模型理论和实践](https://mp.weixin.qq.com/s?__biz=MzI1MzY0MzE4Mg==&mid=2247483878&idx=1&sn=0a94aff9156bf2902096c77ca2122372&chksm=e9d01127dea79831de1d1d126549cba1996994c210d0be2ae0004b718fd348909b425fe15fe2&mpshare=1&scene=1&srcid=1009NC42Qg2PsMCADYMCjpkv&sharer_sharetime=1570587740133&sharer_shareid=32dc4a57f2d5d60ea8e4e538e6caa1b1%23rd) 81 | - [Factorization Machines](https://www.csie.ntu.edu.tw/~b97053/paper/Rendle2010FM.pdf) 82 | - [推荐系统召回四模型之:全能的FM模型](https://zhuanlan.zhihu.com/p/58160982) 83 | - [前深度学习时代CTR预估模型的演化之路](https://zhuanlan.zhihu.com/p/61154299) 84 | 85 | #### 多任务学习概述 86 | 87 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8UlUic5MEQePcibjicaGVlt6ucZuicyQccUDcVHicbX5badb6ZaSSykzps7KPJPPwl4AlAib4oiaJuNR0ncA/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1) 88 | 89 | 90 | 今天介绍一下这几天看的一篇多任务概述,发表在arxiv,引用次数393。 91 | 92 | 多任务学习的直观定义是只要优化多个loss就被称之为多任务学习。为什么关注多任务,是因为我们往往只聚焦于单任务想要优化的目标,但是往往会失去一些关联信息。 93 | 94 | 从人类学习的角度来讲,在学习复杂任务之前往往会先学习一些简单的任务。从机器学习的视角来看,与主任务相关的辅助任务可以引入一些额外的信息,这些信息被称为inductive bias,我个人理解是引入了一些先验。这些先验会导致模型会更加关注能够解释多个任务的共同部分,而不是只关注解释单单一个任务,这也会使得泛化能力提高。 95 | 96 | 多任务有效的原因: 97 | 1. 同时学习多个任务会平衡在各自任务上的噪声,使得模型能够学到更好的表征; 98 | 2. 辅助任务可以引入额外信息。 99 | 100 | 如何设计辅助任务:作者在这里并没有给出一些方法论,而是给出了一些示例。如目标检测中常常同时输出目标类别和位置,情感分析中有设置预测输入句是否存在正向或负向情感词的辅助任务。 101 | 102 | 论文名称:An Overview of Multi-Task Learning 103 | in Deep Neural Networks 104 | [论文地址](https://arxiv.org/pdf/1706.05098.pdf) 105 | 106 | #### 分水岭分割方法 107 | 108 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8UlUic5MEQePcibjicaGVlt6ucXOkkVeoLh44NN9U2iaoxadG3AeK5oHd9LSXcqN2HZ43x0ib5kGLTfQaQ/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1) 109 | 110 | 最近在尝试看论文的代码,不知不觉就研究上了分水岭分割方法。并了解了一下同在scikitimage库中的随机漫步分割方法。在腾讯云上有翻译的中文文档,[地址链接](https://cloud.tencent.com/developer/section/1415081)。 111 | 112 | **分水岭算法**:对于没有噪声的图象效果很好。即使是有重叠。 113 | **随机漫步算法**:随机Walker分割基于各向异性扩散的分割算法,通常比分水岭慢,但对噪声数据和孔洞边界具有良好结果。 114 | 115 | 自己体验下来,感觉分水岭确实是一个很好的传统分割算法,而随机漫步算法进行分割感觉太消耗内存了。在图片没什么噪声的情况下两者相比应该优先选择分水岭 116 | 117 | #### 机器人在对话中推荐物品 118 | 119 | 分享SIGIR2018的一篇文章,个性化的聊天机器人在电商领域,有着可观的前景。目前的多轮对话中,机器人通常仅仅利用到了用户的历史输入信息,忽略了用户长期的偏好,从而给出一些不受欢迎的回复。而推荐系统,能够从用户历史购买的物品或者给出的评分中,学习到更多的用户喜好信息。 120 | 121 | 这篇文章,将对话和推荐两种看起来有所差异的分支结合到一起,利用深度强化学习框架,建立个性化的对话推荐机器人,从而能够优化对话体验,完成对话目标。这里所说的对话目标,是在电商场景下,成功的推荐商品给用户。 122 | 123 | 系统主要由三个部分组成:Belief Tracker, Policy Network, Recommender。 124 | 125 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8UlUic5MEQePcibjicaGVlt6ucPM321QtyNzC5tfEXjscTOycBiaVdLdTdGMRNGYtFd8G5SDUCcK3RwhQ/640?wx_fmt=png&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1) 126 | 127 | 论文名称:Conversational Recommender System 128 | [论文地址](https://arxiv.org/abs/1806.03277) 129 | 130 | --- 131 | 132 | ###
学习周记
133 | 134 | #### Mr.WR 135 | 136 | 这周把吴恩达的机器学习看完了,麻省理工的stang教授的线代也看完了。机器学习的视频就是入了个门,以后还有很多东西要学,正在最后面的编程练习,感觉好多都看不懂。 137 | 138 | 接下来这周要好好研究研究,然后同时看Python深度学习这本书和林轩田的机器学习技法,争取在这周看完 139 | 140 | #### 贺 141 | 142 | 这周忙于找工作,没有太多的时间去学习,主要看了一下网易云课堂上厦门大学林子雨老师的大数据原理和应用课程的前十一章,觉得比较适合想要入门大数据以及对大数据有大致的了解的同学,这门免费课程还有配套的教程和相应的资料,确实还不错。 143 | 144 | #### 君君 145 | 146 | 在复现论文过程中,为了生成对应数据集试过的方法之一,虽然最终没有采用该方法生成数据集,不过我觉得这种勇于创新的思路值得记录下来(狗头保命)。 147 | 148 | 具体背景情况、实验图像、实现代码都详细在下面链接里面有说明,这边就不重复陈述了。[链接地址](https://blog.csdn.net/weixin_43194555/article/details/102535907) 149 | 150 | #### 千禧 151 | 152 | 最近重温了sklearn的调用,从中学习到最新版本的sklearn的细节操作,从案例中积累超参数调整的经验。这里推荐B站视频:[链接地址](https://www.bilibili.com/video/av70627602/?p=27) 153 | 154 | --- 155 | 156 | ###
优质资料
157 | 158 | #### 超轻量级人脸检测模型 159 | 160 | 161 | 一款超轻量级通用人脸检测模型,模型文件大小仅1MB,320x240输入下计算量仅90MFlops,适用于边缘计算设备、移动端设备以及PC。 162 | 163 | [项目地址](https://github.com/Linzaer/Ultra-Light-Fast-Generic-Face-Detector-1MB) 164 | 165 | #### 中文自然语言处理语料 166 | 167 | 大规模中文自然语言处理语料,包括维基百科,新闻语料,百科问答,社区问答,翻译语料。 168 | 169 | [项目地址](https://github.com/brightmart/nlp_chinese_corpus) 170 | 171 | 172 | 173 | --- 174 | 175 | ### 加入我们 176 | 177 | 公众号内回复「自学」,即可加入ML自学者俱乐部社群。可以投稿每周学习心得或者看到的优质学习资料,助力团体共同学习进步。 178 | 179 | 180 | 181 | --- 182 | 183 | ### 参考来源 184 | 185 | - [ML自学者俱乐部投稿](https://github.com/Dikea/ML-SelfStudy-Weekly) 186 | - [黄博的机器学习圈子](https://t.zsxq.com/eaeYv7a) 187 | - [知乎机器学习话题](https://zhihu.com) 188 | 189 | [点击阅读上一期内容](https://mp.weixin.qq.com/s/ev3XfCNdM4mE55vTKukyXQ) 190 | -------------------------------------------------------------------------------- /docs/doc_004.md: -------------------------------------------------------------------------------- 1 | ## 刊首语 2 | 3 | > 这里记录ML自学者群体,每周分享优秀的学习心得与资料。由于微信不允许外部链接,需要点击文末的「**阅读原文**」,才能访问文中的链接。 4 | 5 | 6 | 7 | ## 本期内容 8 | 9 | **论文速递** 10 | - CVPR2019:细粒度图像识别新论文 11 | - 基于元学习和AutoML的模型压缩新方法 12 | 13 | 14 | **学习心得** 15 | - 大煌 16 | - 奔腾 17 | - 昨夜星辰 18 | - 大灵 19 | - 大鹏鹏 20 | - 安芯 21 | - 吕涛 22 | 23 | 24 | **疑问解答** 25 | - lstm激活函数为什么sigmoid和tanh同时存在 26 | 27 | ## 论文速递 28 | 29 | ### CVPR2019:细粒度图像识别新论文 30 | 31 | 论文名称:Destruction and Construction Learning for Fine-grained Image Recognition 32 | 33 | [论文地址](http://openaccess.thecvf.com/content_CVPR_2019/papers/Chen_Destruction_and_Construction_Learning_for_Fine-Grained_Image_Recognition_CVPR_2019_paper.pdf) 34 | 35 | 该文献是属于细粒度图像识别领域的。文章提到部分先前的方法需要判别性区域的标注先验信息,标注成本高昂;并且先前方法一般需增加额外模块,而这些模块在推断阶段会引入额外的计算负担。 36 | 37 | 因此文章引入“拆解与建构学习”机制使分类模块获得专家知识,其中“拆解”部分强迫分类模块着重于判别性区域的区别,“建构”部分建立各局部区域的语义关联并避免拆解带来的含噪样本引发的过拟合现象。文章工作中包括性能对比、消融实验、控制变量法参数调整实验、特征可视化等。 38 | 39 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8VRFHtV4JBldxFmrwGeqd1Csb6ibtwFW97EgTcjw3TwJre49dNerMd4FKqJQaoyh2W7AFS9SwmnTiaA/0?wx_fmt=png) 40 | 41 | 一句话概括该文献:引入“拆解与建构学习”机制,强迫分类模块着重于判别性区域的区别,并建立各局部区域的语义关联并避免拆解带来的含噪样本引发的过拟合现象,且未引入额外判别性区域标注负担和推断阶段的额外计算负担。 42 | 43 | ### 基于元学习和AutoML的模型压缩新方法 44 | 45 | 这篇文章来自于旷视。旷视内部有一个基础模型组,孙剑老师也是很看好 NAS 相关的技术,相信这篇文章无论从学术上还是工程落地上都有可以让人借鉴的地方。回到文章本身,模型剪枝算法能够减少模型计算量,实现模型压缩和加速的目的,但是模型剪枝过程中确定剪枝比例等参数的过程实在让人头痛。 46 | 47 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8VRFHtV4JBldxFmrwGeqd1CX0U6JRhq1Tia963GtgoNgyNYf9gSzZ7HwaduC2lukvRA8DH81Tbdbrg/0?wx_fmt=png) 48 | 49 | 这篇文章提出了 PruningNet 的概念,自动为剪枝后的模型生成权重,从而绕过了费时的 retrain 步骤。并且能够和进化算法等搜索方法结合,通过搜索编码 network 的 coding vector,自动地根据所给约束搜索剪枝后的网络结构。和 AutoML 技术相比,这种方法并不是从头搜索,而是从已有的大模型出发,从而缩小了搜索空间,节省了搜索算力和时间。 50 | 51 | 52 | [论文地址](https://arxiv.org/abs/1903.10258) 53 | [原文地址](https://mp.weixin.qq.com/s/lc7IoOV6S2Uz5xi7cPQUqg) 54 | 55 | 56 | 57 | ## 学习心得 58 | 59 | ### 大煌 60 | 61 | 本周复现了一篇论文的代码。复现的效果没有论文的好。是一个很基础的版本,欢迎交流和探讨。[复现代码地址](https://github.com/HaHuangChan/Deep-Mating-for-Portrait-Animation) 62 | 63 | ### 奔腾 64 | 65 | 本周复习了一下概率论,具体是过了一遍叶丙成老师的玩想概率,相对国内过于注重计算,而叶老师的课程很注重概念。最简单的概念,随机变量到底是什么,如果这个不清楚的话,可以再认真学学概率,会有新的收获。 66 | 67 | ### 昨夜星辰 68 | 69 | 本周学习了词向量的三种:word2vec,fasttext,elmo。代码如下,放在笔记里面: 70 | 71 | - [word2vec](https://blog.csdn.net/weixin_43178406/article/details/102461021) 72 | - [fasttext](https://blog.csdn.net/weixin_43178406/article/details/102465629) 73 | - [elmo](https://blog.csdn.net/weixin_43178406/article/details/102522853) 74 | 75 | ### 大灵 76 | 77 | 这周了解了一下密集计数。 78 | 79 | - 聚类计数: 基于外观和运动线索等特征进行聚类,适用于视频序列,不适用于图象。 缺点:需要视频,准确率较低 80 | - 回归计数:通过检测计数 两种:一是使用计算对象的密度来预测密度图。使用高斯核将点级注释矩阵转换为密度图。挑战是确定高斯核的最佳大小,这个与对象的大小密切相关。 第二种是一瞥(glance)基于网格的计数方法(不太懂) 缺点:受物体的大小变化影响大。 81 | - 检测计数: 先检测出对象,再计算数量,比glance和子图标的表现更差。 缺点:如果对象被遮挡效果就不好,其实物体的大小对这个的影响也有,效果可能要看训练集和实际场景了。 82 | 83 | 84 | ### 大鹏鹏 85 | 86 | 本周由于在赶论文,所以自学的不多,主要看了《大话数据结构》中的第三、四章节,以及《数学之美》中的前5章。这两本书算是入门类型的书籍了,根据之前看别人的经验帖子,前者适合刷题吃力的小伙伴看,或者适合作为入门自然语言处理的启蒙教材。 87 | 88 | ### 安芯 89 | 90 | 最近对图像分析做了一个简单的小结,我个人把模型训练的相关流程简单的总结一下如下:个人研究loss和初始化对模型影响最大除模型结构之外。 91 | 92 | ![](https://mmbiz.qpic.cn/mmbiz_jpg/icmWrEONNM8VRFHtV4JBldxFmrwGeqd1ChYaicgibbXEE1rR8nwfJDqmaJ2ezUIkticC6Rib3ce0l98B1Uh81dZQCLw/0?wx_fmt=jpeg) 93 | 94 | ### 吕涛 95 | 96 | 本周刚开始接触机器学习,学习了贝叶斯,线性回归,决策树,KNN模型,模型的评价方法 97 | 1. 贝叶斯模型是基于概率的,通过贝叶斯方程和模糊处理,将事件的概率约等于已发生概率的积。 98 | 2. 线性回归主要采用广度摸索和深度搜索方法,对已发生事件对应的线性函数进行最优求解 99 | 3. 决策树主要通过求解不同分割点得信息熵之和,判定每次的最优分割点,最终生成决策树。 100 | 4. 模型评价主要通过不同纬度来进行,需要视情况而定,如pression,recall,auc等等 101 | 5. 知道了过拟合是什么意思,导致它产生的原因有很多,如数据太少,模型太复杂,数据分布,模型变化太快等等 102 | 103 | ## 疑问解答 104 | 105 | ### [lstm 激活函数为什么 sigmoid 和 tanh 同时存在](https://www.zhihu.com/question/46197687/answer/229098444) 106 | 107 | 其中一个原因如下:输入x经过sigmoid函数后均值在0.5左右,不利于后续激活函数的处理。 108 | 109 | 而tanh的输出在[-1,1]之间,因此相当于把输入的均值调整为0,便于后续处理。 110 | 111 | 因此,tanh一般来说总是比sigmoid函数效果更好。 112 | 113 | 除了一些特殊情况:比如你想要激活函数的输出值是一个概率时,显然sigmoid函数更好。 114 | 115 | ### 研究生阶段如何规划 116 | 117 | > 老师,您好。我现在大四学生,现在已经推免,本科和硕士专业为GIS(地理信息系统)。据我了解硕士老板是个大牛,但是其方向主要是系统应用开发,但我对数据科学这块比较感兴趣,将来也有读博打算,因为前期参加比赛和论文写作,对数据科学方面有一点了解,现在在系统的学着机器学习,请问研究生阶段该如何规划呢? 118 | 119 | 你这个问题首先存在以下方面考虑: 120 | - 第一:你是否真心喜欢你所在领域,能坚持研究几年。 121 | - 第二:你老板很牛是老板很牛,他只能会在你发论文和申请项目及开题帮助较大,写代码和推公式等活没人帮你干只有自己。 122 | - 第三:你已经推免说明成绩在前十自己自学能力ok这点自信还是要有,自信、多尝试、坚持是做好的思想基础。 123 | 系统开发和数据科学不冲突,数据科学只是系统开发一部分。GIS这个方向挺好可以做交通也可以搞地理和其他用途很广。 124 | - 第四:作为一名研究生快速成长的方式是完成自己科研任务同时选择学术方向还是工程方向的决定后再开始深入的做下去。 125 | - 第五:根据我的了解报送学生时间相对宽裕,我的建议第一年针对GIS方向完成毕业指标论文和三个大数据比赛并获奖及自己的研究生课程。第二年完成自己的系统及开发。第三年尽量在实习前做出整个基于机器学习的系统开发demo。 126 | 127 | 总结:以上的建议仅仅代表个人看法,这样做的好处 128 | - 能顺利工作和读博二选一都不影响。 129 | - 前一两年做好的数学基础在系统开发应用起来可以提高开发效率。 130 | - 面试的时候如果达到以上的水平根据我对各大公司和单位的可以直接拿到spp的提前批免得进入费力的系统面试阶段。 131 | 132 | 133 | 134 | ## 加入我们 135 | 136 | 公众号内回复「**自学**」,即可加入ML自学者俱乐部社群。可以投稿每周学习心得或者优质学习资料,助力团体共同学习进步。 137 | 138 | 139 | -------------------------------------------------------------------------------- /docs/doc_005.md: -------------------------------------------------------------------------------- 1 | ## 刊首语 2 | 3 | > 这里记录ML自学者群体,每周分享优秀的学习心得与资料。由于微信不允许外部链接,需要点击文末的「**阅读原文**」,才能访问文中的链接。 4 | 5 | 6 | 7 | ## 本期内容 8 | 9 | **论文阅读** 10 | 11 | - ACL2018:多语义词向量的编码 12 | - 阿里电商诉讼预测多任务模型 13 | - EMNLP2019: 短文本分类的异质图注意力网络 14 | 15 | **学习心得** 16 | 17 | - 小强:Encoder-Decoder 18 | - 君君:YOLO 框架学习 19 | - 昨夜星辰:词向量学习 20 | - 君君:研究图像模态转换模型 21 | - 奔腾:科大讯飞比赛总结 22 | - 曲奇:优化理论的多目标规划问题 23 | 24 | **疑问解答** 25 | 26 | - 特征工程中的归一化有什么作用 27 | - 如何解释准确率、召回率和F值 28 | - 特征抽取、特征选择、变化组合区别 29 | 30 | 31 | ## 论文阅读 32 | 33 | ### ACL2018:多语义词向量的编码 34 | 35 | 阅读论文 ACL2018 上的: Probabilistic FastText for Multi-Sense Word Embeddings 36 | 37 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8UjRl7p01URDfMnQSSsrzdP0Cm7VDZmp01wh6cHPaNLrq9iaySDEKtXeBsA6BCILXRwLsc9WeSF5Lg/0?wx_fmt=png) 38 | 39 | 已有方法不能很好的应对稀有词与词汇表没有的词的语义问题,文章提出来一种概率词模型,将高斯混合概率与FastText模型结合,具有灵活的子词结构。 40 | 41 | 高斯分量可以得到多义词意义上的分离,FastText子词结构获取到更多字符级信息与不确定的信息,从而提供了高质量的语义表达。文章模型在一些词相似度数据集上的表现优于之前的模型,在罕见词数据集和其他语言数据集上也有较好的效果。本文工作首次利用多模态嵌入来解决罕见词的问题。 42 | 43 | [论文地址](https://www.aclweb.org/anthology/P18-1001/) 44 | 45 | ### 阿里电商诉讼预测多任务模型 46 | 47 | 今天给大家分享一篇阿里使用多任务模型做电商诉讼预测的论文。论文地址:Legal Intelligence for E-commerce。 48 | 49 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8UjRl7p01URDfMnQSSsrzdPmUHvDBcibicTnhhXIODfG3PCfCZqIfp8CAjN7GX38gNVW0zYh707je2g/0?wx_fmt=png) 50 | 51 | 首先介绍一下文章背景,一般来说会先有电商纠纷(一般是在线的,所以此过程也称为ODR,online dispute resolution),如果买卖双方对纠纷处理结果不满意的话一般会通过律法途径将纠纷问题转为诉讼问题。而诉讼需要请律师(高额的费用),同时法官也需要收集各方面的信息(包括买卖方的历史数据及平台聊天记录等),这些都给诉讼处理带来了很大的困难。 52 | 53 | 那么诉讼预测会面临什么问题呢? 54 | 55 | LDJ(legal dispute judgement)任务在NLP领域做得相对较为成熟,但是电商纠纷/诉讼预测与LDJ还是有一定的区别,所以不能直接套用LDJ预测的方法来解决电商纠纷/诉讼预测任务,但是作者表示这两者有一定的相似度。 56 | 57 | 相对于纠纷数据来说,电商诉讼数据更为稀疏,也就是训练数据少。 58 | 59 | 总体上来说,作者使用了多任务网络的模型,纠纷数据训练底层表示,使用诉讼数据微调更上层的网络。 60 | 61 | 这篇文章会介绍好几次,这次先讲个大概吧。 62 | 63 | [论文地址](https://dl.acm.org/citation.cfm?id=3331212) 64 | 65 | ### EMNLP2019: 短文本分类的异质图注意力网络 66 | 67 | 短文本分类在新闻及微博等领域得到了广泛的应用。但是,目前的文本分类算法主要集中于长文本分类并且无法直接应用于短文本分类。这是由于短文本分类的两个独有挑战:数据的稀疏和歧义和标签数量较少。 68 | 69 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8UjRl7p01URDfMnQSSsrzdP7geof7uzmhSD2vACcxg9OO7X9g1GmeQJ51BUpSiaBtVOCtGrQaKxIDQ/0?wx_fmt=png) 70 | 71 | 针对上述两个挑战,本文创新地将短文本建模为异质图,通过图数据的复杂交互来解决数据稀疏和歧义带来的挑战。同时,本文提出了一种异质图注意力 HGAT 来学习短文本的表示并进行分类。HGAT 是一种半监督学习算法可以更好的适用于标签数量较少的场景,如短文本的分类。 72 | 73 | [论文地址](http://www.shichuan.org/doc/74.pdf) 74 | 75 | ## 学习心得 76 | 77 | ### 小强:Encoder-Decoder 78 | 本周在看 encoder–decoder,seq2seq,attention 相关的东西。 79 | 80 | 由于时间不够,先简单说几点收获,过几天发成文。 81 | 82 | encoder–decoder 是一个很大的范畴,不论编码和解码用的什么算法,只要是『编码–解码』的结构都算这个范畴。 83 | 84 | seq2seq 和 encoder–decoder很像。也是编码和解码的过程,不过范围更小,基本限定在了nlp和语音这种序列特征很强的。 85 | 86 | 如果说encoder–decoder是一种『有损压缩』,在把长文本转化为固定向量的过程会损失一些信息。那么attention就更倾向于无损压缩,更好的保留了信息。 87 | 88 | ### 君君:YOLO 框架学习 89 | 90 | 这周看了R-CNN,fast R-CNN,SPP,YOLOv1,YOLOv2的框架结构。觉得YOLO这么简单地模型能有这么高的精确率以及效率是真的厉害。 91 | 92 | 另外在darknet上跑了下YOLO的预测模型,好奇darknet是怎么用yolo.cfg构造tensorflow模型,就去一行一行看darknet源代码,看得人脑壳疼。看过之后莫名觉得代码能力level+1。 93 | 94 | 为了高效刷leetcode,找了本算法书籍补补算法代码基础(纯数学系毕业工作才接触的Python+深度学习,觉得硬算法方面太欠缺了),看得比较零散暂时没有总结。 95 | 96 | ### 昨夜星辰:词向量学习 97 | 98 | 最近在学词向量的发展史及代码实战。从 one-hot,词袋,tf-idf到分布式表示,如NNLM,以及后来的 word2vec,fasttext,glove,elmo,gpt。 99 | 100 | 在看到bert时,还是避免不了之前transformer等基础。因此在代码实战上阅读paper原文,掌握原理。希望将当前的基本打牢。 101 | 102 | ### 君君:研究图像模态转换模型 103 | 104 | 最近在研究图像模态转换的模型。从改进的condition cycle GAN ,到cycle GAN,再到Wasserstein cycle GAN。 105 | condition cycle GAN被放弃的原因正是因为condition,condition模块的存在使得预测(模态转换)过程必须具备当前图像的label,导致切图转换再还原这个流程走不通。 106 | 107 | cycle GAN训练过程中loss_D起伏波动无法很好收敛(尽管大多数类别图像模态转换已经很逼真,但还有少数类别无法完美转换),网上查找之后发现这个原因很有可能是因为GAN本身难收敛的原因,并且为了缓解这种情况已经有人提出了Wasserstein GAN(WGAN)以及WGAN_GP。打算试试Wasserstein cycle GAN这条路能不能走通。 108 | 109 | 中间为了改进cycle GAN,在github上找了好多基于基础GAN改进的condition GAN、Wasserstein GAN的相关实现代码。参考然后嫁接到自己模型上面,发现GAN的玩法真的是太多了。下面附上两个我觉得总结很到位的GAN链接。有兴趣的可以尝试参考[第一个链接](https://github.com/MASILab/SynSeg-Net)中的变种GAN,在[第二个链接](https://github.com/znxlwm/pytorch-generative-model-collections)中改进cycle GAN。 110 | 111 | ### 曲奇:优化理论的多目标规划问题 112 | 113 | 天津大学强化学习实验室同网易伏羲人工智能实验室、NTU 合作的 ASE 2019 论文《Wuji: Automatic Online Combat Game Testing Using Evolutionary Deep Reinforcement Learning》。 114 | 115 | 该论文主要融合了进化算法与深度强化学习算法,从多目标优化的角度,旨在解决大规模商业游戏的自动化智能测试问题,并荣获 ASE 2019 的最佳论文奖 (Distinguished Paper Award)。 116 | 117 | 118 | ### 奔腾:科大讯飞比赛总结 119 | 120 | 科大讯飞四个比赛总结 121 | - [AD分类决赛总结](https://blog.csdn.net/herosunly/article/details/102708654) 122 | - [工业寿命预测](https://blog.csdn.net/herosunly/article/details/102711266) 123 | - [大数据应用分类](https://blog.csdn.net/herosunly/article/details/102711596) 124 | - [移动反欺诈](https://blog.csdn.net/herosunly/article/details/102713094) 125 | 126 | 127 | 128 | ## 疑问解答 129 | 130 | #### [特征工程中的归一化有什么作用](https://www.zhihu.com/question/20455227/answer/325347915) 131 | 132 | 引入归一化,是由于在不同评价指标中,其量纲或者是量纲单位往往不同,变化区间处于不同的数量级,若不进行归一化,可能导致某些指标被忽视,影响到数据分析的结果。 133 | 134 | 所以,为了消除特征数据之间的量纲影响,需要进行归一化处理,已解决特征指标之间的可比性。原始数据经过归一化处理后,各指标处于同一数量级,以便进行综合对比评价。 135 | 136 | #### [如何解释准确率、召回率和F值](http://bookshadow.com/weblog/2014/06/10/precision-recall-f-measure/) 137 | 138 | 准确率和召回率是广泛用于信息检索和统计学分类领域的两个度量值,用来评价结果的质量。其中精度是检索出相关文档数与检索出的文档总数的比率,衡量的是检索系统的查准率;召回率是指检索出的相关文档数和文档库中所有的相关文档数的比率,衡量的是检索系统的查全率。 139 | 140 | 一般来说,Precision就是检索出来的条目(比如:文档、网页等)有多少是准确的,Recall就是所有准确的条目有多少被检索出来了。 141 | 142 | 正确率、召回率和 F 值是在鱼龙混杂的环境中,选出目标的重要评价指标。不妨看看这些指标的定义先: 143 | 144 | - 正确率 = 提取出的正确信息条数 / 提取出的信息条数 145 | - 召回率 = 提取出的正确信息条数 / 样本中的信息条数 146 | 147 | 两者取值在0和1之间,数值越接近1,查准率或查全率就越高。 148 | 149 | - F 值 = 正确率 * 召回率 * 2 / (正确率 + 召回率) (F 值即为正确率和召回率的调和平均值) 150 | 151 | ### [特征抽取、特征选择、变化组合区别](https://www.zhihu.com/question/20716506/answer/45658573) 152 | 153 | 特征抽取,一般是从原始数据中通过计算得到一些特征,如计算用户的购买力区间,平均每个月的购买次数。 154 | 特征选择:假设你抽取了100个特征,通过信息增益、互信息等等指标选择了最重要的30个用于建模; 155 | 特征变换:如有个特征是用户的年薪,但是这个年薪的区间太大,我们做了一个函数变换,如log(年薪)。 156 | 特征组合:如年龄区间+年薪区间做组合。 157 | 158 | 159 | 160 | ## 加入我们 161 | 162 | 公众号内回复「**自学**」,即可加入ML自学者俱乐部社群。可以投稿每周学习心得或者优质学习资料,助力团体共同学习进步。 163 | -------------------------------------------------------------------------------- /docs/doc_006.md: -------------------------------------------------------------------------------- 1 | ## 本期内容 2 | 3 | **论文阅读** 4 | 5 | - IEEE2017:用卷积神经网络做图像几何匹配 6 | - NAACL2018: 多种 Reward 提升文本摘要质量 7 | - Batch Normalization 原论文 8 | 9 | **学习心得** 10 | 11 | - 大鹏鹏:入门自然语言处理 12 | - 波特:统计学习方法优化问题探索 13 | - 安芯:视网膜启发式学习 14 | - 昨夜星辰:入门seq2seq模型 15 | - 大灵:了解迁移学习 16 | - 上邪:阅读Yann LeCun标志识别论文 17 | - yang:学习高斯混合模型 18 | 19 | 20 | ## 论文阅读 21 | 22 | ### IEEE2017:用卷积神经网络做图像几何匹配 23 | 24 | Convolutional Neural Network Architecture for Geometric Matching,这篇论文是Ignacio Rocco 发表在PAMI上的一篇文章,通过卷积神经网络的方式完成图像间的几何匹配。Ignacio Rocco目前正在巴黎高等教育学院Willow研究组攻读计算机视觉博士学位。 25 | 26 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8Vnku4WZxsJBYKdrk8CnMlclIMeB03y4g9mKUibzRlGqNqsQZiaI7fr9LY1CwczPrl6U2dVENQG7tibA/0?wx_fmt=png) 27 | 28 | 在这篇文章中作者在传统方法的基础上,提出了一种卷积神经网络架构,模仿标准匹配过程。首先,采用有效的可训练的神经网络特征替换标准的本地特征,这样会允许我们去处理匹配图像间外观的大变化;第二,开发了可训练的匹配和变换估计层,以更有效的方式处理噪声和错误匹配,模仿了特征匹配的良好做法。 29 | 30 | 最终结果是开发出卷积神经网络架构,可以处理较大的外观变化,因此适用于实例级和类别级的匹配问题。 31 | 32 | [论文地址](https://arxiv.org/abs/1703.05593) 33 | 34 | ### NAACL2018: 多种 Reward 提升文本摘要质量 35 | 36 | Multi-Reward Reinforced Summarization with Saliency and Entailment,是 NAACL2018 的一篇文章。 37 | 38 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8Vnku4WZxsJBYKdrk8CnMlcASOBoEjAd4bFpGHqzAvic506B73bwn9fWwibJMiagH7OAxMFx24MClx9Q/0?wx_fmt=png) 39 | 40 | 抽象文本摘要是将长文档压缩成简短摘要的任务,生成的摘要需要满足:关键词组的显著性(saliency),逻辑性(directed logical entailment)和非冗余性(non-redundancy)。为了解决这三个问题,作者提出了增强式的学习方法——采取了两种创新的reward function:ROUGESal和Entail,通过结合coveraged baseline,能够取得state-of-the-art的效果。其中,ROUGESal是ROUGE评测的改进版本,给摘要中重要词或者词组更高的reward;Entail对合乎原文档逻辑推理的摘要给予更高的reward。 41 | 42 | 此外,文章还提出了一种新颖有效的multi-reward方法,指的是在交替的mini-batch中,对多reward进行训练优化,得到了state-of-the-art的效果。 43 | 44 | [论文地址](https://www.aclweb.org/anthology/N18-2102.pdf) 45 | 46 | ### Batch Normalization 原论文 47 | 48 | Batch Normalization: Accelerating Deep Network Training by 49 | Reducing Internal Covariate Shift 50 | 51 | 论文的中心点:围绕着如何降低 internal covariate shift 进行的, 怎么用 batch normalization来解决。 52 | 53 | ![](https://mmbiz.qpic.cn/mmbiz_png/icmWrEONNM8Vnku4WZxsJBYKdrk8CnMlc9bU1JLqJpTZhXwia0ZRJYONkAxANCCfbk01YmiaCSzeAzbktHS48iaszA/0?wx_fmt=png) 54 | 55 | BN的基本思想:因为深层神经网络在做非线性变换前的激活输入值(就是那个x=WU+B,U是输入)随着网络深度加深或者在训练过程中,其分布逐渐发生偏移或者变动。之所以训练收敛慢,一般是整体分布逐渐往非线性函数的取值区间的上下限两端靠近(网络层数越深,反向传播的值浮动越大),所以这导致后向传播时低层神经网络的梯度消失,这是训练深层神经网络收敛越来越慢的本质原因,而BN就是通过一定的规范化手段,把每层神经网络任意神经元这个输入值的分布强行拉回到均值为0方差为1的标准正太分布而不是正态分布,其实就是把越来越偏的分布强制拉回比较标准的分布,这样使得激活输入值落在非线性函数对输入比较敏感的区域,这样输入的小变化就会导致损失函数较大的变化,意思是这样让梯度变大,避免梯度消失问题产生,而且梯度变大意味着学习收敛速度快,能大大加快训练速度。 56 | 57 | [论文地址](https://arxiv.org/abs/1502.03167) 58 | 59 | 60 | ## 学习心得 61 | 62 | 63 | ### 大鹏鹏:入门自然语言处理 64 | 65 | 本周所学如下: 66 | 67 | 1. 《大话数据结构》第五章串的部分内容,KMP算法有点不太好理解,当年校招面试也被问过 68 | 2. 《数学之美》第三章,了解了自然语言处理中概率平滑的方法:对于出现次数超过一定阈值的词,语料库中他们出现的频度就是概率估计;对于出现次数大于零小于阈值的词,使用“古德-图灵”估计之后的相对频度作为概率估计;而对于没有出现的词,用1减去以上两类概率估计可以得到 69 | 3. 观看网易云课堂《深度学习:算法到实战》课程第一章,[做的笔记](https://www.cnblogs.com/dapeng-bupt/p/11600932.html) 70 | 71 | 72 | ### 波特:统计学习方法优化问题探索 73 | 74 | 求解了统计学习方法中7章的习题7.2。在构造求解最优化问题时,联立的方程组无解。由于最小值在极值点或者边界点上求得,需要先求得所有的极小值点与边界上的点,选择使目标函数最小的点为优化问题的解。在方程组无解时(优化问题的解不为极值点),分别令各个变量等于零(即解在边界上),求出剩下的变量,获得多组可能的解;最后使目标函数最小的解为最优解。 75 | 76 | 77 | ### 安芯:视网膜启发式学习 78 | 79 | 视网膜启发式学习,这是我最近发现比较好的一个paper,原因:基于神经动力学系统和系统工程学研究其实很少,现在顶会都被灌水灌成太平洋了。针对底层研究这个论文是一个非常好的方向。 80 | 81 | ![](https://mmbiz.qpic.cn/mmbiz_jpg/icmWrEONNM8Vnku4WZxsJBYKdrk8CnMlcwQ1FAUTyGm3oqO9MghibpnUJF0w7QQqXPBtiavZx7kgsqwziaSA1MjRNw/0?wx_fmt=jpeg) 82 | 83 | ### 昨夜星辰:入门seq2seq模型 84 | 85 | 本周主要学习了seq2seq模型。传统的RNN有1Vn、nVn、nV1等模式,但有时我们想得到nVm的结果,比如机器翻译,输入“I am three years old”,输出“我三岁”,很明显输入是5个token,输出只有3个token。如果仅仅使用一个RNN模型,很难达到这种效果。因此,可采用encoder-decoder架构,seq2seq可认为是encoder-decoder的一种应用。Seq2seq简单来讲是用一个中间变量c连接左右两个RNN(也可以是RNN的变形,如LSTM、GRU,这里统称为RNN)。左边的RNN即encoder,这里和我们所学的RNN基本相同,即输入“I am three years old(以词向量的形式),最终我们可以输出y,也可以得到最后一层的隐态。[我写的博客笔记](https://blog.csdn.net/weixin_43178406/article/details/102855975) 86 | 87 | ### 大灵:了解迁移学习 88 | 89 | 这周主要在学习迁移学习。不过理论知识没怎么学,主要在用pytorch实践。主要是想实现用densenet进行迁移学习。但最后发现densnet确实不好弄。不如resnet易上手,或许这就是为什么用它的人挺少的原因之一吧。不过densenet比较好的一点是,我用他训练出来的模型都挺小的,就只有几百k(没有用预训练模型),普遍比我用其他网络小。不过得到的结果也稍微奇特一点。。。至少其他网络我得到的形状是圆的,而他是方的。估计是因为他的参数减得太少的缘故。 90 | 91 | ### 上邪:阅读Yann LeCun标志识别论文 92 | 93 | 看了一篇Yann LeCun的论文(Traffic Sign Recognition with Multi-Scale Convolutional Networks, 2011),来自德国交通标志牌的识别比赛(GTSRB)。不同于之后的Alex、VGG等大型CNN架构,这个模型架构很轻巧,只有几层,但是效果很好(准确率达到98.97%,超过人类识别率)。 94 | 95 | ![](https://mmbiz.qpic.cn/mmbiz_jpg/icmWrEONNM8Vnku4WZxsJBYKdrk8CnMlcq54CWgicV3oNb5DYycyRqtnpQS6LXKSqw1uNNcCHicWq817dA2IjQ1lg/0?wx_fmt=jpeg) 96 | 97 | ### yang:学习高斯混合模型 98 | 99 | 高斯混合模型(Gaussian Mixed Model)是一种比较常见的聚类方法,相比于 KMeans(硬聚类),GMM 模型是一种软聚类的方式,是概率密度的万能近似器(Universal Approximator),在这种意义下,任何平滑的概率密度都可以用具有足够多组件的高斯混合模型以任意精度来逼近。但是 GMM 并不能通过极大似然的方式得到模型的参数,而需要 EM(期望最大化)的求解最优参数解。高斯混合模型假设每个簇的数据都是符合高斯分布(正态分布)的,数据所呈现的分布就是各个簇的高斯分布按照一定比例叠加后的结果。 100 | 使用 EM 算法,假设所有数据的概率分布是由 K(一个超参数)个正态分布加权叠加而成的。GMM 算法有 3K 个参数(一种说法是 3K-1 个,因为是加权求和,权重之和为一,知道 K-1 个权重,剩下的一个权重就确定了)。 101 | 102 | E-step 计算每个样本对于每个每个正态分布的响应度,M-step 通过响应度来更新每个正态分布的权重,均值,协方差。 103 | 104 | Reference 105 | 1. 《统计学习方法》李航 106 | 2. 花书《深度学习》Ian Goodfellow / Yoshua Bengio 107 | 3. [徐亦达机器学习:Expectation Maximization EM算法](https://www.bilibili.com/video/av23901379?from=search&seid=16776432939996462284) 108 | 109 | 110 | ## 加入我们 111 | 112 | 公众号内回复「**自学**」,即可加入ML自学者俱乐部社群。可以投稿每周学习心得或者优质学习资料,助力团体共同学习进步。 113 | 114 | [上期精彩内容](https://mp.weixin.qq.com/s/qdL3OFZc7_ARI0LNmjK2Sw) 115 | 116 | 117 | --------------------------------------------------------------------------------