语音识别(2): kws项目实现、数据集代码分析
语音识别(2):KWS数据集代码分析
数据集分析
kws的语音数据为该数据集有 30 个短单词的 65000 个长度 1 秒钟的发音。
这是Google的一个语音数据集
下载地址:http://download.tensorflow.org/data/speech_commands_v0.01.tar.gz
下载后得到文件 speech_commands_v0.01.tar.gz
训练集包含51088 个 wav 音频文件
验证集包含6798 个 wav 音频文件
测试集包含6835 个 wav 音频文件
pytorch音频官方文档
代码分析
1.Python strip()方法
str.strip([chars]);
返回移除指定字符串头尾指定的字符生成新的字符串。
print str2.strip();
删除空格
2.pushd 命令,了解一下! 一个比 cd 更高效的目录切换命令
push 命令在输过不同的目录以后,再次更改只需要push +* 就好。
Linux中的pushd和popd
(1)popd不带参数,将目录栈的栈顶元素出栈
(2)popd + * 就是将目录栈中第**个目录删除。如果目录栈的栈顶元素没有发生变化,是不会导致当前的目录切换的。
3.with open(““,“r“) as file
为了更加严谨,在打开失败时不执行.close()操作。
with list_fullpath[split].open("r") as fr
4.readlines() 方法返回一个列表,其中包含文件中的每一行作为列表项。
5.Torchaudio.load 读取完音频则为Tensor的型态。
waveform, sr = torchaudio.load(filepath, frame_offset=0 , num_frames=-1, normalize=True, channels_first=True)
torchaudio读取wav音频的使用方法
返回的结果类型:
waveform (torch.Tensor): 如果输入文件是int类型的wav,且normalization为False,则waveform的数据就为int类型的,否则是float32;如果channel_first=True,则waveform.shape=[channel, time]。
sr (int): 采样率
保存音频的代码:`torchaudio.save(filepath, src, sample_rate, channels_first)
6.F.pad() 是pytorch 内置的 tensor 扩充函数,便于对数据集图像或中间层特征进行维度扩充.
F.pad() 函数详解
7.pathlib.Path().iterdir() 返回一个迭代器包含目录中所有的对象,对象包含文件属性信息
python文件操作
代码整合:
PyTorch学习笔记(4)–DataLoader的使用
dataloader与dataset存在区别,dataset取数据是 dataset[:2], 而dataloader取数据可以使用迭代器。
import torchvision
from torch.utils.data import DataLoader
from torch.utils.tensorboard import SummaryWriter# 准备的测试数据集 数据放在了CIFAR10文件夹下
test_data = torchvision.datasets.CIFAR10("./CIFAR10", train=False, transform=torchvision.transforms.ToTensor())
test_loader = DataLoader(dataset=test_data, batch_size=4, shuffle=True, num_workers=0, drop_last=False)# 测试数据集中第一张图片及target
img, target = test_data[0]
print(img.shape)
print(target)# 在定义test_loader时,设置了batch_size=4,表示一次性从数据集中取出4个数据
for data in test_loader:imgs, targets = dataprint(imgs.shape)print(targets)
特征定义
输入特征是BCH*W的4维张量,其中B表示batchsize,C表示特征通道数,H和W表示特征的高和宽
kws项目实现
kws项目地址:
kws-continual-learning
代码使用GPU运行
Windows 下安装 CUDA 和 Pytorch 跑深度学习
.yml 实现虚拟环境
创建一个环境,然后激活,根据配置文件创建虚拟环境:
conda env create -f environment.yml
conda active kws
windows 下 bash 文件的运行
cd
bash conda_install.sh
先安装git
代开.sh文件夹处,右键点击git bash here , 在对话框输入命令
windows10下运行.sh文件报错:wget: command not found
下载wget文件
解决OSError: [WinError 1314] 客户端没有所需的特权
用管理员身份打开pycharm项目文件
google colab使用
google colab使用;
neptune 使用
官网:neptune
参考文件:
github neptune-ai
neptune相关文档
安装 Neptune
如何查找和设置海王星 API 令牌
问题:
No module named ‘neptune’
卸载重装
...# initialize Neptuneneptune.init(<your workspace name>, api_token=<your token>)neptune.create_experiment(name=<your experiment name>, params=PARAMETERS)...
nepute
您可以通过创建仪表板将不同的元数据类型(如图表、参数、图像等)组合在一个地方。
创建后,仪表板将可用于项目中的所有运行。
运行代码:
记录问题并解决Input type (torch.cuda.FloatTensor) and weight type (torch.FloatTensor) should be the same
在trainer.py文件133行添加语句 self.model.to(self.device)
语音识别(2): kws项目实现、数据集代码分析相关推荐
- 使用SonarCloud对.NET Core项目进行静态代码分析
本文将介绍如何使用SonarCloud进行.NET Core项目的静态代码分析.SonarCloud是SonarQube提供的基于云的版本,特别针对于开源项目是免费的. 首先,在sonarcloud. ...
- [转]代码分析工具FxCop1.36之一:介绍与使用
FxCop是一个代码分析工具,一种项目级别的代码分析工具:而微软内部代码检查工具 StyleCop属于代码级别.具体的区别可以在网上搜索到.这里主要说明一下FxCop的使用. FxCop使用可以分为 ...
- php代码静态分析工具,Wpbullet:一款针对WordPress(PHP)的静态代码分析工具
今天给大家介绍的是一款名叫Wpbullet的工具,广大安全研究人员可以使用这款工具来对WordPress.插件.主题以及其他PHP项目进行静态代码分析. 工具安装 大家可以直接从Wpbullet的Gi ...
- 开源项目kcws代码分析--基于深度学习的分词技术
http://blog.csdn.net/pirage/article/details/53424544 分词原理 本小节内容参考待字闺中的两篇博文: 97.5%准确率的深度学习中文分词(字嵌入+Bi ...
- [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(5)(IEnumerable补充)
Asp.net 5的依赖注入注入系列可以参考链接: [Asp.net 5] DependencyInjection项目代码分析-目录 我们在之前讲微软的实现时,对于OpenIEnumerableSer ...
- [Asp.net 5] DependencyInjection项目代码分析-目录
微软DI文章系列如下所示: [Asp.net 5] DependencyInjection项目代码分析 [Asp.net 5] DependencyInjection项目代码分析2-Autofac [ ...
- [Asp.net 5] DependencyInjection项目代码分析4-微软的实现(2)
在 DependencyInjection项目代码分析4-微软的实现(1)中介绍了"ServiceTable"."ServiceEntry"."IGe ...
- TensorFlow发布语音识别入门教程,附1GB数据集代码
原标题:TensorFlow发布语音识别入门教程,附1GB数据集&代码 机械鸡的鸡友经常问:如何开始入门深度学习语音和其他音频识别,例如关键字检测或语音命令. 虽然有一些伟大的开源语音识别系统 ...
- NTL密码算法开源库(数论库)代码分析项目--综述
2021SC@SDUSC NTL密码算法开源库(数论库)代码分析项目--综述 项目综述 NTL开源代码库的安装和使用 NTL代码开源库主要解决的问题 项目分工以及核心代码的分配 项目综述 NTL算法库 ...
最新文章
- ecos 编译时无法找到 tclConfig.sh 和 tkConfig.sh
- python就业前景如何_2020年Python就业前景如何?就业岗位多不多?薪资高不高?...
- 倒计时5天:5G还是6G?
- 列表和字典循环遍历时的删除问题,集合
- 【demo练习二】:WPF依赖属性的练习
- 《重构-改善既有代码的设计》学习笔记(二)
- mysql表的增删查改
- C++新特性探究(6.1):auto和decltype的类型推断差异所在
- 深度学习根据文字生成图片教程(附python代码)
- Ext.Net学习笔记20:Ext.Net FormPanel 复杂用法
- python单词的含义-python
- matlab bode 频率,matlab – bode和freqz之间的区别
- IPV4内网地址网段
- RACK与重复ACK
- 全文搜索引擎solr使用说明
- VirtualBox 扩展VDI空间
- IDEA使用database时,连接MySQL后schemas不显示数据库名的情况
- Python生成自动化测试报告的两种方法
- office365服务器没有响应,修复:由于长时间运行的脚本,Office 365没有响应
- 【dgl学习】dgl中edges.src/edges.dst/edges.data解释