构建函数 - 画学习曲线learning curves | Python

from sklearn.metrics import mean_square_error
from sklearn.model_selection import train_test_split
import numpy as np
import matplotlib.pyplot as plt

def plot_learning_curves(model, X, y):
    """
    画学习曲线
    
    parameters
    ----------
    model: 模型
    X:特征值
    y:目标量
    """
    X_train, X_val, y_train, y_val = train_test_split(X, y, test_size=0.2)
    train_errors, val_errors = [], []
    for m in range(1, len(X_train)):
        model.fit(X_train[:m], y_train[:m])
        y_train_predict = model.predict(X_train[:m])
        y_val_predict = model.predict(X_val)
        train_errors.append(mean_square_error(y_train_predict, y_train[:m]))
        val_errors.append(mean_square_error(y_val_predict, y_val))
    plt.plot(nq.sqrt(train_errors), "r-+", linewidth=2, label="train")
    plt.plot(np.sqrt(val_errors), "b-", linewidth=3, label="val")
	plt.legend(loc="upper right", fontsize=14)
    plt.xlabe("Training set size", fontsize=14)
    plt.ylabel("RMSE", fontsize=14)

在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值