【B392】机器学习-基于朴素贝叶斯的语音性别识别及分类器比较

2021-11-03 09:38:55      索炜达电子      1406     

项目编号:B392

文件大小:1.2M

源码说明:带中文注释

开发环境:Python

简要概述:

项目概述

题目背景

用朴素贝叶斯分类器进行数字手写体识别(基于MINIST数据集),因此在这里用朴素贝叶斯在语音上做一个小应用——分辨声音是男性还是女性。具体题目可以参考https://www.kaggle.com/primaryobjects/voicegender

数据集

数据集可自行在https://www.kaggle.com/primaryobjects/voicegender下载或附件。这个数据集是基于对男女语音段进行合理的声音预处理而得到的语音特征(并不包含原始语音段)。集合中共有3168条数据,男女各1584条,每条数据可视作一个长度为21的一维数组。其中前20个数值是这条语音的20个特征值,这些特征值包括了语音信号的长度、基频、标准差、频带中值点/一分位频率/三分位频率等;最后一个数值是性别标记。元数据集中直接以字符串,即male和female进行标注。使用7:3划分数据集。

任务描述

通过朴素贝叶斯方法,可以先对所有特征值做统计,并且通过连续性参数估计(高斯分布)方法得到参数。之后使用预测函数预测测试集。

设计报告:

【B392】机器学习-基于朴素贝叶斯的语音性别识别及分类器比较

目录

一、项目题目 3

二、项目概述 3

题目背景 3

数据集 3

任务描述 3

评测标准 3

三、算法设计 4

高斯朴素贝叶斯算法原理简述 4

具体实现过程 4

拓展分析构想 5

四、实验环境与平台 6

五、程序实现 6

高斯朴素贝叶斯python源代码 6

拓展分析中基于sklearn的四种分类器实现的python源代码 10

六、实验结果 13

七、结果分析 14

八、拓展分析 15

抽样方式比较 15

各个属性的分析 16

特征筛选后的结果 19

多种分类器实现及比较 20

参考文献 22

运行结果:

【B392】机器学习-基于朴素贝叶斯的语音性别识别及分类器比较

【B392】机器学习-基于朴素贝叶斯的语音性别识别及分类器比较

data_analyse.py是绘制各个属性分布图的代码;

demo.py是初步实现高斯贝叶斯的代码;

Four_sorters_sklearn.py是基于sklearn实现的四种分类器代码;

GNB_python.py是整理后的高斯贝叶斯代码;

report.docx是项目报告;

voice.csv是数据集;


目录│文件列表:

 └ ML_Project

    │ data_analyse.py

    │ demo.py

    │ Four_sorters_sklearn.py

    │ GNB_python.py

    │ report.docx

    │ voice.csv

    └ __pycache__

       └ sklearn.cpython-37.pyc

TAG语音性别识别
  • 9 次
  • 50 分