ai学习笔记

1、

复制代码
((x_train, y_train), (x_valid, y_valid), _) = pickle.load(f, encoding="latin-1")

从 MNIST 或 CIFAR 等经典数据集加载的数据。

复制代码
print( type(x_train), x_train.dtype)

<class 'numpy.ndarray'> float32

这里的x_train是'numpy.ndarray'类型,数值类型是float32.

float32单精度浮点数的表示方式,占用 32 位(4字节)内存.

复制代码
x_train, y_train, x_valid, y_valid = map(torch.tensor, (x_train, y_train, x_valid, y_valid))

使用 map 函数一次性将所有数据转换为 PyTorch 张量。

复制代码
print(type(x_train), x_train.dtype)

<class 'torch.Tensor'> torch.float32

type()函数返回的是对象的python类型,dtype返回的是元素的数值类型。

2、

复制代码
import torch.nn.functional as F

loss_func = F.cross_entropy #损失函数

#1.函数定义时:Python 只检查语法,不执行函数体内部代码

def model(xb):
    return xb.mm(weights) + bias #mm是矩阵乘法函数,表示 x * w + b

bs = 64
xb = x_train[0:bs]
yb = y_train[0:bs]

#创建一个 784×10 的随机张量,float类型,并计算这个张量的梯度
weights = torch.randn([784, 10], dtype = torch.float, requires_grad = True)
bias = torch.zeros(10, requires_grad = True)

#2.函数调用时:才真正执行内部代码,此时会查找变量
print(loss_func(model(xb), yb))

#另外,在Python 中定义类时不需要显式定义成员变量,可以直接通过 self.变量名 来使用
相关推荐
hhcgchpspk1 小时前
汇编语言传递数据和地址的误区
汇编·笔记·nasm·masm
智者知已应修善业1 小时前
【51单片机2个外部中断显示中断历时,初始化8左移3位共阳数码管】2024-6-6
c++·经验分享·笔记·算法·51单片机
tq10863 小时前
OperationSequence DSL 2.1 语法规范
笔记
智者知已应修善业5 小时前
【用74LS151的实现(16序列信号发生器)】2024-6-1
驱动开发·经验分享·笔记·硬件架构·硬件工程
是上好佳佳佳呀5 小时前
【LangChain|Day04】RAG 全流程基础笔记:Document 、 Loader 和 Splitter
笔记·langchain·rag
俊男无期5 小时前
【无标题】
笔记·其他
m0_719084116 小时前
es我的笔记
大数据·笔记·elasticsearch
hhcgchpspk7 小时前
xss漏洞学习笔记
笔记·学习·网络安全·xss
nnsix7 小时前
Unity 动态批处理、静态批处理、GPU Instaning、SRP Batcher 笔记
笔记·unity·单一职责原则
情绪总是阴雨天~7 小时前
OCR光学字符识别技术:完整原理与实战学习笔记
笔记·学习·ocr