
人工智能
文章平均质量分 56
许野平
非常喜欢软件设计这份工作,有不错的数学基础,喜欢读书、摄影与音乐。
展开
-
Stable Diffusion:照片转视频插件
功能:AnimateDiff是一款可以将照片转换成动画的Stable Diffusion插件。安装方法:在Stable Diffusion的Web UI中,点击“扩展”选项,然后搜索AnimateDiff并点击安装。安装成功后,需要重启Web UI。接着,下载动画模型并将其放到AnimateDiff插件目录的model文件夹下。使用注意事项:首次运行和使用AnimateDiff时,建议通过科学上网方式进行。原创 2024-11-11 19:52:18 · 922 阅读 · 0 评论 -
Stable Diffusion 秋叶整合包:Deoldify 插件安装不上的处理办法
fasiai 的版本号的问题原创 2024-11-11 18:29:52 · 742 阅读 · 0 评论 -
12G的RTX 3060显卡在深度学习训练中的应用能力
12G的RTX 3060显卡在深度学习训练中有一定的应用能力,具体能做哪些训练任务,需要考虑模型的复杂度、数据集的大小、训练框架的兼容性等多个因素。原创 2024-10-13 00:09:51 · 3217 阅读 · 0 评论 -
12G显存的显卡能做那些深度学习训练?
12G显存的显卡在深度学习模型训练中具有一定的能力,但具体能够训练的模型类型和规模会受到多种因素的影响,如模型的复杂度、数据集的大小、使用的深度学习框架以及显卡的其他性能参数等。原创 2024-10-13 00:07:11 · 1378 阅读 · 0 评论 -
在Stable Diffusion(SD)中控制场景结构时,选择Canny还是Depth?
通过Canny提取出的边缘信息,可以引导SD模型在生成新图像时保持这些边缘特征,从而实现对场景结构的精确控制。例如,在人物插画中,可以使用Canny来保持人物的轮廓和姿势不变,同时修改背景或添加服饰细节。Depth则用于采集图片的深度信息,它可以帮助还原图片中物体的空间关系,如模特和环境的关系、建筑之间的前后关系等。因此,如果目标是控制场景中的边缘特征和轮廓,同时保持这些特征在生成新图像时的一致性,那么Canny是更好的选择。同时,也需要注意调整相关的参数和设置,以获得最佳的控制效果和图像质量。原创 2024-10-06 01:06:15 · 465 阅读 · 0 评论 -
Stable Diffusion 常用大模型及其特点
综上所述,SD的常用大模型种类繁多,各有特点。用户可以根据具体需求选择合适的模型进行图像生成或相关任务的处理。原创 2024-10-05 22:15:15 · 1822 阅读 · 1 评论 -
Stable Diffusion 蒙版:填充、原图、潜空间噪声(潜变量噪声)、潜空间数值零(潜变量数值零)
这些模式为Stable Diffusion的用户提供了丰富的图像编辑和重绘选项。用户可以根据实际需求选择合适的模式,以实现所需的图像效果。需要注意的是,不同模式的选择可能会对最终生成的图像产生显著影响,因此建议用户在实际操作前进行充分的试验和比较。原创 2024-09-26 12:10:48 · 1211 阅读 · 0 评论 -
Stable Diffusion的高分辨率修复(Hires.fix)
高分辨率修复(Hires.fix)通过特定的算法和流程,对生成的图像进行放大和重绘,从而增加图像的分辨率和细节。这一过程通常包括两个主要步骤:首先是对图像进行放大,然后是对放大后的图像进行重绘以添加更多的细节。原创 2024-09-25 23:05:44 · 1781 阅读 · 0 评论 -
SD(Stable Diffusion)模型的基本工作数据流
SD模型的基本工作数据流包括数据预处理、潜在空间编码、文本引导下的潜在空间生成、扩散模型生成图像、图像解码以及图像优化与后处理。这些步骤共同构成了SD模型从文本描述到图像生成的完整过程。通过这个过程,SD模型能够生成与输入文本高度匹配的高质量图像。原创 2024-09-25 12:39:55 · 1183 阅读 · 0 评论 -
人工智能协助我设计 Restful API 的过程实录,感觉很强大!
这种设计的好处是,它遵循了RESTful原则中的无状态性(statelessness),即每个请求都是独立的,服务器不保留任何关于客户端状态的信息。我用/api/project/{project_id}/status表示状态,并且状态的值有润=run和stop两种,然后用PUT去修改status,不符合 RESTful的状态转移的原则吗?请注意,虽然URI的设计在RESTful API中非常重要,但它主要用于标识资源和定义资源之间的关系,而不是直接表示资源的状态。次和成功执行一次,效果是等价的。原创 2024-05-10 13:13:40 · 971 阅读 · 1 评论 -
GPU 的显存位宽
RTX 3060的显存位宽为192-bit,而RTX 3070的显存位宽更高,为256-bit。这意味着RTX 3070能够在一个时钟周期内传输更多的数据,从而可能提供更好的性能,特别是在需要高数据传输速率的应用场景中。显存位宽是显存在一个时钟周期内所能传送数据的位数,位数越大,则在周期内所能传输的信息量就越大,这意味着显存的数据吞吐量和传输性能会更高。因此,在选择显卡时,除了考虑显存容量和显卡核心的性能外,显存位宽也是一个非常重要的因素,它直接影响到显卡的性能表现。原创 2024-05-10 09:32:06 · 541 阅读 · 0 评论 -
python下常用的图像处理工具
需要注意的是,每个工具都有其独特的特点和适用场景,因此在选择使用哪个工具时,应根据具体的图像处理需求和项目要求进行考虑。同时,建议查阅相关的文档和教程,以更好地了解这些工具的使用方法和功能。除了上述提到的工具外,还有一些其他的库也值得一试,如SimpleITK(用于医学图像处理)、mahotas(专注于计算机视觉任务)等。原创 2024-04-28 16:12:28 · 673 阅读 · 3 评论 -
nvidia-smi 输出内容详解
nvidia-smi(NVIDIA System Management Interface)是一种命令行实用程序,主要用于监控和管理NVIDIA GPU(图形处理器)的状态和性能。它提供了一个简单而强大的方式来获取有关GPU的实时信息,这些信息包括GPU的使用情况、温度、内存占用等,同时也支持进行一些基本的管理操作。在大多数情况下,nvidia-smi是与NVIDIA GPU驱动程序一起安装的。原创 2024-04-23 11:14:32 · 1632 阅读 · 0 评论 -
我用文心一言证明了哥德巴赫猜想
第七步,由于我们在第四步和第六步中都得到了与假设矛盾的结果,所以我们的假设——存在某个大于2的偶数n不能表示为两个质数之和——是不成立的。第三步,根据质数的定义,我们知道2是最小的质数。那么,我们考虑n−2。第四步,如果n−2是质数,那么n可以表示为2+(n−2),即两个质数之和,这与我们的假设矛盾。第一步,设n为大于2的任意偶数,那么n可以表示为2k,其中k是大于1的整数。第六步,因此,n可以表示为2+pq,即两个质数之和,这与我们的假设矛盾。因此,我们证明了任何大于2的偶数都可以表示为两个质数之和。原创 2024-04-21 13:18:26 · 320 阅读 · 0 评论 -
256线程的CPU有哪些型号?
除了AMD的EPYC系列,目前市场上其他主流的CPU,如Intel的Xeon系列或AMD的Ryzen Threadripper系列,虽然也提供多线程技术,但它们的线程数通常没有达到256线程这么高的水平。值得注意的是,线程数并不是衡量CPU性能的唯一指标。在选择CPU时,还需要考虑其他因素,如核心数、主频、缓存大小、功耗以及具体的应用需求等。最后,随着技术的不断进步,未来可能会有更多具有256线程或更多线程的CPU型号出现,因此在选择时请务必参考最新的产品信息和技术规格。原创 2024-04-14 01:59:25 · 553 阅读 · 0 评论 -
与GPT聊天,我发现中文根本不需要什么语法
原创 2024-01-25 09:58:38 · 480 阅读 · 0 评论 -
Python 下中文分词算法的简单示例
Python 下中文分词算法的简单示例。原创 2023-06-02 14:13:18 · 422 阅读 · 0 评论 -
Pytorch 的 LSTM 模型的简单示例
Pytorch 的 LSTM 模型的简单示例原创 2023-05-28 17:43:39 · 7697 阅读 · 2 评论 -
构建seq2seq模型的常见问题
构建seq2seq模型的常见问题。原创 2023-05-28 14:59:09 · 1428 阅读 · 0 评论 -
pytorch 提供了几个子模块?
以上是PyTorch主要的子模块,每个子模块又包含多个子模块和功能。原创 2023-05-25 10:21:42 · 213 阅读 · 0 评论 -
GPT4生成的 MNIST 算法模型和后续的改进实验
用 GPT4 生成了 MNIST 算法模型。第一个模型,查找一下,发现于某教材内容几乎完全一样。感觉这家伙肯定后台参考了某个现成的数据库。重新生成了一个,感觉结构有些奇葩,而且有个别错误,稍作调整,训练一下,准确率大约 82%。运行了一下,精度 85%。原创 2023-05-24 16:47:36 · 502 阅读 · 0 评论 -
Pytorch 中如何对训练数据进行增强处理?
假设我们的数据集是一个手写数字的图像数据集,其中每一张图像包含一个手写数字和对应的标签。我们可以通过随机旋转、平移、缩放和翻转等操作,对原始的图像进行变换增广(Data Augmentation)以增强模型的训练效果。然后,我们可以利用这个变换来对原始数据集进行处理,生成一个新的增广后的数据集。在实际使用过程中,可以将多个变换组合起来,以更大程度地提高模型的性能。操作来随机对图像进行旋转,最大旋转角度设置为30度,并将图像转换为。在上面的代码中,我们首先定义了一个。变换,其中包含了一个。原创 2023-05-24 16:34:53 · 519 阅读 · 0 评论 -
Pytorch 中张量的数据结构
它是 PyTorch 广泛使用的核心数据结构,用于表示神经网络中的数据,包括输入数据,参数以及梯度等。与 NumPy 中的 ndarrays 类似,PyTorch 张量也可以进行类似的数学和操作。需要注意的是,对原始张量进行 reshape 操作实际上可以看作在内存中设法切割/拼接数据来新建一个张量对象,并不影响原始张量。我们还可以通过各种张量操作来改变张量的形状、增删元素以及级联此类更高级的数据转换。分别创建了两个张量,并打印出了这些张量的形状、数据类型和存储设备等属性信息。上述代码中首先通过调用。原创 2023-05-23 09:28:57 · 345 阅读 · 0 评论 -
torchvision.datasets.MNIST 的数据结构
对于 MNIST 数据集中的每一个图像, torchvision.datasets.MNIST 返回一个由两个元素组成的元组。第一个元素是 PIL.Image.Image 对象类型的图像,表示该图像的像素矩阵。而第二个元素则是一个整数,表示该图像所代表的数字。MNIST 数据集包含了大量的手写数字图像,每个图像都是 28 x 28 像素大小的灰度图像。通过这些代码,我们可以看到 MNIST 数据集中的每个样本都是一个尺寸为(1, 28, 28)的张量,其中 1 表示普通的灰度图像。原创 2023-05-23 09:26:06 · 1307 阅读 · 0 评论 -
MNIST手写体识别训练过程数据流图
MNIST手写体识别训练过程数据流图。原创 2023-05-23 09:20:38 · 259 阅读 · 0 评论 -
词向量文件格式
表示“apple”这个单词被表示为一个300维的向量,向量中第1个元素为0.1,第2个元素为-0.2,以此类推。词向量文件是一种将文本中的词语或字符表示为向量的方式,它通常用于自然语言处理任务中。在词向量文件中,每个词或字符都被表示为一个向量,而这些向量则被组织成一个矩阵。第二行:文件中所包含的词汇量和向量维度数,通常是用空格分隔,例如“100000 300”表示该文件中包含10万个词,每个词用300维向量来表示。需要注意的是,不同的词向量模型可能有不同的格式要求,但一般遵循上述的基本格式。原创 2023-05-22 19:38:08 · 281 阅读 · 0 评论 -
torch、torch.nn、 torch.optim、torchvision、 torchvision.transforms 功能简介
命令将 PyTorch 框架导入到 Python 程序中,这样我们就可以使用 PyTorch 提供的各种功能了。PyTorch 是一个用于科学计算的机器学习库,具有以下重要功能:张量(Tensor)操作:PyTorch 引入了张量作为其核心数据结构,对张量进行各种操作(如加、减、乘、除、矩阵乘法、转置等)。自动求导:PyTorch 具有自动求导系统,能够自动计算输入变量关于输出变量的导数,并将反向传播算法应用于神经网络中。原创 2023-05-22 18:42:57 · 3626 阅读 · 0 评论 -
在 C++ 代码中调用 NumPy
要在 C++ 代码中调用 NumPy,可以使用 Boost.Python 库。为了这样做,需要安装 Boost 开发库和 NumPy ,并使用 BOOST_PYTHON_MODULE 宏定义来创建一个 Python 模块。以下是一个简单的示例,演示如何创建一个名为。原创 2023-05-22 18:17:34 · 2662 阅读 · 0 评论 -
重写 MNIST 手写体识别模型,并启用多块 GPU并行计算
可惜在我用的服务器上不能运行,程序卡死在训练过程。咨询了一下,原因是我的服务器安装了 8 块K80显卡,由于卡之间通讯问题,不能这样使用。据说,K80 只能同时选择偶数序号卡或奇数序号卡。指定了第 0 块卡。测试了一下,可以运行。原创 2023-05-22 15:14:07 · 541 阅读 · 0 评论 -
关于机器学习(深度学习)训练过程中 batch_size 的意义
batch_size表示每个训练批次的样本数量。在训练神经网络模型时,通常需要将很多样本输入到模型中进行计算得到损失函数,然后利用反向传播算法来更新模型的参数。如果每次只输入一个样本进行计算,会大大增加训练时间和GPU显存的使用量,同时也可能导致训练过程不够稳定。因此,我们通常选择将一定数量的样本作为一个batch输入到模型中进行计算。而batch_size的大小则影响了模型参数的更新速度和训练效果。较小的batch_size可以提升参数更新的速度,但容易受到随机性较大的噪声干扰,导致训练过程波动较大;原创 2023-05-22 10:41:03 · 922 阅读 · 0 评论 -
关于PyTorch中的 torch.utils.data.DataLoader
torch.utils.data.DataLoader是PyTorch中一个用于数据加载的工具类,主要用于将样本数据划分为多个小批次(batch),以便进行训练、测试、验证等任务。该类支持多线程异步数据读取和数据预处理,使得模型训练更高效、更快速。使用DataLoader时需要传入一个Dataset对象,Dataset对象提供了访问样本数据的接口。例如,可以使用PyTorch提供的torchvision.datasets中的一些内置数据集(如MNIST、CIFAR-10等)来构建Dataset对象。原创 2023-05-22 09:05:21 · 1141 阅读 · 0 评论 -
在 windows 下如何安装 pytorch?
安装完成后,可以通过创建一个 Python 脚本来测试 PyTorch 是否正确安装。这个命令会安装 PyTorch 1.8.1、torchvision 0.9.1 和 torchaudio 0.8.1.运行这个脚本并检查输出是否为 PyTorch 的版本号,如果输出正确则 PyTorch 安装成功。在 Windows 上安装 PyTorch 可以使用 pip 或 conda 管理包。希望这些步骤能够帮助您成功安装 PyTorch。打开命令提示符或 PowerShell;原创 2023-05-21 15:19:54 · 1015 阅读 · 0 评论 -
Python 中的函数微分是如何实现的?
可以使用 PyTorch 中的自动微分功能来计算函数的导数。在这个例子中,我们定义了一个函数fxx22x1,创建了一个张量x,并且将 requires_grad 设置为 True,表示要对x求导。然后,我们计算了函数在x2处的值yf2,并通过计算了y对x的导数。最后,通过查看x的grad属性,可以得到y对x的导数值,即2x2gradyx∣x26。在实际的使用中,如果我们需要求一个向量值函数的梯度,则只需要对每个变量设置。原创 2023-05-20 18:59:32 · 1155 阅读 · 0 评论 -
torch.utils.data.DataLoader 的功能
支持多种数据集,如 TensorDataset,ImageFolder 等,并且可以根据需要自定义数据集。,我们可以方便地将自己的数据集传入,并在训练时对其进行批量化处理,另外还可以通过自定义。函数来实现对每个 batch 中数据的转换。原创 2023-05-20 16:46:30 · 1247 阅读 · 0 评论 -
word2vec、GloVe、LSA算法的共同特点和区别和优缺点
Word2vec是一种基于神经网络的模型,它通过训练一个前馈神经网络,学习到词汇在向量空间上的表示。GloVe是一种基于全局统计信息和矩阵分解的模型,它通过对整个语料库中的词汇共现矩阵进行矩阵分解,得到词汇的向量表示。LSA是一种基于奇异值分解的模型,它将所有词汇表示为文档-词矩阵的奇异值分解结果。Word2vec和GloVe具有更好的扩展性,而LSA的计算量较大。Word2vec、GloVe和LSA都是常见的词向量表示算法,它们的共同点是都是将词汇表示为低维空间向量,并用这些向量来描述词汇之间的关系。原创 2023-05-19 11:07:46 · 599 阅读 · 0 评论 -
公开的中文语料库有哪些?
中文情感分析数据集ChnSentiCorp:包含正面、负面和中性情感的中文文本数据,适用于情感分析任务。开放中文词库OpenCC:提供包括简体中文、繁体中文和粤语在内的多种语言版本的中文分词和转换词库。以上仅是一部分常用的公开中文语料库,还有其他一些数据集如人民日报、新华社、搜狗实验室等也值得关注。中文Gigaword数据集:包含新闻、杂志和网页等语料,适用于自然语言处理任务。THUCTC中文文本分类数据集:包含20个分类别的中文文本,适用于文本分类任务。中文维基百科:包含大量的中文文章,非常全面和丰富。原创 2023-05-17 14:27:46 · 2156 阅读 · 0 评论 -
LSA 算法中,如何根据奇异分解矩阵U和S计算文档的潜在语义向量的?
在LSA算法中,可以使用奇异值分解(Singular Value Decomposition,简称SVD)将文档-词项矩阵分解为三个矩阵的乘积,即。在LSA算法中,通过对SVD分解结果中的矩阵U进行截断,只保留其中的前k个主题向量,则可以得到一个新的文档-主题矩阵。,其中U是m×r的文档-主题矩阵,S是r×r的奇异矩阵,而V是n×r的词项-主题矩阵。文档的潜在语义向量在这个新的文档-主题矩阵中的表示,即为其在这个矩阵的第i行,因此,可以通过构建SVD分解矩阵U和文档-词项矩阵D,计算文档潜在语义向量。原创 2023-05-17 14:19:36 · 382 阅读 · 0 评论 -
一分钟理解 AP(Affinity Propagation) 亲和⼒传播算法
这篇博客发出来后,我用 Rust 复现代码出现问题。为此,我对对照了 sklearn 的相关代码,反复比较了两天,发现一处 bug,把 += 误写成了 =,导致数据量大的时候完全无法聚类。这个debug过程让我仔细梳理的 AP 算法的计算过程,今天我对这篇博客做了大规模修改,以便能原样展现原论文思想。原创 2023-03-14 15:40:45 · 2586 阅读 · 3 评论 -
词向量语义匹配:欧氏距离和余弦相似度,选择哪一个?
最近做自然语言处理算法,需要根据词向量判断两个词汇的相似度。面临两个选择:欧氏距离和余弦相似度。选择哪一个好呢?原创 2023-03-08 11:41:42 · 1668 阅读 · 0 评论 -
阅读笔记:TF - IDF 原理
今天查阅 TF-IDF 资料,发现百度百科里面提供了一个例子,解释的很清楚,记下来备用。原创 2023-03-04 17:32:36 · 742 阅读 · 0 评论