内容为对测试集中声音数据进行性别预测,测试文件夹中有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相关推荐

  1. 男声女声分类之SVM

    男声女声分类之svm 目录 男声女声分类之svm svc 数据 模型构建预测 svc 1.支撑向量机SVM是一种非常重要和广泛的机器学习算法,它的算法出发点是尽可能找到最优的决策边界,使得模型的泛化能 ...

  2. 机器学习 实验二 男声女声分类

    机器学习 实验二 男声女声分类 一.实验环境 PC机,Python 二.代码 #%%import pandas as pd from sklearn.preprocessing import Stan ...

  3. 语音识别之男女声分类(从一段对话中分离男声)

    目录 0  引言 1  思路 2  代码 (1)主函数 (2)子函数judge.m 3  代码运行结果 4  结论 5  参考资料 0  引言    前段时间,朋友让我帮忙剪十段音频,每段音频为约十分 ...

  4. MADlib——基于SQL的数据挖掘解决方案(23)——分类之SVM

    一.SVM简介 SVM法即支持向量机(Support Vector Machine,SVM)法,由Vapnik等人于1995年提出,具有相对优良的性能指标.该方法是建立在统计学理论基础上的机器学习方法 ...

  5. 语音信号处理(1):男女声在线识别系统(倒谱、基音频率)

       语音信号处理是挺有意思的,尤其是在人工智能横行的今天.不过就我看来,现在整个社会上明显对人工智能的作用过于夸大了,大多数写报道和搞炒作宣传的人基本不懂人工智能.尘世若此,其实又何止是在人工智能上 ...

  6. LabVIEW色彩分类识别(基础篇—15)

    色彩分类(Color Classification)用于根据样本的颜色信息对其进行分类识别.与单色目标的分类识别类似,色彩分类过程也包括训练和分类两个阶段. 训练阶段主要用来基于各种彩色样本创建分类器 ...

  7. DL之VGG16:基于VGG16迁移技术实现猫狗分类识别(图片数据量调整→保存h5模型)

    DL之VGG16:基于VGG16迁移技术实现猫狗分类识别(图片数据量调整→保存h5模型) 目录 基于VGG16迁移技术实现猫狗分类识别(图片数据量调整→保存h5模型) 设计思路 输出结果 1488/1 ...

  8. DL之AlexNet:利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型)

    DL之AlexNet:利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型) 目录 利用卷积神经网络类AlexNet实现猫狗分类识别(图片数据增强→保存h5模型) 设计思路 处 ...

  9. 三、ResNet50预置算法提高美食分类识别精确度

    @Author:Runsen @Date:2020/5/21 上次,华为云ModelArts零代码实现美食分类识别,但是在精确度在并不理想. 这次,我使用ResNet50算法,这是什么东西,不用管. ...

最新文章

  1. 详解通用物体检测算法:基于锚框与无需锚框
  2. 【机器视觉】 break算子
  3. php代码加注释_怎么在php中添加注释
  4. Java 对象的序列化
  5. (69)信号发生器DDS正弦波设计(一)(第14天)
  6. Java的设计模式 之 简单的工厂模式(一)
  7. 别信了大佬的“鬼话”,想造无人驾驶到底进展如何吗?
  8. sql 获取日期时分秒_SQL获取系统年月日时分秒 | 学步园
  9. idea下载Mybatis插件
  10. 学习C语言编程,推荐你看这6本书
  11. 如果北京的房价下跌,到底能跌多少?
  12. 网络共享计算机无法登录,局域网共享文件夹访问无法出现用户登陆窗口怎么办?...
  13. 行列式【线性代数系列(一)】
  14. ae制h5文字动画_绝对干货!H5动画制作方法全揭秘
  15. HashMap源码学习——初探
  16. [轻笔记]Pytorch语义分割输出转换为图像显示
  17. oracle sql 动态参数,sql – 具有动态参数的Oracle Lag函数
  18. 阿里Java岗P5-P7成长笔记【3283页PDF文档免费领】
  19. 文件和文件夹操作——文件操作实列
  20. 精读《web reflow》

热门文章

  1. tableau prep builder etl工具使用注意事项
  2. 马哈鱼SQLFLow对SQL Server OUTPUT Clause 的数据血缘分析
  3. nbtscan局域网扫描的原理
  4. PCB设计中单点接地和多点接地
  5. JavaScript加减乘除方法及运算符号
  6. 高级密码学复习番外篇
  7. Java中StringBuilder清空数据方法比较
  8. 使用puppeteer 进行批量网页截图
  9. linux打包日志时间,打包压缩_任务计划_日志
  10. 极速学 python(五)