chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

SparkMLlib GBDT算法工業(yè)大數據實戰(zhàn)

格創(chuàng)東智 ? 2019-04-28 14:11 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在格物匯之前發(fā)表的《工業(yè)大數據挖掘的利器——Spark MLlib》中提到,Spark 的MLlib組件能夠對工業(yè)現場海量數據進行高效挖掘,快速呈現結果給業(yè)務分析人員。接下來將向大家介紹SparkMLlib 中的GBDT算法,并將應用該算法對工業(yè)數據進行代碼實戰(zhàn)。

1算法概念

GB(Gradient Boosting)梯度提升算法,GB 共需要進行M次迭代,通過采用梯度下降的方法,每次迭代向損失函數的負梯度方向進行移動,從而使損失函數越來越小,進而使模型越來越精確。算法偽代碼如下:


圖片 1.png


GB算法跟原始的Boosting算法相比較,還是有比較明顯的區(qū)別。


Boosting算法開始的時候,是會給每個樣本附上權重的,在每次迭代的時候就會增加錯的樣本的權重,減少對的樣本的權重,經過N次迭代之后,會得到N個分類器,然后我們再將他們組合起來,得到最終模型。


GB算法與Boosting區(qū)別是,他的每一次迭代的目標都是減少上一次的殘差,所以在殘差減少的方向上建立一個新的模型。在GB算法框架上加入決策樹,就是GBDT(GradientBoost Decision Tree)算法。

GBDT主要的優(yōu)點有:

1) 可以靈活處理各種類型的數據,包括連續(xù)值和離散值。

2) 在相對少的調參時間情況下,預測的準備率也可以比較高。這個是相對SVM來說的。

3)使用一些健壯的損失函數,對異常值的魯棒性非常強。比如 Huber損失函數和Quantile損失函數。

4) 很好的利用了弱分類器進行級聯(lián)。

5) 充分考慮的每個分類器的權重。

6) 可以得到變量間的重要性排序。


GBDT的主要缺點有:

1)由于弱學習器之間存在依賴關系,難以并行訓練數據,不過可以通過自采樣的SGBT來達到部分并行。

1完整代碼實例

工業(yè)生產中,產品在制程過程中會有很多特性值,如果能對產品的特性值及時進行預測,得到特性值的具體數值,那么就會幫組業(yè)務人員知曉產品的質量,實現產品的全檢,并能防止異常產品后流,造成不必要的浪費。


本次實戰(zhàn)代碼的采用的數據是半導體制程中某一道工序的機臺的制程參數值,通過采用SparkMLlib中的GBDT算法對工業(yè)現場機臺的制程參數進行建模,預測出經過該機臺生產之后產品的膜層厚度。

packageSparkML

importcommon.Logger
importorg.apache.spark.ml.Pipeline
importorg.apache.spark.ml.evaluation.{BinaryClassificationEvaluator,RegressionEvaluator}
importorg.apache.spark.ml.feature.VectorAssembler
importorg.apache.spark.ml.regression.GBTRegressor
importorg.apache.spark.ml.tuning.{CrossValidator,ParamGridBuilder}
importorg.apache.spark.sql.{Row,SparkSession}
importscala.collection.mutable.ArrayBuffer
/**
* Created by huanghuan01 on 2019/3/27.
*/
objectgbdtDemoextendsLogger{

defmain(args: Array[String]):Unit= {
valspark= SparkSession
.builder()
.enableHiveSupport()
.master(
"local[4]")
.appName(
"gbdtDemo")
.getOrCreate()

spark.sparkContext.setLogLevel(
"WARN")

varrawData= spark.read.format("csv")
.option(
"header","true")
.load(
"E:\\sampleData.csv")

valfieldNames= rawData.schema.map(f=>s"${f.name}").toArray

valcastBuffer:ArrayBuffer[String] = ArrayBuffer()
for(i<-0until fieldNames.length){
valcast_str="cast("+ fieldNames(i) +" as double) as "+ fieldNames(i)
castBuffer.append(cast_str)
}
valcastArr= castBuffer.toArray
valinputData = rawData.selectExpr(castArr:_*)
valfeatureFieldNames= fieldNames.filter(!_.contains("label"))

valfeatureIndexer=newVectorAssembler()
.setInputCols(featureFieldNames)
.setOutputCol(
"featureIndexer")


valgbt=newGBTRegressor()
.setLabelCol(
"label")
.setFeaturesCol(
"featureIndexer")


valArray(trainingData,testData) =inputData.randomSplit(Array(0.8,0.2))

valpipline =newPipeline()
.setStages(Array(featureIndexer
,gbt))

valparamGrid =newParamGridBuilder()

.addGrid(gbt.maxIter,Array(30,50,100,200))

.addGrid(gbt.maxDepth,Array(3,7,9))

.addGrid(gbt.stepSize,Array(0.01,0.05,0.1))

.build()

valcv =newCrossValidator()
.setEstimator(pipline)
.setEvaluator(
newRegressionEvaluator())
.setNumFolds(
5)
.setEstimatorParamMaps(paramGrid)
valmodel =cv.fit(trainingData)

valpredictions =model.transform(testData)

predictions.select(
"label","prediction").show(100,false)

valevaluator =newRegressionEvaluator()
.setLabelCol(
"label")
.setPredictionCol(
"prediction")
.setMetricName(
"mae")

val mae = evaluator.evaluate

(predictions)
log.warn(s"The mae is : ${mae}")


val predictionAndLabels =

predictions

.select("prediction",

"label")

.rdd

.map { case Row(prediction:

Double, label: Double) =>

(prediction, label) }

val mape = math.abs

(predictionAndLabels.map

{ x => math.abs((x._1 - x._2) /

x._1) }.mean())

log.warn(s"The mape is :

${mape}")

val pipLine = model.bestModel.

asInstanceOf[org.apache.spark.

ml.PipelineModel]

}
}


模型最后輸出模型性能指標如下:

Mape(Mean Absolute Percentage Error):0.23%

圖片 2.png


通過上圖模型輸出的預測值與實際值對比,發(fā)現預測出來的產品膜厚的數值走勢跟實際數值走勢基本符合,mape達到0.5%以內,擬合度相當可觀,后續(xù)還可以通過樣本篩選以及特征工程等手段對該模型進行進一步調優(yōu)。


在模型達到業(yè)務需求的擬合度等指標后,通過該模型進行部署,實現產品的“實時全檢”,從而實現產品質量的全面監(jiān)控,杜絕異常產品后流;與工廠內的抽檢系統(tǒng)結合后,降低產品的抽檢率,提高工廠的效率。


GBDT算法的用途還是比較廣泛的,它不僅可以處理分類問題,能對線性與非線性回歸問題進行處理,還能通過輸出變量間重要因子排序,方便業(yè)務人員快速定位異常變量。在工業(yè)現場的頑固異常分析還是產品特性預測等領域,GBDT算法確實是很值得數據分析人員考慮的一種算法。

本文作者:

格創(chuàng)東智大數據工程師黃歡(轉載請注明作者及來源)

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 算法
    +關注

    關注

    23

    文章

    4759

    瀏覽量

    97112
  • 智能制造
    +關注

    關注

    48

    文章

    6128

    瀏覽量

    79409
  • 工業(yè)互聯(lián)網

    關注

    28

    文章

    4382

    瀏覽量

    95978
  • SPARK
    +關注

    關注

    1

    文章

    108

    瀏覽量

    21101
  • 工業(yè)大數據

    關注

    0

    文章

    72

    瀏覽量

    8155
  • GBDT
    +關注

    關注

    0

    文章

    13

    瀏覽量

    4168
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    AI時代大數據背后的網絡力量-上海兆越100G核心工業(yè)交換機

    AI大數據與云計算的全球普及,讓海量數據實時傳輸處理成為各行業(yè)數字化轉型的核心挑戰(zhàn),工業(yè)通信網絡面臨巨大數據壓力。工業(yè)交換機作為
    的頭像 發(fā)表于 11-18 17:33 ?1955次閱讀
    AI時代<b class='flag-5'>大數據</b>背后的網絡力量-上海兆越100G核心<b class='flag-5'>工業(yè)</b>交換機

    北京工業(yè)大學開源鴻蒙技術俱樂部正式揭牌成立

    2025年10月29日上午,由OpenAtom OpenHarmony(以下簡稱“開源鴻蒙”)項目群技術指導委員會和北京工業(yè)大學計算機學院共同舉辦的“北京工業(yè)大學開源鴻蒙技術俱樂部成立大會暨智能物聯(lián)
    的頭像 發(fā)表于 11-04 09:23 ?611次閱讀
    北京<b class='flag-5'>工業(yè)大</b>學開源鴻蒙技術俱樂部正式揭牌成立

    工業(yè)數據云平臺有哪些好用的?

    )。 華為云:華為云工業(yè)互聯(lián)平臺專注于工業(yè)數字化轉型,提供工業(yè)物聯(lián)網、邊緣計算和工業(yè)大數據分析等服務。其應用場景廣泛,涵蓋制造業(yè)、能源、交通等領域。華為云憑借強大的生態(tài)系統(tǒng)和持續(xù)的技術
    的頭像 發(fā)表于 10-20 17:25 ?436次閱讀
    <b class='flag-5'>工業(yè)</b><b class='flag-5'>數據</b>云平臺有哪些好用的?

    工業(yè)大舵機和普通舵機的區(qū)別?

    ,支持閉環(huán)控制和誤差修正,適用于精密機械臂、醫(yī)療設備等場景。 普通舵機 :精度通常在 ±1°-±2°,依賴簡單電位器反饋,無復雜誤差校正算法,僅能滿足航模、玩具等基礎定位需求。 負載能力 工業(yè)大舵機 :扭力范圍 10kg.cm-120kg.cm,采用金屬
    的頭像 發(fā)表于 09-25 10:41 ?460次閱讀

    【深圳站圓滿收官】開發(fā)者線下實戰(zhàn),睿擎工業(yè)平臺Workshop精彩回顧!|新聞速遞

    9月18日,睿擎工業(yè)平臺深度實戰(zhàn)Workshop深圳站圓滿收官!本次Workshop延續(xù)了上海站的技術深度與實戰(zhàn)精神,吸引了華南地區(qū)數十家企業(yè)的工業(yè)控制、嵌入式開發(fā)領域的工程師與技術負
    的頭像 發(fā)表于 09-23 20:19 ?541次閱讀
    【深圳站圓滿收官】開發(fā)者線下<b class='flag-5'>實戰(zhàn)</b>,睿擎<b class='flag-5'>工業(yè)</b>平臺Workshop精彩回顧!|新聞速遞

    深圳站報名火熱進行中!睿擎工業(yè)平臺線下實戰(zhàn) Workshop,親手實戰(zhàn)4小時解鎖工業(yè)級開發(fā)!|活動預告

    想一站式實戰(zhàn)QT圖形開發(fā)、EtherCAT通信、RPMSG多核交互?睿擎工業(yè)平臺深度實戰(zhàn)Workshop深圳站報名火熱進行中!這是一場專為工業(yè)開發(fā)者打造的沉浸式
    的頭像 發(fā)表于 09-14 10:04 ?1021次閱讀
    深圳站報名火熱進行中!睿擎<b class='flag-5'>工業(yè)</b>平臺線下<b class='flag-5'>實戰(zhàn)</b> Workshop,親手<b class='flag-5'>實戰(zhàn)</b>4小時解鎖<b class='flag-5'>工業(yè)</b>級開發(fā)!|活動預告

    御控工業(yè)物聯(lián)網大數據解決方案:排水設備遠程監(jiān)控與大數據統(tǒng)計系統(tǒng)

    御控工業(yè)物聯(lián)網推出排水設備遠程監(jiān)控與大數據統(tǒng)計系統(tǒng),通過物聯(lián)網、大數據、云計算等技術構建“感知-傳輸-分析-決策”閉環(huán)管理體系,助力排水行業(yè)數字化轉型。
    的頭像 發(fā)表于 09-12 10:04 ?469次閱讀

    最后召集!明日睿擎工業(yè)平臺Workshop上海站開啟!現場體驗工業(yè)設備實戰(zhàn)開發(fā),最終席位即將關閉!

    明天(9月4日)下午1點,睿擎工業(yè)平臺深度實戰(zhàn)Workshop上海站將準時開啟!所有技術設備已調試完畢,開發(fā)套件、全套資料均已就位,僅剩最后少量席位,報名通道將于今日24:00正式關閉。并非所有
    的頭像 發(fā)表于 09-03 14:47 ?657次閱讀
    最后召集!明日睿擎<b class='flag-5'>工業(yè)</b>平臺Workshop上海站開啟!現場體驗<b class='flag-5'>工業(yè)</b>設備<b class='flag-5'>實戰(zhàn)</b>開發(fā),最終席位即將關閉!

    工業(yè)大模型利用全流程數據采集推動顯示行業(yè)生產制造升級

    ? 顯示產業(yè)作為電子信息產業(yè)的核心支柱,其技術迭代速度快、生產工藝復雜、質量要求嚴苛,對制造升級的需求尤為迫切。工業(yè)大模型的出現,為顯示生產制造升級提供了全新的技術路徑。依托顯示生產全流程數據的深度
    的頭像 發(fā)表于 07-28 10:37 ?358次閱讀

    歐菲光榮獲第七屆“深圳工業(yè)大獎” 深圳工業(yè)界最高榮譽

    近日,第七屆“深圳工業(yè)大獎”名單公示,經深圳工業(yè)大獎獨立評審團成員認真審議、記名投票,分別評選產生第七屆“深圳工業(yè)大獎”企業(yè)10家、工業(yè)家10位、項目10個。其中,歐菲光集團股份有限公
    的頭像 發(fā)表于 07-15 18:07 ?1009次閱讀

    工業(yè)大數據管理平臺是什么?有什么功能?

    PLC跨網段通信網關是一種用于解決工業(yè)自動化領域中不同網絡段內PLC(可編程邏輯控制器)設備通信問題的關鍵設備,其核心作用是實現不同網絡協(xié)議、IP網段之間的數據交互與信息傳輸,下面從多個方面詳細介紹
    的頭像 發(fā)表于 06-13 15:43 ?331次閱讀

    邊緣計算 + 工控一體機:如何實現工業(yè)數據實時處理與本地化決策?

    工業(yè) 4.0 和智能制造蓬勃發(fā)展的時代,工業(yè)數據的高效處理與決策的及時性成為提升企業(yè)競爭力的關鍵因素。邊緣計算與工控一體機的結合,為實現工業(yè)數據實
    的頭像 發(fā)表于 06-07 15:03 ?609次閱讀
    邊緣計算 + 工控一體機:如何實現<b class='flag-5'>工業(yè)</b><b class='flag-5'>數據實</b>時處理與本地化決策?

    京東工業(yè)大模型Joy industrial重磅發(fā)布

    京東工業(yè)多年深耕工業(yè)數智供應鏈領域形成的經驗積累和數據沉淀,通過“工業(yè)大模型+供應鏈場景應用”雙引擎,構建從底層算力、算法、
    的頭像 發(fā)表于 05-28 17:12 ?756次閱讀

    工業(yè)現場數據實時采集:解鎖工業(yè)智能化轉型的關鍵

    在當今工業(yè)智能化轉型的浪潮中,工業(yè)現場數據實時采集的重要性不言而喻。它猶如企業(yè)運營的 “慧眼”,為企業(yè)帶來全方位的顯著價值。
    的頭像 發(fā)表于 01-20 13:24 ?823次閱讀
    <b class='flag-5'>工業(yè)</b>現場<b class='flag-5'>數據實</b>時采集:解鎖<b class='flag-5'>工業(yè)</b>智能化轉型的關鍵

    工程大數據平臺

    由于無人駕駛系統(tǒng)開發(fā)需要長期迭代優(yōu)化,其過程需要大量的路試數據支撐,經緯恒潤針對無人駕駛系統(tǒng)持續(xù)運營和持續(xù)迭代的需求,開發(fā)并在云端部署了車路云工程大數據平臺,依托5G網絡,具有遠程數據采集、壓縮、傳輸、解析、回放與
    的頭像 發(fā)表于 01-10 17:00 ?936次閱讀
    工程<b class='flag-5'>大數據</b>平臺