#### 散点图是plt.scatter
遗忘知识点:
plt.legend(loc="uppper left",prop=my_font)
#### 散点图是plt.scatter
遗忘知识点:
plt.legend(loc="uppper left",prop=my_font)
###
plt.grid绘制网格
plt.grid(alpha=0.5)#alpha这个代表透明度
plt.plot(linestyle=':')表示折线变成虚线
color=''#线条颜色
linestyle=''#折线的形式
linewidth=5#线条粗细
alpha=0.5#透明度
以上都是放在plt.plot中的
# 函数rotation=90旋转的度数
###调整x或者y轴上的参数
1.from matplotlib import pyplot as plt引入函数
2.plt.figure(figsize=(20,8),dpi=80)
#figurezide图片大小,(长,宽),dpi越大越不容易失真
from matplotlib import pyplot as plt x=range(2,26,2) y=[15,13,14,5,17,20,25,26,26,27,22,18,15] #设置图片大小 #figurezide图片大小,(长,宽),dpi越大越不容易失真 plt.figure(figside=(20,8),dpi=80) #绘图 plt.plot(x,y) #设置x轴 _xtick_labels=[i/2 for i in range(2,49)] plt.xticks(_xtick_labels[::3]) #保存 #plt.savefig("./t1.png") #展示 plt.show()
numpy数组
1、
选择行,
选择列
选择行列
hist 直方图
from matplotlib import pyplot as plt
from matplotlib import font_manager
a=[zifuchuan]
plot.hist(a.fenzushu)
细节
计算组数=num_bin= (max(a)-nim(b)//d)
d=5
组数= 极差/组距
x轴的刻度设置
plt.xticks(range(min(a),max(a)+d,d))
plt.show()
图形大小:plt.figure(figsze=(20,8),dpi=80)
{数据}
数组的形状
shape即可查看数组的各个维度长度(输出按三维二维依次降低,块、行、个)
reshape方法可以重新设置行列,是有返回值的,而不改变本身
有返回值才会输出
结合shape和reshape可以做到在不清楚维度长度的情况下降维
flatten可以将数组展开变成一维
数组的计算
numpy数组对数字进行+*-/计算,是对全部单元进行计算
nan>>not a number 0/0
inf>>infinite x/0
数组对数组进行计算:
不同维度的数组进行计算至少有一个维度的长度相同
广播会在缺失或者长度为1的维度上进行(不同维度的计算本质上是广播)
广播原则:如果两个数组的后缘维度,即从末尾开始算起的维度轴长相符,或者某一方的长度为1,即广播jian'r
一维数组只有0轴,二维有0、1轴,三维有0、1、2轴
reshape(0,1,2),shape输出(2,1,0)
CSV逗号分隔值文件
numpy的读取文件方法
unpack参数实现行列转置
transpose,T,swapaxes(1,0)方法实现行列转置
numpy的索引和切片
索引从0开始
2:取得连续多行,[[2,5,6]]多一个[]取得不连续的行
:,1取得单列
:,1:取得连续列
:,[]取得不连续列
取得行列交叉的内容
取得不相邻的点
这个老师的逻辑能力和语言组织能力真的是匮乏 前言不搭后语 自己把自己绕进去了
讲的真垃圾
这课程讲的就和拿着稿子照本宣科一样
数据预处理
深度学习需要的是标准的正方形图片
(1)image resize
(2)Data Argumentation
(3)Normalize
(4)to tensor
自定义数据集实战
test数据量太小的话,测试结果波动较大,所以我们为了保证测试的效果,会把测试集的数据多分配一些
1、load data ——比较重要的模型;
继承一个通用的母类
inherit from torch.utils.data.Dataset
要定一个两个函数
_len_:数据量
_getitiem_:能够得到指定的样本
2、build model——在我们已经定义好的模型上做一些修改;
3、train and test
4、transfer learning
情感分类实战
Google CoLab
(1)continuous 12 hours;
(2)free K80 for GPU;
(3)不需要爬墙
LSTM使用方法
LSTMcell更为灵活的使用方法,可以自定义喂数据的方式
2、输入门
it作为一个开度,将多少信息传入到下一个时间点,有算法决定这个开度;新信息同样也是由ht-1和当前点的xt共同决定的。it是对当前信息的过滤系数,当前信息与开度相乘之后就是经过过滤后输入下一个点的新信息。
输入门的值
ct是memory,ht是隐藏层的输出
3、输出值
同样是由开度和ct共同决定的,ot作为开度也是由算法决定的
LSTM如何解决梯度离散的问题呢?
由于存在忘记门、输入门和输出门三个门
当前隐藏层对前一个隐藏层求导时,出现三个值相加的情况,不容易出现都是大或都是小的情况,数值相对可靠,所以效果相对来说更好一些。
LSTM将短期记忆变长,RNN只能记住比较短的时间序列,LSTM就是为了解决短期记忆的问题。
1、忘记门