ElitesAI·动手学深度学习PyTorch版笔记(一)

  虽然之前利用Keras基于深度学习的方法做过融合卫星遥感影像和百度POI数据等做过城市建筑功能类型的识别,但是仍然感觉自己的理论知识不扎实、编程动手能力非常薄弱;工作比较忙学习时间仓促但希望通过这次公益学习能系统的掌握深度学习的知识,现将线性回归、Softmax与分类模型、多层感知机、文本预处理、语言模型、循环神经网络方面的学习重点和个人的感悟记录如下:

Task01:线性回归、Softmax与分类模型、多层感知机

线性回归

1.解析解和数值解

解析解: 当模型和损失函数形式较为简单时,上面的误差最小化问题的解可以直接用公式表达出来。
数值解:通过优化算法有限次迭代模型参数来尽可能降低损失函数的值。
大多数深度学习模型并没有解析解,通过数值解来实现。教程中的线性回归例子用的是数值解。测绘领域同样存在这样的情况,测量平差讲解了许多通过列误差方程,求解法方程及未知数,算是解析解范畴,但GPS基线解算、摄影测量真正解算的时候都是通过最小二乘迭代模型来求解数值解。

优化函数 - 随机梯度下降
在求数值解的优化算法中,小批量随机梯度下降(mini-batch stochastic gradient descent)在深度学习中被广泛使用。它的算法很简单:先选取一组模型参数的初始值,如随机选取;接下来对参数进行多次迭代,使每次迭代都可能降低损失函数的值。在每次迭代中,先随机均匀采样一个由固定数目训练数据样本所组成的小批量(mini-batch),然后求小批量中数据样本的平均损失有关模型参数的导数(梯度),最后用此结果与预先设定的一个正数的乘积作为模型参数在本次迭代的减小量。

本单元做题出错了就是这个原因:小批量样本中每次的样本数是7,每个样本输入数据的有8个值

Softmax与分类模型

1.Softmax

Softmax 函数接收一个 这N维向量作为输入,然后把每一维的值转换成(0,1)之间的一个实数,Softmax 可以将全连接层的输出映射成一个概率的分布,我们训练的目标就是让属于第k类的样本经过 Softmax 以后,第 k 类的概率越大越好。
具体公式

多层感知机

多层感知机说明
以上先罗列课程中的说明,后面会自己再补充用pytorch实现一个城镇土地定级估价的例子:基于BP神经网络模型的商业、住宅网格点的评估。

Task02:文本预处理、语言模型、循环神经网络方面

这个部分不是我研究和工作的领域,兴趣不是很大,当然自然语言等的识别也很火热,但个人精力有限。

文本预处理

文本预处理通常包括四个基本步骤:
a读入文本
b分词
c建立字典,将每个词映射到一个唯一的索引(index)
d将文本从词的序列转换为索引的序列,方便输入模型
现有的分词工具:spaCy和NLTK

语言模型

语言模型:针对某种语言建立的概率模型,目的是建立一个能够描述给定词序列在语言中的出现的概率的分布。
n元语法:引入了马尔科夫假设:随意一个词出现的概率只与它前面出现的有限的一个或者几个词有关。
时序数据的采样中有随机采样、相邻采样。
随机采样:在随机采样中,每个样本是原始序列上任意截取的一段序列,相邻的两个随机小批量在原始序列上的位置不一定相毗邻。
相邻采样:在相邻采样中,相邻的两个随机小批量在原始序列上的位置相毗邻。

循环神经网络

基本介绍
数学表达
思考:同样是时序数据,同样前后有联系,是否可以用于量化投资,股市里的个股价格预测?

发布了5 篇原创文章 · 获赞 0 · 访问量 328

猜你喜欢

转载自blog.csdn.net/qingxiuhu/article/details/104317430