🚀 tf-keras 口音分类模型
本项目使用 Yamnet 进行特征提取,实现对英国和爱尔兰口音的分类。通过该模型,可以高效、准确地识别不同地区的英语口音,为语音处理和语言研究提供有力支持。
📚 详细文档
模型描述
此模型借助 Yamnet 进行特征提取,实现对英国和爱尔兰口音的分类。
Yamnet 模型
Yamnet 是一个在 AudioSet 数据集上训练的音频事件分类器,用于从 AudioSet 本体中预测音频事件。它可在 TensorFlow Hub 上获取。
Yamnet 接受采样率为 16 kHz 的一维音频样本张量。模型输出一个三元组:
- 形状为
(N, 521)
的得分,表示 521 个类别的得分。
- 形状为
(N, 1024)
的嵌入向量。
- 整个音频帧的对数梅尔频谱图。
我们将使用从音频样本中提取的嵌入向量作为密集模型的输入。
有关 Yamnet 的更多详细信息,请参考其 TensorFlow Hub 页面。
密集模型
我们使用的密集模型包括:
- 输入层:Yamnet 分类器的嵌入输出。
- 4 个密集隐藏层和 4 个丢弃层。
- 输出密集层。
训练和评估数据
使用的数据集是 Crowdsourced high-quality UK and Ireland English Dialect speech data set,该数据集包含 17,877 个高质量音频 wav 文件。
此数据集包含来自 120 名志愿者的超过 31 小时的录音,这些志愿者自称是英格兰南部、中部、北部、威尔士、苏格兰和爱尔兰的英语母语者。
更多信息,请参考上述链接或以下论文:Open-source Multi-speaker Corpora of the English Accents in the British Isles
训练过程
训练超参数
优化器 |
学习率 |
衰减率 |
beta_1 |
beta_2 |
epsilon |
amsgrad |
训练精度 |
Adam |
1.9644e-05 |
0.0 |
0.9 |
0.999 |
1e-07 |
False |
float32 |
训练指标
轮数 |
训练损失 |
训练准确率 |
训练 AUC |
1 |
10.614 |
0.343 |
0.759 |
2 |
9.378 |
0.396 |
0.806 |
3 |
8.993 |
0.422 |
0.821 |
4 |
8.768 |
0.433 |
0.829 |
5 |
8.636 |
0.438 |
0.833 |
6 |
8.514 |
0.442 |
0.837 |
7 |
8.432 |
0.444 |
0.839 |
8 |
8.339 |
0.446 |
0.841 |
9 |
8.270 |
0.448 |
0.843 |
10 |
8.202 |
0.449 |
0.845 |
11 |
8.141 |
0.451 |
0.847 |
12 |
8.095 |
0.452 |
0.849 |
13 |
8.029 |
0.454 |
0.851 |
14 |
7.982 |
0.454 |
0.852 |
15 |
7.935 |
0.456 |
0.853 |
16 |
7.896 |
0.456 |
0.854 |
17 |
7.846 |
0.459 |
0.856 |
18 |
7.809 |
0.460 |
0.857 |
19 |
7.763 |
0.460 |
0.858 |
20 |
7.720 |
0.462 |
0.860 |
21 |
7.688 |
0.463 |
0.860 |
22 |
7.640 |
0.464 |
0.861 |
23 |
7.593 |
0.467 |
0.863 |
24 |
7.579 |
0.467 |
0.863 |
25 |
7.552 |
0.468 |
0.864 |
26 |
7.512 |
0.468 |
0.865 |
27 |
7.477 |
0.469 |
0.866 |
28 |
7.434 |
0.470 |
0.867 |
29 |
7.420 |
0.471 |
0.868 |
30 |
7.374 |
0.471 |
0.868 |
31 |
7.352 |
0.473 |
0.869 |
32 |
7.323 |
0.474 |
0.870 |
33 |
7.274 |
0.475 |
0.871 |
34 |
7.253 |
0.476 |
0.871 |
35 |
7.221 |
0.477 |
0.872 |
36 |
7.179 |
0.480 |
0.873 |
37 |
7.155 |
0.481 |
0.874 |
38 |
7.141 |
0.481 |
0.874 |
39 |
7.108 |
0.482 |
0.875 |
40 |
7.067 |
0.483 |
0.876 |
41 |
7.060 |
0.483 |
0.876 |
42 |
7.019 |
0.485 |
0.877 |
43 |
6.998 |
0.484 |
0.877 |
44 |
6.974 |
0.486 |
0.878 |
45 |
6.947 |
0.487 |
0.878 |
46 |
6.921 |
0.488 |
0.879 |
47 |
6.875 |
0.490 |
0.880 |
48 |
6.860 |
0.490 |
0.880 |
49 |
6.843 |
0.491 |
0.881 |
50 |
6.811 |
0.492 |
0.881 |
51 |
6.783 |
0.494 |
0.882 |
52 |
6.764 |
0.494 |
0.882 |
53 |
6.719 |
0.497 |
0.883 |
54 |
6.693 |
0.497 |
0.884 |
55 |
6.682 |
0.498 |
0.884 |
56 |
6.653 |
0.497 |
0.884 |
57 |
6.630 |
0.499 |
0.885 |
58 |
6.596 |
0.500 |
0.885 |
59 |
6.577 |
0.500 |
0.886 |
60 |
6.546 |
0.501 |
0.886 |
61 |
6.517 |
0.502 |
0.887 |
62 |
6.514 |
0.504 |
0.887 |
63 |
6.483 |
0.504 |
0.888 |
64 |
6.428 |
0.506 |
0.888 |
65 |
6.424 |
0.507 |
0.889 |
66 |
6.412 |
0.508 |
0.889 |
67 |
6.388 |
0.507 |
0.889 |
68 |
6.342 |
0.509 |
0.890 |
69 |
6.309 |
0.510 |
0.891 |
70 |
6.300 |
0.510 |
0.891 |
71 |
6.279 |
0.512 |
0.892 |
72 |
6.258 |
0.510 |
0.892 |
73 |
6.242 |
0.513 |
0.892 |
74 |
6.206 |
0.514 |
0.893 |
75 |
6.189 |
0.516 |
0.893 |
76 |
6.164 |
0.517 |
0.894 |
77 |
6.134 |
0.517 |
0.894 |
78 |
6.120 |
0.517 |
0.894 |
79 |
6.081 |
0.520 |
0.895 |
80 |
6.090 |
0.518 |
0.895 |
81 |
6.052 |
0.521 |
0.896 |
82 |
6.028 |
0.521 |
0.896 |
83 |
5.991 |
0.521 |
0.897 |
84 |
5.974 |
0.524 |
0.897 |
85 |
5.964 |
0.524 |
0.897 |
86 |
5.951 |
0.524 |
0.897 |
87 |
5.940 |
0.524 |
0.898 |
88 |
5.891 |
0.525 |
0.899 |
89 |
5.870 |
0.526 |
0.899 |
90 |
5.856 |
0.528 |
0.899 |
91 |
5.831 |
0.528 |
0.900 |
92 |
5.808 |
0.529 |
0.900 |
93 |
5.796 |
0.529 |
0.900 |
94 |
5.770 |
0.530 |
0.901 |
95 |
5.763 |
0.529 |
0.901 |
96 |
5.749 |
0.530 |
0.901 |
97 |
5.742 |
0.530 |
0.901 |
98 |
5.705 |
0.531 |
0.902 |
99 |
5.694 |
0.533 |
0.902 |
100 |
5.671 |
0.534 |
0.903 |
模型图
查看模型图

验证结果
模型在验证数据集上取得了以下结果:
指标 |
验证集结果 |
准确率 |
50% |
AUC |
0.8909 |
d-prime |
1.742 |
验证集的混淆矩阵如下:

🔗 参考信息
作者:Fadi Badine。
基于 Fadi Badine 的以下 Keras 示例 English speaker accent recognition using Transfer Learning
查看演示空间 点击此处