神经网络
骑鱼的喵喵
多学多练,持续进步。
展开
-
北大人工智能课程学习记录:神经网络八股
模块化设计神经网络前向传播前向传播的目的是搭建网络,设计网络结构。一般新建一个forward.py文件描述前向传播过程,一般新建三个函数,forward给出前向传播的设计,给出从输入到输出的通路定义的时候要记住forward有两个参数,一个是x,一个正则化权重regularizerforward函数定义了前向传播过程,包括wby返回y第二个函数与参数w有关,有两个参数包括w的形状shape,正则化...原创 2018-06-30 17:16:39 · 594 阅读 · 1 评论 -
北大人工智能课程学习截图:损失函数
原创 2018-06-28 18:14:27 · 173 阅读 · 0 评论 -
北大人工智能课程学习截图:学习率
原创 2018-06-28 18:17:00 · 377 阅读 · 0 评论 -
北大人工智能学习记录:滑动平均
原创 2018-06-28 23:13:54 · 217 阅读 · 0 评论 -
词嵌入特性
类比特征embedding,词嵌入,将两个相近的词嵌入向量相减,得到的向量中会有很多0。因为这两个词很相近所以他们有很多特征值是接近的。比如用e_man-e_woman 约等于 e_king-e_queen这说明两类事物之间的关系很相似。e_man-e_woman 约等于 e_king-e_w,让计算机去找答案e_w是什么,很有可能得到结果是e_queen图形化表示相似度(300维空间):两个向量...原创 2018-07-11 14:43:54 · 867 阅读 · 0 评论 -
嵌入矩阵及符号表示
学习嵌入模型就是学习嵌入矩阵。用一个词的嵌入矩阵去×one-hot向量E代表嵌入矩阵、O代表ONE-HOT向量二者相乘得到向量e最终得到的嵌入向量就是嵌入矩阵中该单词的那一列...原创 2018-07-11 15:30:55 · 4466 阅读 · 4 评论 -
early-stopping解释
Early Stopping防止过拟合的一种方法。目的为了获得性能良好的神经网络,网络定型过程中需要进行许多关于所用设置(超参数)的决策。超参数之一是定型周期(epoch)的数量:亦即应当完整遍历数据集多少次(一次为一个epoch)?如果epoch数量太少,网络有可能发生欠拟合(即对于定型数据的学习不够充分);如果epoch数量太多,则有可能发生过拟合(即网络对定型数据中的“噪声”而非...转载 2018-07-17 18:31:01 · 7913 阅读 · 0 评论 -
学习词嵌入
使用每个单词的嵌入矩阵E乘one-hot向量得到该单词的嵌入向量(维度与特征数量相同)。把这些嵌入向量放入神经网络,然后通过softmax分类器,它会尝试在字典范围内预测输出单词。如果设置窗口大小,即只用固定数量的单词来预测输出单词,可以增强网络对于不同长短句子的适应性。使用固定长度的历史窗口可以处理任意长度的句子,因为输入的维度总是确定的。所有单词用的是同一个嵌入矩阵。研究者发现,如果想构建一个...原创 2018-07-12 17:11:47 · 605 阅读 · 0 评论 -
word2vec:skip-gram模型
skip-gram模型中,我们需要抽取上下文和目标词配对来构造监督学习问题。而目标词不一定总在上下文之前,所以我们随机选一个词作为上下文。当然随机也是在限定一个范围内。比如正负五个词。我们使用这个模型并不是为了解决这个监督学习问题本身,而是想要得到一个好的词嵌入模型。该方法主要是,使用嵌入向量,将其投入softmax来预测与该上下文单词有一定距离的单词。skip,跳过指隔了几个单词。这个算法有问题...原创 2018-07-12 17:39:09 · 213 阅读 · 0 评论 -
HENYA系统论文解读
作者从五大类开始,这五大类是人物,位置,组织,时间和艺术品。在这五大类下,每一大类细分为100个小类。所以HENYA系统共有505种实体类型。小类的甄选取决于其热度,作者按属于每一类的在YAGO中实体数量进行排序,取前一百种实体。这505种实体构成了一个有向无环图,最深的地方有9层。作者发文时,还没有这种分类方法,HENYA可以加入其他种分类,如从DBpedia和FreeBase的FIGE...原创 2018-07-20 09:54:57 · 242 阅读 · 0 评论 -
recall、precision和f1
准确率、召回率、F1信息检索、分类、识别、翻译等领域两个最基本指标是召回率(Recall Rate)和准确率(Precision Rate),召回率也叫查全率,准确率也叫查准率,概念公式: 召回率(Recall) = 系统检索到的相关文件 / 系统所有相关的文件总数 准确率(Precision) = 系统检索到的相关文件 / 系统所有检...转载 2018-07-15 14:41:39 · 1162 阅读 · 0 评论 -
深度学习预测酸奶生产量(一)
预测酸奶生产量,可能生产多了卖不出去,也有可能供不应求。现考虑生产多了或少了影响相同的情况。假设有两个输入特征。我们人为设定正确的y应该是1*x1+1*x2(+-)0.05。(所以正确答案的参数应该就是(1,1),0.05是偏差)使用tensorflow进行神经网络铺设。首先给所寻找的参数wl随机赋值,使用正态分布的取值方法。使用梯度下降/Adam算法进行优化,寻找最优的参数值wl(w1,w2)。...原创 2018-06-28 17:17:36 · 1361 阅读 · 0 评论 -
论文“Neural Architectures for Named Entity Recognition”阅读体会
老师让看一下lstm+crf的命名体识别模型有关论文,在网上查阅找到一篇含lstm+crf的论文:Neural Architectures for Named Entity Recognition,这篇论文介绍了两种命名体识别方法,我以lstm+crf为主要内容来解读我的理解。文中提到之前的命名体识别语言模型过于依赖手工标注的特征。问题是有标注的语料数据很少,并且手工标记有问题,它依赖于特定语...原创 2018-07-16 09:26:33 · 5315 阅读 · 1 评论 -
batchsize iteration epoch解释
batchsize:中文翻译为批大小(批尺寸)。在深度学习中,一般采用SGD训练,即每次训练在训练集中取batchsize个样本训练;iteration:中文翻译为迭代,1个iteration等于使用batchsize个样本训练一次;一个迭代 = 一个正向通过+一个反向通过epoch:迭代次数,1个epoch等于使用训练集中的全部样本训练一次;一个epoch = 所有训练样本的一个正向传递...转载 2018-07-17 10:08:03 · 192 阅读 · 0 评论 -
序列模型标注
原创 2018-07-08 21:14:25 · 164 阅读 · 0 评论 -
循环神经网络模型RNN
学习序列模型rnn实现从X到Y的映射。最简单的NN模型,将九个输入变量输出9个0或1的结果。但是这样不好,因为输入输出长度不一定相同。单纯的神经网络并不能分享从不同位置学到的特征。如识别不同位置的人名。RNN读到第二个单词时候不是只通过当前的词x<2>就预测出y<2> 的,也会输入一些来自时间步(time-step)1的信息。时间步1的激活值就会传递到时间步2。one-ho...原创 2018-07-08 22:22:36 · 2912 阅读 · 0 评论 -
rnn反向传播
rnn反向传播方向与前向传播方向相反。前向传播图:为了反向传播需要计算损失函数loss function:交叉熵损失函数通过时间的反向传播。因为前向传播是随时间向前进行的。完整前向反向传播图,loss函数是各个变量损失相加之和...原创 2018-07-08 23:11:31 · 1710 阅读 · 0 评论 -
不同类型的循环神经网络
输入 x和y有很多情况,输入Tx输出Ty的数量不一定相等。大致有多对多、多对一、一对一、一对多等情况。多对多序列:多对一序列:情感分类时,输入可能是一个句子,输出是1-5的数字代表不同的情感或者星星数。一对一结构(少见小型标准网络):一对多:(音乐生成,输入一个数字生成一段音乐)这里每个输出y当作下一段预测的输入多对多序列例子:机器翻译把法语翻译成英语:多对多结构,输入输出长度不等左边是输入部分,...原创 2018-07-09 15:38:04 · 943 阅读 · 0 评论 -
使用RNN训练语言模型
语言模型会估计某个句子序列各个单词出现的概率如何构建语言模型?为了使用RNN建立出这样的模型,首先我们需要一个训练集,包含一个很大的英文文本语料库(a corpus of English text),语料,即语言材料。其他语言也可。标记化:Tokenize建立一个字典,将每个单词转成一个one-hot向量,也就是字典中的索引。使用EOS标记附加到训练集中每个句子的结尾。如果有些单词不在词典里(生词...原创 2018-07-09 16:09:10 · 2972 阅读 · 0 评论 -
RNN梯度消失问题
梯度消失RNN循环神经网络:长期依赖效应,RNN并不擅长处理。RNN中某一单元主要受它附近的单元的影响。一个很深的神经网络进行反向传播时,梯度很难从后层nn传播回去。即它很难影响靠前层的权重。RNN有同样的问题。后面层的输出误差很难影响前面层的计算。基本的RNN模型会有很多局部影响,某一单元主要受它附近的单元的影响。这意味着很难让一个神经网络能够意识到它看到的是...原创 2018-07-09 17:03:53 · 4070 阅读 · 0 评论 -
GRU门控循环单元
GRU改变了RNN隐藏层,使其可以更好的捕获深层连接并改善了梯度消失问题。 RNN隐藏层的单元的可视化呈现: a<x>计算公式: GRUc= memory cell 记忆细胞GRU中 ,c<t>=a<t>在每个timestep,我们用一个候选值写记忆细胞。cn<t>代替c<t>。GRU真正思想:门Γu是一个在0到1之...原创 2018-07-09 17:32:21 · 1398 阅读 · 0 评论 -
简单神经网络流程
列表基本操作定义方式:bicycles = ['trek', 'cannondale', 'redline', 'specialized']1访问方式print(bicycles)1输出结果['trek', 'cannondale', 'redline', 'specialized']1访问列表内部元素(下标访问,从零开始)print(bicycles[0])1支持倒数访问print(bicycl...原创 2018-06-27 15:47:29 · 360 阅读 · 0 评论 -
双向神经网络BRNNs
判断单词TEDDY是否是人名只看句子的前半部分是不够的。单向RNN不能解决这个问题,我们需要双向RNN--BRNN。BRNN的前向传播一部分从左向右一部分从右向左如下图,有从左向右从x1开始的前向传播,也有从右向左从x4开始的前向传播。两个方向的传播都对第三段预测y3有影响。如下图中黄线部分,既有左侧传入y3,也有右侧传入y3。这就是双向传播。在NLP领域,双向传播的LSTM是最常用的BRNN的缺...原创 2018-07-10 16:22:29 · 1397 阅读 · 0 评论 -
深层循环神经网络
单层RNN三隐层的深度网络:这里输出的y还可以接上深度网络来计算输出值y:如y2这些深层网络之间不水平连接,只为了做输出计算。计算激活值a[2]<3>的方法:每一层网络都有自己的w和b矩阵。如上面中的第二层的w和b矩阵。深层循环神经网络需要训练很多时间花费很多资源。...原创 2018-07-10 17:02:09 · 707 阅读 · 0 评论 -
北大人工智能课程学习记录:卷积神经网络
CNNmnist一张28*28的黑白图片训练的模型,两层隐层的简单NN,节点数724 *500 *10,就有将近四十万个参数(w,b)。如果是一张rgb彩色图片,由单通道变成三通道,参数将更多。待优化的参数过多,很容易导致模型过拟合。实际应用中会先对原始图像进行特征提取。再把提取到的特征喂给全连接网络。卷积可认为是一种有效提取图像特征的方法。一般会用一个正方形卷积核,遍历图片上的每个点。图片区域内...原创 2018-07-03 18:38:06 · 429 阅读 · 0 评论 -
机器学习数学概念方向导数、梯度
1. 基本概念 方向导数:是一个数;反映的是f(x,y)在P0点沿方向v的变化率。 偏导数:是多个数(每元有一个);是指多元函数沿坐标轴方向的方向导数,因此二元函数就有两个偏导数。 偏导函数:是一个函数;是一个关于点的偏导数的函数。 梯度:是一个向量;每个元素为函数对一元变量的偏导数;它既有大小(其大小为最大方向导数),也有方向。2. 方向导数 反映的是f(x,y)在...转载 2018-06-28 16:16:39 · 732 阅读 · 0 评论 -
Bidirectional LSTM-CRF Models for Sequence Tagging 阅读有感
BiLSTM+CRF 通吃序列标注任务,这些任务包括:词性标注POS(Part of speech),名词词组分块(NP-CHUNKING)和命名实体识别。命名实体识别的一个商业应用:识别用户搜索句子中的商品(实体,使用用户查询句子训练),然后提供该商品的广告。这个点子牛逼哦,问答机器人那可以试着做一个应用连接百度搜索。此篇论文之前的序列标注任务,多使用线性统计模型,如隐马尔科夫HMM,最...原创 2019-04-25 20:06:29 · 529 阅读 · 0 评论