文章目录

  • 代码

代码

import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
from sklearn.linear_model import RidgeCV
from sklearn.ensemble import BaggingRegressor
from sklearn.tree import DecisionTreeRegressor
from sklearn.pipeline import Pipeline
from sklearn.preprocessing import PolynomialFeatures# 数据构造
def f(x):return 0.5*np.exp(-(x+3) **2) + np.exp(-x**2) + 0.5*np.exp(-(x-3) ** 2)if __name__ == "__main__":np.random.seed(0)N = 200x = np.random.rand(N) * 10 - 5  # [-5,5)x = np.sort(x)y = f(x) + 0.05*np.random.randn(N)x.shape = -1, 1degree = 6ridge = RidgeCV(alphas=np.logspace(-3, 2, 20), fit_intercept=False)ridged = Pipeline([('poly', PolynomialFeatures(degree=degree)), ('Ridge', ridge)])bagging_ridged = BaggingRegressor(ridged, n_estimators=100, max_samples=0.2)dtr = DecisionTreeRegressor(max_depth=5)regs = [('DecisionTree Regressor', dtr),('Ridge Regressor(%d Degree)' % degree, ridged),('Bagging Ridge(%d Degree)' % degree, bagging_ridged),('Bagging DecisionTree Regressor', BaggingRegressor(dtr, n_estimators=100, max_samples=0.2))]x_test = np.linspace(1.1*x.min(), 1.1*x.max(), 1000)mpl.rcParams['font.sans-serif'] = [u'SimHei']mpl.rcParams['axes.unicode_minus'] = Falseplt.figure(figsize=(12, 8), facecolor='w')plt.plot(x, y, 'ro', label=u'训练数据')plt.plot(x_test, f(x_test), color='k', lw=3.5, label=u'真实值')clrs = 'bmyg'for i, (name, reg) in enumerate(regs):reg.fit(x, y)y_test = reg.predict(x_test.reshape(-1, 1))plt.plot(x_test, y_test.ravel(), color=clrs[i], lw=i+1, label=name, zorder=6-i)plt.legend(loc='upper left')plt.xlabel('X', fontsize=15)plt.ylabel('Y', fontsize=15)plt.title(u'回归曲线拟合', fontsize=21)plt.ylim((-0.2, 1.2))plt.tight_layout(2)plt.grid(True)plt.show()

机器学习基础算法20-回归曲线拟合相关推荐

  1. 小白机器学习基础算法学习必经之路

    https://www.toutiao.com/a6657427848900379150/ 2019-02-14 15:21:13 未来,人工智能是生产力,是变革社会的主要技术力量之一. 掌握人工智能 ...

  2. 机器学习基础算法之随机森林

    英文原文<The Random Forest Algorithm> 专知 编译<机器学习基础算法之随机森林> [导读]在当今深度学习如此火热的背景下,其他基础的机器学习算法显得 ...

  3. kmeans python interation flag_机器学习经典算法-logistic回归代码详解

    一.算法简要 我们希望有这么一种函数:接受输入然后预测出类别,这样用于分类.这里,用到了数学中的sigmoid函数,sigmoid函数的具体表达式和函数图象如下: 可以较为清楚的看到,当输入的x小于0 ...

  4. 【机器学习】十大机器学习基础算法

    十大机器学习算法入门 近年来,机器学习与人工智能已广泛应用于学术与工程,比如数据挖掘.计算机视觉.自然语言处理.生物特征识别.搜索引擎.医学诊断.检测信用卡欺诈.证券市场分析.DNA序列测序.语音和手 ...

  5. 【机器学习基础】逻辑回归 + GBDT模型融合实战!

    作者:吴忠强,东北大学,Datawhale成员 一.GBDT+LR简介 协同过滤和矩阵分解存在的劣势就是仅利用了用户与物品相互行为信息进行推荐, 忽视了用户自身特征, 物品自身特征以及上下文信息等,导 ...

  6. 机器学习基础算法四:逻辑回归算法实验

    逻辑回归算法实验 一.逻辑回归介绍 逻辑回归是一种分类模型 z=WTX=w0+w1x1+w2x2+......+wnxnz =W^{T}X=w^{0}+w^{1}x^{1}+w^{2}x^{2}+.. ...

  7. 20/03/07 机器学习---基础算法 (2)

    回归 线性回归 使用极大似然估计解释最小二乘 y(i)=θTx(i)+ε(i)y^{(i)}=\theta^Tx^{(i)}+\varepsilon^{(i)}y(i)=θTx(i)+ε(i) 误差ε ...

  8. 机器学习学习吴恩达逻辑回归_机器学习基础:逻辑回归

    机器学习学习吴恩达逻辑回归 In the previous stories, I had given an explanation of the program for implementation ...

  9. 机器学习--基础算法--机器学习基础

    1 机器学习世界的数据 1.数据 数据整体叫数据集(data set) 每一行数据称为一个样本(sample) 除最后一列,每一列表达样本的一个特征(eature) 最后一列,称为标记(label) ...

  10. 机器学习基础算法概述

    机器学习算法大致可以分为三类: 监督学习算法 (Supervised Algorithms):在监督学习训练过程中,可以由训练数据集学到或建立一个模式(函数 / learning model),并依此 ...

最新文章

  1. VSCode中屏蔽文件files.exclude和屏蔽文件搜索search.exclude
  2. linux 内核钩子 khook 项目介绍
  3. win7分区c盘调整容量_如何扩大C盘空间 增加C盘容量方法有哪些【详细介绍】
  4. 事务隔离级别(IsolationLevel)
  5. 如何在JS判断是否为IE浏览器
  6. c语言错误writing,C语言编译器的错误信息
  7. 【Presto】Cannot connect to discovery server for announce: Announcement failed with status code 404
  8. 计算机网络class5(分层结构、协议、接口、服务)
  9. 5G经济社会影响白皮书:2020年预计5G将创造约920亿元GDP
  10. 浅谈内联元素inline
  11. 黄永成-thinkphp讲解-个人博客讲解26集
  12. Nginx重写功能——location/rewrite
  13. 城市生活污水处理技术现状及活性炭的应用
  14. 计算机的四个发展阶段的应用,计算机分为哪四个发展阶段
  15. JavaScript去除字符串中所有的标点符号,只保留中文、英文和数字
  16. Web前端-JavaScript
  17. Convex Optimization
  18. Web中html个人介绍代码,web开发工程师自我介绍示例
  19. 如何做Unity手游性能优化的
  20. 时隔一年才发现嵌入式到底指的是什么

热门文章

  1. 看看MySQL几种主流备份方案的优缺点
  2. Java程序员需要了解的几个开源协议介绍
  3. C++常见谬误总结(1)
  4. [Swift]LeetCode1051.高度检查器 | Height Checker
  5. 怎么用Excel来批量生成SQL语句
  6. 20155305乔磊2016-2017-2《Java程序设计》第七周学习总结
  7. 前端Swiper滑动的时候最右一个反弹回去了
  8. hexo+github
  9. 夺命雷公狗---无限级分类NO2
  10. sql中用临时表 或 创建视图那个效率比较快!