Spark 聚類應用

2021-09-14 02:31:39 字數 1197 閱讀 3143

spark 機器學習庫提供了包括聚類,分類,回歸,協同過濾,

維度約簡等。使用 spark 機器學習庫來做機器學習工作,可

以說是非常的簡單,通常只需要在對原始資料進行處理後,

然後直接呼叫相應的 api 就可以實現。

spark ml 提供了乙個基於 dataframe 的機器學習工作流式

api 套件,使用 ml pipeline api,我們可以很方便的把數

據處理,特徵轉換,正則化,以及多個機器學習演算法聯合起

來,構建乙個單一完整的機器學習流水線。顯然,這種新的

方式給我們提供了更靈活的方法,而且這也更符合機器學習

過程的特點

上傳檔案到hdfs中

hdfs dfs -mkdir -p /data/mllib 建立資料夾

上傳csv資料夾

hdfs dfs -put /bigdata/spark-2.4.0-binhadoop2.7/data/mllib/iris.csv

/data/mllib/iris.csv

新建iris.scala程式

package main

import org.apache.spark.ml.clustering.kmeans

import org.apache.spark.ml.evaluation.clusteringevaluator

import org.apache.spark.sql.sparksession

object iris

}

對iris資料集進行處理

4.打包執行生成jar檔案

先啟動hdfs 再啟動spark

在啟動spark時,因為跟hadoop的啟動有了衝突,所以應該./start-all.sh

在進行打包的過程中,也就是新建artifacts時應該將多餘的jar包去除,否則生成的jar包會特別大

提交jar

spark-submit --class main.iris --master spark://master:7077 iris.jar

之後輸出聚類結果

根據scala中的程式,應該先將所要處理的iris.csv資料上傳到hdfs中

在hdfs中新建目錄後

hdfs dfs -put 路徑 目標路徑

spark對於scala的版本有要求,scala的版本不對會導致程式執行錯誤。

Spark實現Canopy聚類演算法

為什麼需要canopy演算法 canopy演算法一般是為其他聚類演算法的一種聚類方法,常用的聚類如 k means 等聚類演算法都需要事先k值 即聚類個數 並且會隨機選擇k個初始聚類中心。這種實現指定的k和隨機初始化的聚類中心不僅會降低聚類演算法的效率,而且得到的結果也可能是區域性最優的。canop...

聚類應用 crap

一。資料準備 1 資料抽取 2 資料淨化 清除資料來源中不正確 空值 不完整等不能達到資料探勘質量要求的資料 3 衍生變數 將變數的取值對映成適合聚類演算法的變數型別 基本來說,聚類演算法都是基於距離的,對於一些不是數值型別的變數,需要轉換一下表達方式 4 異常值處理 異常值指遠遠偏離一般值的資料,...

資料聚類的簡單應用

資料聚類的簡單應用 資料聚類data 1.聚類時常被用於資料量很大 data intensive 的應用中。2.聚類是無監督學習 unsupervised learning 的乙個例子。無監督學習演算法並不利用帶有正確答案的樣本資料 進行 訓練 它們的目的是要在一組資料中找尋某種結構,而這些資料本身...