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
相关推荐
金融小师妹9 分钟前
基于NLP语义解析的联储政策信号:强化学习框架下的12月降息概率回升动态建模
大数据·人工智能·深度学习·1024程序员节
山顶夕景1 小时前
【RL】Does RLVR enable LLMs to self-improve?
深度学习·llm·强化学习·rlvr
门框研究员1 小时前
解锁Python的强大能力:深入理解描述符
python
AKAMAI2 小时前
提升 EdgeWorker 可观测性:使用 DataStream 设置日志功能
人工智能·云计算
银空飞羽2 小时前
让Trae CN SOLO自主发挥,看看能做出一个什么样的项目
前端·人工智能·trae
子不语1802 小时前
Python——函数
开发语言·python
cg50173 小时前
基于 Bert 基本模型进行 Fine-tuned
人工智能·深度学习·bert
Dev7z3 小时前
基于Matlab图像处理的EAN条码自动识别系统设计与实现
图像处理·人工智能
daidaidaiyu3 小时前
一文入门 LangChain 开发
python·ai
Curvatureflight3 小时前
GPT-4o Realtime 之后:全双工语音大模型如何改变下一代人机交互?
人工智能·语言模型·架构·人机交互