美文网首页工作生活
4.6 网格搜索与k近邻算法中更多的超参数

4.6 网格搜索与k近邻算法中更多的超参数

作者: 逆风的妞妞 | 来源:发表于2019-07-03 10:58 被阅读0次

4.6网格搜索与k近邻算法中更多的超参数

关于网格搜索,sklearn为我们提供了一个方法,叫Grid Search在使用它之前,我们首先要定义搜索的参数。

param_grid = {
    'weights': ['uniform'],
    'n_neighbors': [i for i in range(1, 11)]
},
{
    'weights': ['distance'],
    'n_neighbors': [i for i in range(1, 11)],
    'p': [i for i in range(1, 6)]
}

对于我们要进行搜索的参数,它是一个数组,对应数组中每一个元素相应的是一个字典,字典对应的其实就是我们要进行的一族网格搜索。每一族网格搜索相应的要列上这族网格搜索中要遍历的么一个参数对应的取值范围。
下面我们利用网格搜索来找到最佳的超参数。

import numpy as np
from sklearn import datasets

# 加载手写数字数据集
digits = datasets.load_digits()

X = digits.data
y = digits.target

from sklearn.model_selection import train_test_split

X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=666)

from sklearn.neighbors import KNeighborsClassifier

knn_clf = KNeighborsClassifier(n_neighbors=3)
knn_clf.fit(X_train, y_train)
knn_clf.score(X_test, y_test)

knn_clf = KNeighborsClassifier()

from sklearn.model_selection import GridSearchCV
grid_search = GridSearchCV(knn_clf, param_grid)

%%time
grid_search.fit(X_train, y_train)

#获取最佳超参数
grid_search.best_estimator_

# 获取搜索的准确度
grid_search.best_score_

# 获取参数
grid_search.best_params_

knn_clf = grid_search.best_estimator_

knn_clf.predict(X_test)

knn_clf.score(X_test, y_test)

运行结果如下图:


image
image
image

在这个方法中,评判标准和之前的不一样,所以结果也不一样。
grid search可以理解成有多个分类器,可以找到最好的。
不是用户传入的参数,而是根据用户传入的参数计算出来的参数结果,这样的参数一般命名时末尾有下划线。

更多距离的定义

  • 向量空间余弦相似度 Cosine Similarity
  • 调整余弦相似度 Adjusted Cosine Similarity
  • 皮尔森相关系数 Pearson Correlation Coefficient
  • Jaccard相似系数 Jaccard Coefficient

相关文章

  • 4.6 网格搜索与k近邻算法中更多的超参数

    4.6网格搜索与k近邻算法中更多的超参数 关于网格搜索,sklearn为我们提供了一个方法,叫Grid Searc...

  • 机器学习day5

    超参数调优 超参数对模型至关重要。 网格搜索 网格搜索应该是最简单的超参数搜索算法。采用较大的搜索范围和较小的步长...

  • 机器学习面试题集 - 超参数调优

    超参数搜索算法一般包括哪几个要素 目标函数 搜索范围 算法的其他参数 超参数有哪些调优方法? 网格搜索 随机搜索 ...

  • k 近邻法

    k 近邻法 k 近邻算法 k 近邻模型 k 近邻法的实现:kd 树 搜索 kd 树 k 近邻模型实现 k 近邻模型...

  • 机器学习算法—K近邻(一文看懂KNN)

    本篇札记对机器学习中K近邻算法(KNN)的基础、原理、实例、超参数以及scikit-learn中的使用和调参等各种...

  • 【机器学习】k近邻分类与回归实战

    在这一节中,可以了解到K近邻算法,并应用于分类与回归的例子。 k近邻又称作k-NN算法,是最简单的机器学习算法。非...

  • K近邻

    一、模型 1.1概念 k-近邻算法是一种基本分类与回归方法,我们这里只讨论分类问题中的 k-近邻算法。k-近邻算法...

  • kNN算法初识

    kNN 算法 基本原理 最近邻居法(KNN算法,又译K-近邻算法)是一种用于分类和回归的非参数统计方法。 在k-N...

  • 8. 模型的选择与调优

    交叉验证 网格搜索 交叉验证:为了让备评估的模型更加确信准确 *超参数搜索-网格搜索: 网格搜索:通常情况下,有很...

  • 第七节超参数

    超参数:在算法运行前需要决定的参数;模型参数:算法过程中学习的参数。KNN算法没有模型参数;KNN算法中的k是典型...

网友评论

    本文标题:4.6 网格搜索与k近邻算法中更多的超参数

    本文链接:https://www.haomeiwen.com/subject/ivxqhctx.html