#在关键字检测领域,一个比较流行的数据集就是Google Speech Commands,但是目前根据链接或者是在pytorch中直接下载,都是下载的30类别+background_noise。
如何找到它的V1-12,V2-12等其他版本的数据集?
Google speech command 数据集获取
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
23条回答 默认 最新
关注 获得0.45元问题酬金 引自免费微信小程序:皆我百晓生
要获取Google Speech Commands不同版本(如V1-12, V2-12)的数据集,你需要直接访问Google Research的GitHub仓库,因为官方并未提供通过PyTorch或者其他库直接下载特定版本数据集的选项。以下是获取不同版本数据集的步骤:
-
首先,打开Google Research的GitHub仓库:https://github.com/google/speech_commands
-
在GitHub页面上,你会看到各个版本的标签。例如,如果你想获取V1的数据集,你应该找到名为
v0.01
的标签,V2的数据集对应v1.0
,以此类推。点击对应的标签名,例如v0.01
会跳转到该版本的分支页面。 -
从该分支页面,找到并点击
data
文件夹下的speech_commands_v0.01.tar.gz
(或其他类似格式的压缩包,具体取决于你要的版本)。这将开始下载这个版本的数据集。 -
下载完成后,解压压缩包,然后你可以按照官方提供的README文件中的指示进行预处理和使用数据集。
如果你想要在Python环境中加载这些数据,可以参考以下代码片段。这里假设你已经将数据解压到了名为
speech_commands_data
的目录中,并且设置了相应的路径。注意,这个代码示例仅用于展示如何读取数据,实际应用可能需要根据你的任务需求进行调整。import os import tarfile import numpy as np from scipy.io import wavfile from sklearn.model_selection import train_test_split def load_audio_file(file_path): sampling_rate, audio_data = wavfile.read(file_path) return audio_data, sampling_rate def load_data(data_dir, categories): data = [] for category in categories: for file_name in os.listdir(os.path.join(data_dir, category)): file_path = os.path.join(data_dir, category, file_name) audio_data, sampling_rate = load_audio_file(file_path) data.append((audio_data, sampling_rate, category)) return data def preprocess_data(data, sample_rate=16000, window_size=0.01, window_stride=0.005): X = [] y = [] for audio_data, _, category in data: n_samples = int(sample_rate * window_size) n_step = int(sample_rate * window_stride) windows = np.split(audio_data, range(n_samples, len(audio_data), n_step)) for window in windows: X.append(window) y.append(category) X = np.array(X).astype(np.float32) / 32768.0 # Normalize to [-1, 1] y = np.array(y) return X, y # 设置你的数据目录和类别列表 data_dir = "speech_commands_data" # 这里替换为你的解压后的数据目录 categories = ["yes", "no", "up", "down", "left", "right", "on", "off", "stop", "go"] # 这里设置你感兴趣的类别 # 加载数据 raw_data = load_data(data_dir, categories) # 预处理数据 X, y = preprocess_data(raw_data) # 划分训练集和测试集 X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42) # 现在你可以使用X_train、y_train和X_test、y_test进行模型训练和评估了
这段代码首先定义了一些辅助函数,用于加载音频文件、加载整个数据集、以及对数据进行预处理。接下来,根据你的数据目录和感兴趣的目标类别(在这个例子中是基本的语音命令),加载数据并进行预处理。最后,数据被划分为训练集和测试集,准备用于模型训练。记得根据你的项目需求修改数据预处理和模型训练部分的代码。
解决 无用评论 打赏 举报 编辑记录-
悬赏问题
- ¥15 短剧的sdk在哪里接入
- ¥15 求:可不可以提供一些 在国内可以用,低代码不要太难 在电脑上可以下载的 制作app的软件
- ¥60 找人回答kibana8.14.3二次集成开发,自定义插件ui导航栏如何设置
- ¥15 fluke高精度万用表8845A型号测交流电压一直跳动,且去掉输入后显示不归零
- ¥15 不同模型怎么用同一个shader
- ¥15 安卓启动没有ais proxy与v4l2的log打印
- ¥15 go怎么读取mdb文件里面的数据
- ¥60 Matlab联合CRUISE仿真编译dll文件报错
- ¥15 脱敏项目合作,ner需求合作
- ¥15 脱敏项目合作,ner需求合作