zoukankan      html  css  js  c++  java
  • 机器学习之广义线性模型

    一 介绍、

    二 编程基础

    1、

    import numpy as np
    import matplotlib.pyplot as plt
    from sklearn.datasets import make_regression
    from sklearn.linear_model import LinearRegression

    X, y = make_regression(n_samples=50, n_features=1, n_informative=1, noise=50, random_state=1)
    reg = LinearRegression()
    reg.fit(X, y)
    z = np.linspace(-3, 3, 200).reshape(-1, 1)
    plt.scatter(X, y, c='b', s=60)
    plt.plot(z, reg.predict(z), c='k')
    print('直线的系数是: {: .2f}'.format(reg.coef_[0]))
    print('直线的截距是: {: .2f}'.format(reg.intercept_))

    2、 线性回归

    from sklearn.datasets import load_diabetes
    from sklearn.model_selection import train_test_split

    X, y = load_diabetes().data, load_diabetes().target
    X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=8)
    lr = LinearRegression().fit(X_train, y_train)
    print("训练数据集得分: {: .2f}".format(lr.score(X_train, y_train)))
    print("测试数据集得分: {: .2f}".format(lr.score(X_test, y_test)))

    3、L2正则化的线性模型--岭回归

    from sklearn.linear_model import Ridge

    ridge = Ridge(alpha=0.1).fit(X_train, y_train)
    plt.plot(ridge.coef_, 's', label = 'Ridge alpha=1')
    plt.plot(lr.coef_, 'o', label = 'linear regression')
    plt.xlabel("coefficient index")
    plt.ylabel("coefficient magnitude")
    plt.hlines(0, 0, len(lr.coef_))
    plt.legend()
    print("训练数据得分: {: .2f}".format(ridge.score(X_train, y_train)))
    print("训练数据得分: {: .2f}".format(ridge.score(X_test, y_test)))

  • 相关阅读:
    bash脚本入门
    DNS 递归查询
    场景题
    利用 python 发送邮件(qq 邮件)
    Swagger 简单使用
    Nginx支持HTTPS,生成SSL证书
    使用 Python 搭建简易HTTP服务器
    扫码登陆原理
    【积累】在jQuery.Validate额中使用可以传入参数的message
    关于RUBY处理多语言转字符编码的一点经验 nkf
  • 原文地址:https://www.cnblogs.com/zhaop8078/p/9781248.html
Copyright © 2011-2022 走看看