• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      在行空板上部署Web前端訓(xùn)練的AI模型

      2023-06-07 16:31:17謝作如程龍愷
      中國(guó)信息技術(shù)教育 2023年11期
      關(guān)鍵詞:深度學(xué)習(xí)

      謝作如 程龍愷

      摘要:隨著人工智能教育的普及,中小學(xué)的師生們不再滿足于“體驗(yàn)”,而希望通過(guò)Web頁(yè)面訓(xùn)練出來(lái)真正有用的AI模型,并部署到開(kāi)源硬件搭建出AI應(yīng)用。本文介紹了常見(jiàn)的Web前端模型訓(xùn)練平臺(tái)和模型轉(zhuǎn)換方法,并以行空板和ONNX為例,展示了一個(gè)完整的AI開(kāi)發(fā)流程。

      關(guān)鍵詞:深度學(xué)習(xí);模型轉(zhuǎn)換;模型部署

      中圖分類號(hào):G434? 文獻(xiàn)標(biāo)識(shí)碼:A? 論文編號(hào):1674-2117(2023)11-0085-03

      隨著人工智能的發(fā)展和普及,深度學(xué)習(xí)已經(jīng)成為人工智能的核心內(nèi)容。越來(lái)越多的教育者認(rèn)識(shí)到,如果不涉及數(shù)據(jù)采集、模型訓(xùn)練和部署等內(nèi)容,則幾乎不能把它稱為人工智能教育。為了降低深度學(xué)習(xí)的技術(shù)門(mén)檻,一些人工智能學(xué)習(xí)平臺(tái)設(shè)計(jì)了基于Web頁(yè)面的模型訓(xùn)練功能,即學(xué)生不需要編寫(xiě)代碼,點(diǎn)點(diǎn)鼠標(biāo)就能完成從采集數(shù)據(jù)、訓(xùn)練模型到推理的機(jī)器學(xué)習(xí)流程。我們將這種模型訓(xùn)練方式命名為Web前端模型訓(xùn)練。那么,這種基于網(wǎng)頁(yè)前端訓(xùn)練出來(lái)的AI模型,能不能像其他模型一樣,也可以部署到開(kāi)源硬件,搭建出一個(gè)真正的AI應(yīng)用?針對(duì)這個(gè)問(wèn)題,筆者進(jìn)行了深度探究,并成功實(shí)現(xiàn)了將一個(gè)通過(guò)Web前端訓(xùn)練的AI模型,轉(zhuǎn)換為ONNX并部署到行空板上。

      Web前端訓(xùn)練AI模型的原理和特點(diǎn)

      使用Web前端方式訓(xùn)練模型,需要借助TensorFlow.js這一技術(shù)。TensorFlow.js是谷歌發(fā)布的一個(gè)JavaScript庫(kù),它將深度學(xué)習(xí)和機(jī)器學(xué)習(xí)技術(shù)與Web應(yīng)用程序融合,使用戶能夠在Web瀏覽器和Node.js環(huán)境中直接訓(xùn)練和部署機(jī)器學(xué)習(xí)模型。簡(jiǎn)單來(lái)說(shuō),TensorFlow.js可以讓開(kāi)發(fā)者用JavaScript實(shí)現(xiàn)機(jī)器學(xué)習(xí)應(yīng)用,通過(guò)瀏覽器直接與用戶交互。Teachable Machine是谷歌創(chuàng)意實(shí)驗(yàn)室開(kāi)發(fā)的小項(xiàng)目,可以看成TensorFlow.js的DEMO網(wǎng)站。

      Web前端模型訓(xùn)練的優(yōu)點(diǎn):首先,不需要搭建專用的AI訓(xùn)練環(huán)境,打開(kāi)谷歌瀏覽器或者Edge,就能隨時(shí)隨地訓(xùn)練模型。用戶甚至可以將Web站點(diǎn)搭建在本機(jī)上,不上網(wǎng)都能訓(xùn)練。其次,這種模型訓(xùn)練使用的是前端算力,即瀏覽器端(客戶端)電腦的算力,一個(gè)Web服務(wù)器理論上可以支持無(wú)限用戶同時(shí)訓(xùn)練模型,有效解決了服務(wù)器算力匱乏的問(wèn)題。再次,借助遷移學(xué)習(xí)的方式,僅僅提供少量圖片(一個(gè)分類20張以上),TensorFlow.js訓(xùn)練的模型就能取得不錯(cuò)的推理效果。在普通i5系列CPU電腦上訓(xùn)練,一般在一分鐘內(nèi)就能完成,很適合課堂教學(xué)。

      Web前端訓(xùn)練AI模型的一般流程

      在Web前端訓(xùn)練一個(gè)AI模型的流程,和常見(jiàn)的機(jī)器學(xué)習(xí)流程是一致的,都要經(jīng)歷數(shù)據(jù)采集、模型訓(xùn)練和模型推理這三個(gè)環(huán)節(jié),如下頁(yè)圖1所示。

      國(guó)內(nèi)提供Web前端模型訓(xùn)練功能的人工智能學(xué)習(xí)平臺(tái)主要有浦育、英荔和騰訊扣叮這幾類。其中,英荔平臺(tái)似乎是谷歌Teachable Machine的鏡像網(wǎng)站,除了在線訓(xùn)練模型外,還能夠下載訓(xùn)練好模型,并且提供了TensorFlow.js模型和h5模型(Keras框架使用的模型)的轉(zhuǎn)換。

      經(jīng)過(guò)分析,通過(guò)TensorFlow.js訓(xùn)練的圖像分類模型,采用的算法是谷歌團(tuán)隊(duì)提出的MobileNet v2。MobileNets系列的本身初衷是“for Mobile Vision Applications”,是一個(gè)輕量化的卷積網(wǎng)絡(luò)模型,可以顯著減少計(jì)算量和參數(shù)量,同時(shí)保持較高的準(zhǔn)確率來(lái)提升效率,能夠運(yùn)行在算力不太高的移動(dòng)設(shè)備上。

      在行空板上部署Web前端訓(xùn)練的AI模型

      雖然英荔平臺(tái)提供了h5格式的模型下載,而類似樹(shù)莓派、行空板的開(kāi)源硬件也能夠安裝Keras的環(huán)境,似乎看起來(lái)部署模型很簡(jiǎn)單,但實(shí)際上h5模型的加載實(shí)在太慢了,一個(gè)簡(jiǎn)單的圖像分類模型居然要2分鐘才能完成,推理速度也很慢。筆者在《當(dāng)MMEdu遇上行空板——“智能稻草人”項(xiàng)目的后續(xù)研究》一文中,已經(jīng)給出了在行空板上部署ONNX模型的方法。于是,筆者在萬(wàn)能的GitHub中找到了一個(gè)名為“tf2onnx”的庫(kù),先將h5模型轉(zhuǎn)換為ONNX模型,然后部署在行空板上。

      tf2onnx是一個(gè)將TensorFlow(tf-1.x或tf-2.x)、keras、tensorflow.js和tflite模型轉(zhuǎn)換為ONNX的工具庫(kù),可通過(guò)命令行或Python API進(jìn)行操作(如圖2)。在安裝tf2onnx庫(kù)的同時(shí),還需要部署好tensorflowjs的環(huán)境。安裝過(guò)程有點(diǎn)長(zhǎng),具體安裝時(shí)間受制于網(wǎng)絡(luò)速度。

      tf2onnx提供了多種轉(zhuǎn)換方式。最方便的是調(diào)用命令行,參考命令如“python -m tf2onnx.convert --saved-model tensorflow-model-path --output model.onnx”。也可以調(diào)用Python API來(lái)完成轉(zhuǎn)換,核心代碼并不復(fù)雜,十來(lái)行代碼即可完成。參考代碼如上頁(yè)圖3所示。

      在轉(zhuǎn)換前,要先將Web前端訓(xùn)練的模型下載到本地。下載的模型文件為一個(gè)壓縮包,解壓后可得到model.json和model.weights.bin兩個(gè)文件。需要注意的是,在轉(zhuǎn)換時(shí),這兩個(gè)文件要放在一個(gè)文件夾中。

      ONNX模型在行空板上的部署測(cè)試

      在完成模型轉(zhuǎn)換后,就可以將這一模型部署到行空板上了。最終訓(xùn)練的是一個(gè)害蟲(chóng)的分類模型,調(diào)用行空板的攝像頭進(jìn)行識(shí)別。當(dāng)程序啟動(dòng)后,在2秒內(nèi)可以載入模型,每推理一幀的時(shí)間在0.3秒左右。整體項(xiàng)目使用BaseDeploy完成推理模塊的封裝,使用BaseDT完成數(shù)據(jù)預(yù)處理。一個(gè)調(diào)用攝像頭的核心代碼僅10行左右,參考代碼如圖4所示。

      基于Web前端訓(xùn)練模型,對(duì)當(dāng)前的中小學(xué)生來(lái)說(shuō)是一種很好普及的模型訓(xùn)練方式。只要能夠借助低門(mén)檻的深度學(xué)習(xí)工具訓(xùn)練模型,學(xué)生們用AI模型解決真實(shí)問(wèn)題的難度將大大降低。用網(wǎng)頁(yè)訓(xùn)練模型,再部署到開(kāi)源硬件上,創(chuàng)客教育和人工智能教育能夠快速融合。

      當(dāng)然,TensorFlow.js也存在不足,其支持的模型類型還不是很多。但筆者相信,只要中小學(xué)生體驗(yàn)了用訓(xùn)練AI模型的方式解決了真實(shí)問(wèn)題,就會(huì)自然而然對(duì)使用其他工具訓(xùn)練AI模型產(chǎn)生學(xué)習(xí)興趣。訓(xùn)練AI模型本來(lái)就是流程化的工作,每一位學(xué)生都應(yīng)該了解并體驗(yàn),從而深刻理解數(shù)據(jù)、算法和算力之間的關(guān)系。

      參考文獻(xiàn):

      [1]謝作如,程龍愷.當(dāng)MMEdu遇上行空板——“智能稻草人”項(xiàng)目的后續(xù)研究[J].中國(guó)信息技術(shù)教育,2022(23):77-79.

      [2]謝作如.用新一代人工智能技術(shù)解決真實(shí)問(wèn)題——談中小學(xué)AI科創(chuàng)活動(dòng)的開(kāi)展[J].中國(guó)信息技術(shù)教育,2022(13):5-8.

      猜你喜歡
      深度學(xué)習(xí)
      從合坐走向合學(xué):淺議新學(xué)習(xí)模式的構(gòu)建
      面向大數(shù)據(jù)遠(yuǎn)程開(kāi)放實(shí)驗(yàn)平臺(tái)構(gòu)建研究
      基于自動(dòng)智能分類器的圖書(shū)館亂架圖書(shū)檢測(cè)
      搭建深度學(xué)習(xí)的三級(jí)階梯
      有體驗(yàn)的學(xué)習(xí)才是有意義的學(xué)習(xí)
      電子商務(wù)中基于深度學(xué)習(xí)的虛假交易識(shí)別研究
      利用網(wǎng)絡(luò)技術(shù)促進(jìn)學(xué)生深度學(xué)習(xí)的幾大策略
      考試周刊(2016年94期)2016-12-12 12:15:04
      MOOC與翻轉(zhuǎn)課堂融合的深度學(xué)習(xí)場(chǎng)域建構(gòu)
      大數(shù)據(jù)技術(shù)在反恐怖主義中的應(yīng)用展望
      深度學(xué)習(xí)算法應(yīng)用于巖石圖像處理的可行性研究
      德昌县| 修文县| 巩留县| 凌海市| 苗栗县| 泸州市| 准格尔旗| 淅川县| 临沭县| 滦南县| 博乐市| 喀喇| 金塔县| 昌江| 江安县| 海门市| 平顺县| 三门县| 漾濞| 烟台市| 饶平县| 北宁市| 金湖县| 安溪县| 洛南县| 汤阴县| 平罗县| 蒲城县| 米易县| 巫溪县| 德昌县| 卓资县| 海南省| 白河县| 靖边县| 广水市| 赞皇县| 揭西县| 阳谷县| 阳东县| 日土县|