约定俗成的规则
约定俗成的规则
变量位于栈内存
对象位于堆内存
变量不需要显式声明类型
python中一切皆对象
对象包含:标识、类型、值
标识:计算机内存地址
类型:类型函数t'y'pe获取数据类型
值:print
车位
4、rand、rand_like、randint
rand随机生成在[0, 1]的数值
rand_like是先把rand生成的数组读取出来再喂给rand函数
randint需要给出最大值、最小值和shape
创建tensor
(1)从numpy进行导入
(2)从list里面导入
小写的tensor括号里接收的是现有数据,而大写Terson、FloatTensor里面接受的是形状,也可以接受现成的数据,括号里用中括号时表示现成的数据,括号时输入的形状
Dim1
一般会用在bias、线性层的输入
Dim2
一般用在batch,当输入多张图片时,第一个数字是图片的个数,第二个是打平图片之后的一维点数
Dim3
适合RNN的文字处理
Dim4
适合CNN
第一个数字是图片的个数,第二个数字是图片的通道,通道为1是灰色图像,通道为3的是菜色图像,后两位数字28*28是minis数据集的长和宽
pytorch中的数据类型
没有对string的支持内键
how to denote string
(1)One-hot并不体现语义
(2)Embedding—word2vec
核实数据类型
数据类型
(1)标量
回归问题实战
(1)先计算总损失值
(2)然后计算w和b的偏导,进而更新梯度值
turtle模块 海龟绘图
一堆命令///
守破离
守:照着老师的内容练 套路
破
离
缩进 表示逻辑层次 组织结构
行注释#
段注释‘‘‘
建立python源文件
打开python
文件 新建 保存
不能随便加空格
1.IDE开发环境 集成开发环境
IDLE
pycharm
wingIDE
Eclipse
Ipython
python
cril+Z
quit()
死循环 中段 while True:
print(‘i love u’)
cril+C中段
需要四步:
(1)load data
(2)build model
(3)train
(4)test
Non-linear Factor
加入激活函数之后
pred既有线性表达能力,还有非线性的表达能力
pytorch的功能:
(1)CPU加速;
没有显卡,用不了cuda
(2)自动求导*非常重要,因为深度学习本质上就是在利用梯度下降法来求最优解;
(3)常用网络层
静态图:
define——>run
在最开始就需要定义好公式,给定输入值,得到输出值,而且在运行的过程中无法进行调整
动态图:
可以随时调整公式
linear Regression——我们要估计连续函数的值;
logistic Regression——在上述linear regression的基础上增加了一个激活函数,把y的空间压缩到0-1的范围,0-1可以表示一个概率
classification——所有的可能性概率之和为1
构造函数__init__()
类是抽象的,通过类这个模板,创建类的实例对象,然后使用类定义的功能
对象包含如下部分:
1. id
2. type
3. value
3.1 属性
3.2 方法
__init__()的要点如下:
1. 名称固定,必须为:__init__()
2. 第一个参数固定,必须为:self。
self 指的就是刚刚创建好的实例对象。
3. 构造函数通常用来初始化实例对象的实例属性,如下代码就是初始化实例属性:name
和 score。
def __init__(self,name,score):
self.name = name #实例属性
self.score = score
4. 通过“类名(参数列表)”来调用构造函数。调用后,将创建好的对象返回给相应的变量。
比如:s1 = Student('张三', 80)
5. __init__()方法:初始化创建好的对象,初始化指的是:“给实例属性赋值”
6. __new__()方法: 用于创建对象,但我们一般无需重定义该方法。
7. 如果我们不定义__init__方法,系统会提供一个默认的__init__方法。如果我们定义了带参
的__init__方法,系统不创建默认的__init__方法。
注:
1. Python 中的 self 相当于 C++中的 self 指针,JAVA 和 C#中的 this 关键字。Python 中,
self 必须为构造函数的第一个参数,名字可以任意修改。但一般遵守惯例,都叫做 self。
类的定义
类定义数据类型的属性和方法
定义类的语法格式:
class 类名:
类体
要点如下:
1. 类名必须符合‘标识符’的规则;一般规定,首字母大写,多个单词使用‘驼峰原则’
2. 类体中我们可以定义属性和方法。
3. 属性用来描述数据,方法(即函数)用来描述这些数据相关的操作