Spark机器学习(7):KMenas算法

KMenas算法比较简单,不详细介绍了,直接上代码。

import org.apache.log4j.{Level, Logger}
import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.mllib.linalg.Vectors
import org.apache.spark.mllib.clustering._

/**
  * Created by Administrator on 2017/7/11.
  */
object Kmenas {

  def main(args:Array[String]): Unit ={
    // 设置运行环境
    val conf = new SparkConf().setAppName("KMeans Test")
      .setMaster("spark://master:7077").setJars(Seq("E:\\Intellij\\Projects\\MachineLearning\\MachineLearning.jar"))
    val sc = new SparkContext(conf)
    Logger.getRootLogger.setLevel(Level.WARN)

    // 读取样本数据并解析
    val data = sc.textFile("hdfs://master:9000/ml/data/kmeans_data.txt")
    val parsedData = data.map(s => Vectors.dense(s.split(‘ ‘).map(_.toDouble))).cache()

    // 新建KMeans聚类模型并训练
    val initMode = "k-means||"
    val numClusters = 2
    val numIterations = 500
    val model = new KMeans().
      setInitializationMode(initMode).
      setK(numClusters).
      setMaxIterations(numIterations).
      run(parsedData)
    val centers = model.clusterCenters
    println("Centers:")
    for (i <- 0 to centers.length - 1) {
      println(centers(i)(0) + "\t" + centers(i)(1))
    }

    // 误差计算
    val Error = model.computeCost(parsedData)
    println("Errors = " + Error)

  }

}

运行结果:

时间: 2024-10-08 17:03:27

Spark机器学习(7):KMenas算法的相关文章

Spark机器学习(8):LDA主题模型算法

1. LDA基础知识 LDA(Latent Dirichlet Allocation)是一种主题模型.LDA一个三层贝叶斯概率模型,包含词.主题和文档三层结构. LDA是一个生成模型,可以用来生成一篇文档,生成时,首先根据一定的概率选择一个主题,然后在根据概率选择主题里面的一个单词,这样反复进行,就可以生成一篇文档:反过来,LDA又是一种非监督机器学习技术,可以识别出大规模文档集或语料库中的主题. LDA原始论文给出了一个很简单的例子.Arts.Budgets.Children.Educatio

Spark机器学习实战视频

深入浅出Spark机器学习实战(用户行为分析) 课程观看地址:http://www.xuetuwuyou.com/course/144 课程出自学途无忧网:http://www.xuetuwuyou.com 一.课程目标  熟练掌握SparkSQL的各种操作,深入了解Spark内部实现原理  深入了解SparkML机器学习各种算法模型的构建和运行  熟练Spark的API并能灵活运用  能掌握Spark在工作当中的运用 二.适合人群  适合给,有java,scala基础,想往大数据spark机器

Spark机器学习

Spark机器学习 Pipelines中的主要概念 MLlib 提供的API可以通过Pipelines将多个复杂的机器学习算法结合成单个pipeline或者单个工作流.这个概念和scikit-learn里的概念类似,根据官方的说法是,此抽象概念的设计灵感来自于scikit-learn. ·        DataFrame:通过Spark SQL 组件里的DataFrame作为机器学习的数据集.支持多种数据类型.比如 DataFrame 可以将文本,数据库等外部数据源划分为不同的列,包含特征向量

Spark机器学习:Spark 编程模型及快速入门

http://blog.csdn.net/pipisorry/article/details/52366356 Spark编程模型 SparkContext类和SparkConf类 我们可通过如下方式调用 SparkContext 的简单构造函数,以默认的参数值来创建相应的对象.val sc = new SparkContext("local[4]", "Test Spark App") 这段代码会创建一个4线程的 SparkContext 对象,并将其相应的任务命

Spark机器学习——互动出版网

这篇是计算机类的优质预售推荐>>>><Spark机器学习> 当机器学习遇上最流行的并行计算框架Spark...... 编辑推荐 Apache Spark是一个分布式计算框架,专为满足低延迟任务和内存数据存储的需求而优化.现有并行计算框架中,鲜有能兼顾速度.可扩展性.内存处理以及容错性,同时还能简化编程,提供灵活.表达力丰富的强大API的,Apache Spark就是这样一个难得的框架. 本书介绍了Spark的基础知识,从利用Spark API来载入和处理数据,到将数据作

Spark机器学习解析下集

上次我们讲过<Spark机器学习(上)>,本文是Spark机器学习的下部分,请点击回顾上部分,再更好地理解本文. 1.机器学习的常见算法 常见的机器学习算法有:l   构造条件概率:回归分析和统计分类:l   人工神经网络:l   决策树:l   高斯过程回归:l   线性判别分析:l   最近邻居法:l   感知器:l   径向基函数核:l   支持向量机:l   通过再生模型构造概率密度函数:l   最大期望算法:l   graphical model :包括贝叶斯网和 Markov 随机

掌握Spark机器学习库 大数据开发技能更进一步 高清无密

掌握Spark机器学习库 大数据开发技能更进一步 "大数据时代"已经不是一个新鲜词汇了,随着技术的商业化推广,越来越多的大数据技术已经进入人们的生活.与此同时,大数据技术的相关岗位需求也越来越多,更多的同学希望向大数据方向转型.本课程主要讲解Spark机器学习库,侧重实践的讲解,同时也以浅显易懂的方式介绍机器学习算法的内在原理.学习本课程,可以为想要转型大数据工程师或是入行大数据工作的同学提供实践指导作用.欢迎感兴趣的小伙伴们一起来学习. 第1章 初识机器学习 在本章中将带领大家概要了

Spark机器学习实战 (十一) - 文本情感分类项目实战

0 相关源码 将结合前述知识进行综合实战,以达到所学即所用.文本情感分类这个项目会将分类算法.文本特征提取算法等进行关联,使大家能够对Spark的具体应用有一个整体的感知与了解. 1 项目总体概况 2 数据集概述 数据集 3 数据预处理 4 文本特征提取 官方文档介绍提取,转换和选择特征本节介绍了使用特征的算法,大致分为以下几组: 提取:从"原始"数据中提取特征 转换:缩放,转换或修改特征 选择:从中选择一个子集一组更大的特征局部敏感散列(LSH):这类算法将特征变换的各个方面与其他算

学习参考《深度实践Spark机器学习》PDF+吴茂贵

研究大数据和数据挖掘的都知道,并行化算法研究是大数据领域一个较为重要的研究热点.近年来国内外开始关注在 Spark 平台上如何实现各种机器学习和数据挖掘并行化算法设计.Spark 提供了大量的库,包括SQL.DataFrames.MLlib.GraphX.Spark Streaming. 开发者可以在同一个应用程序中无缝组合使用这些库. <深度实践Spark机器学习>系统讲解了Spark机器学习的技术.原理.组件.算法,以及构建Spark机器学习系统的方法.流程.标准和规范.此外,还介绍了Sp