Path: blob/master/site/zh-cn/hub/tutorials/yamnet.ipynb
25118 views
Kernel: Python 3
Copyright 2020 The TensorFlow Hub Authors.
Licensed under the Apache License, Version 2.0 (the "License");
In [ ]:
使用 YAMNet 进行声音分类
YAMNet 是一个深度网络,可以从训练它的 AudioSet-YouTube 语料库中预测 521 个音频事件类。它采用 Mobilenet_v1 深度可分离卷积架构。
In [ ]:
从 TensorFlow Hub 加载模型。
注:要阅读文档,只需点击模型的网址
In [ ]:
标签文件将从模型资产中加载,并位于 model.class_map_path()
中。您需要将其加载到 class_names
变量上。
In [ ]:
添加一种方法来验证和转换加载的音频是否使用了正确的 sample_rate (16K),采样率不正确会影响模型的结果。
In [ ]:
下载并准备声音文件
在这里,您将下载一个 wav 文件并聆听。如果您已有文件,则只需将其上传到 Colab 并改用它。
注:预期的音频文件应为 16kHz 采样率的单声道 wav 文件。
In [ ]:
In [ ]:
In [ ]:
需要将 wav_data
归一化为 [-1.0, 1.0]
中的值(如模型文档中所述)。
In [ ]:
执行模型
现在是简单的部分:使用已经准备好的数据,只需调用模型并获取得分、嵌入向量和声谱图。
得分是您将使用的主要结果。以后将使用声谱图进行一些可视化。
In [ ]:
In [ ]:
可视化
YAMNet 还会返回一些可用于可视化的附加信息。我们看一下波形、声谱图和推断的热门类。
In [ ]: