掌握Spark机器学习库-07.14-保序回归算法实现房价预测
数据集
house.csv
数据集概览
代码
package org.apache.spark.examples.examplesforml import org.apache.spark.ml.classification.LogisticRegression
import org.apache.spark.ml.feature.VectorAssembler
import org.apache.spark.ml.regression.{IsotonicRegression, LinearRegression}
import org.apache.spark.sql.SparkSession
import org.apache.spark.{SparkConf, SparkContext} import scala.util.Random
/*
日期:2018.10.15
描述:
7-14
保序回归算法
实现房价预测
数据集:
house.csv
*/
object IstonicRegression {
def main(args: Array[String]): Unit = {
val conf = new SparkConf()
.setAppName("linear")
.setMaster("local")
val sc = new SparkContext(conf)
val spark = SparkSession
.builder()
.config(conf)
.getOrCreate() val file = spark.read
.format("csv")
.option("sep",";")
.option("header","true")
.load("D:\\7-6线性回归-预测房价\\house.csv")
import spark.implicits._
//打乱顺序
val rand = new Random()
val data = file.select("square","price")
.map(
row => (row.getAs[String](0).toDouble,row.getString(1).toDouble,rand.nextDouble()))
.toDF("square","price","rand").sort("rand") //强制类型转换过程 val ass = new VectorAssembler()
.setInputCols(Array("square"))
.setOutputCol("features")
val dataset = ass.transform(data)//特征包装
val Array(train,test) = dataset.randomSplit(Array(0.8,0.2))//拆分成训练数据集和测试数据集 val isotonic = new IsotonicRegression()
.setFeaturesCol("features")
.setLabelCol("price")
val model = isotonic.fit(train)
model.transform(test).show()
}
}
输出结果
掌握Spark机器学习库-07.14-保序回归算法实现房价预测的更多相关文章
- Spark机器学习(3):保序回归算法
保序回归即给定了一个无序的数字序列,通过修改其中元素的值,得到一个非递减的数字序列,要求是使得误差(预测值和实际值差的平方)最小.比如在动物身上实验某种药物,使用了不同的剂量,按理说剂量越大,有效的比 ...
- Spark Mllib里如何采用保序回归做回归分析(图文详解)
不多说,直接上干货! 相比于决策树,保序回归的应用范围没有决策树算法那么广泛. 特别在数据处理较为庞大的时候,采用保序回归做回归分析,可以极大地节省资源,从而提高计算效率. 保序回归的思想,是对数据进 ...
- 掌握Spark机器学习库-07.6-线性回归实现房价预测
数据集 house.csv 数据概览 代码 package org.apache.spark.examples.examplesforml import org.apache.spark.ml.fea ...
- 掌握Spark机器学习库-08.2-朴素贝叶斯算法
数据集 iris.data 数据集概览 代码 import org.apache.spark.SparkConf import org.apache.spark.ml.classification.{ ...
- 掌握Spark机器学习库(课程目录)
第1章 初识机器学习 在本章中将带领大家概要了解什么是机器学习.机器学习在当前有哪些典型应用.机器学习的核心思想.常用的框架有哪些,该如何进行选型等相关问题. 1-1 导学 1-2 机器学习概述 1- ...
- 【Spark机器学习速成宝典】模型篇08保序回归【Isotonic Regression】(Python版)
目录 保序回归原理 保序回归代码(Spark Python) 保序回归原理 待续... 返回目录 保序回归代码(Spark Python) 代码里数据:https://pan.baidu.com/s/ ...
- 机器学习:保序回归(IsotonicRegression):一种可以使资源利用率最大化的算法
1.数学定义 保序回归是回归算法的一种,基本思想是:给定一个有限的实数集合,训练一个模型来最小化下列方程: 并且满足下列约束条件: 2.算法过程说明 从该序列的首元素往后观察,一旦出现乱序现象停止该轮 ...
- 103 保序回归 isotonic regression
103 保序回归 isotonic regression 2016-03-30 11:25:27 bea_tree 阅读数 6895 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权 ...
- scikit-learn: isotonic regression(保序回归,非常有意思,仅做知识点了解,但差点儿没用到过)
http://scikit-learn.org/stable/auto_examples/plot_isotonic_regression.html#example-plot-isotonic-reg ...
随机推荐
- MD5加密解密帮助类
using System; using System.Security.Cryptography; using System.Text; namespace Maticsoft.DBUtility { ...
- makefile redefinition or previous definition
operation.h:4: error: redefinition of 'class operation' operation.h:5: error: previous definition of ...
- Android图片载入缓存框架Glide
Glide开源框架是Google推荐的图片载入和缓框架,其在Github上的开源地址是:https://github.com/bumptech/glide 当然一个Google推荐的框架肯定就是Vol ...
- 一些linux嵌入式资源下载地址
linux内核源代码情景分析 非扫描版 上下册合订版 字清楚 带书签 1575页 pdfhttp://download.csdn.net/source/2002579***************** ...
- 用 kGDB 调试 Linux 内核
简介 这个文档记录了用kGDB调试Linux内核的全过程,都是在前人工作基础上的一些总结.以下操作都是基于特定板子来进行,但是大部分都能应用于其他平台. 要使用KGDB来调试内核,首先需要修改conf ...
- 并不对劲的bzoj4651:loj2086:uoj222:p1712:[NOI2016]区间
题目大意 有\(n\)(\(n\leq 5*10^5\))个闭区间\([L_1,R_1],[L_2,R_2],...,[L_n,R_n]\)(\(\forall i\in [1,n],0\leq L_ ...
- asp.net 中的事务
ASP.NET开发过程中的事务处理 http://www.cnblogs.com/georgeHeaven/p/3766609.html
- 一步一步学Vue(六)
本篇继续介绍vue-router,我们需要要完成这样个demo:<分页显示文章列表>:这里我们以博客园首页列表为例简化处理: 按照上图框选所示,简单分为蓝色部分文章组件(ArticleIt ...
- E20180309-hm-xa
conformance n. 顺应,一致; symmetric adj. 相称性的,均衡的; raw adj. 生的,未加工的; 无经验的; 新近完成的; 发炎的,疼痛的; exceed ...
- bzoj 1609[Usaco2008 Feb]Eating Together麻烦的聚餐【dp】
设up[i][j]为第i位升序为j的最小修改数,down为降序 #include<iostream> #include<stdio.h> using namespace std ...