男声女声分类识别SVM
内容为对测试集中声音数据进行性别预测,测试文件夹中有951行数据
数据类别一共两类:female、male
推荐使用SVM分类,也可使用其他如决策树等方法分类
在jupyterlab中将识别结果写入文件 /home/ilab/submission
每行输出id号(第一列数据)+'\t'+ female或者是male(不要改变测试集顺序)
例如:
6 female
7 male
8 male
9 female
代码:评分91.3
import pandas as pd
import numpy as np
from sklearn import svm
from sklearn import model_selection
import matplotlib.pyplot as plt
import matplotlib as mpltrain_data = pd.read_csv('/ilab/datasets/local/voice/train.csv')#导入数据集
test = pd.read_csv('/ilab/datasets/local/voice/test.csv')
train = train_data.values.tolist() #转化成列表
test1 = test.values.tolist()
ss1 = {'male':0, 'female':1} #设置标签
ss2 = {}
a = -1
yy= []
for i in train: #一共二十列变量,逐个分析a = a + 1i[21] = ss1[i[21]]yy.append(i[21])i.pop(21)
train = np.mat(train)
train2 = train[:, 1:3]
test = np.mat(test)
test1 = test[:,1:3]yy = np.array(yy)
print(train)
def classifier():clf = svm.SVC(C=0.5, # 误差惩罚系数,默认1kernel='linear', # 线性核decision_function_shape='ovr') # 决策函数return clf
clf = classifier()
print(yy)
def train1(clf, x_train, y_train):clf.fit(x_train, # 训练集特征向量y_train.ravel()) # 训练集目标值# 训练SVM 模型
train2 = train[:, 1:19]
test1 = test[:, 1:19]
print(test1)
train1(clf, train2, yy)ha = clf.predict(test1)
# 读取test.csv文件,输出submissionimport pandas as pd# 将id读取
test = pd.read_csv('/ilab/datasets/local/voice/test.csv')
test_sub = test.iloc[:, [0]]
# 训练出来性别
gender = []
for i in range(len(test_sub)):if ha[i] == 1:gender.append('female')else:gender.append('male')
print(gender)
df_gender = pd.DataFrame(gender)
# 将id列和预测出来的性别列拼接并输出submission文件
df=pd.concat([test_sub,df_gender],axis=1)
df.to_csv('/home/ilab/submission', sep='\t', header=None, index=False)
男声女声分类识别SVM相关推荐
- 男声女声分类之SVM
男声女声分类之svm 目录 男声女声分类之svm svc 数据 模型构建预测 svc 1.支撑向量机SVM是一种非常重要和广泛的机器学习算法,它的算法出发点是尽可能找到最优的决策边界,使得模型的泛化能 ...
- 机器学习 实验二 男声女声分类
机器学习 实验二 男声女声分类 一.实验环境 PC机,Python 二.代码 #%%import pandas as pd from sklearn.preprocessing import Stan ...
- 语音识别之男女声分类(从一段对话中分离男声)
目录 0 引言 1 思路 2 代码 (1)主函数 (2)子函数judge.m 3 代码运行结果 4 结论 5 参考资料 0 引言 前段时间,朋友让我帮忙剪十段音频,每段音频为约十分 ...
- MADlib——基于SQL的数据挖掘解决方案(23)——分类之SVM
一.SVM简介 SVM法即支持向量机(Support Vector Machine,SVM)法,由Vapnik等人于1995年提出,具有相对优良的性能指标.该方法是建立在统计学理论基础上的机器学习方法 ...
- 语音信号处理(1):男女声在线识别系统(倒谱、基音频率)
语音信号处理是挺有意思的,尤其是在人工智能横行的今天.不过就我看来,现在整个社会上明显对人工智能的作用过于夸大了,大多数写报道和搞炒作宣传的人基本不懂人工智能.尘世若此,其实又何止是在人工智能上 ...
- LabVIEW色彩分类识别(基础篇—15)
色彩分类(Color Classification)用于根据样本的颜色信息对其进行分类识别.与单色目标的分类识别类似,色彩分类过程也包括训练和分类两个阶段. 训练阶段主要用来基于各种彩色样本创建分类器 ...
- DL之VGG16:基于VGG16迁移技术实现猫狗分类识别(图片数据量调整→保存h5模型)
DL之VGG16:基于VGG16迁移技术实现猫狗分类识别(图片数据量调整→保存h5模型) 目录 基于VGG16迁移技术实现猫狗分类识别(图片数据量调整→保存h5模型) 设计思路 输出结果 1488/1 ...
- DL之AlexNet:利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型)
DL之AlexNet:利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型) 目录 利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型) 设计思路 处 ...
- 三、ResNet50预置算法提高美食分类识别精确度
@Author:Runsen @Date:2020/5/21 上次,华为云ModelArts零代码实现美食分类识别,但是在精确度在并不理想. 这次,我使用ResNet50算法,这是什么东西,不用管. ...
最新文章
- 什么是区块链智能合约?
- 网络中常见的互通与不通—Vecloud微云
- C# 最小化到系统托盘的实现(一)
- Struts2框架中s:if标签和s:set标签小结
- linux系统的课程实践,“Linux操作系统与应用”课程教学与实践
- 帆软报表填报成功后实时刷新当前页面
- JavaParse入门
- Android实现多国语言适配:app名称随系统的语言而更换
- SAP ERP FI(Financial Accounting)财务会计--BW方向--初级--2
- 最火爆的人工智能学习基础课程(2021人工智能视觉训练营)
- IDEA官方有中文版啦
- _parameter;@param,refid是什么意思?
- 面向2018年的设计趋势
- 软件工程新生需要注意什么?
- 用原生Node实现一个静态web服务器
- IT小天个人技术博客
- 在BIOS中如何更改启动顺序
- HTML在一段文字下加虚线,怎么定义每一行的文字下面都有下划线虚线?_html/css_WEB-ITnose...
- iso22000食品安全管理体系_ISO22000《食品安全管理体系》
- db2无法启动纠错过程
热门文章
- 二、MongoDB简介及基本操作
- vue html实体空格无效
- VB实现SQL Server 2000存储过程调用
- html使用CANVAS画心形图形,用画布canvas画个爱心
- 魔兽世界服务器显示满但不用排队,魔兽世界哪个服务器不用排队 魔兽世界怀旧服介绍...
- nginx 根据请求头判断是安卓还是webq
- python批量打印excel 按照顺序_从txt文件写入excel2007,后台打印顺序正常,但是打开excel实际数据没有按照顺序排列...
- 各类安全与环保知识试题集
- VS2003安装,frontpage的问题(转)
- 【使用DTW将不等长序列对齐】