草庐IT

闻其声而知雅意,基于Pytorch(mps/cpu/cuda)的人工智能AI本地语音识别库Whisper(Python3.10)

前文回溯,之前一篇:含辞未吐,声若幽兰,史上最强免费人工智能AI语音合成TTS服务微软Azure(Python3.10接入),利用AI技术将文本合成语音,现在反过来,利用开源库Whisper再将语音转回文字,所谓闻其声而知雅意。Whisper是一个开源的语音识别库,它是由FacebookAIResearch(FAIR)开发的,支持多种语言的语音识别。它使用了双向循环神经网络(bi-directionalRNNs)来识别语音并将其转换为文本。Whisper支持自定义模型,可以用于实现在线语音识别,并且具有高级的语音识别功能,支持语音识别中的语音活动检测和语音识别中的语音转文本。它是使用PyTor

Pytorch:单卡多进程并行训练

1导引我们在博客《Python:多进程并行编程与进程池》中介绍了如何使用Python的multiprocessing模块进行并行编程。不过在深度学习的项目中,我们进行单机多进程编程时一般不直接使用multiprocessing模块,而是使用其替代品torch.multiprocessing模块。它支持完全相同的操作,但对其进行了扩展。Python的multiprocessing模块可使用fork、spawn、forkserver三种方法来创建进程。但有一点需要注意的是,CUDA运行时不支持使用fork,我们可以使用spawn或forkserver方法来创建子进程,以在子进程中使用CUDA。创建

Pytorch:单卡多进程并行训练

1导引我们在博客《Python:多进程并行编程与进程池》中介绍了如何使用Python的multiprocessing模块进行并行编程。不过在深度学习的项目中,我们进行单机多进程编程时一般不直接使用multiprocessing模块,而是使用其替代品torch.multiprocessing模块。它支持完全相同的操作,但对其进行了扩展。Python的multiprocessing模块可使用fork、spawn、forkserver三种方法来创建进程。但有一点需要注意的是,CUDA运行时不支持使用fork,我们可以使用spawn或forkserver方法来创建子进程,以在子进程中使用CUDA。创建

训练一个图像分类器demo in PyTorch【学习笔记】

【学习源】Tutorials>DeepLearningwithPyTorch:A60MinuteBlitz>TrainingaClassifier  本文相当于对上面链接教程中自认为有用部分进行的截取、翻译和再注释。便于日后复习、修正和补充。边写边查资料的过程中猛然发现这居然有中文文档……不过中文文档也是志愿者翻译的,仅仅是翻译,也没有对知识点的扩充,不耽误我写笔记。这篇笔记就继续写下去吧。附PyTorch中文教程&文档>训练分类器一、准备数据集  一般来说,当你不得不与图像、文本或者视频资料打交道时,会选择使用python的标准库将原始数据加载转化成numpy数组,甚至可以继续转换成torc

训练一个图像分类器demo in PyTorch【学习笔记】

【学习源】Tutorials>DeepLearningwithPyTorch:A60MinuteBlitz>TrainingaClassifier  本文相当于对上面链接教程中自认为有用部分进行的截取、翻译和再注释。便于日后复习、修正和补充。边写边查资料的过程中猛然发现这居然有中文文档……不过中文文档也是志愿者翻译的,仅仅是翻译,也没有对知识点的扩充,不耽误我写笔记。这篇笔记就继续写下去吧。附PyTorch中文教程&文档>训练分类器一、准备数据集  一般来说,当你不得不与图像、文本或者视频资料打交道时,会选择使用python的标准库将原始数据加载转化成numpy数组,甚至可以继续转换成torc

Pytorch:利用torch.nn.Modules.parameters修改模型参数

1.关于parameters()方法Pytorch中继承了torch.nn.Module的模型类具有named_parameters()/parameters()方法,这两个方法都会返回一个用于迭代模型参数的迭代器(named_parameters还包括参数名字):importtorchnet=torch.nn.LSTM(input_size=512,hidden_size=64)print(net.parameters())print(net.named_parameters())##我们可以将net.parameters()迭代器和将net.named_parameters()转化为列表类

Pytorch:利用torch.nn.Modules.parameters修改模型参数

1.关于parameters()方法Pytorch中继承了torch.nn.Module的模型类具有named_parameters()/parameters()方法,这两个方法都会返回一个用于迭代模型参数的迭代器(named_parameters还包括参数名字):importtorchnet=torch.nn.LSTM(input_size=512,hidden_size=64)print(net.parameters())print(net.named_parameters())##我们可以将net.parameters()迭代器和将net.named_parameters()转化为列表类

pytorch模型定义常用函数以及resnet模型修改案例

模型定义常用函数利用nn.Parameter()设计新的层importtorchfromtorchimportnnclassMyLinear(nn.Module):def__init__(self,in_features,out_features):super().__init__()self.weight=nn.Parameter(torch.randn(in_features,out_features))self.bias=nn.Parameter(torch.randn(out_features))defforward(self,input):return(input@self.weig

pytorch模型定义常用函数以及resnet模型修改案例

模型定义常用函数利用nn.Parameter()设计新的层importtorchfromtorchimportnnclassMyLinear(nn.Module):def__init__(self,in_features,out_features):super().__init__()self.weight=nn.Parameter(torch.randn(in_features,out_features))self.bias=nn.Parameter(torch.randn(out_features))defforward(self,input):return(input@self.weig

图卷积神经网络分类的pytorch实现

  图神经网络(GNN)目前的主流实现方式就是节点之间的信息汇聚,也就是类似于卷积网络的邻域加权和,比如图卷积网络(GCN)、图注意力网络(GAT)等。下面根据GCN的实现原理使用Pytorch张量,和调用torch_geometric包,分别对Cora数据集进行节点分类实验。  Cora是关于科学文献之间引用关系的图结构数据集。数据集包含一个图,图中包括2708篇文献(节点)和10556个引用关系(边)。其中每个节点都有一个1433维的特征向量,即文献内容的嵌入向量。文献被分为七个类别:计算机科学、物理学等。GCN计算流程  对于某个GCN层,假设输入图的节点特征为$X\inR^{|V|\t