All Posts

机器学习之强化学习

强化学习是机器学习的子领域之一。智能体(Agent)通过与环境(Environment)互动,来学习采取何种行动(Action)能使其在给定环境中的奖励(Reward)最大化。

深度学习之生成模型

PiexlRNN/CNN 使用概率链式法则计算一张图片出现的概率,其中每一项为给定前i-1个像素点后第i个像素点的条件概率分布。此分布通过RNN(LSTM)/CNN来建模,再通过最大化图片x的似然学习RNN/CNN的参数。

图像分割方法可行性分析

本文列出传统图像分割的主要方法,并针对目标图像进行可行性分析。 基于阈值的分割 基于图像灰度图的特征划分图像,其核心是找出最优灰度阈值。主要有固定阈值和自适应阈值两种阈值选择方法。

Kaggle比赛—狗的品种识别(初)

在深度学习模型训练中,随着模型参数的迭代,损失函数也会不断变化。此时可画出图像以了解变化趋势。以Kaggle比赛狗的品种识别为例,针对动手学深度学习9.13.5的代码段,进行如下修改,略去重复代码:

Hexo迁移至Hugo

本站使用的静态博客框架已从Hexo迁移至Hugo。Hugo生成博客的速度要远大于Hexo,不过主题没有Hexo多。我选择的主题是Hugo Nuo。

MXNet深度学习笔记(二)

模型构造 上一篇中,模型构造是首先需构造Sequential实例,然后添加各层。MXNet还可以通过继承Block类来构造模型。 下面一个例子中,init函数声明带有模型参数的层,函数使用get_constant方法创建训练中不被迭代的参数,即常数参数。forward函数定义模型的前向计算,通过输入x最终返回输出内容。

MXNet深度学习笔记

本文以线性回归为例,展示MXNet以及Gluon的实现。 首先构造一个简单的数据集,其中features是训练数据特征,labels是标签。

序列模型和注意力机制

基础模型 序列模型有Sequence to sequence模型和image to sequence 模型。前者最常见的应用是机器翻译。机器翻译模型的前半部分使用编码网络对输入的原文句子进行编码,后半部分使用解码网络生成对应的翻译。后者的图像描述与之类似。

自然语言处理和词嵌入

词汇表征 计算机是无法直接认识单词的,所以为了让计算机能更好地理解人类语言,需要将词汇进行表征。之前用到的方法是One-hot表征,即创建一个向量,将对应单词的位置用1表示,其余位置用0表示。这种方法的缺点是无法获得词与词之间的相关性。另一种方法是特征表征,即词嵌入,用不同的特征对单词进行特征化表示。

循环神经网络

对于序列模型,使用传统的神经网络效果并不好。原因是输入输出数据的长度可能不同,另外这种神经网络结果不能共享从文本不同位置所学习到的特征。循环神经则不存在这两个缺点。在每一个时间步中,循环神经网络会传递一个激活值到下一个时间步中,用于下一时间步的计算。