精华内容
下载资源
问答
  • 回归拟合

    2020-08-02 19:07:07
    回归拟合 https://blog.csdn.net/qq_17119267/article/details/79115976 二次函数拟合 p=polyfit(x,y,1) % 拟合出的二次函数的系数 ye=y-polyval(p,x); % 计算误差 ye2s=sum(ye.^2); % 误差的平方和 xx=linspace...

    回归拟合

    https://blog.csdn.net/qq_17119267/article/details/79115976

    二次函数拟合

    p=polyfit(x,y,1) % 拟合出的二次函数的系数
    ye=y-polyval(p,x); % 计算误差
    ye2s=sum(ye.^2); % 误差的平方和
    xx=linspace(min(x),max(x)); % 绘图用到的点的横坐标
    yy=polyval(p,xx); % 拟合曲线的纵坐标

     

    展开全文
  • ELM的回归拟合.zip

    2021-04-11 10:05:18
    极限学习机的回归拟合和分类研究
  • 非线性回归拟合

    2013-04-21 13:39:03
    非线性回归拟合
  • 遗传线性回归:通过遗传算法进行线性回归拟合的近似
  • 内含SVM(支持向量机)算法的实现回归拟合,以混凝土抗压强度预测为例,含具体代码注释
  • 数学建模源码集锦-支持向量机的回归拟合应用实例
  • 回归拟合算法的分析与讨论 回归拟合算法的分析与讨论 回归拟合算法的分析与讨论
  • 本代码是用tensorflow来创建数据,并实现以逻辑回归拟合二维数据,与我的博客是配套的,在我的博客里就有,大家不嫌麻烦的话,直接去我博客里找就可以啦~
  • Seaborn-线性回归拟合

    2020-11-29 09:00:00
    点击上方【AI派】,加星标,每周都送书原创作者:牵引小哥微信公众号:牵引小哥讲Python注:转载或复制请注明出处——牵引小哥Seaborn可以使用一行代码绘制数据集的线性回归拟合图表。...

    点击上方【AI派】加星标,每周都送书

    原创作者:牵引小哥

    微信公众号:牵引小哥讲Python

    注:转载或复制请注明出处——牵引小哥

    Seaborn可以使用一行代码绘制数据集的线性回归拟合图表。本期小哥以Seaborn中的Tips数据集讲解如何绘制。Seaborn中可使用lmplot()regplot()两种函数绘制线性回归拟合图表。其中,lmplot()regplot()FacetGrid的结合体。所以掌握了regplot()的用法就掌握了另外一种。为了方便展示,本次分析小哥在Jupyter Notebook中进行。

    参考链接:

    http://seaborn.pydata.org/generated/seaborn.lmplot.html#seaborn.lmplot

    http://seaborn.pydata.org/generated/seaborn.regplot.html#seaborn.regplot

    1. Tips数据集

    首先导入数据集,观察一下数据集的基本情况。

    import seaborn as sns
    sns.set(font='SimHei', font_scale=1.3) #设置字体大小
    sns.set_style("whitegrid") # 设置绘图style
    # 获取数据集
    df = sns.load_dataset("tips")
    # 查看数据前几行
    df.head()
    

    2. regplot()绘制线性回归拟合

    # 绘制total_bill和tip的拟合图表:
    sns.regplot(x="total_bill", y="tip", data=df)
    

    从结果我们可以看到,regplot()的拟合带有置信度(默认95%)。可以使用ci进行调整,调整范围为:[0, 100]整数 or None

    # 关闭置信区间
    sns.regplot(x="total_bill", y="tip", ci=None, data=df)
    
    # 绘制多个变量的拟合,通过 hue 映射不同的颜色
    sns.lmplot(x="total_bill", y="tip", hue="smoker", data=df)
    
    # 绘制多个变量的拟合,通过 hue 映射不同的颜色。
    # 定义不同的标志符号,设置调色盘为‘Set1’
    sns.lmplot(x="total_bill", y="tip", hue="smoker", data=df,
               markers=["o", "x"], palette="Set1")
    

    3. lmplot()绘制线性回归拟合

    Seaborn有一个非常强大的功能:FacetGrid。这种功能可自动根据变量种类形成分类绘制子图映射。而lmplot()中就包含这种功能。

    首先讲解一下思路,在上一节中绘制了这样一个图表:

    在这个图表中,根据顾客是否吸烟(smoker)绘制了两条回归曲线。那么,如果想要单独绘制这两条曲线在一幅图中,并且有标记呢?这时就可以用到lmplot(),该函数中主要使用col,row,hue三个参数控制子图的行列和颜色映射,话不多说,直接看代码。

    sns.lmplot(x="total_bill", y="tip", col="smoker", hue='smoker', markers=["o", "x"], data=df)
    

    为了展示这种绘图方法的优越性,再以day这一列进行分类:

    # 使用 col 参数控制
    sns.lmplot(x="total_bill", y="tip", hue="day", col="day", palette="Set1", data=df)
    
    # 使用 row 参数控制
    sns.lmplot(x="total_bill", y="tip", hue="day", row="day", palette="Set1", data=df)
    
    # 绘制2x2的子图布局,使用 col_wrap 参数
    sns.lmplot(x="total_bill", y="tip", hue="day",
               col="day", col_wrap=2, palette="Set1", data=df)
    

    文末福利

    各位猿们,还在为记不住API发愁吗,哈哈哈,最近发现了国外大师整理了一份Python代码速查表和Pycharm快捷键sheet,火爆国外,这里分享给大家。

    这个是一份Python代码速查表

    下面的宝藏图片是2张(windows && Mac)高清的PyCharm快捷键一览图

    怎样获取呢?可以添加我们的AI派团队的程序媛姐姐

    一定要备注【高清图】

    ????????????????????

    ➕我们的程序媛小姐姐微信要记得备注【高清图】

    来都来了,喜欢的话就请分享点赞在看三连再走吧~~~

    展开全文
  • 器学习一次回归和二次回归 reshape(行,列)可以根据指定的数值将数据转换为特定的行数和列数###reshape(-1,1)之后,数据集变成了一列 #采用线性回归方程预测 lr=LinearRegression() lr.fit (X,y) from sklearn....

    器学习一次回归和二次回归

    reshape(行,列)可以根据指定的数值将数据转换为特定的行数和列数###reshape(-1,1)之后,数据集变成了一列

    #采用线性回归方程预测
    lr=LinearRegression()
    lr.fit (X,y)
    from sklearn.linear_model import LinearRegression
    lr = LinearRegression()
    # 训练模型(为了方便没有拆封训练集和测试集)
    X = x.reshape(-1,1)
    print(X.shape)
    lr.fit(X,y)
    # 训练过程就是寻找最佳权重和偏置的过程
    print('权重',lr.coef_,'偏置',lr.intercept_)
    y_predict = lr.predict(X)
    plt.scatter(x,y)
    # 生成线性图,观察预测值与真实值的误差
    plt.plot(x,y_predict,color='r')
    plt.show()
    print(lr.score(X,y))

    一次线性方程不合适,转变为二次线性方程

    # y = w * x + b ===>  y = w1 * x**2 + w2 * x + b
    print((X**2).shape)
    # hstack 在水平方向追加, vstack垂直方向叠加
    X2 = np.hstack([X**2,X])   # 将x^2 作为跟X一样的参数,使多计算一个权重
    print(X2.shape)
    
    ## 
    
    ```python
    import numpy as np
    import matplotlib.pyplot as plt
    # 在指定[-3,3]随机生成size个随机数(代表的特征值)
    x = np.random.uniform(-3,3,size=100)
    print(x,x.shape)
    # 模拟目标值(y) 与x并不是简单的线性关系
    y = 0.5 * x**2 + x + 2 + np.random.normal(0,1,size=100)
    
    # 采用线性回归的方程来预测
    from sklearn.linear_model import LinearRegression
    lr = LinearRegression()
    # 训练模型(为了方便没有拆封训练集和测试集)
    X = x.reshape(-1,1)
    print(X.shape)
    lr.fit(X,y)
    # 训练过程就是寻找最佳权重和偏置的过程
    print('权重',lr.coef_,'偏置',lr.intercept_)
    y_predict = lr.predict(X)
    plt.scatter(x,y)
    # 生成线性图,观察预测值与真实值的误差
    plt.plot(x,y_predict,color='r')
    plt.show()
    print(lr.score(X,y))
    
    
    # y = w * x + b ===>  y = w1 * x**2 + w2 * x + b
    print((X**2).shape)
    # hstack 在水平方向追加, vstack垂直方向叠加
    X2 = np.hstack([X**2,X])   # 将x^2 作为跟X一样的参数,使多计算一个权重
    print(X2.shape)
    # 线性回归模型进行训练
    lr = LinearRegression()
    lr.fit(X2,y)
    # 训练过程就是寻找最佳权重和偏置的过程
    print('权重',lr.coef_,'偏置',lr.intercept_)
    y_predict = lr.predict(X2)
    # 真实的数据集采用散点图显示
    plt.scatter(x,y)
    # 预测数据集,采用线形图显示,必须按照x轴从小到大进行绘制
    # plt.plot(x,y_predict,color='r')
    plt.plot(np.sort(x),y_predict[np.argsort(x)],color='r')
    plt.show()
    print(lr.score(X2,y))
    
    
    展开全文
  • 数学建模源码集锦-有导师学习神经网络的回归拟合应用实例
  • 数学建模源码集锦-极限学习机的回归拟合及分类应用实例
  • MATLAB中BP神经网络用于回归拟合算法实现(更新1).docx
  • 极限学习的回归拟合及分类——对比实验研究,集合具体的案例给出了实例分析
  • 基于机器学习的回归拟合、详细总结有导师学习神经网络的回归拟合BP神经网络题目与思路代码与结果支持向量机的回归拟合SVR基本思想问题描述与算法流程代码及结果` 有导师学习神经网络的回归拟合 神经网络的学习规则...

    有导师学习神经网络的回归拟合

        神经网络的学习规则又称神经网络的训练算法,用来计算更新神经网络的权值和阈值。
    学习规则有两大类别;有导师学习和无导师学习。在有导师学习中,需要为学习规则提供一系
    列正确的网络输入/输出对(即训练样本),当网络输人时,将网络输出与相对应的期望值进行
    比较﹐然后应用学习规则调整权值和阈值,使网络的输出接近于期望值。而在无导师学习中,
    权值和阈值的调整只与网络输人有关系,没有期望值﹐这类算法大多用聚类法,将输人模式归
    类于有限的类别。本章将详细分析两种应用最广的有导师学习神经网络(BP神经网络及
    RBF神经网络)的原理及其在回归拟合中的应用。
    

    BP神经网络

    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

    题目与思路

    辛烷值是汽油最重要的品质指标,传统的实验室检测方法存在样品用量大.测试周期长和费用高等问题,不适用于生产控制﹐特别是在线测试。近年发展起来的近红外光谐分析方法(NIR),作为一种快速分析方法,已广泛应用于农业.制药、生物化工.石油产品等领域。其优越性是无损检测﹑低成本、无污染、能在线分析,更适合于生产和控制的需要。针对采集得到的60组汽油样品﹐利用傅里叶近红外变换光谱仪对其进行扫描,扫描范围为900~1 700 nm,扫描间隔为2 nm,每个样品的光谱曲线共含401个波长点。样品的近红外光谐曲线如图25-3所示。同时﹐利用传统实验室检测方法测定其辛烷值含量。现要25-360个样品的近红外光谱圉求利用BP神经网络及RBF神经网络分别建立汽油样品近红外光谱及其辛烷值间的数学模型,并对模型的性能进行评价。
    在这里插入图片描述

    代码与结果

    详细代码私聊笔者,有偿,非诚勿扰

    % 基于近红外光谱的汽油辛烷值预测
    clear
    clc
    % 产生训练集/测试集
    load spectra_data.mat
    temp  = randperm(size(NIR,1));
    ptrain = NIR(temp(1:50),:)';
    ttrain = octane(temp(1:50),:)';
    ptest = NIR(temp(51:end),:)';
    ttest = octane(temp(51:end),:)';
    n = size(ptest,2);
    % 创建/训练BP神经网络及仿真测试
    net = feedforwardnet(9);
    net.trainParam.epochs = 1000;
    net.trainParam.goal = 1e-3;
    net.trainParam.lr = 0.01;
    net = train(net,ptrain,ttrain);
    tsimbp = net(ptest);
    net = newrbe(ptrain,ttrain,0.5);
    tsimrbf = sim(net,ptest);
    % 性能评价
    errorbp = abs(tsimbp-ttest)./ttest;
    errorrbf = abs(tsimrbf-ttest)./ttest;
    r2bp = (n*sum(tsimbp.*ttest)-sum(tsimbp)*sum(ttest))^2/((n*sum((tsimbp).^2)-(sum(tsimbp))^2)*(n*sum((ttest).^2)-(sum(ttest))^2));
    r2rbf = (n*sum(tsimrbf.*ttest)-sum(tsimrbf)*sum(ttest))^2/((n*sum((tsimrbf).^2)-(sum(tsimrbf))^2)*(n*sum((ttest).^2)-(sum(ttest))^2));
    result = [ttest' tsimbp' tsimrbf' errorbp' errorrbf'];
    % 绘图
    figure
    plot(1:n,ttest,'b:*',1:n,tsimbp,'r-o',1:n,tsimrbf,'k-.^')
    legend('真实值','BP预测值','RBF预测值')
    xlabel('预测样本')
    ylabel('辛烷值')
    string = {'测试值辛烷值含量预测结果对比(BP vs RBF)';['R^2=',num2str(r2bp),'(BP)''  R^2=',num2str(r2rbf),'(RBF)']};
    title(string)
    

    详细代码私聊笔者,有偿,非诚勿扰
    在这里插入图片描述
    在这里插入图片描述

    支持向量机的回归拟合

    与传统的神经网络相比,SVM具有以下几个优点:
    (1)SVM是专门针对小样本问题而提出的,其可以在有限样本的情况下获得最优解;
    (2)SVM算法最终将转化为一个二次规划问题,从理论上讲可以得到全局最优解,从而解决了传统神经网无法避免局部最优的问题;
    (3)SVM的拓扑结构由支持向量决定,避免了传统神经网络需要反复试凑确定网络结构的问题;
    (4)SVM利用非线性变换将原始变量映射到高维特征空间,在高维特征空间中构造线性分类函数,这既保证了模型具有良好的泛化能力,又解决了“维数灾难”问题。
    同时,SVM不仅可以解决分类、模式识别等问题,还可以解决回归、拟合等问题。因此,其在各个领域中都得到了非常广泛的利用。
    本章将详细介绍SVM回归拟合的基本思想和原理,并以实例的形式阐述其在混凝土抗压强度预测中的应用。
    随着技术的不断发展,混凝土抗压强度检测手段也愈来愈多,基本上可以分为局部破损法和非破损法两类,其中局部破损法主要是钻芯法,非破损法主要包括回弹法和超声法。工程上常采用钻芯法修正回弹法并结合《回弹法检测混凝土抗压强度技术规程》、《建筑结构检测技术标准》等规定的方法来推定混凝土的抗压强度。按照传统的方法,通常需要先对混凝土试件进行28天标准养护,然后通过测试获得。若能够提前预测出混凝土的28天抗压强度,则对于提高施工的质量和进度都具有重要的参考意义和实用价值。
    此外,不少专家和学者将投影寻踪回归、神经网络、灰色理论等方法引入到混凝土结构工程领域中,取得了不错的效果,对混凝土抗压强度的预测有着一定的指导意义。
    相关研究成果表明,混凝土的28天立方米抗压强度与混凝土的组成有很大的关系,即与每立方米混凝土中水泥、炉石、飞灰、水、超增塑剂、碎石及砂用量的多少有显著的关系。

    SVR基本思想

    在这里插入图片描述
    在这里插入图片描述

    问题描述与算法流程

    现采集到103组混凝土样本的立方米抗压强度及其中上述7种成分的含量大小,要求利用支持向量机建立混凝土的28天立方米抗压强度与其组成间的回归数学模型,并对模型的性能进行评价。
    在这里插入图片描述

    代码及结果`

    详细代码私聊笔者,有偿,非诚勿扰

    % 混凝土抗压实验预测
    clear
    clc
    % 产生训练集/测试集
    load concrete_data.mat
    n = randperm(size(attributes,2));
    ptrain = attributes(:,n(1:80))';
    ttrain = strength(:,n(1:80))';
    ptest = attributes(:,n(81:end))';
    ttest = strength(:,n(81:end))';
    % 数据归一化
    [pntrain,inputs] = mapminmax(ptrain');
    pntrain = pntrain';
    pntest = mapminmax('apply',ptest',inputs);
    pntest = pntest';
    [tntrain,outputs] = mapminmax(ttrain');
    tntrain = tntrain';
    tntest = mapminmax('apply',ttest',outputs);
    tntest = tntest';
    % 创建/训练SVR模型
    [c,g] = meshgrid(-10:0.5:10,-10:0.5:10);
    [m,n] = size(c);
    cg = zeros(m,n);
    eps = 1e-4;
    v = 5;
    bestc = 0;
    bestg = 0;
    error = inf;
    for i = 1:m
        for j = 1:n
            cmd = ['-v ',num2str(v),' -c ',num2str(2^c(i,j)),' -g',num2str(2^g(i,j) ),' -s 3 -p 0.1'];
            cg(i,j) = svmtrain(tntrain,pntrain,cmd);
            if cg(i,j) < error
                error = cg(i,j);
                bestc = 2^c(i,j);
                bestg = 2^g(i,j);
            end
            if abs(cg(i,j) - error) <= eps && bestc > 2^c(i,j)
                error = cg(i,j);
                bestc = 2^c(i,j);
                bestg = 2^g(i,j);
            end
        end
    end
    cmd = ['-c ',num2str(bestc),' -g ',num2str(bestg),' -s 3 -p 0.01'];
    model = svmtrain(tntrain,pntrain,cmd);
    % SVR仿真
    [predict1,error1] = svmpredict(tntrain,pntrain,model);
    [predict2,error2] = svmpredict(tntest,pntest,model);
    predict1 = mapminmax('reverse',predict1,outputs);
    predict2 = mapminmax('reverse',predict2,outputs);
    result1 = [ttrain predict1];
    result2 = [ttest predict2];
    % 绘图
    figure(1)
    plot(1:length(ttrain),ttrain,'r-*',1:length(ttrain),predict1,'b:o')
    grid on
    legend('真实值','预测值')
    xlael('样本编号')
    ylabel('耐压强度')
    string1 = {'训练集预测结果对比';['mse=',num2str(error1(2)),'R^2=',num2str(error1(3))]};
    title(string1)
    figure(2)
    plot(1:length(ttest),ttest,'r-*',1:length(ttest),predict2,'b:o')
    grid on
    legend('真实值','预测值')
    xlael('样本编号')
    ylabel('耐压强度')
    string1 = {'训练集预测结果对比';['mse=',num2str(error2(2)),'R^2=',num2str(error2(3))]};
    title(string2)
    

    详细代码私聊笔者,有偿,非诚勿扰
    在这里插入图片描述

    展开全文
  • 新的回归向量机,用于回归拟合,相关论文可以参考sparse bayesian learning and relevance vector machine
  • order--默认为1,即拟合直线,可设置为大于1的整数,即拟合多项式的次数;logx--默认为False,设置为True则回归分析时自变量取对数;x_jitter--取值为小数,在绘制离散变量回归曲线时,给数据横坐标增加噪声;y_jitter--取值...
  • chapter30 极限学习机的回归拟合及分类——对比实验研究
  • keras线性回归拟合直线

    千次阅读 2017-11-08 16:23:36
    # -*- coding: utf-8 -*- """ ...线性回归拟合直线 @author: Han """ from keras.models import Sequential from keras.layers import Dense import numpy as np# 创建一个等差数列 trX = np.linspa
  • 本代码主要利用MATLAB工具进行MATLAB——极限学习机的回归拟合及分类——比对试验研究的仿真
  • Prism使得将模型拟合到数据非常容易,本篇的内容比较简单直接,手把手教大家如何使用非线性回归拟合模型——如何用Prism拟合模型。 步骤1:输入数据 创建一个XY工作台,并输入数据。如果在每个X值上均有重复的Y...
  • 支持向量机的回归拟合——混凝土抗压强度预测的Matlab程序代码 本资源仅供学习交流,侵删
  • ELISA回归拟合计算

    2018-05-22 14:11:53
    使用软件进行ELISA logistics 4参数或者5参数曲线拟合
  • 极限学习机在回归拟合及分类中的应用极限学习机算法及其流程图代码及结果回归拟合分类 极限学习机 算法及其流程图 代码及结果 数据集及详细代码可私聊笔者,有偿,非诚勿扰 回归拟合 % 极限学习机 % 基于近...
  • chapter29 支持向量机的回归拟合——混凝土抗压强度预测
  • Matlab学习手记——ELM数据回归拟合

    千次阅读 热门讨论 2018-08-13 08:38:55
    极限学习机(Extreme Learning Machine, ELM)在回归拟合问题中的应用研究。 代码 function ELM_Regression() clear; clc; % 导入数据 load data_regression.mat input output % 随机生成训练集、测试集 k = ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 11,304
精华内容 4,521
关键字:

回归拟合