目录
② 通过shape属性来访问张量的形状 和 张量中元素的总数。
③ 要改变一个张量的形状,而不改变元素的数量和元素值,我们可以通过reshape函数。
⑤ 通过提供包含数值的Python列表来为所需张量中的每个元素赋予确定值。
⑨ 对张量中的所有元素进行求和会产生一个只有一个元素的张量。
①① 可以用[-1] 选择最后一个元素,用[1:3]选择第二个和第三个元素。
1、深度学习简介
深度学习→神经网络(核心)
书籍📚:《动手学深度学习》(免费书籍)
《动手学深度学习》 — 动手学深度学习 2.0.0 documentationhttps://zh.d2l.ai/
深度学习例子:图片分类、物体检测和分割、样式迁移、人脸合成、文字生成图片、文字生成、无人驾驶。
案例研究:广告点击
触发→点击率预估→排序(点击率x竞价)
预测与训练:
特征提取(广告主、产品描述、产品图片)→模型→点击率预测(p=0.11)
2、安装环境
(1)conda环境
(2)可以使用colab查看《动手学深度学习》 — 动手学深度学习 2.0.0 documentation
(3)课程安排课程安排 - 动手学深度学习课程
3、数据操作
(1)N维数组
0-d 标量、1-d向量、2-d矩阵、3-d RGB图片(宽x高x通道).....
(2)创建数组
(3)代码实战
① 新建一个张量。
② 通过shape属性来访问张量的形状 和 张量中元素的总数。
③ 要改变一个张量的形状,而不改变元素的数量和元素值,我们可以通过reshape函数。
④ 使用全0、全1、其他常量或从特定分布中随机采样的数字。
⑤ 通过提供包含数值的Python列表来为所需张量中的每个元素赋予确定值。
⑥ 常见的标准算术运算
⑦ 我们也可以把多个张量连结在一起。
![](https://img-blog.csdnimg.cn/direct/15eabb889daa4c0ab062b742035f2e7d.png)
⑧ 通过逻辑运算符构建二元张量
![](https://img-blog.csdnimg.cn/direct/1ff3f048ed00461f91840f1d4b91488f.png)
⑨ 对张量中的所有元素进行求和会产生一个只有一个元素的张量。
🔟 广播机制
①① 可以用[-1] 选择最后一个元素,用[1:3]选择第二个和第三个元素。
①② 可以通过指定索引来将元素写入矩阵
①③ 为多个元素赋值相同的值
①④ 一些操作可能会导致为新结果分配内存
①⑤ 执行原地操作 id(x )不变
①⑥ 转换为Numpy张量
4、数据预处理
(1)创建人工数据集,并存储在csv文件
# 创建一个人工数据集,并存储在csv(逗号分隔值)文件
import os
os.mkdir('data_test02') # 创建同级文件夹 data_test02
data_file = os.path.join('.','data_test02','house_tiny.csv') # 创建目录 ./data_test02/house_tint.csv
with open(data_file, 'w') as f:
f.write('NumRooms, Alley, Price\n') # 列名
f.write('NA,Pave,127500\n') # m每行表示一个数据样本
f.write('2,NA,106000\n')
f.write('4,NA,178100\n')
f.write('NA,NA,140000\n')
# 从创建的csv文件中加载原始数据集
import pandas as pd
data = pd.read_csv(data_file)
print(data)