999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于K210開(kāi)發(fā)板的卷積神經(jīng)網(wǎng)絡(luò)教學(xué)設(shè)計(jì)*

2022-06-25 17:52:06穆明
中國(guó)教育技術(shù)裝備 2022年17期
關(guān)鍵詞:機(jī)器學(xué)習(xí)人工智能

摘? 要? 以人工智能課程中的卷積神經(jīng)網(wǎng)絡(luò)算法為例,設(shè)計(jì)基于人工智能開(kāi)發(fā)板的應(yīng)用案例進(jìn)行實(shí)驗(yàn)教學(xué),在幫助學(xué)生掌握算法理論的同時(shí),有效培養(yǎng)其工程實(shí)踐能力。

關(guān)鍵詞? 人工智能;卷積神經(jīng)網(wǎng)絡(luò);K210開(kāi)發(fā)板;機(jī)器學(xué)習(xí);邊緣智能

中圖分類號(hào):G633.67? ? 文獻(xiàn)標(biāo)識(shí)碼:B

文章編號(hào):1671-489X(2022)17-0031-03

0? 引言

目前,人工智能課程教學(xué)已在中小學(xué)普遍實(shí)施,因課程專業(yè)理論體系涉及數(shù)學(xué)、計(jì)算機(jī)軟硬件等課程基礎(chǔ),給課程的有效落地實(shí)施帶來(lái)一定難度。日常教學(xué)如單純等同于一般計(jì)算機(jī)語(yǔ)言教學(xué),則會(huì)使學(xué)生感覺(jué)枯燥乏味;在教學(xué)實(shí)踐中如恰當(dāng)引入開(kāi)源硬件單片機(jī)實(shí)驗(yàn)教學(xué),則會(huì)使課程實(shí)施達(dá)到事半功倍的效果。機(jī)器學(xué)習(xí)系統(tǒng)的訓(xùn)練通常在電源充足和計(jì)算性能強(qiáng)勁的遠(yuǎn)程服務(wù)器中及云端進(jìn)行,當(dāng)訓(xùn)練完成后,機(jī)器學(xué)習(xí)系統(tǒng)就可以依據(jù)經(jīng)驗(yàn)自動(dòng)分析新的數(shù)據(jù)即推演。機(jī)器學(xué)習(xí)系統(tǒng)的推演過(guò)程通常在本地即在邊緣設(shè)備完成。為此,為增強(qiáng)機(jī)器學(xué)習(xí)課程教學(xué)實(shí)效,突出工程實(shí)踐性教學(xué),教學(xué)中在通俗講解機(jī)器學(xué)習(xí)課程算法基礎(chǔ)和模型實(shí)現(xiàn)的基礎(chǔ)上,增設(shè)邊緣智能實(shí)驗(yàn)的教學(xué)設(shè)計(jì)環(huán)節(jié),從而極大對(duì)提高學(xué)生學(xué)習(xí)的興趣和課堂教學(xué)質(zhì)量。以下從經(jīng)典的深度學(xué)習(xí)模型卷積神經(jīng)網(wǎng)絡(luò)算法分析入手,基于K210開(kāi)發(fā)板進(jìn)行邊緣智能實(shí)驗(yàn)設(shè)計(jì)。

1? 卷積神經(jīng)網(wǎng)絡(luò)算法分析

通常數(shù)學(xué)卷積的卷積核需要翻轉(zhuǎn),而卷積神經(jīng)網(wǎng)絡(luò)的卷積是提取圖像特征進(jìn)行加權(quán)求和,不翻轉(zhuǎn),稱為互相關(guān),也稱為不翻轉(zhuǎn)卷積,其卷積核是根據(jù)數(shù)據(jù)訓(xùn)練學(xué)習(xí)的參數(shù),不是給定的,無(wú)論翻轉(zhuǎn)與否,對(duì)應(yīng)的都是待學(xué)習(xí)的未知參數(shù)。卷積神經(jīng)網(wǎng)絡(luò)(CNN)與全連接神經(jīng)網(wǎng)絡(luò)(DNN)都屬于前饋神經(jīng)網(wǎng)絡(luò),其正向傳播的算法原理大致相同,整個(gè)網(wǎng)絡(luò)可看作一個(gè)復(fù)合函數(shù)。按照現(xiàn)有經(jīng)典著作講解卷積神經(jīng)網(wǎng)絡(luò)計(jì)算損失函數(shù)關(guān)于權(quán)重參數(shù)梯度的常規(guī)算法非常煩瑣。為此,借鑒計(jì)算機(jī)進(jìn)行矩陣運(yùn)算轉(zhuǎn)為向量運(yùn)算這一思想,將卷積核和卷積層矩陣平鋪拼接為向量形式,就得到類似全連接神經(jīng)網(wǎng)絡(luò)的前向傳播公式,相應(yīng)的反向傳播求導(dǎo)就可以簡(jiǎn)化。

1.1? 卷積圖像轉(zhuǎn)為列向量(求傳播誤差)

1.1.1? 前向傳播

將待卷積圖像矩陣(按行向量?jī)?yōu)先)轉(zhuǎn)為列向量X(活性值)、卷積核W(按行向量?jī)?yōu)先)拼接為行向量(與待卷積圖像矩陣元素不相關(guān)的對(duì)應(yīng)位置處以0為間隔拼接),以卷積子圖像數(shù)為矩陣行數(shù)轉(zhuǎn)換成新矩陣A,由矩陣相乘再加偏置向量b得到卷積后列向量Y(凈活性值),等價(jià)于卷積圖像與卷積核W做互相關(guān)運(yùn)算(特稱為正向卷積,為窄卷積)。卷積神經(jīng)網(wǎng)絡(luò)l層的前向傳播公式變?yōu)椋篩=AXl+b,Xl=f(Yl-1)。

1.1.2? 反向傳播

卷積操作通過(guò)仿射變換(Y=AX)可實(shí)現(xiàn)由高維特征到低維特征的轉(zhuǎn)換,也可以轉(zhuǎn)置A實(shí)現(xiàn)低維到高維的反向映射。如果對(duì)上述卷積核經(jīng)鋪開(kāi)拼接得到的矩陣A進(jìn)行轉(zhuǎn)置,然后與低維輸入向量Y做矩陣乘法即反向映射,得到高維輸出向量X,等價(jià)于卷積核W與正向卷積的輸出圖像做數(shù)學(xué)卷積運(yùn)算(稱為轉(zhuǎn)置卷積或反卷積,為寬卷積)[1]。

1.2? 卷積核轉(zhuǎn)為列向量(求參數(shù)梯度)

1.2.1? 前向傳播? 將卷積核矩陣所有行拼接為一個(gè)列向量(W),將輸入圖像X每個(gè)卷積子圖像(按照行優(yōu)先)拼接為一個(gè)行向量,所有卷積子圖像形成的行向量按原定的卷積順序組合形成矩陣A(矩陣行數(shù)為卷積子圖像數(shù)),前向傳播公式等價(jià)為:Y=AW+b。

1.2.2? 反向傳播

同樣可以借助轉(zhuǎn)置卷積,此轉(zhuǎn)置卷積等價(jià)于輸入卷積圖像與卷積輸出圖像做互相關(guān)運(yùn)算(為窄卷積)。根據(jù)卷積核或卷積圖像轉(zhuǎn)為列向量的前向傳播公式對(duì)偏置向量求導(dǎo),為便于與對(duì)W求偏導(dǎo)數(shù)相統(tǒng)一,借助將卷積核轉(zhuǎn)為列向量的前向傳播公式Y(jié)=AW+b求導(dǎo)。

1.3? 匯聚層求導(dǎo)

因匯聚層為下采樣操作,當(dāng)?shù)趌層為匯聚層時(shí),采取上采樣由l層的損失函數(shù)誤差得到第l-1層的損失函數(shù)誤差。上采樣之后,由于匯聚是一個(gè)線性函數(shù)的過(guò)程,因此要求針對(duì)上一層的Yl-1的梯度,中間只有一個(gè)上一層的Yl-1到Xl的激活函數(shù)。匯聚層下采樣有平均匯聚和最大匯聚兩種方法。

2? 邊緣智能實(shí)驗(yàn)設(shè)計(jì)

剖析卷積神經(jīng)網(wǎng)絡(luò)模型算法原理后,便可以借助TensorFlow等深度學(xué)習(xí)開(kāi)發(fā)框架進(jìn)行模型訓(xùn)練和測(cè)試,通常將由TensorFlow保存的HDF5模型轉(zhuǎn)換為TFLite格式,在正式進(jìn)入邊緣智能實(shí)驗(yàn)之前,由于NNC模型量化工具對(duì)TFLite格式支持較好,故需在電腦上將訓(xùn)練完成的模型轉(zhuǎn)換為TFLite格式后再進(jìn)行量化,生成KModel格式模型(由NNCase

工具轉(zhuǎn)換)供K210單片機(jī)調(diào)用。K210芯片架構(gòu)包含一個(gè)自研的神經(jīng)網(wǎng)絡(luò)硬件加速器KPU以便進(jìn)行卷積神經(jīng)網(wǎng)絡(luò)運(yùn)算。KPU支持主流訓(xùn)練框架按照特定限制規(guī)則訓(xùn)練出來(lái)的定點(diǎn)化模型。教學(xué)實(shí)踐中以亞博智能K210開(kāi)發(fā)板為載體,下載已在外部設(shè)備訓(xùn)練好的普適模型,基于開(kāi)發(fā)板自帶傳感設(shè)備采集的數(shù)據(jù)進(jìn)行測(cè)試預(yù)測(cè),從而實(shí)現(xiàn)一定功能。以下以亞博智能K210開(kāi)發(fā)板(技術(shù)資料參考亞博智能K210開(kāi)發(fā)板套件)為例,搭建基于C(亞博智能K210開(kāi)發(fā)板隨機(jī)資料只提供C語(yǔ)言學(xué)習(xí)代碼)和Python兩種嵌入式開(kāi)發(fā)環(huán)境系統(tǒng),調(diào)用卷積神經(jīng)網(wǎng)絡(luò)模型對(duì)人臉識(shí)別案例進(jìn)行實(shí)驗(yàn)設(shè)計(jì)教學(xué)。

2.1? 基于C語(yǔ)言的環(huán)境搭建

人臉檢測(cè)技術(shù),一是判斷圖片中是否包含人臉區(qū)域;二是如果圖片中存在人臉,將人臉的位置預(yù)測(cè)出來(lái)。推薦在Win10系統(tǒng)下通過(guò)VSCode編輯器搭建K210的開(kāi)發(fā)環(huán)境。

2.1.1? 人臉檢測(cè)技術(shù)代碼流程及代碼

1)系統(tǒng)內(nèi)部初始化:①系統(tǒng)時(shí)鐘初始化;②串口初始化;③硬件引腳初始化;④IO電壓設(shè)置; ⑤系統(tǒng)中斷初始化;⑥Flash初始化。

2)外部硬件初始化:①LCD初始化;②OV2640(攝像頭)初始化。

3)人臉檢測(cè)初始化:①模型加載;②人臉檢測(cè)層配置初始化。

4)人臉檢測(cè)業(yè)務(wù)邏輯層:①等待攝像頭采集完成;②傳入攝像頭采集的圖像到KPU運(yùn)行模型;③等待KPU處理完成;④獲取KPU最終處理的結(jié)果;⑤把KPU處理的結(jié)果帶入?yún)^(qū)域?qū)佑?jì)算最終

位置;⑥根據(jù)獲取的人臉個(gè)數(shù)進(jìn)行逐一標(biāo)記。

核心代碼:

int main(void)

{

sysclock_init();? ?/*系統(tǒng)時(shí)鐘初始化*/

uarths_init();? ? ?/*串口初始化*/

hardware_init();? ?/*硬件引腳初始化*/

io_set_power();? ? /*設(shè)置IO口電壓*/

plic_init();? ? ? ?/*系統(tǒng)中斷初始化*/

printf(“flash init\n”);

w25qxx_init(3, 0);? ? ? ? ? ?/*Flash init*/

w25qxx_enable_quad_mode();? ?/*Flash 四

倍模式開(kāi)啟*/

/*KModel加載方式:1.分開(kāi)燒錄模式;

2.直接與代碼合并編譯*/

#if LOAD_KMODEL_FROM_FLASH

model_data = (uint8_t*)malloc(KMODEL_

SIZE + 255);

uint8_t *model_data_align(uint8_t*)(((uintptr_t)model_data+255)&(~255));

#else

uint8_t *model_data_align = model_data;

#endif

ov2640_init();

/*加載KModel,需要與NNCase配合使用*/

if (kpu_load_kmodel(&face_detect_task, model_

data_align) != 0)

{

printf(“\nmodel init error\n”);

while (1);

}

2.1.2? 代碼編譯? 把K210隨機(jī)資料中的 face_

detection文件夾復(fù)制到SDK中的src目錄下,然后進(jìn)入build目錄,刪除build目錄下所有文件,最后運(yùn)行以下命令編譯:

cmake .. -DPROJ=face_detection -G “MinGW Makefiles”?make

編譯完成后在build文件夾下生成對(duì)應(yīng)文件名的待燒寫(xiě)二進(jìn)制文件。

2.1.3? 代碼燒錄

打開(kāi)kflash下載程序?qū)⑸傻拇裏龑?xiě)二進(jìn)制文件燒錄到K210開(kāi)發(fā)板。

2.2? 基于MicroPython的環(huán)境搭建

下載MaixPy固件到K210開(kāi)發(fā)板(相當(dāng)于給開(kāi)發(fā)板燒錄系統(tǒng)),MaixPy使用MicroPython腳本語(yǔ)法[2],不像C語(yǔ)言一樣需要編譯,要使用MaixPy IDE,開(kāi)發(fā)板固件必須是V0.3.1版本以上,否則MaixPy IDE連接不上開(kāi)發(fā)板,使用前盡量都更新到最新版以保障能正常使用。通常一個(gè)固件文件中至少有四個(gè)文件,以“maixpy_v0.5.0_31_gd3e71c0”固件為例,具體說(shuō)明如下。

1)eif_maixpy_v0.5.0_31_gd3e71c0.7z:普通用戶不用關(guān)心,用于死機(jī)調(diào)試。

2)maixpy_v0.5.0_31_gd3e71c0_m5stickv:M5STACK環(huán)境。

3)maixpy_v0.5.0_31_gd3e71c0_minimum:MaixPy固件最小集合,不支持MaixPy IDE,不包含OpenMV的相關(guān)算法。

4)maixpy_v0.5.0_31_gd3e71c0.bin:完整版的MaixPy固件。

正常使用的完整版MaixPy固件,搭建步驟如下所示。

1)確定開(kāi)發(fā)板:工具—選擇開(kāi)發(fā)板—kendryte?KD233。

2)安裝驅(qū)動(dòng),選擇端口:工具—打開(kāi)終端—串行端口—COM3—115200。

3)連接:圖標(biāo)綠色變紅色表示已連接。

主要代碼為:

import sensor

import image

import lcd

import KPU as kpu

import time

from Maix import FPIOA, GPIO

import gc

from fpioa_manager import fm

from board import board_info

import utime

task_fd = kpu.load(0x300000)

task_ld = kpu.load(0x400000)

task_fe = kpu.load(0x500000)

lcd.init()

sensor.reset()

sensor.set_pixformat(sensor.RGB565)

sensor.set_framesize(sensor.QVGA)

sensor.set_hmirror(0)

sensor.set_vflip(0)

sensor.skip_frames()? ? /*跳過(guò)一些幀數(shù),因?yàn)閿z像頭啟動(dòng)時(shí)圖像沒(méi)穩(wěn)定*/

lcd.init(invert=1)

sensor.run(1)

3? 結(jié)束語(yǔ)

在機(jī)器學(xué)習(xí)課程中引入邊緣智能實(shí)驗(yàn)教學(xué),可以彌補(bǔ)教學(xué)實(shí)施“重軟輕硬”(即重視基礎(chǔ)理論教學(xué),忽視實(shí)踐應(yīng)用教學(xué))的不足,引導(dǎo)一線教師重視邊緣智能實(shí)踐應(yīng)用教學(xué),有效提升人工智能課程的教學(xué)效益,為培養(yǎng)軟硬能力兼?zhèn)涞募夹g(shù)應(yīng)用人才奠定基礎(chǔ)。

參考文獻(xiàn)

[1] 邱錫鵬.神經(jīng)網(wǎng)絡(luò)與深度學(xué)習(xí)[M].北京:機(jī)械工業(yè)出版社,2020:115-129.

[2] 邵子揚(yáng).MicroPython入門指南[M].北京:電子工業(yè)出版社,2018:6-22.

*項(xiàng)目來(lái)源:2021年度山東省教育教學(xué)研究一般課題“中小學(xué)人工智能課程內(nèi)容設(shè)計(jì)與實(shí)施范例研究”(課題編號(hào):2021JXY383)。

作者:穆明,淄博市基礎(chǔ)教育研究院,高級(jí)教師,研究方向?yàn)闄C(jī)器學(xué)習(xí)算法(255033)。

猜你喜歡
機(jī)器學(xué)習(xí)人工智能
我校新增“人工智能”本科專業(yè)
2019:人工智能
商界(2019年12期)2019-01-03 06:59:05
人工智能與就業(yè)
數(shù)讀人工智能
小康(2017年16期)2017-06-07 09:00:59
基于詞典與機(jī)器學(xué)習(xí)的中文微博情感分析
基于網(wǎng)絡(luò)搜索數(shù)據(jù)的平遙旅游客流量預(yù)測(cè)分析
前綴字母為特征在維吾爾語(yǔ)文本情感分類中的研究
基于支持向量機(jī)的金融數(shù)據(jù)分析研究
下一幕,人工智能!
下一幕,人工智能!
主站蜘蛛池模板: 永久免费无码成人网站| 国产菊爆视频在线观看| 不卡无码h在线观看| 国产在线观看99| 亚洲国产精品国自产拍A| 美女裸体18禁网站| 在线免费亚洲无码视频| av色爱 天堂网| 欧美综合中文字幕久久| 97在线免费| 亚洲精品爱草草视频在线| 免费AV在线播放观看18禁强制| 欧美视频在线第一页| 欧美日韩导航| 成人免费视频一区| 亚洲系列无码专区偷窥无码| 亚洲欧美国产视频| 在线日韩一区二区| 久久免费观看视频| 久久久久人妻一区精品色奶水 | 久久久久久久久久国产精品| YW尤物AV无码国产在线观看| 色婷婷丁香| 女人18毛片一级毛片在线 | 成人无码一区二区三区视频在线观看 | 久久精品人人做人人综合试看| a级毛片免费网站| 99精品视频在线观看免费播放| 国产一区二区免费播放| AV不卡在线永久免费观看| 久久久久国产一区二区| 久久久久亚洲AV成人人电影软件| 最新日韩AV网址在线观看| 日本高清视频在线www色| 亚洲天堂精品在线观看| 色老头综合网| 国产成人免费观看在线视频| 国产色图在线观看| 3344在线观看无码| 日韩福利在线观看| 日韩精品资源| 婷婷综合缴情亚洲五月伊| 992tv国产人成在线观看| 国产精品一老牛影视频| 美女被操黄色视频网站| 国产三级精品三级在线观看| 国产日韩欧美成人| 久久久91人妻无码精品蜜桃HD | 视频二区亚洲精品| 欧美性精品不卡在线观看| 欧美笫一页| 亚洲精品手机在线| 国产精品第一区| 国产免费好大好硬视频| 精品久久高清| 婷婷开心中文字幕| 一级毛片高清| 动漫精品中文字幕无码| 国产成人久久综合777777麻豆| 欧美区国产区| 亚洲国产精品一区二区第一页免| 午夜色综合| 国产精品漂亮美女在线观看| 这里只有精品免费视频| 97视频精品全国免费观看 | 国产精品九九视频| 日韩在线成年视频人网站观看| 伊人成人在线视频| 国产高清无码麻豆精品| 国产成人亚洲精品蜜芽影院| 欧美成人区| 日韩在线永久免费播放| 国产一级做美女做受视频| 精品国产99久久| 久久综合亚洲色一区二区三区| 不卡无码网| 97精品国产高清久久久久蜜芽| 国产成人精品在线| 国产精品永久在线| 草草线在成年免费视频2| 国产一区二区网站| 精品撒尿视频一区二区三区|