Python day34

@浙大疏锦行 python day34

内容:

  • 使用GPU训练及类的call方法
  • 使用GPU训练:调用.to(device)就可以使用GPU进行训练,且只有继承nn.Module以及torch.Tensor类型的才可以调用上述方法,同时计算时所有的输入张量和模型必须处于用一个设备,否则会触发运行时错误
  • __call__方法:类内部定义的一个方法,使用实例化后的类名即可直接调用

代码:

python 复制代码
import torch

# 检查CUDA是否可用
if torch.cuda.is_available():
    print("CUDA可用!")
    # 获取可用的CUDA设备数量
    device_count = torch.cuda.device_count()
    print(f"可用的CUDA设备数量: {device_count}")
    # 获取当前使用的CUDA设备索引
    current_device = torch.cuda.current_device()
    print(f"当前使用的CUDA设备索引: {current_device}")
    # 获取当前CUDA设备的名称
    device_name = torch.cuda.get_device_name(current_device)
    print(f"当前CUDA设备的名称: {device_name}")
    # 获取CUDA版本
    cuda_version = torch.version.cuda
    print(f"CUDA版本: {cuda_version}")
    # 查看cuDNN版本(如果可用)
    print("cuDNN版本:", torch.backends.cudnn.version())

else:
    print("CUDA不可用。")


# 设置GPU设备
device = torch.device("cuda:0" if torch.cuda.is_available() else "cpu")
print(f"使用设备: {device}")


# 实例化模型并移至GPU
model = MLP().to(device)
python 复制代码
class Studen():
    def __init__(self, name):
        self.name = name
    def __call(self):
        print("Hello + self.name")

stu1 = Student()
stu1() # 输出 Hello, name
相关推荐
默归4 分钟前
分治法——二分答案
python·算法
麻雀无能为力37 分钟前
python自学笔记14 NumPy 线性代数
笔记·python·numpy
这张生成的图像能检测吗1 小时前
(论文速读)Prompt Depth Anything:让深度估计进入“提示时代“
深度学习·计算机视觉·深度估计
金井PRATHAMA1 小时前
大脑的藏宝图——神经科学如何为自然语言处理(NLP)的深度语义理解绘制新航线
人工智能·自然语言处理
大学生毕业题目1 小时前
毕业项目推荐:28-基于yolov8/yolov5/yolo11的电塔危险物品检测识别系统(Python+卷积神经网络)
人工智能·python·yolo·cnn·pyqt·电塔·危险物品
星期天要睡觉1 小时前
深度学习——卷积神经网络CNN(原理:基本结构流程、卷积层、池化层、全连接层等)
人工智能·深度学习·cnn
哈基鑫2 小时前
支持向量机(SVM)学习笔记
人工智能·机器学习·支持向量机
fsnine2 小时前
深度学习——优化函数
人工智能·深度学习·cnn
2501_924877213 小时前
强逆光干扰漏检率↓78%!陌讯多模态融合算法在光伏巡检的实战优化
大数据·人工智能·算法·计算机视觉·目标跟踪
程序猿小D3 小时前
【完整源码+数据集+部署教程】脑部CT图像分割系统源码和数据集:改进yolo11-CSwinTransformer
python·yolo·计算机视觉·数据集·yolo11·脑部ct图像分割