zoukankan      html  css  js  c++  java
  • 莫烦python教程学习笔记——利用交叉验证计算模型得分、选择模型参数

    # View more python learning tutorial on my Youtube and Youku channel!!!
    
    # Youtube video tutorial: https://www.youtube.com/channel/UCdyjiB5H8Pu7aDTNVXTTpcg
    # Youku video tutorial: http://i.youku.com/pythontutorial
    
    """
    Please note, this code is only for python 3+. If you are using python 2+, please modify the code accordingly.
    """
    from __future__ import print_function
    from sklearn.datasets import load_iris
    from sklearn.cross_validation import train_test_split
    from sklearn.neighbors import KNeighborsClassifier
    
    iris = load_iris()
    X = iris.data
    y = iris.target
    
    # test train split #
    X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=4)
    knn = KNeighborsClassifier(n_neighbors=5)
    knn.fit(X_train, y_train)
    y_pred = knn.predict(X_test)
    print(knn.score(X_test, y_test))
    
    # this is cross_val_score # 计算模型得分
    from sklearn.cross_validation import cross_val_score
    knn = KNeighborsClassifier(n_neighbors=5)
    scores = cross_val_score(knn, X, y, cv=5, scoring='accuracy')
    print(scores)
    
    # this is how to use cross_val_score to choose model and configs # 选择模型参数
    from sklearn.cross_validation import cross_val_score
    import matplotlib.pyplot as plt
    k_range = range(1, 31)
    k_scores = []
    for k in k_range:
        knn = KNeighborsClassifier(n_neighbors=k)
    ##    loss = -cross_val_score(knn, X, y, cv=10, scoring='mean_squared_error') # for regression
        scores = cross_val_score(knn, X, y, cv=10, scoring='accuracy') # for classification
        k_scores.append(scores.mean())
    
    plt.plot(k_range, k_scores)
    plt.xlabel('Value of K for KNN')
    plt.ylabel('Cross-Validated Accuracy')
    plt.show()
  • 相关阅读:
    MyISAM、InnoDB在频繁插入删除情况下的不同
    Solarized ----vim配色方案
    SVN命令使用详解
    好的网页
    snort在WinXP下的集成式安装
    matlab连接数据库
    KDD数据导入sqlserver2005数据库
    snort在使用过程中遇到的问题:抓不到包
    snort在使用过程中遇到的问题:ERROR: OpenAlertFile() => fopen() alert file log/alert.ids:No such file or directory
    将iso文件刻录为CD或DVD【转】
  • 原文地址:https://www.cnblogs.com/simpleDi/p/9964228.html
Copyright © 2011-2022 走看看