使用matlab跳转您的DCEST挑战2021
声学场景和事件(DCASE)社区的检测和分类创建了一年的研讨会和一系列事件,该系列事件通过从学术和工业背景的研究人员汇集在一起来推进计算场景和事件分析中的最先进。
每年都会发布新的和更新的数据集和竞赛,探索不同的应用程序、需求和目标。今年,dcast 2021.任务1a的挑战是执行低复杂度的声学场景分类,该分类对各种录音设备(如录音室质量的麦克风、智能手机和摄像机上的麦克风)具有鲁棒性。其目标是将声音分为机场、地铁站、有轨电车、广场等10个声音场景之一。样本是从布拉格、巴黎和巴塞罗那等城市收集的。
在MATLAB中创建基线
Task 1a的官方基线是用Python发布的,使用TensorFlow进行深度学习,并使用提供的DCASE工具工具箱进行预处理。
我在MATLAB中重新实现了基线。MATLAB实现包含在一个脚本中,使得非专家很容易探索数据,理解基线实现,并修改它以提交。音频工具箱在MATLAB提供函数和应用程序提取音频特征(audiofeatureextractor.)和增强数据(audioDataAugmenter),使其易于探索对系统的修改。
部分挑战是开发一种模型,其中一个模型为128 kB的非零参数。这可以通过开发小型模型来完成,通过修剪模型,或者通过从用于训练的标准32位浮点量化到较少数量的比特来实现。这个Matlab基线代码利用了dlquantizer对象和量化网络使用8位整数与深度学习工具箱模型量化库。
注意:如果你还没有使用MATLAB,深度学习工具箱和音频工具箱,你可以得到一个免费30天试用.
量化的基准
应用量子化是一个简单的任务dlquantizer.要使用它,您可以指定要校准的网络和执行环境,然后使用校准数据进行校准。
Quantobj = DlQuantizer(Net,'EcomentionEnvironment','GPU');
的dlquantizer对象需要执行校准图像数据存储。包装功能和标签augmentedImageDatastore对象。
augsimdsTrain = augmentedImageDatastore ([numFeatures numHops], trainFeatures trainLables);augsimdsTest = augmentedImageDatastore ([numFeatures numHops], testFeatures testLables);
使用训练集校准dlquantizer目的。
Calresults =校准(Quantobj,Augimdstrain);
一个提示要记住:目前,dlquantizer不支持audiod金宝appataStore输入。要将其与基于音频的数据(在这种情况下,MEL谱图)中使用,必须将培训数据放在内存中,然后将其包装为AugmentedImageDataStore,如上面所示。然后,您将AugmentedImageDataStore指定为校准网络时要使用的校准数据。
使用的一个优点dlquantizer它量化到INT8,可以部署到许多嵌入式系统的低精度数据类型。它实现了这种量化结果,具有最小的精度损失,有效地创建了与量化为float16的Python基线相同的网络。
入门工具
这段基线代码的目标是激发您的解决方案,以应对MATLAB中这个有趣的挑战。Audio Toolbox中的扩展功能可用于启动您的设计探索。结果是一个更小、更包含的基线,更容易改进。当Python基线量化为float16时,int8提供了更小的模型和更快的推断。
我们希望这个基线鼓励新成员加入DCESE社区,参加年度比赛,并推进最先进的。
下载代码或分支,然后开始!如果你有任何问题,请在下面的评论中告诉我。
- 类别:
- 深度学习
评论
要留下评论,请点击这里登录到您的MathWorks帐户或创建一个新帐户。