數(shù)據(jù)的海嘯為企業(yè)提供了優(yōu)化流程和提供差異化??產(chǎn)品的機會。一套新的算法??和基礎設施已經(jīng)出現(xiàn),允許企業(yè)使用大數(shù)據(jù)或機器學習等關鍵數(shù)據(jù)分析技術來利用這些機會。
此外,大數(shù)據(jù)或機器學習背后的這種新基礎設施導致了許多不同的技術,這些技術支持構建數(shù)據(jù)分析算法的迭代過程。正是構建算法的迭代過程的這個開始階段可以讓企業(yè)走向成功。這個迭代過程涉及嘗試多種策略,例如尋找其他數(shù)據(jù)源以及不同的機器學習方法和特征轉換。
鑒于要嘗試的組合可能無限多,因此快速迭代至關重要。領域專家非常適合快速迭代,因為他們可以利用他們的知識和直覺來避免不太可能產(chǎn)生強大結果的方法。具有領域知識的工程師越快將他們的知識應用到支持快速迭代的工具中,企業(yè)就能越快獲得競爭優(yōu)勢。
但在深入研究支持這項活動的技術之前,讓我們先來看看這個迭代過程的一個例子,以及在此過程中要問的一些問題。
迭代數(shù)據(jù)集
假肢公司知道,如果它知道客戶會做什么活動(站立、坐著、走路等),它可以制造更智能的假肢。因此,它提出的第一個問題是:我們可以使用哪些數(shù)據(jù)來確定這一點?
該公司的工程師知道他們的大多數(shù)客戶都有智能手機,因此他們希望使用來自智能手機傳感器的數(shù)據(jù)來確定他們的活動。該公司的工程師首先記錄加速度計的數(shù)據(jù)。他們將機器學習算法直接應用于數(shù)據(jù),但學習結果不如他們希望的那么好。迭代過程開始了,工程師接著問:我們是否有其他方法可以為機器學習準備數(shù)據(jù),從而產(chǎn)生更好的結果?
該公司的工程師應用信號處理技術從傳感器數(shù)據(jù)中提取頻率內(nèi)容,并再次嘗試機器學習技術。結果更好,但還沒有完全達到,所以他們問:我們可以使用其他數(shù)據(jù)來源來改進我們的預測嗎?
他們決定還記錄來自智能手機的陀螺儀數(shù)據(jù),并將其與加速度計數(shù)據(jù)相結合。再次訓練他們的機器學習模型,他們現(xiàn)在對結果感到滿意,并開始生產(chǎn)。
工程師在迭代過程中可能會問的其他問題包括:
有哪些可用數(shù)據(jù)?
還有其他數(shù)據(jù)源嗎?
可以使用哪些類型的流程從數(shù)據(jù)中提取高級信息?
該模型將在哪里運行?
某些類型的錯誤分類是否比其他類型的錯誤分類成本更高?
我們?nèi)绾尾拍芸焖龠M行實驗來驗證想法并回答上述問題?
既然您已經(jīng)看到了迭代過程的示例和要問的問題,那么這個過程背后的技術呢?
大數(shù)據(jù)迭代
隨著越來越多的數(shù)據(jù)產(chǎn)生,系統(tǒng)需要發(fā)展以處理所有數(shù)據(jù)。在這個“大數(shù)據(jù)”領域,兩個大型項目重塑了格局:Hadoop 和 Spark。這兩個項目都是 Apache 軟件基金會的一部分。它們共同使存儲和分析大量數(shù)據(jù)變得更容易、更便宜。
這些技術可以極大地影響工程師的工作。對于習慣于在臺式機、網(wǎng)絡驅動器或傳統(tǒng)數(shù)據(jù)庫中處理文件中數(shù)據(jù)的工程師來說,這些新工具需要一種不同的方式來訪問數(shù)據(jù),然后才能考慮進行分析。在許多情況下,可能會造成人為的數(shù)據(jù)孤島和低效率,例如每次執(zhí)行新分析時都需要聯(lián)系某人將數(shù)據(jù)從大數(shù)據(jù)系統(tǒng)中提取出來。
工程師在處理大數(shù)據(jù)時面臨的另一個挑戰(zhàn)是需要改變他們的計算方法。當數(shù)據(jù)小到足以放入內(nèi)存時,標準的工作流程是加載數(shù)據(jù)并執(zhí)行計算;計算通常會很快,因為數(shù)據(jù)已經(jīng)在內(nèi)存中。但是對于大數(shù)據(jù),通常會有磁盤讀/寫,以及跨網(wǎng)絡的數(shù)據(jù)傳輸,這會減慢計算速度。
當工程師設計一種新算法時,他們需要能夠快速迭代許多設計。結果是一個新的工作流程,包括獲取數(shù)據(jù)樣本并在本地使用它,從而實現(xiàn)快速迭代和輕松使用有用的開發(fā)工具,如調試器。一旦算法在樣本上經(jīng)過審查,它就會針對大數(shù)據(jù)系統(tǒng)中的完整數(shù)據(jù)集運行。
這些挑戰(zhàn)的解決方案是一個系統(tǒng),讓工程師可以使用熟悉的環(huán)境編寫代碼,該代碼既可以在本地數(shù)據(jù)樣本上運行,也可以在大數(shù)據(jù)系統(tǒng)中的完整數(shù)據(jù)集上運行。MATLAB 等工具與 Hadoop 等大數(shù)據(jù)系統(tǒng)建立連接??梢?a href="http://www.wenjunhu.com/soft/special/" target="_blank">下載數(shù)據(jù)樣本,并在本地制作算法原型。利用延遲評估框架的新計算模型用于以性能優(yōu)化的方式在完整數(shù)據(jù)集上運行算法。對于工程和數(shù)據(jù)科學工作流程中常見的迭代分析,這種延遲評估模型是減少完成完整數(shù)據(jù)集分析所需時間的關鍵,這通??赡苁菐追昼娀驇仔r的數(shù)量級。
大數(shù)據(jù)技術一直是數(shù)據(jù)科學發(fā)展的關鍵推動力。隨著大量數(shù)據(jù)的收集,需要新的算法來對這些數(shù)據(jù)進行推理,這導致了機器學習的使用熱潮。
機器學習
機器學習用于識別數(shù)據(jù)中的潛在趨勢和結構。機器學習分為無監(jiān)督學習和監(jiān)督學習。
在無監(jiān)督學習中,我們試圖發(fā)現(xiàn)數(shù)據(jù)中的關系,例如所有相似的數(shù)據(jù)點組。例如,我們可能想查看駕駛數(shù)據(jù),以了解人們駕駛汽車的模式是否不同。通過聚類分析,我們可能會發(fā)現(xiàn)不同的趨勢,例如城市駕駛與高速公路駕駛,或者更有趣的是,不同風格的駕駛員(例如,激進的司機)。
在監(jiān)督學習中,我們得到輸入和輸出數(shù)據(jù),目標是訓練一個模型,該模型在給定新輸入的情況下可以預測新輸出。監(jiān)督學習通常用于圖像中的預測性維護、欺詐檢測和面部識別等應用。
機器學習的每個領域——無監(jiān)督學習和監(jiān)督學習——都有幾十種流行的算法(還有數(shù)百種不太流行的算法)。但是,很難知道這些算法中的哪一種最適合您正在處理的特定問題。通常,最好的辦法就是嘗試一下并比較結果。這在某些環(huán)境中可能是相當大的挑戰(zhàn),因為研究人員根據(jù)他們的問題和偏好構建具有不同接口的算法。
成熟的機器學習工具為各種算法提供一致的界面,并且可以輕松快速地嘗試不同的方法。這對于執(zhí)行數(shù)據(jù)科學的領域專家來說至關重要,因為它使他們能夠識別機器學習比傳統(tǒng)方法提供改進的“速贏”。這種方法還可以防止他們花費數(shù)天或數(shù)周的時間將機器學習模型調整為不適合機器學習的數(shù)據(jù)集。MATLAB 等工具通過提供訓練和比較多個機器學習模型的點擊式應用??程序來解決這個問題。
迭代更快
大數(shù)據(jù)和機器學習相結合,有望為長期存在的業(yè)務問題帶來新的解決方案。底層技術掌握在非常熟悉這些業(yè)務問題的領域專家手中,可以產(chǎn)生顯著的成果。例如,貝克休斯的工程師使用機器學習技術來預測他們的天然氣和石油開采卡車上的泵何時會出現(xiàn)故障。他們從這些卡車上收集了近 1 TB 的數(shù)據(jù),然后使用信號處理技術來識別相關的頻率內(nèi)容。領域知識在這里至關重要,因為他們需要了解卡車上可能出現(xiàn)在傳感器讀數(shù)中的其他系統(tǒng),但這對預測泵故障沒有幫助。他們應用了機器學習技術,可以區(qū)分健康的泵和不健康的泵。由此產(chǎn)生的系統(tǒng)預計將減少 1000 萬美元的總成本。在整個過程中,他們對泵車系統(tǒng)的了解使他們能夠深入挖掘數(shù)據(jù)并快速迭代。
利用處理大數(shù)據(jù)和應用機器學習的工具,貝克休斯的工程師能夠很好地解決改善業(yè)務成果的問題。憑借對這些復雜系統(tǒng)的領域知識,工程師們將這些工具遠遠超出了網(wǎng)絡和營銷應用程序的傳統(tǒng)用途。
審核編輯:郭婷
-
matlab
+關注
關注
185文章
2979瀏覽量
230649 -
機器學習
+關注
關注
66文章
8425瀏覽量
132770 -
大數(shù)據(jù)
+關注
關注
64文章
8897瀏覽量
137523
發(fā)布評論請先 登錄
相關推薦
評論