python-网格搜寻优化SVM-sift-bow-svm

上一篇文章实现了sift-bow-svm,如果想要进行网格搜寻,怎么办呢?
参考博客:https://blog.csdn.net/weixin_37450657/article/details/78840831
感谢博主:KimEddy
这是参考博客中关于网格搜寻的关键代码,代码如下:

#训练集取数据前80%,测试数据取后20%
X_train , X_test, \
y_train , y_test = train_test_split(X,y,test_size=0.2)

#选择SVM算法的最优参数
print ("开始建模")
t0 = time()
#C 是对错误部分的惩罚;gamma 合成点
param_grid = {
   'C': [1e3, 5e3, 1e4, 5e4, 1e5, 5e5 ,1e6],
              'gamma': [0.0001, 0.0005, 0.001, 0.005,0.01, 0.1]}
#C和gamma组合,寻找出最好的一个组合
#class_weight='balanced'表示调整各类别权重,权重与该类中样本数成反比,  
#防止模型过于拟合某个样本数量过大的类  
clf = GridSearchCV(SVC(kernel='rbf', class_weight='balanced'), param_grid)
print (clf)
#建模
clf = clf.fit(X_train, y_train)
print ("time:%0.3fs" % (time()-t0))
print (clf.best_estimator_ )  #最好的模型的信息
————————————————
版权声明:本文为CSDN博主「KimEddy」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_37450657/article/details/78840831

如何把它和之前的工作融合呢?下面直接上代码

#coding=utf-8
#-*- coding: utf-8 -*-
import argparse as ap
import cv2
import imutils
import numpy as np
import os
from sklearn.externals import joblib
from scipy.cluster.vq import *
from sklearn import preprocessing
import math
import sys
import numpy
from sklearn import metrics
from sklearn.feature_extraction.text import HashingVectorizer
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.model_selection import GridSearchCV
from sklearn.multiclass import OneVsRestClassifier
from sklearn.naive_bayes import MultinomialNB
from sklearn.feature_extraction.text import CountVectorizer, TfidfTransformer
from sklearn.neighbors import KNeighborsClassifier
from sklearn.preprocessing import MultiLabelBinarizer, StandardScaler
from sklearn.svm import SVC
from sklearn.svm import LinearSVC
import codecs
from sklearn.feature_selection import SelectPercentile, f_classif
from sklearn.feature_selection import SelectKBest
from sklearn.feature_selection import chi2
# from sklearn import cross_validation #报错
#ImportError: cannot import name 'cross_validation' from 'sklearn' (C:\Users\wyh\Anaconda3\lib\site-packages\sklearn\__init__.py)
# cross_validation路径换了,现在放在model_selection,改成下面这句
from sklearn import model_selection
from sklearn.utils import shuffle
import random
import sys


if sys.getdefaultencoding()!='utf-8':
    reload(sys)
    sys.setdefaulten
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值