机器学习相关博客收藏(KL 散度、信息熵、谱聚类、EM、Isolation Kernel、iForest、元学习、小样本学习、课程学习)
“Everything should be made as simple as possible but no simpler”, Albert Einstein
知识点讲解
数学技巧
- 一种通常情况下三对角行列式的解法
Dn=∣bc0…000abc…0000ab…000⋮⋮⋮⋱⋮⋮⋮000…abc000…0ab∣D_{n}=\left|\begin{array}{ccccccc} b & c & 0 & \ldots & 0 & 0 & 0 \\ a & b & c & \ldots & 0 & 0 & 0 \\ 0 & a & b & \ldots & 0 & 0 & 0 \\ \vdots & \vdots & \vdots & \ddots & \vdots & \vdots & \vdots \\ 0 & 0 & 0 & \ldots & a & b & c \\ 0 & 0 & 0 & \ldots & 0 & a & b \end{array}\right| Dn=∣∣∣∣∣∣∣∣∣∣∣∣∣ba0⋮00cba⋮000cb⋮00………⋱……000⋮a0000⋮ba000⋮cb∣∣∣∣∣∣∣∣∣∣∣∣∣
KL 散度
KLKLKL 散度是一种衡量两个分布匹配程度的方法,KLKLKL 散度越小,两个分布之间的匹配就越好。地址
KLKLKL 散度大于等于 0,当两个分布一致时等于 0:
KL(f∥g)=∫f(x)ln(f(x)g(x))dx=−∫f(x)ln(g(x)f(x))dx≥−∫f(x)(g(x)f(x)−1)dx=−∫g(x)−f(x)dx=0\begin{aligned} & \ KL(f\|g) \\ =& \int f(x) \ln (\frac{f(x)}{g(x)}) d x \\ =&-\int f(x) \ln (\frac{g(x)}{f(x)}) d x \\ \geq &-\int f(x)\left(\frac{g(x)}{f(x)}-1\right) d x \\ =&-\int g(x)-f(x) d x \\ =& \ 0 \end{aligned} ==≥== KL(f∥g)∫f(x)ln(g(x)f(x))dx−∫f(x)ln(f(x)g(x))dx−∫f(x)(f(x)g(x)−1)dx−∫g(x)−f(x)dx 0
信息熵
Entropy, in other words, is a measure of uncertainty.
H(x)=−∑ip(xi)log2p(xi)H(\textbf{x})=-\sum_ip(x_i)\log_2p(x_i) H(x)=−i∑p(xi)log2p(xi)
其中 log2(1p(xi))\log_2(\displaystyle\frac{1}{p(x_i)})log2(p(xi)1) 可以看作是对「稀有度」的二进制编码,越「稀有」则编码长度越长。
总的来说,H(x)H(\textbf{x})H(x) 衡量的是事件 x\textbf{x}x 的期望「稀有度」编码长度,事件 x\textbf{x}x 越稀有,则其不确定性越大,其数值也越大。
当 x\textbf{x}x 为均匀分布时,每一种可能事件概率一致,因此不确定性最强,信息熵数值最大。
元学习
元学习 (Meta Learning - learn to learn),即 “学会学习”。
MAML
MAML:使模型自己学会初始化
- 初始有多个训练任务、测试任务,每个任务都包含训练数据 (Support Set) 和测试数据 (Query Set)
- 初始化 meta 网络参数,执行迭代 “预训练”
- 采样一个训练任务 a,将 meta 网络参数赋给任务 a 的网络(结构均一致)
- 使用任务 a 的 Support Set,基于该任务学习率,进行一次优化,并更新任务 a 网络参数
- 使用任务 a 的 Query Set,计算基于该任务 loss 的梯度
- 使用该梯度,基于 meta 学习率,更新 meta 网络参数
- 采样一个训练任务 b…
- 测试时,使用测试任务的 Support Set 微调,在 Query Set 上测试
meta learning 与 model pre-training 区别:
- 元学习使用任务在训练数据上更新一次后,在测试数据上的梯度来更新 meta 网络
- 模型预训练使用任务在训练数据上第一次的梯度来更新 model 网络
MAML 是典型的 optimization based meta-learning,即通过之前大量的相似任务的学习,给网络模型学习到一组不错的 / 有潜力的 / 比较万金油的参数,使用这组参数作为初始值,在特定任务上进行训练,只需要微调几次就可以在当前的新任务上收敛
参考资料:
- 一文入门元学习(Meta-Learning)(附代码)
- 元学习——MAML论文详细解读
小样本学习
N-ways, K-shot:N 个类别,每个类别有 K 个数据
小样本学习 (few shot learning),可以说是 meta learning 在监督学习上的一个典型应用,当然小样本学习也可以用其它方法,但目前基本上绝大多数小样本学习都用的元学习
基于 meta learning 的小样本学习思想:
- 上游使用大量相关任务数据学得一个模型,获得先验知识
- 下游仅使用小样本数据即可使模型收敛到一个比较好的解
课程学习
出发点:
- 课程学习 (Curriculum learning, CL) 最早由 Bengio 提出,是一种训练策略,模仿人类学习过程,主张让模型从易到难进行学习,此处指样本学习的难度
策略框架的两大部件:
- 难度测量器 (Difficulty Measurer)
- 得到一个 ranking function,对每条数据、每个任务给出其 learning priority
- 训练调度器 (Training Scheduler)
- 确实什么时候把 Hard data 输入训练,以及每次放多少
课程学习方法分类:
相关联系:
- 课程学习可与迁移学习中的样本选择紧密结合
参考资料:
- A Survey on Curriculum Learning
- 一篇综述带你全面了解课程学习(Curriculum Learning)
机器学习算法 [杂]
- 谱聚类
- EM算法理解的九层境界
- Isolation Kernel、iForest
讲座
《机器学习理论的回顾与展望》
2017 年,北京大学教授王立威在中国人工智能学会AIDL第二期上带来的主题报告,共分为以下四部分:
- 研究机器学习理论的意义
- “非常典型的机器学习的过程:收集数据、建模、做出预测”
- “研究机器学习理论的目的绝对不是为了证明一个算法的边界如何,而是为了提供对机器学习问题的洞察和理解”
- VC Theory
- “VC 理论告诉我们,假如从一个侯选的集合里选择一个模型,要想学好,所需要的数据量一定要和模型的复杂程度呈正相关”
- “VC 维度刻画的是从一个什么样的模型集合中去训练,刻画的是模型集合的复杂程度,它研究的是结构的性质”
- 数据量比 VC 维度小太多,则容易过拟合;数据量大太多则容易欠拟合
- Margin Theory
- “对深度学习来说,最有价值的学习理论一定是在刻画深度学习算法本身的性质”
- “对于分类结果,千万不要只看训练错误率这么一个简单的数字,要关注Margin。Margin代表了置信度,而置信度对泛化能力有相当重大的作用”
- “Margin Theory 告诉大家要更关注算法的信息,算法会输出很多置信度方面的信息”
- Algorithmic Stability
- “稳定的算法会有更好的泛化能力”
机器学习相关博客收藏(KL 散度、信息熵、谱聚类、EM、Isolation Kernel、iForest、元学习、小样本学习、课程学习)相关推荐
- 分享丨国外20个机器学习相关博客推荐
概述 最近一直在学习机器学习相关的知识,今天我就把我平时看到的一些国外的关于机器学习的博客和新闻站,分享给大家. Machine Learning - Reddit 网址:点击前往 介绍:关于大名 ...
- 机器学习算法 - 博客收藏
前言 如果你对这篇文章感兴趣,可以点击「[访客必读 - 指引页]一文囊括主页内所有高质量博客」,查看完整博客分类与对应链接. -- "Everything should be made as ...
- 即日起更新机器学习相关博客
2019独角兽企业重金招聘Python工程师标准>>> 机器学习 转载于:https://my.oschina.net/u/3397950/blog/1572394
- 自然语言处理与机器学习技术博客、学习资料精选[附网盘地址]
自然语言处理与机器学习技术博客.学习资料精选! 首先,恭喜点开了这篇文章的读者,本文所提供的资料是免费的,小编不卖资料,是赠送资料! 今天咱们的学习社区里有学员提出要推荐一些NLP方面的博客.站点,因 ...
- java ltp4j_博客 | 收藏 | 100多个DL框架、AI库、ML库、NLP库、CV库汇总,建议收藏!...
原标题:博客 | 收藏 | 100多个DL框架.AI库.ML库.NLP库.CV库汇总,建议收藏! 本文原载于微信公众号:AI部落联盟(AI_Tribe),AI研习社经授权转载.欢迎关注 AI部落联盟 ...
- 【camera】自动泊车-视觉车位检测相关资料汇总(论文、数据集、源代码、相关博客、演示demo)(1)
[camera]自动泊车-视觉车位检测相关资料汇总(论文.数据集.源代码.相关博客.演示demo)parking slot detection 论文 2020论文 2019论文 2018论文 2017 ...
- 后端技术流大神博客收藏
团队技术博客 淘宝UED淘宝用户体验团队 淘宝核心系统淘宝核心系统团队博客 阿里巴巴数据库团队专注数据库管理开发运维 淘宝通用产品专注JAVA技术 淘宝QA致力于做测试的行业标准 淘宝搜索技术关注技术 ...
- [博客阅读] 相关博客阅读
文章阅读,从点到面,由浅到深. Vue相关博客阅读 [1] 关于 Vue.proxyTable 是干什么的?以及如何配置? - 简书 [2] Vue 简单状态管理-store模式 - lovin - ...
- 机器学习:Kullback-Leibler Divergence (KL 散度)
今天,我们介绍机器学习里非常常用的一个概念,KL 散度,这是一个用来衡量两个概率分布的相似性的一个度量指标.我们知道,现实世界里的任何观察都可以看成表示成信息和数据,一般来说,我们无法获取数据的总体, ...
- U3D -- 一些知识点和优秀博客收藏
1. 场景与工程 Project(工程)与Scene(场景)是不同的概念,一个项目工程可包含多个场景,而每个场景是唯一的.例如通关游戏,项目就是整个游戏,场景就是游戏中的各个关卡. 2. 图层的个数 ...
最新文章
- 网站颜色搭配的好网站。
- iPhone常用设置
- 为女儿示范的两张石膏像素描
- .balignl 16,0xdeadbeef浅析
- 如何导入maven源文件_如何正确导入maven项目到eclipse?
- 在modelarts上部署mask-rcnn模型
- react 流程图框架_【赠书】Preact(React)核心原理详解Preact(React) 核心原理解析...
- sklearn自定义评价函数
- CodeForces - 946C String Transformation
- QTP鼠标点击和浏览器事件的动态切换
- ul1581标准_UL 1581电线电缆燃烧试验
- ArcGIS裁剪时警告 warning001003:Datum conflict between input and output
- 存算一体文献阅读笔记二:XNOR-RRAM architecture for BNN from Shimeng Yu in ASU 2017
- c语言程序发生算术溢出,谈谈C语言的溢出
- MIT oracle ma 信号线,美国 MIT Oracle MA-X Phono唱臂线 独家Multipole技术
- 【寒假每日一题】剪绳子(个人练习)详细题解+推导证明(第六天)
- c盘扩容(亲测有效)+软件已备好
- AI绘画火了!一文看懂背后技术原理
- 基于多项式螺旋曲线的轨迹优化
- 记录一次es7.8.1报错解决过程 unknown key [column] for create index
热门文章
- 关于Jquery ajax调用一般处理程序Handler报500 错误(Internal Server Error)解决办法
- 《几何与代数导引》习题1.34.1
- C++day02 学习笔记
- html 强制占据一行,html – 如何强制内联div保持在同一行?
- java7创建线程_Java 并发编程学习(七):正确地创建线程池
- c语言递归1到10联程,为什么这个递归能输出1到10
- python入门容易进阶难_为什么Python入门容易,精通却很难!Python进阶之路!
- 数学问题(三):最小公倍数、最大公约数
- linux5.4获取root权限,gcc++漏洞 普通用户获取root权限
- ctf 改变图片高度_在Unity中 改变地形(Terrain),并加上水面、树、草地、材质(地板上色)...