周志华《机器学习》习题6.2
6.2 试用LIBSVM,在西瓜数据集3.0 α \alpha上分别用线性核和高斯核训练一个SVM,并比较其支持向量的差别。
我用的是sklearn.svm中的SVC类,这个类是基于LIBSVM实现的。很傻瓜式的几行代码就搞定了,答案是它俩得到一样的支持向量。
# -*- coding: utf-8 -*-
"""Excercise 6.2"""
import numpy as np
import pandas as pd
from sklearn import svmdata = pd.read_csv(filepath_or_buffer = '../dataset/watermelon3.0alpha.csv')#Seperata the data into samples and labels
columns = data.columns
attributes = columns[:-1]
label = columns[-1]
samples_frame = data[attributes]
label_series = data[label]
#Up to now, we do not need DataFrame any more, instead, an array is more suitable
samples = samples_frame.values
labels = label_series.tolist()#linear kernel
clf = svm.SVC(kernel = 'linear')
clf.fit(samples,labels)
#Get support vectors
print clf.support_vectors_
#Get indices of support vectors
print clf.support_
#Get number of support vectors for each classes
print clf.n_support_#gaussian kernel
clf1 = svm.SVC(kernel = 'rbf')
clf1.fit(samples,labels)
#Get support vectors
print clf1.support_vectors_
#Get indices of support vectors
print clf1.support_
#Get number of support vectors for each classes
print clf1.n_support_
运行结果:
[[ 0.666 0.091][ 0.243 0.267][ 0.343 0.099][ 0.639 0.161][ 0.657 0.198][ 0.36 0.37 ][ 0.593 0.042][ 0.719 0.103][ 0.697 0.46 ][ 0.774 0.376][ 0.634 0.264][ 0.608 0.318][ 0.556 0.215][ 0.403 0.237][ 0.481 0.149][ 0.437 0.211]]
[ 8 9 11 12 13 14 15 16 0 1 2 3 4 5 6 7]
[8 8]
[[ 0.666 0.091][ 0.243 0.267][ 0.343 0.099][ 0.639 0.161][ 0.657 0.198][ 0.36 0.37 ][ 0.593 0.042][ 0.719 0.103][ 0.697 0.46 ][ 0.774 0.376][ 0.634 0.264][ 0.608 0.318][ 0.556 0.215][ 0.403 0.237][ 0.481 0.149][ 0.437 0.211]]
[ 8 9 11 12 13 14 15 16 0 1 2 3 4 5 6 7]
[8 8]
周志华《机器学习》习题6.2相关推荐
- 周志华-机器学习西瓜书-第三章习题3.3 编程实现对率回归
本文为周志华机器学习西瓜书第三章课后习题3.3答案,编程实现对率回归,数据集为书本第89页的数据 使用tensorflow实现过程 # coding=utf-8 import tensorflow a ...
- 《机器学习》周志华课后习题答案——第一章(1-3题完结)
<机器学习>周志华课后习题答案--第一章 文章目录 <机器学习>周志华课后习题答案--第一章 一.表1.1中若只包含编号为1和4的两个样例,试给出相应的版本空间 二.与使用单个 ...
- 《机器学习》周志华课后习题答案——第三章 (1-7题)
<机器学习>周志华课后习题答案--第三章 (1-7题) 文章目录 <机器学习>周志华课后习题答案--第三章 (1-7题) 一.试析在什么情形下式(3.2)中不必考虑偏置项b. ...
- 机器学习 周志华 课后习题3.5 线性判别分析LDA
机器学习 周志华 课后习题3.5 线性判别分析LDA 照着书上敲了敲啥都不会,雀食折磨 python代码 # coding=UTF-8 from numpy import * # 我安装numpy的时 ...
- 《机器学习》周志华课后习题答案——第八章 (1-2已完结)
<机器学习>周志华课后习题答案---第五章 (1-2已完结) 文章目录 <机器学习>周志华课后习题答案---第五章 (1-2已完结) 一.如图所示 二.如图所示 一.如图所示 ...
- 周志华机器学习(6):支持向量机
周志华机器学习(6):支持向量机 6 支持向量机 6.1 间隔与支持向量 6.2 对偶问题(dual problem) 6.3 核函数 6.4 软间隔与正则化 基本是大段摘录西瓜书加上一些自己的解释补 ...
- 周志华机器学习--绪论
周志华机器学习–绪论 第一章 绪论 第二章 模型评估与选择 第三章 线性模型 第四章 决策树 第五章 支持向量机 第六章 神经网络 第七章 贝叶斯分类器 第八章 集成学习和聚类 文章目录 周志华机器学 ...
- 周志华机器学习(西瓜书)学习笔记(持续更新)
<周志华机器学习>笔记 第1章 绪论 1.1 引言 1.2 基本术语 1.3 假设空间 1.4 归纳偏好 1.5 发展历程 1.6 应用现状 第2章 模型评估与选择 2.1 经验误差与过拟 ...
- 【读书笔记】周志华 机器学习 第二章 模型评估和选择
第二章 模型评估和选择 1 欠拟合和过拟合 偏差和方差 1.1 欠拟合和过拟合 1.2 偏差和方差 2 评估方法 性能度量 2.1 评估方法 2.1.1 留出法 2.2.2 交叉验证法 2.2.3 自 ...
- 周志华机器学习--模型评估与选择
周志华机器学习–模型评估与选择 第一章 绪论 第二章 模型评估与选择 第三章 线性模型 第四章 决策树 第五章 支持向量机 第六章 神经网络 第七章 贝叶斯分类器 第八章 集成学习和聚类 文章目录 周 ...
最新文章
- 【无标题】ubuntu20.04 开机引导后黑屏 光标闪现 无法进入图形桌面的解决方案_Denis.Zzzzzzzz?的博客-CSDN博客_ubuntu20黑屏光标闪烁
- UltraIso-写入硬盘映像
- 机器人动力学方程的性质
- mysql插入大量数据总结
- 线性判别分析LDA的数学原理(一)
- 【javascript 变量和作用域】
- [转]C++中sleep()函数的使用
- tp3.2 不能提交到action方法_什么是死锁,如何避免死锁(4种方法)
- 暑期训练日志----2018.8.21
- 关于抽象类与接口的理解
- leetcode python3 简单题225. Implement Stack using Queues
- 数据结构上机实践第11周项目2 - 操作用邻接表存储的图
- mybatis与hibernate不同
- hql中获取前一天的数据_如何使用DNS和SQLi从数据库中获取数据样本
- 操作系统-io设备基本概念和分类
- 数据结构与算法之并查集
- 如何购买腾讯云学生服务器
- 济南服务器管理系统方案,物品管理系统和物品管理服务器技术方案
- Python爬网易云音乐的那些事
- Jetty和Tomcat的比较。
热门文章
- [linux]platform总线机制与wtd驱动开发
- 扎心“我学了六个月 Python,怎么还是会找不到工作”
- 在HTML中实现上划线,中划线和下划线
- Windows Movie Maker视频制作
- 学习数据分析、数据挖掘、大数据ETL工程师到什么程度可以找工作?
- 电子商务之数据库分析(二)
- Thinkphp漏洞详解合集
- cncrypt安卓版_CnCrypt Protect
- 和平精英微信名片服务器繁忙,和平精英微信游戏名片是什么 微信游戏名片设置方法一览[多图]...
- java全栈系列之JavaSE-面向对象(抽象类)041