2.x ESL第二章习题 2.8
题目
代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
import pandas as pd import numpy as np train_full = pd.read_csv( '../zip.train' ,sep = ' ' ,engine = 'c' ,header = None ).values[:, 0 : - 1 ] test_full = pd.read_csv( '../zip.test' ,sep = ' ' ,engine = 'c' ,header = None ).values train = np.vstack((train_full[train_full[:, 0 ] = = 2 ],train_full[train_full[:, 0 ] = = 3 ])) test = np.vstack((test_full[test_full[:, 0 ] = = 2 ],test_full[test_full[:, 0 ] = = 3 ])) train_x = train[:, 1 :] train_y = train[:, 0 ] test_x = test[:, 1 :] test_y = test[:, 0 ] dc = [] from sklearn.linear_model import LinearRegression lrcf = LinearRegression() lrcf.fit(train_x, train_y) dc.append(( 'linear regression' ,lrcf)) from sklearn.neighbors import KNeighborsClassifier for i in [ 1 , 3 , 5 , 7 , 15 ]: knn = KNeighborsClassifier(n_neighbors = i) knn.fit(train_x,train_y) dc.append(( '%d-nearest neighbor' % (i),knn)) def acc(clf,x,y): res = clf.predict(x) if type (clf) = = LinearRegression: res[res> 2.5 ] = 3 res[res< 2.5 ] = 2 n = y.shape[ 0 ] r = res[(res = = y)].shape[ 0 ] return r * 1.0 / n for i in dc: accr = acc(i[ 1 ],test_x,test_y) print '%s: %.5f' % (i[ 0 ],accr) |
结果
linear regression: 0.95879
1-nearest neighbor: 0.97527
3-nearest neighbor: 0.96978
5-nearest neighbor: 0.96978
7-nearest neighbor: 0.96703
15-nearest neighbor: 0.96154
2.x ESL第二章习题 2.8的更多相关文章
- 2.x ESL第二章习题2.4
题目 准备 $x_i\sim N(0,1)$,有$\sum_i^n x_i^2 \sim \chi^2(n)$其中$n$称为自由度,卡方分布的均值即其自由度 $x_i\sim N(\mu_i,\sig ...
- 2.x ESL第二章习题2.5
题目 描述 $y_i=x_i^T\beta+\epsilon_i$$\epsilon_i\sim N(0,\sigma^2)$ 已有训练集$\tau$,其中$X:n\times p,y:n\times ...
- 统计学习导论:基于R应用——第二章习题
目前在看统计学习导论:基于R应用,觉得这本书非常适合入门,打算把课后习题全部做一遍,记录在此博客中. 第二章习题 1. (a) 当样本量n非常大,预测变量数p很小时,这样容易欠拟合,所以一个光滑度更高 ...
- Python编程快速上手-让繁琐工作自动化-第二章习题及其答案
Python编程快速上手-让繁琐工作自动化-第二章习题及其答案 1.布尔数据类型的两个值是什么?如何拼写? 答:True和False,使用大写的T和大写的F,其他字母是小写. 2.3个布尔操作符是什么 ...
- 最小正子序列(序列之和最小,同时满足和值要最小)(数据结构与算法分析——C语言描述第二章习题2.12第二问)
#include "stdio.h" #include "stdlib.h" #define random(x) (rand()%x) void creat_a ...
- 中级Perl第二章习题
2. 4. 1. 习题1 [15 分钟] 写一个程序从命令行取一个文件清单, 然后用grep 把那些文件大小在1000 字节以内的文件找出来.用map 把这个清单里的每个字串前加四个空格并在 字串后面 ...
- 算法竞赛入门经典第二版第二章习题-(练习Java和C++语法)
习题2-1水仙花数(daffodil) 输出1000-999中所有的水仙花数.若三位数ABC满足ABC = A3+B3+C3,则称其为水仙花数. Java: package suanfa; publi ...
- 《Python自然语言处理》第二章-习题解答-练习6
问题描述:在比较词表的讨论中,创建一个对象叫做translate,通过它你可以使用德语和意大利语词汇查找对应的英语词汇.这种方法可能会出现什么问题,你能提出一个办法来避免这个问题吗? 虽然这是一道初级 ...
- Python《学习手册:第二章-习题》
什么是Python解释器? Python解释器是运行Python程序的程序. 什么是源代码? 源代码是为程序所写的语句:它包括文本文件(通常以.py为文件名结尾)的文件. 什么是字节码? 字节码是Py ...
随机推荐
- linux中UUID和LABLE
一.UUID 第一次看到UUID这个东西,是在Ubuntu系统中看到/boot/grub/grub.cfg中对kernel的配置:linux /boot/vmlinuz-2.6.31-14-ge ...
- 第11讲- Android中进程及其优先级
第11讲Android中进程及其优先级 进程与线程: 进程:操作系统结构的基础,资源分配的最小单元,一个操作系统包括多个进程: 线程:线程存在于进程当中,是操作系统调试执行的最小单元,一个进程包括多个 ...
- RTP/RTCP/RTSP/RSVP/SDP
RTP Real-time Transport Protocol)是用于Internet上针对多媒体数据流的一种传输层协议.RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式.RTP协议常用 ...
- hdu 5036 Explosion(概率期望+bitset)
Problem Description Everyone knows Matt enjoys playing games very much. Now, he to N. Input The firs ...
- python 得到一个元素的所有下标(网友提供:http://www.oschina.net/code/snippet_212212_38917)
def all_index(l,o): def find_index(l,o,start=0): try: index=l.index(o,start) except: index=-1 return ...
- fragment的入门DEMO
效果图: 代码如下: 1.main.xml <?xml version="1.0" encoding="utf-8"?> <LinearLay ...
- 关于MemoryBarrier
备注:OSG OpenThread::Atomic.cpp中MemoryBarrier(); Atomic::operator unsigned() const { #if defined(_OPE ...
- 机器学习实战笔记5(logistic回归)
1:简单概念描写叙述 如果如今有一些数据点,我们用一条直线对这些点进行拟合(改线称为最佳拟合直线),这个拟合过程就称为回归.训练分类器就是为了寻找最佳拟合參数,使用的是最优化算法. 基于sigmoid ...
- maven:安装m2eclipse插件
一.安装maven 1.下载maven:http://pan.baidu.com/s/1hqIbx6s 2.解压并配置path路径(直接替换最新的maven包,即可升级) 3.测试 二.安装m2ecl ...
- Sql server Lock
http://www.cnblogs.com/wuyifu/archive/2013/11/28/3447870.html