kaggle地址

数据预览

首先载入数据集

import pandas as pd
import numpy as np train = pd.read_csv('/Users/frank/Documents/workspace/kaggle/dataset/digit_recognizer/train.csv')
test = pd.read_csv('/Users/frank/Documents/workspace/kaggle/dataset/digit_recognizer/test.csv')
print train.head()
print test.head()
   label  pixel0  pixel1  pixel2  pixel3  pixel4  pixel5  pixel6  pixel7  \
0 1 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
2 1 0 0 0 0 0 0 0 0
3 4 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 pixel8 ... pixel774 pixel775 pixel776 pixel777 pixel778 \
0 0 ... 0 0 0 0 0
1 0 ... 0 0 0 0 0
2 0 ... 0 0 0 0 0
3 0 ... 0 0 0 0 0
4 0 ... 0 0 0 0 0 pixel779 pixel780 pixel781 pixel782 pixel783
0 0 0 0 0 0
1 0 0 0 0 0
2 0 0 0 0 0
3 0 0 0 0 0
4 0 0 0 0 0 [5 rows x 785 columns]
pixel0 pixel1 pixel2 pixel3 pixel4 pixel5 pixel6 pixel7 pixel8 \
0 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
2 0 0 0 0 0 0 0 0 0
3 0 0 0 0 0 0 0 0 0
4 0 0 0 0 0 0 0 0 0 pixel9 ... pixel774 pixel775 pixel776 pixel777 pixel778 \
0 0 ... 0 0 0 0 0
1 0 ... 0 0 0 0 0
2 0 ... 0 0 0 0 0
3 0 ... 0 0 0 0 0
4 0 ... 0 0 0 0 0 pixel779 pixel780 pixel781 pixel782 pixel783
0 0 0 0 0 0
1 0 0 0 0 0
2 0 0 0 0 0
3 0 0 0 0 0
4 0 0 0 0 0 [5 rows x 784 columns]

分离训练数据和标签:

train_data = train.values[:,1:]
label = train.ix[:,0]
test_data = test.values

使用PCA来降维:PCA文档

使用SVM来训练:SVM文档

降维

from sklearn.decomposition import PCA
from sklearn.svm import SVC
pca = PCA(n_components=0.8, whiten=True)
# pca.fit(train_data)
train_data = pca.fit_transform(train_data)
# pca.fit(test_data)
test_data = pca.transform(test_data)

SVM训练

print('使用SVM进行训练...')
svc = SVC(kernel='rbf',C=2)
svc.fit(train_data, label)
print('训练结束.')
使用SVM进行训练...
训练结束.
print('对测试集进行预测...')
predict = svc.predict(test_data)
print('预测结束.')
对测试集进行预测...
预测结束.

保存结果:

pd.DataFrame(
{"ImageId": range(1, len(predict) + 1), "Label": predict}
).to_csv('output.csv', index=False, header=True) print 'done.'
done.

最新文章

  1. Visual Studio 2015 Update 2
  2. 浏览器-02 Chromium的多线程
  3. IOS开发-项目实战-点赞功能的实现
  4. MemcacheQ 安装与使用
  5. PHP 位移运算符(<<左移和>>右移)
  6. Hadoop之Hive自定义函数的陷阱
  7. pyhton3多线程
  8. 百度地图Api详解之地图标注
  9. 【转】对于移动APP测试的一个小技巧
  10. MAC OS JAVA环境变量配置
  11. 栈和队列的面试题Java
  12. led驅動芯片對LED燈具的要求
  13. HBase加Solr
  14. 高性能队列Disruptor系列3--Disruptor的简单使用(译)
  15. Kosaraju算法详解
  16. Ani动态光标格式解析
  17. Tomcat7配置Https
  18. CF_#478_Div.2_Hag's Khashba
  19. POJ 3311 Hie with the Pie 【状压DP】
  20. APIPA

热门文章

  1. compareTo简介
  2. Javascript基础 函数“重载”
  3. DEV GridControl 根据单元格值改变背景色
  4. EF加载实体的方式
  5. Angular源代码学习笔记-原创
  6. JavaScript操作剪贴板(转)
  7. 重写OnPaint事件对窗体重绘 实例1
  8. SqlDbType与DbType这间的转换关系
  9. javascript 生成UUID
  10. 通过maven创建自己的archetype