【头歌】重生之数据挖掘算法原理与实践:线性回归(房价预测)

关于【头歌】线性回归理论与案例实践的其他单元仅粉丝可见,想要更多学习资源的同学关注我哦~

创作不易,参考之前,点个赞,收藏,关注一下不过分吧,家人们

第1关:线性回归算法思想

  • 1、

    下面属于多元线性回归的是?

    A、

    求得正方形面积与对角线之间的关系。

    B、

    建立股票价格与成交量、换手率等因素之间的线性关系。

    C、

    建立西瓜价格与西瓜大小、西瓜产地、甜度等因素之间的线性关系。

    D、

    建立西瓜书销量与时间之间的线性关系。

  • 答案:B C

第2关:动手实现线性回归

任务描述

本关任务:根据本关卡所学知识,构建线性回归算法,并利用波士顿房价数据对模型进行训练,然后对未知的房价数据进行预测。

编程要求

根据提示,在右侧编辑器Begin-End处补充 Python 代码,实现线性回归算法与MSE损失函数计算方法,并利用房价数据对模型进行训练,然后对未知的房价数据进行预测。

#mse
def mse_score(y_predict,y_test):
    #********* Begin *********#
    m = len(y_predict)
    a = y_test - y_predict
    mse = np.dot(a,a)/m
    #********* End *********#
    return mse

def lr(train_feature,train_label,test_feature):
    '''
    input:
        train_feature(ndarray):训练样本特征
        train_label(ndarray):训练样本标签
        test_feature(ndarray):测试样本特征
    output:
        predict(ndarray):测试样本预测标签
    '''
    #********* Begin *********#
    #将x0=1加入训练数据
    new_train = np.concatenate((np.ones(len(train_feature)).reshape(-1,1),train_feature),axis=1)
    #使用正规方程解求得参数
    train_T = new_train.T
    linal = np.linalg.inv(np.dot(train_T,new_train))
    result = np.dot(linal,train_T)
    theta = np.dot(result,train_label)

    #将x0=1加入测试数据
    new_test = np.concatenate((np.ones(len(test_feature)).reshape(-1,1),test_feature),axis=1)
    #求得测试集预测标签    
    predict = np.dot(new_test, theta)
    #********* End *********#
    return predict

第3关:衡量线性回归的性能指标

任务描述

本关任务:根据本关卡所学知识,用Python实现线性回归常用评估指标,并对构造的线性回归模型进行评估。

def r2_score(y_predict,y_test):
    '''
    input:y_predict(ndarray):预测值
          y_test(ndarray):真实值
    output:r2(float):r2值
    '''
    #********* Begin *********#
    r2 = 1-mse_score(y_predict,y_test)/np.var(y_test)
    #********* End *********#
    return r2

  • 8
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
系统化地阐述了数据挖掘和知识发现技术的产生、发展、应用和相概念、原理算法。对数据挖掘中的主要技术分支,包括联规则、分类、聚类、序列、空间以及Web挖掘等进行了理论剖析和算法描述。本书的许多工作是作者们在攻读博士学位期间的工作总结,一方面,对于相概念和技术的阐述尽量先从理论分析入手,在此基础上进行技术归纳。另一方面,为了保证技术的系统性,所有的挖掘模型和算法描述都在统一的技术归纳框架下进行。同时,为了避免抽象算法描述给读者带来的理解困难,本书的所有典型算法都通过具体跟踪执行实例来进一步说明。本书共分8章,各章相对独立成篇,以利于读者选择性学习。在每章后面都设置专门一节来对本章内容和文献引用情况进行归纳,它不仅可以帮助读者对相内容进行整理,而且也起到对本内容相文献的注释性索引功能。第1章是绪论,系统地介绍了数据挖掘产生的商业和技术背景,从不同侧面剖析了数据挖掘的概念和应用价值;第2章给出了知识发现的过程分析和应用体系结构设计;第3章对联规则挖掘的原理算法进行全面阐述;第4章给出分类的主要理论和算法描述;第5章讨论聚类的常用技术和算法;第6章对时间序列分析技术和序列挖掘算法进行论述;第7章系统地介绍了Web挖掘的主要研究领域和相技术及算法;第8章是对空间数据挖掘技术和算法的分析和讲述。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值