技術(shù)頻道

娓娓工業(yè)
您現(xiàn)在的位置: 中國傳動(dòng)網(wǎng) > 技術(shù)頻道 > 技術(shù)百科 > 前沿技術(shù) | 如何將機(jī)器學(xué)習(xí)引入自動(dòng)化?原來只需要這三步!

前沿技術(shù) | 如何將機(jī)器學(xué)習(xí)引入自動(dòng)化?原來只需要這三步!

時(shí)間:2020-10-16 16:31:52來源:德國倍福自動(dòng)化有限公司

導(dǎo)語:?說現(xiàn)在最熱門的前沿技術(shù),那非人工智能(AI)莫屬。而人工智能的核心卻是機(jī)器學(xué)習(xí)(ML)??梢哉f,掌握了機(jī)器學(xué)習(xí),也就掌握了人工智能技術(shù)。

說現(xiàn)在最熱門的前沿技術(shù),那非人工智能(AI)莫屬。而人工智能的核心卻是機(jī)器學(xué)習(xí)(ML)??梢哉f,掌握了機(jī)器學(xué)習(xí),也就掌握了人工智能技術(shù)。

那么,對于工業(yè)用戶來說,如何將機(jī)器學(xué)習(xí)引入到自動(dòng)化領(lǐng)域,突破傳統(tǒng)自動(dòng)化技術(shù)發(fā)展的天花板呢?面對人工智能、機(jī)器學(xué)習(xí)、深度學(xué)習(xí)、神經(jīng)網(wǎng)絡(luò)……這些深?yuàn)W的概念,如何快速了解和掌握呢?
這篇只需 5 分鐘就能閱讀完畢的文章,讓您輕松掌握機(jī)器學(xué)習(xí)的概念、關(guān)鍵技術(shù)、如何應(yīng)用到工業(yè)自動(dòng)化之中等內(nèi)容!

,我們來看一個(gè),用機(jī)器學(xué)習(xí)進(jìn)行優(yōu)化的一個(gè)運(yùn)動(dòng)控制案例,以便你對機(jī)器學(xué)習(xí)有一個(gè)感性的認(rèn)識(shí)。

 

這是兩個(gè)相同的直線加圓弧的傳輸軌道,但我們可以看到,左邊軌道上的工件輸送十分平緩,而右邊軌道上的工件傳輸很不平穩(wěn),加速很急,產(chǎn)品都快要被甩出去了。這不僅對軌道上的工件影響很大,而且軌道自身的磨損也很嚴(yán)重,右邊軌道上工件運(yùn)動(dòng)曲線的設(shè)計(jì)顯然不如左邊的傳輸軌道。
那如何才能設(shè)計(jì)出左邊這樣的運(yùn)動(dòng)曲線呢?這里就需要用到機(jī)器學(xué)習(xí),通過對工件多次的速度、加速度、位置等信息的記錄,再經(jīng)過建立數(shù)據(jù)模型,不斷優(yōu)化(訓(xùn)練)模型,最后得出一個(gè)最佳的運(yùn)動(dòng)曲線。為何要用機(jī)器學(xué)習(xí)來設(shè)計(jì)呢,這是因?yàn)檫@樣的運(yùn)動(dòng)曲線設(shè)計(jì)并沒有現(xiàn)存的曲線(如正圓、橢圓、漸開線等),也不能通過數(shù)學(xué)方程計(jì)算出來,所以只有借助機(jī)器學(xué)習(xí)的算法模型加訓(xùn)練來求解出來。

看完這個(gè)例子,您對機(jī)器學(xué)習(xí)的作用應(yīng)該有了一個(gè)初步認(rèn)識(shí)。下面我們再來理解幾個(gè)常見概念。

人工智能(AI)

能夠模仿人智力的智能,分為弱 AI 和強(qiáng) AI,目前AI處于弱AI階段。

機(jī)器學(xué)習(xí)(ML)

達(dá)到弱 AI 的水平,基于可以通過訓(xùn)練數(shù)據(jù)學(xué)習(xí)特定任務(wù)的數(shù)學(xué)模型進(jìn)行優(yōu)化。

深度學(xué)習(xí)(DL)

專注于深度神經(jīng)網(wǎng)絡(luò)(DNN)作為模型,需要大量數(shù)據(jù)集進(jìn)行訓(xùn)練的復(fù)雜模型,目前主要用于強(qiáng)大的視覺應(yīng)用。

三者的關(guān)系是從屬關(guān)系,如下圖所示:

 人工智能

簡單理解,機(jī)器學(xué)習(xí)就是通過根據(jù)各類算法建立數(shù)學(xué)模型,然后通過數(shù)據(jù)不斷訓(xùn)練模型,提高模型準(zhǔn)確性,最后將訓(xùn)練好的模型放到實(shí)際應(yīng)用場景中運(yùn)行做推理計(jì)算,解決用普通數(shù)學(xué)方法難以解決的實(shí)際問題。
所以我們可以總結(jié)一下,將機(jī)器學(xué)習(xí)引入到工業(yè)自動(dòng)化中,需要三步:收集工業(yè)現(xiàn)場數(shù)據(jù)、建立模型并訓(xùn)練模型、下載到實(shí)際應(yīng)用中運(yùn)行,如下圖所示:

人工智能

看上去是不是過程很簡單?
當(dāng)然了,實(shí)際使用過程并非如此簡單,每個(gè)環(huán)節(jié)都會(huì)涉及到專業(yè)知識(shí)和工具,下面我們就來一一展開介紹一下,讓你不僅入門,而且成為專家!

 /

收集工業(yè)現(xiàn)場數(shù)據(jù)

首先,在數(shù)據(jù)收集階段,就是要通過各類傳感器和測試測量工具來采集現(xiàn)場數(shù)據(jù),這個(gè)環(huán)節(jié)就會(huì)用到我們自動(dòng)化控制中的很多產(chǎn)品,比如像倍福的 TwinCAT3 Scope、TwinCAT3 Database Server、TwinCAT3 Data Agent TwinCAT3 Analytics Logger 等工具,可以利用這些工具將數(shù)據(jù)采集到本地?cái)?shù)據(jù)庫或者云端存儲(chǔ)、呈現(xiàn),以便下一步來建模和訓(xùn)練。

 人工智能

 /

模型的搭建和訓(xùn)練

這一步是至關(guān)重要的一步,也是目前機(jī)器學(xué)習(xí)中最難、研究最多的一步。這一步里首先需要對上一步采集到的數(shù)據(jù)進(jìn)行預(yù)處理,數(shù)據(jù)清洗除去異常值,數(shù)據(jù)轉(zhuǎn)化或者數(shù)據(jù)集成等。然后,選擇特征數(shù)據(jù)確定數(shù)學(xué)模型,進(jìn)行學(xué)習(xí)微調(diào),并進(jìn)行未知數(shù)據(jù)的學(xué)習(xí)模型驗(yàn)證。模型訓(xùn)練后,生成導(dǎo)出一個(gè)可供 TwinCAT3 等模型運(yùn)行環(huán)境的描述文件:XML 文件或者 ONNX 文件。這一步中特征數(shù)據(jù)的挖掘,也就是提取哪些數(shù)據(jù)來建模是整個(gè)機(jī)器學(xué)習(xí)能否成功的關(guān)鍵,往往需要精通行業(yè)知識(shí)經(jīng)驗(yàn)的人才能做到。

 人工智能

在這一步中,搭建模型時(shí)往往需要用到第三方框架(平臺(tái)工具),比如:Python SciKit、MATLAB Machine Learning Toolbox,以及深度學(xué)習(xí)框架TensorFlow (谷歌)、Keras (frontend for TensorFlow, CNTK, …)PyTorch (臉書)、MxNet (亞馬遜)CNTK (微軟)、MATLAB Deep Learning Toolbox (MathWorks) 等,其中大多數(shù)是開源的和基于 Python 的。

 人工智能

當(dāng)然,除了這些框架外,還有一個(gè)重要的事,數(shù)學(xué)模型的選擇和建立。在數(shù)學(xué)上,可以把萬事萬物所有問題分為兩大問題:回歸問題和分類問題。回歸問題通常是用來預(yù)測一個(gè)值,如預(yù)測房價(jià)、未來的天氣情況等。分類問題是用于將事物打上一個(gè)標(biāo)簽,通常結(jié)果為離散值,如判斷一幅圖片上的動(dòng)物是一只貓還是一只狗。解決這兩類問題需要用到不同的數(shù)學(xué)模型,比如常見的有支持向量機(jī)(SVM)、神經(jīng)網(wǎng)絡(luò)、決策樹和隨機(jī)森林、線性回歸、貝葉斯線性回歸等,這些模型在框架中是現(xiàn)存的,可以直接使用。
在這里,還需要提到一個(gè)知識(shí)點(diǎn),那就是 ONNX 開放神經(jīng)網(wǎng)絡(luò)交換文件,這是一種針對機(jī)器學(xué)習(xí)所設(shè)計(jì)的開放式文件格式,用于存儲(chǔ)訓(xùn)練好的模型。它使得不同的人工智能框架(如PytorchMXNet)可以采用相同格式存儲(chǔ)模型數(shù)據(jù)并交互。主要由微軟,亞馬遜 ,Facebook IBM 等公司共同開發(fā)。

 人工智能

 /

加載模型到控制器里運(yùn)行

說完了模型搭建和模型訓(xùn)練后,最后一步就是將模型加載到工業(yè)電腦或者控制器中運(yùn)行計(jì)算。由于模型描述文件并不能被工業(yè)控制器所識(shí)別,所以就需要用到像倍福 TwinCAT 3 這樣的自動(dòng)化控制軟件平臺(tái)作為引擎,將訓(xùn)練好的模型文件加載到控制器,才能在自動(dòng)化中應(yīng)用機(jī)器學(xué)習(xí)。
目前、TwinCAT 3 已經(jīng)無縫集成了機(jī)器學(xué)習(xí)引擎接口??梢酝ㄟ^機(jī)器學(xué)習(xí)文件轉(zhuǎn)換器(ML Converter)把訓(xùn)練生成的模型文件 XML 或者 ONNX 轉(zhuǎn)化成 BML (倍福的機(jī)器學(xué)習(xí)文件)進(jìn)行加密保護(hù),經(jīng)過 TwinCAT 3 ML Runtime 進(jìn)行加載,這樣已訓(xùn)練好的模型就可以被 TwinCAT TcCOM 對象進(jìn)行實(shí)時(shí)調(diào)用執(zhí)行,同時(shí)可以被 PLC、C/C++ 封裝的 TcCOM 的接口進(jìn)行調(diào)用!如果神經(jīng)網(wǎng)絡(luò)較小,如權(quán)值大小為 10K 的多層感知器(MLP)可以在一個(gè)亞毫秒的任務(wù)周期中多次調(diào)用,以確保實(shí)時(shí)性!

 人工智能

同時(shí),TwinCAT 3 本身所提供的支持多核技術(shù)也同樣適用于機(jī)器學(xué)習(xí)應(yīng)用,不同的任務(wù)程序可以訪問同一個(gè)特定的 TwinCAT 3 推理引擎而不會(huì)相互限制。機(jī)器學(xué)習(xí)應(yīng)用完全可以訪問 TwinCAT 中所有可用的現(xiàn)場總線接口和數(shù)據(jù),這將使其能夠使用到大量數(shù)據(jù)。

 人工智能

TwinCAT 3 現(xiàn)在有兩個(gè)機(jī)器學(xué)習(xí)推理引擎,TF380x TC3 TF381x TC3,前者是經(jīng)典機(jī)器學(xué)習(xí)模型的推理引擎,包括支持向量機(jī)(SVM), 主成分分析(PCA), k 均值(k-means)等,后者是神經(jīng)網(wǎng)絡(luò)(NN)推理引擎,包括多層感知器(MPL,卷積神經(jīng)網(wǎng)絡(luò)(CNN,長短期記憶模型(LSTM)等。

舉個(gè)例子

最優(yōu)運(yùn)動(dòng)曲線是如何機(jī)器學(xué)習(xí)出來的?

看完了上面的一般性方法介紹,下面我們再拿文章開頭的那個(gè)傳輸軌道最優(yōu)運(yùn)動(dòng)曲線是如何通過機(jī)器學(xué)習(xí)來進(jìn)行優(yōu)化的。
首先,將這個(gè)運(yùn)動(dòng)曲線優(yōu)化的問題轉(zhuǎn)化為數(shù)學(xué)問題,在一定的時(shí)間內(nèi),從 pi 順時(shí)針到 pf 找到最優(yōu)(最柔和)的運(yùn)動(dòng)曲線,運(yùn)動(dòng)過程中加速度要盡量小。

 人工智能

第一步

就是要采集數(shù)據(jù),包括工件的位置、速度、加速度、時(shí)間等,把這些數(shù)據(jù)收集存儲(chǔ)起來,以便下一步優(yōu)化。

 人工智能

第二步

提取步驟一里面的特征數(shù)據(jù)建立模型

人工智能

第三步

將訓(xùn)練好的模型通過 ONNX 文件部署到 TwinCAT 3 里,從而通過控制器實(shí)現(xiàn)最優(yōu)的運(yùn)動(dòng)曲線。

 人工智能

舉個(gè)例子

一個(gè)不需要故障數(shù)據(jù)的風(fēng)扇異常檢測

通常,我們通過大數(shù)據(jù)分析來做預(yù)測性維護(hù),需要很多故障數(shù)據(jù),可工業(yè)實(shí)際場景中往往沒有太多故障數(shù)據(jù),比如一個(gè)風(fēng)機(jī)在開始幾年并不太會(huì)有故障,只有到后期才有故障數(shù)據(jù)??墒?,通過機(jī)器學(xué)習(xí)的方法,就可以解決這個(gè)問題,在無需故障數(shù)據(jù)的情況做到故障檢測。
比如,要檢測下圖服務(wù)器工作站上的風(fēng)扇是否有異常,就可以通過機(jī)器學(xué)習(xí)來做。

 人工智能

首先,通過 TwinCAT 3 Scope 來采集大量風(fēng)扇正常情況下的壓力、轉(zhuǎn)速、振動(dòng)等數(shù)據(jù),然后用 MATLAB 來讀取這些數(shù)據(jù),使用 one-class SVM(一類支持向量機(jī))模型來訓(xùn)練,等模型學(xué)習(xí)了大量正常數(shù)據(jù)后,就會(huì)自動(dòng)產(chǎn)生一個(gè)正常數(shù)據(jù)的邊界。最后將模型從 MATLAB 導(dǎo)出為一個(gè) ONNX 文件,轉(zhuǎn)換后加載到控制器的TwinCAT 3 中。這樣,當(dāng)采集的數(shù)據(jù)超出邊界時(shí),控制器就會(huì)檢測到風(fēng)扇發(fā)生了異常狀況。
這個(gè)應(yīng)用看上去是十分簡單的,但是這其中最難的一部分是特征數(shù)據(jù)的挖掘和提取,也就是常說的特征工程。至于數(shù)據(jù)的采集、模型的創(chuàng)建、訓(xùn)練,以及最后的控制器上的運(yùn)行,已經(jīng)有很多現(xiàn)存的工具和平臺(tái),比如 MATLAB 和倍福的 TwinCAT 3。站在這些巨人的肩膀上,你只要專注用工業(yè)現(xiàn)場知識(shí)和經(jīng)驗(yàn),就可以輕松將機(jī)器學(xué)習(xí)這一高大上的新技術(shù)引入到工業(yè)自動(dòng)化之中。

標(biāo)簽: 倍福自動(dòng)化人工智能

點(diǎn)贊

分享到:

上一篇:前沿 | 機(jī)器視覺——工業(yè)自動(dòng)...

下一篇:五大問題讓你快速了解工業(yè)互聯(lián)

中國傳動(dòng)網(wǎng)版權(quán)與免責(zé)聲明:凡本網(wǎng)注明[來源:中國傳動(dòng)網(wǎng)]的所有文字、圖片、音視和視頻文件,版權(quán)均為中國傳動(dòng)網(wǎng)(m.u63ivq3.com)獨(dú)家所有。如需轉(zhuǎn)載請與0755-82949061聯(lián)系。任何媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用時(shí)須注明來源“中國傳動(dòng)網(wǎng)”,違反者本網(wǎng)將追究其法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明其他來源的稿件,均來自互聯(lián)網(wǎng)或業(yè)內(nèi)投稿人士,版權(quán)屬于原版權(quán)人。轉(zhuǎn)載請保留稿件來源及作者,禁止擅自篡改,違者自負(fù)版權(quán)法律責(zé)任。

網(wǎng)站簡介|會(huì)員服務(wù)|聯(lián)系方式|幫助信息|版權(quán)信息|網(wǎng)站地圖|友情鏈接|法律支持|意見反饋|sitemap

傳動(dòng)網(wǎng)-工業(yè)自動(dòng)化與智能制造的全媒體“互聯(lián)網(wǎng)+”創(chuàng)新服務(wù)平臺(tái)

網(wǎng)站客服服務(wù)咨詢采購咨詢媒體合作

Chuandong.com Copyright ?2005 - 2024 ,All Rights Reserved 深圳市奧美大唐廣告有限公司 版權(quán)所有
粵ICP備 14004826號(hào) | 營業(yè)執(zhí)照證書 | 不良信息舉報(bào)中心 | 粵公網(wǎng)安備 44030402000946號(hào)