PipeLine算法
Pipeline:管道,網絡
在spark mllib中,做用主要是來定義計算的流程。模型的保存等。dom
至關於提供了一個工具類,能夠讓咱們更方便的使用spark mllib機器學習
推薦:在使用sparkmllib過程當中,建議經過pipeline將數據處理流程,鏈接起來,同時將模型的結果經過pipeline保存和加載。函數
完整的機器學習流程:工具
1數據的獲取//加載數據 5%學習
2.數據的預處理//(字符串轉數字,缺失值的處理,異常值的處理,hash) 70%測試
3.模型的訓練 10%人工智能
4.在測試數據上進行模型的評估(錯誤率,正確率,MSE 最小平方偏差)10%spa
5.若是模型達標,進行模型的保存,若是不達標,能夠更換模型,或者對數據再次預處理。
機器學習模型總結:
1.分類:事先已經知道類別,只是對數據劃分到已知的類別中,監督算法。
Ie:垃圾郵件 垃圾短信 信用評級 。。。
2.聚類:事先不知道類別,只是將數據集劃分紅指定的個數。非監督算法
Ie:人羣劃分,收入劃分,成績劃分。。
算法名稱:Kmeans
3.迴歸:預測一個連續型的值。
Ie:預測收入,預測價格,預測溫度。。。。
算法名稱:線性迴歸算法
4.關聯分析/關聯規則 以及 協同過濾
關聯分析:分析兩兩元素,或者多個元素相互之間的關係,求其一同出現的次數。次數越高,則說明關係越密切。
能夠分析兩兩商品或多個商品同時出現的次數,基於此推薦。
算法名稱:FP-growth.
協同過濾:分析用戶與用戶(物品與物品)之間的類似度。根據類似用戶,進行商品推薦。
算法名稱:ALS
(ML)機器學習:數學模型、建模
流程:提出模型-à序列-à預算
(DL)深度學習ß--à(AI)人工智能
能看:識別圖像、人臉識別、識別萬物
能說:語音功能
能聽:語音識別、翻譯
汽車自動駕駛
神經網絡:分爲三層
深度神經網絡模型:吳恩達
1.線性迴歸:在空間裏有n個點,在空間中畫出一條直線到n個點距離之和最小。
線性:y=ax+b (一元一次函數) a:相關係數 b:截距(到x軸的距離)
Y=a0+a1x1+a2x2+….+anxn
迴歸:逼近,n點線的距離最近
做用:能夠作預測(明每天氣)
屬於:監督性學習
特徵(x):x1—天氣 x2----時間 x3----地點 x4------風速
求某個方向上的變化率
《最終變成n元線性方程組》
訓練:7/8 訓練數據,創建模型
測試:3/2 檢驗模型 是否成效
配置項:
SetFeaturecol(「features」) 特徵 因變量(x)
setLabelcol(「label」) 自變量 (y)
利用訓練數據對模型擬合成型。Lir.fit()
Eg:由年齡、身高--à體重
模型:y=a+a1x1+a2x2 x1~2:表示身高、體重 y表示體重
數據:21 175 120 輸出的是一個double類型的值
spark加載數據:spark.sparkcontext.textFile(「PathName」)
對象返回兩個參數:record(arr(0),arr(1))
抽樣:randomsplit(Array(0.8,0.2)) 對數據進行抽樣訓練
2.聚類(KmeanSexample):先選取聚類中心(或者自動隨機產生),將與這個聚類中心的距離(兩點之間的距離-歐式距離)最小的點先歸爲一類,再區這一類的聚類中心(這些點的中心點做爲新的聚類中心),迭代,直到與下次的狀況同樣。就講這歸類的做爲穩定類。
屬於:無監督學習
從開始不知道類別,最後歸類
做用於:人力資源(分等級)、人物畫像
Setk(2) 2類 自動能夠設置隨機數種子
3.分類:監督學習 開始類別已知
4.邏輯斯蒂(Logistic Regression):輸入數字,輸出類別(0/1)
與線性迴歸的區別:線性迴歸輸出的是double類型(正無窮到負無窮),LR輸出的是0/1(0~1)
將線性迴歸的接軌映射成0~1之間
再將值小於0.5-à0 大於等於0.5-----à1
人臉識別、to be or ont to be、只要是作與不作的狀況