概率分布

一文搞懂交叉熵损失

痞子三分冷 提交于 2019-12-20 06:12:42
本文从信息论和最大似然估计得角度推导交叉熵作为分类损失函数的依据。 从熵来看交叉熵损失 信息量 信息量来衡量一个事件的不确定性,一个事件发生的概率越大,不确定性越小,则其携带的信息量就越小。 设 \(X\) 是一个离散型随机变量,其取值为集合 \(X = {x_0,x_1,\dots,x_n}\) ,则其概率分布函数为 \(p(x) = Pr(X = x),x \in X\) ,则定义事件 \(X = x_0\) 的信息量为: \[ I(x_0) = -\log(p(x_0)) \] 当 \(p(x_0) = 1\) 时,该事件必定发生,其信息量为0. 熵 熵用来衡量一个系统的混乱程度,代表系统中信息量的总和;熵值越大,表明这个系统的不确定性就越大。 信息量是衡量某个事件的不确定性,而熵是衡量一个系统(所有事件)的不确定性。 熵的计算公式 \[ H(x) = -\sum_{i=1}^np(x_i)\log(p(x_i)) \] 其中, \(p(x_i)\) 为事件 \(X=x_i\) 的概率, \(-log(p(x_i))\) 为事件 \(X=x_i\) 的信息量。 可以看出,熵是信息量的期望值,是一个随机变量(一个系统,事件所有可能性)不确定性的度量。熵值越大,随机变量的取值就越难确定,系统也就越不稳定;熵值越小,随机变量的取值也就越容易确定,系统越稳定。 相对熵

一文详尽系列之逻辑回归

限于喜欢 提交于 2019-12-15 00:44:07
模型介绍 Logistic Regression 是一个非常经典的算法,其中也包含了非常多的细节,曾看到一句话:如果面试官问你熟悉哪个机器学习模型,可以说 SVM,但千万别说 LR,因为细节真的太多了。 Logistic Regression 虽然被称为回归,但其实际上是分类模型,并常用于二分类。Logistic Regression 因其简单、可并行化、可解释强深受工业界喜爱。 Logistic 回归的本质是:假设数据服从这个分布,然后使用极大似然估计做参数的估计。 1.1 Logistic 分布 Logistic 分布是一种连续型的概率分布,其 分布函数 和 密度函数 分别为: 其中, 表示 位置参数 , 为 形状参数 。我们可以看下其图像特征: Logistic 分布是由其位置和尺度参数定义的连续分布。Logistic 分布的形状与正态分布的形状相似,但是 Logistic 分布的尾部更长,所以我们可以使用 Logistic 分布来建模比正态分布具有更长尾部和更高波峰的数据分布。在深度学习中常用到的 函数就是 Logistic 的分布函数在 的特殊形式。 1.2 Logistic 回归 之前说到 Logistic 回归主要用于分类问题,我们以二分类为例,对于所给数据集假设存在这样的一条直线可以将数据完成线性可分。 决策边界可以表示为 ,假设某个样本点 那么可以判断它的类别为

深度学习入门之数学基础概念

独自空忆成欢 提交于 2019-12-06 16:33:48
深度学习之线代复习 标量、向量、矩阵和张量 标量(scalar):一个标量就是一个单独的数。 向量:一个向量是一列数,这些数是有序排列的。我们可以把向量看作空间中的点,每个元素是不同坐标轴上的坐标。 矩阵:矩阵是一个二维数组,其中的每一个元素被两个索引(而非 一个)所确定。 张量(tensor):在某些情况下,我们会讨论坐标超过两维的数组。一般地,一 个数组中的元素分布在若干维坐标的规则网格中,我们称之为张量。 矩阵的向量相乘 在深度学习中, 我们也使用一些不那么常规的符号。我们允许矩阵和向量相 加,产生另一个矩阵:C = A + b,其中 C i , j C_{i,j} C i , j ​ = A i , j A_{i,j} A i , j ​ + b j b_j b j ​ 。换言之,向量 b 和矩阵 A 的每一行相加。这个简写方法使我们无需在加法操作前定义一个将向量 b 复制 到每一行而生成的矩阵。这种隐式地复制向量 b 到很多位置的方式,被称为广播。 A ⊙ B(dot product)被称为元素对应乘积(element-wise product)或者Hadamard乘积(Hadamard product) 矩阵乘积满足分配律,结合率,但不一定满足AB=BA的交换律。 单位矩阵和逆矩阵 任意 向量和单位矩阵相乘,都不会改变。我们将保持 n 维向量不变的单位矩阵记作 I n

HMM隐马尔可夫模型详解

折月煮酒 提交于 2019-12-06 14:14:24
1 隐马尔可夫模型HMM 隐马尔科夫模型(Hidden Markov Model,以下简称HMM)是比较经典的机器学习模型了,它在语言识别,自然语言处理,模式识别等领域得到广泛的应用。 当然,随着目前深度学习的崛起,尤其是 RNN , LSTM 等神经网络序列模型的火热,HMM的地位有所下降。 但是作为一个经典的模型,学习HMM的模型和对应算法,对我们解决问题建模的能力提高以及算法思路的拓展还是很好的。 1.1 什么样的问题需要HMM模型 首先我们来看看什么样的问题解决可以用HMM模型。 使用HMM模型时我们的问题一般有这两个特征: 1)我们的问题是基于序列的,比如时间序列,或者状态序列。 2)我们的问题中有两类数据,一类序列数据是可以观测到的,即观测序列;而另一类数据是不能观察到的,即隐藏状态序列,简称状态序列。 有了这两个特征,那么这个问题一般可以用HMM模型来尝试解决。这样的问题在实际生活中是很多的。比如:我现在在打字写博客,我在键盘上敲出来的一系列字符就是观测序列,而我实际想写的一段话就是隐藏序列,输入法的任务就是从敲入的一系列字符尽可能的猜测我要写的一段话,并把最可能的词语放在最前面让我选择,这就可以看做一个HMM模型了。再举一个,我在和你说话,我发出的一串连续的声音就是观测序列,而我实际要表达的一段话就是状态序列,你大脑的任务

深度学习之Attention Model(注意力模型)

旧城冷巷雨未停 提交于 2019-12-06 10:02:35
引自:https://www.cnblogs.com/jiangxinyang/p/9367497.html 深度学习之Attention Model(注意力模型) 1、Attention Model 概述   深度学习里的Attention model其实模拟的是人脑的注意力模型,举个例子来说,当我们观赏一幅画时,虽然我们可以看到整幅画的全貌,但是在我们深入仔细地观察时,其实眼睛聚焦的就只有很小的一块,这个时候人的大脑主要关注在这一小块图案上,也就是说这个时候人脑对整幅图的关注并不是均衡的,是有一定的权重区分的。这就是深度学习里的Attention Model的核心思想。   人脑的注意力模型,说到底是一种资源分配模型,在某个特定时刻,你的注意力总是集中在画面中的某个焦点部分,而对其它部分视而不见。 2、Encoder-Decoder框架   所谓encoder-decoder模型,又叫做编码-解码模型。这是一种应用于seq2seq问题的模型。seq2seq问题简单的说,就是根据一个输入序列x,来生成另一个输出序列y。常见的应用有机器翻译,文档提取,问答系统等。Encoder-Decoder模型中的编码,就是将输入序列转化成一个固定长度的向量;解码,就是将之前生成的固定向量再转化成输出序列。   Encoder-Decoder(编码-解码)是深度学习中非常常见的一个模型框架

信息论小记

六月ゝ 毕业季﹏ 提交于 2019-12-05 16:40:40
知道一堆词汇里各个字出现的概率p i ,则对这些字的最优编码下各字的位长(也即每个字包含的信息)为: 香农公式 : ,知道各字的位长后,可依次给他们编码0、10、110... 这些字的平均编码长度为(也即信息量,或称信息熵): 信息熵 : 总结:信息是不确定性的度量,不确定性体现在概率分布上:概率分布越散,不确定性越大,从而信息量越大 来源: https://www.cnblogs.com/z-sm/p/11933813.html

概率分布

扶醉桌前 提交于 2019-12-05 12:16:19
基本概念 随机变量 在做实验时,常常是相对于试验结果本身而言,我们主要还是对结果的某些函数感兴趣。 例如,在掷骰子时,我们常常关心的是两颗骰子的点和数,而并不真正关心其实际结果; 就是说,我们关心的也许是其点和数为7,而并不关心其实际结果是否是(1,6)或(2,5)或(3,4)或(4,3)或(5,2)或(6,1)。 我们关注的这些量,或者更形式的说,这些定义在样本空间上的实值函数,称为随机变量。 古典概率 概率 依其计算方法不同,可分为古典概率、 试验概率 和 主观概率 人们最早研究概率是从 掷硬币 、 掷骰子 和摸球等游戏和赌博中开始的。 这类游戏有两个共同特点: 一是试验的 样本空间 (某一试验全部可能结果的各 元素组成 的集合)有限,如掷硬币有正反两种结果,掷骰子有6种结果等; 二是试验中每个结果出现的可能性相同,如硬币和 骰子 是均匀的前提下,掷硬币出现正反的可能性各为1/2,掷骰子出出各种 点数 的可能性各为1/6,具有这两个特点的 随机试验 称为 古典概型 或等可能概型。 计算古典概型概率的方法称为概率的古典定义或古典概率。 定义: 关于古典 概率 是以这样的假设为基础的,即 随机现象 所能发生的事件是有限的、互不相容的,而且每个 基本事件 发生的可能性相等。 例如,抛掷一枚平正的硬币,正面朝上与反面朝上是唯一可能出现的两个基本事件,且互不相容。

深度学习与计算机视觉(12)_tensorflow实现基于深度学习的图像补全

倾然丶 夕夏残阳落幕 提交于 2019-12-05 10:32:16
原文地址: Image Completion with Deep Learning in TensorFlow by Brandon Amos 原文翻译与校对: @MOLLY && 寒小阳 (hanxiaoyang.ml@gmail.com) 时间:2017年4月。 出处: http://blog.csdn.net/han_xiaoyang/article/details/70214565 声明:版权所有,转载请联系作者并注明出 简介 第一步:将图像理解为一个概率分布的样本 你是怎样补全缺失信息的呢? 但是怎样着手统计呢?这些都是图像啊。 那么我们怎样补全图像? 第二步:快速生成假图像 在未知概率分布情况下,学习生成新样本 [ML-Heavy] 生成对抗网络(Generative Adversarial Net, GAN) 的架构 使用G(z)生成伪图像 [ML-Heavy] 训练DCGAN 现有的GAN和DCGAN实现 [ML-Heavy] 在Tensorflow上构建DCGANs 在图片集上跑DCGAN 第三步:找到用于图像补全最好的伪图像 使用 DCGAN 进行图像补全 [ML-Heavy] 到 pgpg 的投影的损失函数 [ML-Heavy] 使用tensorflow来进行DCGAN图像补全 补全图像 结论 简介 内容识别填充(译注: Content-aware fill

MNIST 手写数字识别(一)

不羁的心 提交于 2019-12-05 09:04:02
MNIST 手写数字识别模型建立与优化 本篇的主要内容有: TensorFlow 处理MNIST数据集的基本操作 建立一个基础的识别模型 介绍 S o f t m a x Softmax S o f t m a x 回归以及交叉熵等 MNIST是一个很有名的手写数字识别数据集(基本可以算是“Hello World”级别的了吧),我们要了解的情况是,对于每张图片,存储的方式是一个 28 * 28 的矩阵,但是我们在导入数据进行使用的时候会自动展平成 1 * 784(28 * 28)的向量,这在TensorFlow导入很方便,在使用命令下载数据之后,可以看到有四个数据集: 模型 来看一个最基础的模型建立,首先了解TensoFlow对MNIST数据集的一些操作 1.TensorFlow 对MNIST数据集的操作 下载、导入 from tensorflow.examples.tutorials.mnist import input_data # 第一次运行会自动下载到代码所在的路径下 mnist = input_data.read_data_sets('location', one_hot=True) # location 是保存的文件夹的名称 打印MNIST数据集的一些信息,通过这些我们就可以知道这些数据大致如何使用了 # 打印 mnist 的一些信息 from tensorflow

贝叶斯统计概要(待修改)

こ雲淡風輕ζ 提交于 2019-12-05 05:23:20
一:频率派,贝叶斯派的哲学 现在考虑一个最最基本的问题,到底什么是概率?当然概率已经是在数学上严格的,良好定义的,这要归功于30年代大数学家A.N.Kolmogrov的概率论公理化。但是数学上的概率和现实世界到底是有怎样的关系?我们在用数学理论--------概率论解决实际问题的时候,又应该用什么样的观点呢?这真差不多是个哲学问题。这个问题其实必须得好好考察一下,下面我们看看最基本的两种哲学观,分别来自频率派和贝叶斯派, 我们这里的 “哲学” 指的是数学研究中朴素的哲学观念,而不是很严肃的哲学讨论。 1.1. 经典的统计(频率派)的哲学 : 1)概率指的是频率的极限,概率是真实世界的客观性质(objective property) 2)概率分布的参数都是固定的,通常情况下未知的常数,不存在"参数$\theta$满足XXX的概率是X"这种概念。 3)统计方法应该保证具有良好的极限频率性质,例如95%区间估计应该保证当$N$足够大的时候,我们选取$N$个样本集$S_{1}$, $S_{2}$,...,$S_{N}$所计算出来的相应的区间$I_{1}$,$I_{2}$,...,$I_{N}$中将有至少95%*N个区间包含我们需要估计的统计量的真实值。 我们从上看到,经典频率派的统计是非常具有 唯物主义(materialism) 色彩的,而贝叶斯的哲学大不一样