贝叶斯

文本主题模型之LDA(一) LDA基础

橙三吉。 提交于 2020-04-12 15:29:20
    文本主题模型之LDA(一) LDA基础      文本主题模型之LDA(二) LDA求解之Gibbs采样算法      文本主题模型之LDA(三) LDA求解之变分推断EM算法     在前面我们讲到了基于矩阵分解的LSI和NMF主题模型,这里我们开始讨论被广泛使用的主题模型:隐含狄利克雷分布(Latent Dirichlet Allocation,以下简称LDA)。注意机器学习还有一个LDA,即线性判别分析,主要是用于降维和分类的,如果大家需要了解这个LDA的信息,参看之前写的 线性判别分析LDA原理总结 。文本关注于隐含狄利克雷分布对应的LDA。 1. LDA贝叶斯模型     LDA是基于贝叶斯模型的,涉及到贝叶斯模型离不开“先验分布”,“数据(似然)”和"后验分布"三块。在 朴素贝叶斯算法原理小结 中我们也已经讲到了这套贝叶斯理论。在贝叶斯学派这里: 先验分布 + 数据(似然)= 后验分布     这点其实很好理解,因为这符合我们人的思维方式,比如你对好人和坏人的认知,先验分布为:100个好人和100个的坏人,即你认为好人坏人各占一半,现在你被2个好人(数据)帮助了和1个坏人骗了,于是你得到了新的后验分布为:102个好人和101个的坏人。现在你的后验分布里面认为好人比坏人多了。这个后验分布接着又变成你的新的先验分布,当你被1个好人(数据)帮助了和3个坏人(数据

谷歌开源Neural Tangents:简单快速训练无限宽度神经网络

浪子不回头ぞ 提交于 2020-04-12 12:08:37
无限宽的神经网络可以训练了?神经正切核果然可以发挥作用了。 选自Google AI Blog,机器之心编译,参与:Panda。 近日,谷歌一项研究成果在社区引发了关注,该研究宣称可通过 神经正切核 (Neural Tangent Kernel)使用贝叶斯推理或梯度下降分析式地训练无限宽度的神经网络。使用谷歌开源的软件库 Neural Tangents,这个过程不仅简单且快速,而且效果非常好,甚至只需 5 行代码就能一步到位地构建并训练这种无限宽度网络的集成模型!该论文已被 ICLR 2020 接收为 Spotlight 论文,相关链接见文末。 在自然语言处理、会话智能体和连接组学等许多领域,深度学习都已取得了广泛的成功,机器学习领域的研究图景也已经发生了变革。不过,仍还有一些有趣而又重要的问题有待解答,比如:为什么即使在过度参数化时,深度神经网络(DNN)也能取得非常好的泛化能力?深度网络的架构、训练和性能之间有何关系?如何提取出深度学习模型中的显著特征? 我们何以在近些年里取得了如此的进步?一大关键理论见解是:增加 DNN 的宽度能使 DNN 的行为更有规律可循,也就人更容易理解它们。近来的许多研究已经表明,宽度可无限扩增的 DNN 可以收敛成另一类更为简单的名为「高斯过程(Gaussian processes)」的模型。因此

统计学预测模型——通过 Python 代码实现时间序列数据分析

混江龙づ霸主 提交于 2020-04-11 18:55:19
在本篇中,我们将展示使用 Python 统计学模型进行时间序列数据分析。 问题描述 目标:根据两年以上的每日广告支出历史数据,提前预测两个月的广告支出金额。 原始数据:2017-01-01 到 2019-09-23 期间的每日广告支出。 数据准备:划分训练集和测试集。 df1 = data[['Date','Spend']].set_index('Date') train = df1.iloc[:933,:] test = df1.iloc[933:,:] test.shape,train.shape 测试集大小:(63,1);训练集大小:(933,1)。 1、综述 时间序列分析常用统计模型 单变量时间序列统计学模型,如:平均方法、平滑方法、有/无季节性条件的 ARIMA 模型。 多变量时间序列统计学模型,如:外生回归变量、VAR。 附加或组件模型,如:Facebook Prophet、ETS。 结构化时间序列模型,如:贝叶斯结构化时间序列模型、分层时间序列模型。 在本篇文章中,我们主要关注 SARIMA 和 Holt-winters 方法。 单变量时间序列统计学模型的关键要素 如果我们想要对时间序列数据进行上述统计学模型分析,需要进行一系列处理使得: (1)数据均值 (2)数据方差 (3)数据自协方差 这三个指标不依赖于时间项。即时间序列数据具有平稳性。

监督学习方法

血红的双手。 提交于 2020-04-11 13:52:06
学习资料:《统计学习方法 第二版》、《机器学习实战》、吴恩达机器学习课程 一. 感知机Proceptron 感知机是根据输入实例的特征向量 \(x\) 对其进行二类分类的线性分类模型: \(f(x)=\operatorname{sign}(w \cdot x+b)\) ,感知机模型对应于输入空间(特征空间)中的分离超平面 \(w \cdot x+b=0\) 。 感知机学习的策略是极小化损失函数: \(\min _{w, b} L(w, b)=-\sum_{x_{i} \in M} ;y_{i}\left(w \cdot x_{i}+b\right)\) ; 损失函数对应于误分类点到分离超平面的总距离。 感知机学习算法是基于随机梯度下降法的对损失函数的最优化算法。对于所有误分类的点,计算这些点到超平面的距离,目的是最小化这些点到平面的距离。 当训练数据集线性可分时,感知机学习算法存在无穷多个解,其解由于不同的初值或不同的迭代顺序而可能有所不同。 二. K近邻算法 K-近邻算法是一种 没有显示学习过程的算法 。数据集的可代表性就很重要! K-近邻原理:把数据集和输入实例点都映射到空间内,对给定的输入实例点,首先确定输入实例点的𝑘个最近邻训练实例点,这𝑘个训练实例点的类的多数就是预测的输入实例点的类。 K-近邻算法的 核心要素是K的值、距离度量(一般为欧式距离)、分类决策规则

机器学习概述

☆樱花仙子☆ 提交于 2020-04-11 13:21:39
学习资料:《统计学习方法第二版》第一章 一. 机器学习定义 机器学习就是计算机能够利用数据和统计方法提高系统性能的方法。 二. 机器学习分类 机器学习一般可以分为监督学习、无监督学习、半监督学习和强化学习。 三. 机器学习方法三要素 模型+策略+优化算法=机器学习方法 模型 在监督学习中模型就是要学习的 条件概率或决策函数 ,也就是输入空间到输出空间的映射,映射就是模型,模型就是这个映射。其中条件概率对应的是概率模型,决策函数对应的是非概率模型。 策略 机器学习的目标是从假设空间中找到一个 泛化错误较低的“理想”模型 ,即想找到一个针对这类问题的最优模型。 策略就是找到这个理想最优模型的准则! 常用的策略是损失函数和风险函数。损失函数是用来度量模型一次预测的好坏,风险函数是用来度量平均意义下模型预测的好坏。损失函数和风险函数越小,预测结果越精确。 常用的损失函数:0-1损失、平方损失函数(常用于回归问题)、交叉熵损失函数(常用于分类问题)、Hinge损失(常用于二分类问题)。 期望风险(模型的平均损失)、经验风险、结构风险。其中期望风险无法计算,一般采取下面两个策略: 经验风险最小化策略 (最大似然估计)、 结构风险最小化策略 (最大后验估计)。 最大似然参数估计(MLE,频率派):由生成的数据结果反推参数 \((P(X|\theta))\) ,假设参数均匀分布(“让数据自己说话”

机器学习概述

吃可爱长大的小学妹 提交于 2020-04-11 13:13:53
学习资料:《统计学习方法第二版》第一章 一. 机器学习定义 机器学习就是计算机能够利用数据和统计方法提高系统性能的方法。 二. 机器学习分类 机器学习一般可以分为监督学习、无监督学习、半监督学习和强化学习。 三. 机器学习方法三要素 模型+策略+优化算法=机器学习方法 模型 在监督学习中模型就是要学习的 条件概率或决策函数 ,也就是输入空间到输出空间的映射,映射就是模型,模型就是这个映射。其中条件概率对应的是概率模型,决策函数对应的是非概率模型。 策略 机器学习的目标是从假设空间中找到一个 泛化错误较低的“理想”模型 ,即想找到一个针对这类问题的最优模型。 策略就是找到这个理想最优模型的准则! 常用的策略是损失函数和风险函数。损失函数是用来度量模型一次预测的好坏,风险函数是用来度量平均意义下模型预测的好坏。损失函数和风险函数越小,预测结果越精确。 常用的损失函数:0-1损失、平方损失函数(常用于回归问题)、交叉熵损失函数(常用于分类问题)、Hinge损失(常用于二分类问题)。 期望风险(模型的平均损失)、经验风险、结构风险。其中期望风险无法计算,一般采取下面两个策略: 经验风险最小化策略 (最大似然估计)、 结构风险最小化策略 (最大后验估计)。 最大似然参数估计(MLE,频率派):由生成的数据结果反推参数 \((P(X|\theta))\) ,假设参数均匀分布(“让数据自己说话”

监督学习方法

蓝咒 提交于 2020-04-11 12:49:33
学习资料:《统计学习方法 第二版》、《机器学习实战》、吴恩达机器学习课程 一. 感知机Proceptron 感知机是根据输入实例的特征向量 \(x\) 对其进行二类分类的线性分类模型: \(f(x)=\operatorname{sign}(w \cdot x+b)\) ,感知机模型对应于输入空间(特征空间)中的分离超平面 \(w \cdot x+b=0\) 。 感知机学习的策略是极小化损失函数: \(\min _{w, b} L(w, b)=-\sum_{x_{i} \in M} ;y_{i}\left(w \cdot x_{i}+b\right)\) ; 损失函数对应于误分类点到分离超平面的总距离。 感知机学习算法是基于随机梯度下降法的对损失函数的最优化算法。对于所有误分类的点,计算这些点到超平面的距离,目的是最小化这些点到平面的距离。 当训练数据集线性可分时,感知机学习算法存在无穷多个解,其解由于不同的初值或不同的迭代顺序而可能有所不同。 二. K近邻算法 K-近邻算法是一种 没有显示学习过程的算法 。数据集的可代表性就很重要! K-近邻原理:把数据集和输入实例点都映射到空间内,对给定的输入实例点,首先确定输入实例点的𝑘个最近邻训练实例点,这𝑘个训练实例点的类的多数就是预测的输入实例点的类。 K-近邻算法的 核心要素是K的值、距离度量(一般为欧式距离)、分类决策规则

CV_Daily Issue 20

不羁的心 提交于 2020-04-11 09:40:52
CV_Daily Issue 20 author:xyang [2019 CVPR oral + Active Learning] Learning Loss for Active Learning 随着更多注释数据,深度神经网络的性能得到改善。 问题是注释的预算是有限的。 对此的一个解决方案是主动学习,其中模型要求人们注释其认为不确定的数据。 已经提出了各种最近的方法来将主动学习应用于深度网络,但是大多数方法要么针对其目标任务而设计,要么对于大型网络而言计算效率低。 在本文中,我们提出了一种新颖的主动学习方法,该方法简单但与任务无关,并且可以与深度网络一起高效地工作。 我们将一个名为“损耗预测模块”的小参数模块附加到目标网络,并学习它以预测未标记输入的目标损失。 然后,该模块可以建议目标模型可能产生错误预测的数据。 这种方法与任务无关,因为无论目标任务如何,都可以从单一损失中学习网络。 我们通过最近的网络架构,通过图像分类,对象检测和人体姿态估计来严格验证我们的方法。 结果表明,我们的方法在任务上始终优于以前的方法。 [2019 CVPR oral ]Striking the Right Balance with Uncertainty 在不平衡数据集上学习无偏模型是一项重大挑战。 稀有类往往在分类空间中得到集中表示,这阻碍了学习边界向新测试示例的泛化。 在本文中

参考《机器学习实战》高清中文PDF+高清英文PDF+源代码

我的未来我决定 提交于 2020-04-11 07:52:22
机器学习是人工智能研究领域中一个极其重要的研究方向,在现今的大数据时代背景下,捕获数据并从中萃取有价值的信息或模式,成为各行业求生存、谋发展的决定性手段,这使得这一过去为分析师和数学家所专属的研究领域越来越为人们所瞩目。 入门建议参考《机器学习实战》,分为4个部分,分别是分类(有监督学习,包括KNN/决策树/朴素贝叶斯/逻辑斯蒂回归/svm/改变样本权重的bagging和adaboosting)、回归(有监督学习,线性回归、局部加权、特征维度比样本个数多时缩减系数,如岭回归、lasso等,树回归,这块掌握不太好)、无监督学习(kmeans、apriori/fp-growth)以及其他工具(PCA/SVD/MAPREDUCE)。 学习参考: 《机器学习实战》高清中文版, 339页,带目录书签,文字可复制;高清英文版, 382页,带目录书签,文字可复制; 中英文两版对比学习。讲解详细并配有源代码。 网盘下载: http://106.13.73.98 ![](https://img2018.cnblogs.com/other/1499715/201906/1499715-20190604164225573-1297509638.png) 来源: oschina 链接: https://my.oschina.net/u/4258425/blog/3228795

过拟合问题

感情迁移 提交于 2020-04-11 02:15:08
本文作者:HelloDeveloper 很多人说,看了再多的文章,可是没有人手把手地教授,还是很难真正地入门AI。为了将AI知识体系以最简单的方式呈现给你,从这个星期开始,芯君邀请AI专业人士开设“周末学习课堂”——每周就AI学习中的一个重点问题进行深度分析,课程会分为理论篇和代码篇,理论与实操,一个都不能少! 读芯术,一个专注年轻人的AI学习与发展平台(ID:AI_Discovery)。 来,退出让你废寝忘食的游戏页面,取消只有胡吃海塞的周末聚会吧。未来你与同龄人的差异,也许就从每周末的这堂AI课开启了! 全文共 4078 字,预计学习时长 10 分钟 同学们,你们是否对过拟合问题百思不得其解?很有可能你跟曾经的我一样,踏入了一个误区。 一开始,我在用自己学到的各种模型对数据做预测时,有时候自己的模型与训练数据拟合的非常好,但在测试样例中却表现的很糟糕。 是模型不够好?数据有问题? 于是我就换用更复杂的模型,在神经网络中也尝试不断地增加层数,结果模型与训练数据拟合的越来越好,但在测试样例中表现的越来越糟糕。 这是我曾经踏入的一个误区,总以为模型和算法是机器学习的核心,不知不觉就陷入了所谓的过拟合(Overfitting)陷阱,如果在机器学习中真的有一个不得不谈的话题,那必定是过拟合。 事实上,在整个机器学习中,哪怕不懂决策树,不懂贝叶斯模型,不懂支持向量机