深刻解讀大數據技術在工業界的應用
大數據是近幾年非常熱門的一個概念。到底什麽叫做大數據呢?簡單而言,就是具備4V屬性的數據:
Volume:量非常大,大到一臺計算機所無法處理的數據;
Variety:來源廣泛,包括文本、圖像、語音、機器傳感器信號、日算計程序日誌等;
Velocity:產生速度非常快;
Veracity:準確性要求高。
關於大數據,有許多大家耳熟能詳的經典案例,比如沃爾瑪的“啤酒和尿布”案例;Target商場預測17歲女孩懷孕的等。
*對大數據的概念都是模糊不清的,大數據是什麽,能做什麽,學的時候,該按照什麽線路去學習,學完往哪方面發展,想深入了解,想學習的同學歡迎加入大數據學習qq群:458345782,有大量幹貨(零基礎以及進階的經典實戰)分享給大家,並且有清華大學畢業的資深大數據講師給大家免費授課,給大家分享目前國內最完整的大數據高端實戰實用學習流程體系 .
通過這些例子,我們可以了解到大數據具有非常大的潛力和應用價值。如果能夠分析出數據的潛在含義,它將在生活中的各個領域發揮巨大的作用。
越來越多的企業和組織也確實在挖掘數據的力量。
比如:電商網站會根據用戶的歷史瀏覽記錄做個性化推薦;音樂網站則根據用戶聽歌歷史和有同樣愛好者的聽歌記錄,給用戶推送喜歡的音樂;還有現在非常熱門的自動駕駛、圖像識別等技術,都是以大數據為基礎的。
數據
科學
什麽是數據科學?
那麽多數據,通過什麽手段才能挖掘出它們的潛在價值?
在這方面,人們已經做了許多研究和嘗試。數據科學就是這些研究和探索的成果——
數據科學是一門新興學科,專門研究利用數據學習知識。其目標是通過從數據中提取出有價值的部分來生產數據產品。
它也是一門交叉學科,采用數據統計和機器學習的方法,通過挖掘數據背後的潛在含義來幫助人們理解問題,解決問題,從而輔助人類決策。
數據科學結合了諸多領域的理論和技術,包括:
應用數學
統計
模式識別
機器學習
數據可視化
數據倉庫
高性能計算
等……
新興領域
很多每天都在報道數據科學將是未來一個有前途的新興領域,它會給各個產業都帶來變革。
從“大數據”一詞在中國的普及程度就可以知道,這一概念的熱度非常高。
很多高校都已經開設了數據科學專業或相關課程,那麽我們可以預期,未來數據分析的人才量將會呈指數上升。
不過,到目前為止,數據分析還是一門人才緊缺的學科,專業的數據分析人才還有很大缺口。
本來許多行業都會用到數據分析的知識,因此,很多不同領域的優秀人才紛紛轉向數據分析崗位,這也是當前的一大趨勢。
自學數據科學
其實,只要有誌於此,即便沒有在學校裏專門學習過數據科學,也可以通過自學、培訓和交流活動等手段來提升自己。以一種自我驅動的方式掌握這門學科的知識。
可以選擇:
從MOOC網站上學習;
與專業人才進行交流;
參加一些真實場景的比賽;
等,都可以學到非常多的理論知識,並獲得項目經驗。
數據科學家的基本素質
專業通過應用數據科學來解決實際問題的人,叫做數據科學家。
成為數據科學家需要具備哪些知識呢?
數據科學是一門交叉學科,數據科學家必須同時具備計算機、數學和統計的專業知識。
計算機——需要了解基本的算法和數據結構,命令行操作,能夠編寫爬蟲獲取數據,並掌握如Python,R或Scala這類適合數據分析的編程語言。
統計學——要掌握基本的概率分布,假設檢驗,以及AB Test的基本知識。
數學——大學高等數學學到的知識,比如微積分,線性代數和概率論。
此外,還需要掌握一些分布式存儲、數據處理等方面的系統和工具,比如 Hadoop, MapReduce, AWS等。
數據科學家還需要具備良好的溝通能力。
這樣才能夠將數據分析的結果展示出去,讓沒有任何背景的人也能很快明白數據背後的真實價值,有什麽具體的用處,以及未來能提高什麽方面的能力。
數據可視化也是必備技能,因為要在分析結果時做出簡明易懂的圖表。
總的來說,數據科學家需要掌握的東西很多——既要像工科生,會技術;也要像文科生,懂審美;還要像演說家,通過和不同部門溝通交流來理清問題思路,學習業務知識,並最後將自己的結論告訴給別人。
數據
分析的流程
數據科學為解決問題和做出決策提供了一套方法,大概分為5個步驟:
【step-1】定義問題
只有準確地定義了問題,才能知道要解決什麽。
為此,數據科學家需要理解問題背景和業務知識,即business understanding。TA需要理解:
用戶提出這個問題,背後真正的目的是什麽?
能夠幫助用戶改善什麽?
能夠幫助用戶創造多少的價值?
這個問題是不是數據可解的問題?
……
另外,還需要深入理解用戶所在領域的行業理論知識,才能更好地為解決這個問題提供背景知識。
【step-2】獲取數據
在理解了問題背景之後,就可以開始為解決問題尋找可以使用的數據了。
數據的來源多種多樣,數據科學家需要先對數據進行理解,然後才能知道:
現有的數據是否能夠支持我們解決當前問題?
現有數據的質量如何?
還需要什麽數據?
……
【step-3】數據預處理
往往實際收集到的數據質量並不像在課堂項目或者比賽時拿到的數據那麽好。缺失值,異常值是非常常見的。
因此,經常需要花費巨大的精力在數據的預處理上。
數據科學家們天天盯著屏幕看:
數據有無缺失?
如果缺失應該如何處理?
這個值從圖上看偏離很遠,是應該丟棄還是保留其特殊含義?
……
還有,通常情況下,在數據庫當中有大量多對多關系的數據表,關聯十分復雜。理清這些關系就是一個非常勞神且無聊的過程。
往往為後續訓練模型準備好一個切實可用的數據框表,就要花費掉投入整個項目的大部分精力和資源。
日常做項目中,可能70%~80%的時間都用在了這一步。數據分析其實是一個非常乏味的工作。
【step-4】設計分析方法、分析、並評估結果
數據清洗好後,我們就進入了數據分析的核心步驟——決定如何分析數據,從而最大程度發揮它們的價值。
數據分析大概包括如下內容:
【4.1】探索性分析
了解數據的字段含義、數據量;檢查數據質量(有否異常值、缺失值、拼寫或輸入錯誤等)。
【4.2】統計分析
統計各個字段的數據分布,最大值、最小值等。
可以運用可視化手段來發現數據中存在的規律或相關性。
【4.3】數據處理
思考如何提高數據質量:
怎麽處理異常值、缺失值?
數據的特征是否有用?
是否需要加工特征?
如何選擇特征?
……
最後將處理幹凈的數據用於訓練模型。
【4.4】數據建模
數據模型多種多樣,有解決分類問題的模型,也有解決預測問題的模型。
首先我們需要選擇模型類型,之後利用處理好的數據對模型進行訓練,並進行驗證和測試。
然後進入叠代的過程:
需要評估模型在實際生活中是否有用——有時候在訓練時有很高精確度的模型,在實際運行中並非如此。
如果模型在實際應用中反饋比較差,就需要回到問題的定義階段,去了解是否是問題定義不合適,或者是數據特征不明顯等。
只有不斷叠代才能在實際的生產生活中得到更好的效果。
【step-5】展示結果/結果上線
在獲得了足夠實用的模型,或者分析結果之後,還需要向其他人(用戶、決策者)解釋分析結果,清楚地表達結果的價值。
當模型準備就緒後,可以請工程師部署上線,到產品中去實現其功能。
在工
業界應用大數據的難點
不得不說,大數據技術在工業界的應用相較於新興的互聯網行業,遇到了更多的障礙:
觀念的問題
首先,最核心的還是人的問題。
對於傳統行業的從業人員來說,他們對於大數據知之甚少,既不了解數據的價值,也不知道大數據可以為他們做些什麽。
具體表現就是他們常常無法清楚的定義一個問題,甚至不明確到底什麽問題是數據可以解決的。
他們或許認為大數據非常厲害,可以解決任何問題,卻不明白具體要解決什麽問題。
反過來,數據科學家又不是業務領域的專家,對領域知識了解甚少,可能會盲目的提出一些項目方向,而這些解決方案對於世界業務又不是很有用。
如此一來,很可能就陷入了“大數據無用”的惡性循環。
體制的問題
許多工業企業是大型國企、央企或者大型民企。都存在著一套復雜而緩慢的審批流程。人員又對數據科學持有觀望的態度。
因此在與數據企業分享數據資源上會非常困難。
總要花費大量的時間和業務人員進行溝通,說服他們開放數據給數據專業人員。
可能數據分析本身用不了太久時間,但為了獲取數據,光申請流程就需要耗費幾個月甚至更久的時間。
數據的問題
客觀而言,工業大數據和互聯網數據也有很大的區別。
工業領域人為錄入的數據非常稀少,大部分數據來自於機器數據(傳感器信號)。本身機器系統兼容性不好,導致數據種類繁多,缺乏統一標準。
而且,很多現實的生產環境條件惡劣,所在地偏遠(郊區或者人非常少的地方)。導致數據傳輸不及時,或者精度不可靠,數據質量可能會很差。
甚至因為一些特殊原因,造成數據大部分缺失,使得後期的數據分析偏差嚴重。
多數中小型企業沒有高質量的數字化系統來記錄數據,還在采用非常落後的方式——用紙幣記錄工作流程參數或設備參數。這些數據可能最後根本就沒有被存儲下來,都被浪費掉了。
而大型企業,則往往擁有多套系統,缺乏同步管理,數據的采集也沒有固定流程和策略,加之數據量龐大,造成最終數據質量不高。
用戶預期管理的問題
到了數據建模階段,還會遇到很大的問題:工藝人員往往非常關心模型的可解釋性和控制性。
如果運用非常復雜的算法,比如SVM或者神經網絡,是無法解釋問題的,這時工藝人員則會有疑惑。
即使這些高級算法取得非常好的結果,他們也不是很放心。他們需要在任何時刻都能對模型進行控制。
數據科學家用高級的神經網絡去做,但把訓練好的模型交給工藝人員後,會收到他們的質疑。這也是在工業數據分析中比較無奈的一點。
模型質量和效率的問題
在工業大數據分析中,用戶普遍對模型的精度要求更高,容錯率更低。
因為分析結果都是要投入的實際的生產操作環節當中去的。如果不能保證精度的話,可能會造成很大的損失。
比如在化工生產環節,如果數據分析模型的結果出現紕漏,是有可能造成重大事故的!
所以,在得到可靠驗證之前,不應該把模型應用到生產環節。
另外,工業IOT的通信頻率一般在毫秒級別。機器產生數據的數量也非常龐大,一般都是按TB來計算的。
因此工業大數據對於數據的傳輸和存儲有很高要求,需要制定一套定制化的數據存儲解決方案,才能符合工業大數據的場景。
而且,工業數據通常是時序數據,也就是和時間相關的一種數據類型。故而需要時序數據庫來存儲這些數據。
這種時序數據庫又必須具備分布式運算的能力,並能夠容納多元、異構的數據,對於數據的采集和存取都必須在毫秒級別。
存儲數據的平臺需要有基本的數據分析和可視化能力,還能夠兼容不同的工業協議接口。
如此之多的要求,都是其他領域的數據分析很少遇到的。
工業
大數據應用場景
我們來看兩個工業大數據分析中的典型場景:
故障預警
傳統工業界的做法:設備的維護發生在故障之後。
一旦設備發生了故障,首先需要停機;然後會花費很長時間去尋找問題來源;之後才實施維修。
顯然這樣會耽誤生產運行,造成成本損失。
如果能夠通過分析歷史的工礦數據,了解設備在正常運行下的參數,歷史上發生問題時參數的變化,就可以通過分析工礦數據來建立大數據模型,做到故障預警——當設備出現同樣問題之後(真正發生故障之前),設備就會發出預警。
這樣,維修人員就能在設備停機之前對其進行維修處理。
通過分析歷史上經常損壞的設備和部件信息,就可以提前準備部件,避免當設備出現故障的時候再去采購。這也降低了零部件更換過程中的等待時間。從而提高整體的企業運行效率效率。
產品質量優化
提高產品的良品率也是大數據在工業界應用的一大場景。
在生產過程中,工作人員往往無法實時對參數進行優化,只能在生產結束後對產品進行檢測,並且回溯到生產時的設備參數,再進行研究。
這樣就產生了滯後性——無法在生產過程中阻止不良產品的生產。
如果通過對歷史工藝的參數分析,發現最優的參數組合,並在設備生產的過程中實時監控這些工業參數的變化,隨時進行調整,就能夠有效提高產品的良品率,減少不必要的損失。
因此在工業中,對於設備有一個全生命管理周期的概念,這也是工業大數據中一個重要的領域。
工業
大數據應用的前景
道路曲折,前途光明
傳統工業企業從自身的儲備而言,一般不具備大數據分析的能力,需要引入互聯網大數據的技術和人才。
但因為傳統行業偏保守,想要進入其中非常困難。
不過,一旦被工業企業認可,就會發現一片×××。可惜很多人往往在此之前就倒下了。
在做工業大數據分析的時候,首先需要一兩個成功的、可落地的案例,讓工業界人士看到之後,跨過心裏這道坎,才會願意分享數據,探討行業知識。
因此必須有足夠的耐心的和傳統工業人士溝通,需要花費很長時間在交流和獲取他們的信任上。
進入到正式工作階段後,在定義問題時,就要搞清楚:問題到底是不是是數據可以解決的。
不是所有的投資都有回報,也不是所有的問題都能用數據解決,但是一定有能夠用數據解決的問題。
最好的方法就是坐下來和傳統工業企業內的行業專家進行交流,通過不斷叠代提出真正可解決的數據方案。
不僅是和具體的執行人員溝通,還需要對企業的決策者進行宣貫、交流。他們了解了大數據,才會有膽量去嘗試。
工業大數據分析一般是從大型企業開始采用的。通過大企業的應用落地,再同類型進行推廣,比較容易被其他企業借鑒。
而對於中小企兒,讓他們用大數據方法解決問題之前,需要為他們建立一套完善的數據收集機制,讓他們先能夠收集數據。待數據完善後,再做進一步的分析。
不必迷信大數據
傳統行業的問題,也不是一定要有大數據才能解決的。
對於工業大數據來說,不管生產中的工藝參數還是特征,如果單純將這些數據整理好放入模型進行訓練,往往不會取得好的效果。
更加重要的是要去理解這些數據背後的物理意義。
有時候運用機理模型或者專家經驗可以闡釋出新的特征。這樣比簡單地把數據扔進模型好得多。
數據分析只是一個輔助的方法,依據行業內積累已久的業務經驗和理論進行分析,結果可能會比大數據更加可靠。
所以,對於很多有誌於從事工業大數據的人來說,一定要增加自己的領域知識積累。
另外,很多情況下工業數據量很小,通過簡單的統計分析就可以得出結論,而不必采用什麽炫酷的大數據技術。
在與用戶溝通的時候,我們既要強調大數據的實用性,又不能盲目地說大數據能解決所有問題。也要承認很多問題不用大數據也能解決。
*對大數據的概念都是模糊不清的,大數據是什麽,能做什麽,學的時候,該按照什麽線路去學習,學完往哪方面發展,想深入了解,想學習的同學歡迎加入大數據學習qq群:458345782,有大量幹貨(零基礎以及進階的經典實戰)分享給大家,並且有清華大學畢業的資深大數據講師給大家免費授課,給大家分享目前國內最完整的大數據高端實戰實用學習流程體系 .
深刻解讀大數據技術在工業界的應用