UMBRELLA

未雨绸缪,举重若轻

Sequential容器

Sequential容器也被称为顺序容器,在标准库中,有三种常见的Sequential容器:vector、listdeque。虽然它们都存储元素,但访问方式和添加/删除元素的成本却大不相同。vector就像一个不断增长的数组,而list则像一个个串联的珠子。至于deque,它则兼具了vectorlist的特点,既可以快速访问中间元素,又可以在两端高效地添加和删除元素。标准库还为我们提供了Sequential容器的适配器:stack、queuepriority_queue则允许我们快速访问或删除最大或最小的元素。

阅读全文 »

神经网络模块

神经网络模块,深度学习框架的核心力量。在深度学习领域,神经网络模块(Neural Network Module)扮演着至关重要的角色。它为构建和组织复杂的神经网络结构提供了抽象化的接口。以PyTorch为例,nn.Module作为基础类,允许用户通过继承来自定义自己的神经网络模型。

层的封装,将单个或多个神经网络层(如线性层、卷积层、激活函数等)组合在一起,形成具有层次结构的模块。参数管理:自动管理模型内部的所有可学习参数,包括权重和偏置等。这些参数在训练过程中被优化算法更新。前向传播:通过重写forward()方法来实现模型从输入到输出的计算逻辑。子模块嵌套:允许一个模块内部包含其他的nn.Module实例,构建深层次,多分支的复杂网络结构。状态保存与恢复:整个模块的状态(包括所有子模块的参数)可以方便的保存到磁盘并在需要时加载回来。损失函数集成:PyTorch中的nn库还包含了各种常用的损失函数,它们同样是nn.Module的实例,可以轻松应用在训练过程中。

阅读全文 »

自动求导

在神经网络的训练过程中,我们经常需要更新模型参数,而这个过程往往依赖于损失函数关于模型参数的梯度。自动求导技术能够自动计算这些梯度,极大地简化了开发过程。在PyTorch中,通过torch.Tensor类实现了自动求导。当我们创建一个Tensor时,通过设置requires_grad=True标记该Tensor需要进行梯度计算,即可开启自动求导功能。

阅读全文 »

张量

在深度学习和机器学习中,张量(Tensor)是一个充满魔法的多维数组。它能够包容各种数据类型,包括整数、浮点数、布尔值等,展现出强大的包容性和灵活性。在Python的深度学习库PyTorch中,我们能够轻松创建一维、二维和三维张量。值得注意的是,张量的维度也被称为秩(rank),一维张量就是我们口中常说的向量,二维张量即是矩阵高,而更高维度的张量对应于高阶数组。通过张量,我们能够开启深度学习的无限可能,探索机器智慧的奥秘。

阅读全文 »

如何使用PyTorch识别一张图片,并输出这张图的描述

思路如下:

  • 模型选择:首先,我们需要一个已经训练好的模型来识别图片。这可以是预训练的模型,例如用于图像分类的模型。
  • 加载模型:使用PyTorch加载预训练模型。
  • 图像预处理:将输入图像调整为模型所需的格式和大小。
  • 模型推理:将预处理后的图像输入到模型中已获得输出。
  • 后处理:理解模型的输出以获得描述。
    阅读全文 »

如何使用GAN去除CT中伪影

使用GAN去除CT图像中的伪影是一种潜在的方法,该方法利用生成器网络学习如何从有伪影的图像中恢复出无伪影的高质量图像。对于CT图像中的金属伪影,尤其是高密度物体如植入物或骨折内固定物导致的伪影,GAN可以通过训练来理解正常组织结构的特征,并尝试在保留真实解剖结构的同时填充或重建受伪影影响的区域。

阅读全文 »

基于PyTorch实现的ResNet-18神经网络

ResNet(Residual Network),它是一种深度神经网络架构,有何凯明等人2015年提出。ResNet通过引入残差块(Residual Block)解决了深度神经网络时的梯度消失和爆炸问题,从而使得网络可以构建的更深。

这段代码首先定义了ResNet的基础组件——基础残差块(BasicBlock),然后在ResNet类中根据给定的块类型和层数构建整个ResNet模型。其中,每个残差块有多个基础残差块堆叠而成,而整个网络则由四个这样的残差块组成。最后创建了一个ResNet-18实例并打印其模型结构摘要信息。

阅读全文 »

一个基于PyTorch实现的AlexNet神经网络

AlexNet类包含了原始AlexNet架构中的卷积层部分(features)以及全部连接层部分(classifier)。在forward函数中,先通过卷积层和最大池化层提取特征,然后将特征展平并通过全连接层进行分类。在实际应用中,还需要加载预训练权重,定义损失函数、优化器、并编写训练和验证循环等代码来完成整个深度学习流程。

阅读全文 »

卷积神经网络(CNN)用于图像识别

需要根据实际情况填充假设的参数(如图片的通道数、大小、类别数等),并且在真实应用中还需要进行模型训练,验证以及保存加载登步骤。同时,在使用前需要导入必要的库,并准备相应的训练和测试数据集。

阅读全文 »

AI Agent和LLM,有什么不同?

AI AgentLLM(Large Language Model,大型语言模型)是人工智能领域的两个不同概念。

AI Agent是一种能够自主行动、感知环境、做出决策并执行任务的计算机程序或系统。它通常包括以下几个关键特性:

  • 环境感知:从环境中获取信息。
  • 决策制定:基于感知的信息进行规划和决策。
  • 行动执行:根据决策采取行动。
  • 学习与适应:有能力从经验中学习和适应环境变化。
  • 目标导向:旨在追求特定的目标或优化特定性能指标。
  • 自主性:在一定程度上能够在无人干预的情况下独立运行。

AI Agent的应用范围广泛,包括但不限于游戏、机器人、自动驾驶、虚拟助手、智能家居等。

阅读全文 »
0%