AI 编译器学习笔记之八 -- Python基础学习

1、系统总结

Python学习笔记合集(Pyhton基础总结)_python学霸笔记-优快云博客

简介 - Python教程 - 廖雪峰的官方网站 (liaoxuefeng.com)

2、正则表达式

re.sub 正则替换:cleaned_text = re.sub(r"[^\w\s]", "", text) - 优快云文库

3、在Python中,shape 是一个用于描述数组维度的属性,通常用在NumPy数组对象上,而不是标准的列表。

【Python】解决Python报错:AttributeError: ‘list‘ object has no attribute ‘shape‘_attributeerror: 'list' object has no attribute 'sh-优快云博客

4、在Python中,我们可以使用sys库中的getsizeof函数来查看List对象的文件大小。getsizeof函数返回对象的字节大小,包括对象本身占用的空间以及其引用的其他对象所占用的空间

python中怎么查看list文件大小_mob64ca12d0a366的技术博客_51CTO博客

5、重新理解一个类中的forward()和__init__()函数_类里的forward-优快云博客 

初始化一个类时,则自动调用了该类的 __init__() 方法

调用一个类的实例时,会自动调用该类的forward() 方法

6、Tensor的乘法不是通用的矩阵乘法,而是简单的相应元素的相关乘法

torch.Tensor的4种乘法_torch乘法-优快云博客7

7、两个维度不同的值也可以相加

pytorch维度不同的张量(tensor)相加规则_pytorch中两个tensor可以相加的条件是什么-优快云博客

8、导出onnx的方法:Python: 从PYTORCH导出模型到ONNX,并使用ONNX运行时运行它_转换出来的模型onnx都可以运行吗-优快云博客 9、线性代数:2.3. 线性代数 — 动手学深度学习 2.0.0 documentation (d2l.ai)

10、数据类型转换 :python中list、numpy、torch.tensor之间的相互转换_list转torch tensor-优快云博客 

11、python中的范围都是半开区间

shape=torch.Size([30, 32, 128]),则p shape[1:3] 其实是p shape[1:3),即返回torch.Size([32, 128])

a = list(range(0, 64)) 的取值其实是 [0,63)  

12、开发工具:使用pycharm远程调试程序&连接linux服务器调试程序(亲测可行!!)_pycharm 远程调试-优快云博客

pycharm是假同步,也就是远程的在本地设置映射目录,需要显示同步;

vscode 真正直接远程配置,但是上下文调用关系解析没有pycharm友善

13、函数修饰符@对函数进行包装,参考Python中的@符号 - VictoKu - 博客园

14、创建虚拟环境python -m venv mlir_venv后升级pip版本不会影响原来的环境

torch-mlir/docs/development.md at main · llvm/torch-mlir (github.com)

15、解决 NumPy高版本导致np.float_` was removed in the NumPy 2.0 release

import numpy as np

np.float_ = np.float64

16、踩坑杂记

pip常用命令和一些坑_--force-reinstall-优快云博客

17、 Python之查看pip安装包site-package的位置 或者 pip show pip

from distutils.sysconfig import get_python_lib
print(get_python_lib())

18、list 类似c++的数组,使用[0] 可以取第一个元素;而字典则是 {}中成对的匹配关系 

python中list和dict之间的转换_python list转dict-优快云博客

19、tofile()输出的数据不保存数组形状和元素类型等信息,所以fromfile读取时需要指定数据类型

NumPy 文件存取 tofile,fromfile, load,save_tofile函数-优快云博客

20、表达式x_ub_all[i][j][0, 0, m_offset, 0]表示对一个多层嵌套或高维数据结构的索引操作,x_ub_all 可能是一个二维结构,其中每个元素是一个4维数组

# 创建2x2的结构,每个元素是四维数组(形状2x2x3x2)
x_ub_all = [[np.random.rand(2, 2, 3, 2) for _ in range(2)] for _ in range(2)]

21、模型的参数有3种等价方式获取,模型初始化未经训练则是一个随机值。

pytorch教程之nn.Module类详解——state_dict和parameters两个方法的差异性比较_pytorch.model.state-优快云博客

22、实现 C++ 自定义算子请学习 PyTorch 官方教程 Custom C++ and CUDA Operators — PyTorch Tutorials 2.7.0+cu126 documentation 

23、python中原生类型(int, tuple, dict)等是没有shape属性,只有张量tensor有

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值