一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

GRU模型實(shí)戰(zhàn)訓(xùn)練 智能決策更精準(zhǔn)

恩智浦MCU加油站 ? 來源:恩智浦MCU加油站 ? 2024-06-13 09:22 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

上一期文章帶大家認(rèn)識(shí)了一個(gè)名為GRU的新朋友, GRU本身自帶處理時(shí)序數(shù)據(jù)的屬性,特別擅長對(duì)于時(shí)間序列的識(shí)別和檢測(例如音頻、傳感器信號(hào)等)。GRU其實(shí)是RNN模型的一個(gè)衍生形式,巧妙地設(shè)計(jì)了兩個(gè)門控單元:reset門和更新門。reset門負(fù)責(zé)針對(duì)歷史遺留的狀態(tài)進(jìn)行重置,丟棄掉無用信息;更新門負(fù)責(zé)對(duì)歷史狀態(tài)進(jìn)行更新,將新的輸入與歷史數(shù)據(jù)集進(jìn)行整合。通過模型訓(xùn)練,讓模型能夠自動(dòng)調(diào)整這兩個(gè)門控單元的狀態(tài),以期達(dá)到歷史數(shù)據(jù)與最新數(shù)據(jù)和諧共存的目的。

理論知識(shí)掌握了,下面就來看看如何訓(xùn)練一個(gè)GRU模型吧。

訓(xùn)練平臺(tái)選用Keras,請(qǐng)?zhí)崆白孕邪惭bKeras開發(fā)工具。直接上代碼,首先是數(shù)據(jù)導(dǎo)入部分,我們直接使用mnist手寫字體數(shù)據(jù)集:

import numpy as np
import tensorflow as tf
from tensorflow.keras.models import Sequential
from tensorflow.keras.layers import GRU, Dense
from tensorflow.keras.datasets import mnist
from tensorflow.keras.utils import to_categorical
from tensorflow.keras.models import load_model


# 準(zhǔn)備數(shù)據(jù)集
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train = x_train.astype('float32') / 255.0
x_test = x_test.astype('float32') / 255.0
y_train = to_categorical(y_train, 10)
y_test = to_categorical(y_test, 10)

模型構(gòu)建與訓(xùn)練:

# 構(gòu)建GRU模型
model = Sequential()
model.add(GRU(128, input_shape=(28, 28), stateful=False, unroll=False))
model.add(Dense(10, activation='softmax'))


# 編譯模型
model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])


# 模型訓(xùn)練
model.fit(x_train, y_train, batch_size=128, epochs=10, validation_data=(x_test, y_test))

這里,眼尖的伙伴應(yīng)該是注意到了,GRU模型構(gòu)建的時(shí)候,有兩個(gè)參數(shù),分別是stateful以及unroll,這兩個(gè)參數(shù)是什么意思呢?

GRU層的stateful和unroll是兩個(gè)重要的參數(shù),它們對(duì)GRU模型的行為和性能有著重要影響:

stateful參數(shù):默認(rèn)情況下,stateful參數(shù)為False。當(dāng)stateful設(shè)置為True時(shí),表示在處理連續(xù)的數(shù)據(jù)時(shí),GRU層的狀態(tài)會(huì)被保留并傳遞到下一個(gè)時(shí)間步,而不是每個(gè)batch都重置狀態(tài)。這對(duì)于處理時(shí)間序列數(shù)據(jù)時(shí)非常有用,例如在處理長序列時(shí),可以保持模型的狀態(tài)信息,而不是在每個(gè)batch之間重置。需要注意的是,在使用stateful時(shí),您需要手動(dòng)管理狀態(tài)的重置。

unroll參數(shù):默認(rèn)情況下,unroll參數(shù)為False。當(dāng)unroll設(shè)置為True時(shí),表示在計(jì)算時(shí)會(huì)展開RNN的循環(huán),這樣可以提高計(jì)算性能,但會(huì)增加內(nèi)存消耗。通常情況下,對(duì)于較短的序列,unroll設(shè)置為True可以提高計(jì)算速度,但對(duì)于較長的序列,可能會(huì)導(dǎo)致內(nèi)存消耗過大。

通過合理設(shè)置stateful和unroll參數(shù),可以根據(jù)具體的數(shù)據(jù)和模型需求來平衡模型的狀態(tài)管理和計(jì)算性能。而我們這里用到的mnist數(shù)據(jù)集實(shí)際上并不是時(shí)間序列數(shù)據(jù),而只是將其當(dāng)作一個(gè)時(shí)序數(shù)據(jù)集來用。因此,每個(gè)batch之間實(shí)際上是沒有顯示的前后關(guān)系的,不建議使用stateful。而是每一個(gè)batch之后都要將其狀態(tài)清零。即stateful=False。而unroll參數(shù),大家就可以自行測試了。

模型評(píng)估與轉(zhuǎn)換:

# 模型評(píng)估
score = model.evaluate(x_test, y_test, verbose=0)
print('Test loss:', score[0])
print('Test accuracy:', score[1])


# 保存模型
model.save("mnist_gru_model.h5")


# 加載模型并轉(zhuǎn)換
converter = tf.lite.TFLiteConverter.from_keras_model(load_model("mnist_gru_model.h5"))
tflite_model = converter.convert()


# 保存tflite格式模型
with open('mnist_gru_model.tflite', 'wb') as f:
    f.write(tflite_model)



便寫好程序后,運(yùn)行等待訓(xùn)練完畢,可以看到經(jīng)過10個(gè)epoch之后,模型即達(dá)到了98.57%的測試精度:

44c1e04e-291f-11ef-91d2-92fbcf53809c.png

來看看最終的模型樣子,參數(shù)stateful=False,unroll=True:

44e91506-291f-11ef-91d2-92fbcf53809c.png

這里,我們就會(huì)發(fā)現(xiàn),模型的輸入好像被拆分成了很多份,這是因?yàn)槲覀冎付溯斎胧?8*28。第一個(gè)28表示有28個(gè)時(shí)間步,后面的28則表示每一個(gè)時(shí)間步的維度。這里的時(shí)間步,指代的就是歷史的數(shù)據(jù)。

現(xiàn)在,GRU模型訓(xùn)練就全部介紹完畢了,對(duì)于機(jī)器學(xué)習(xí)深度學(xué)習(xí)感興趣的伙伴們,不妨親自動(dòng)手嘗試一下,搭建并訓(xùn)練一個(gè)屬于自己的GRU模型吧!

希望每一位探索者都能在機(jī)器學(xué)習(xí)的道路上不斷前行,收獲滿滿的知識(shí)和成果!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • Gru
    Gru
    +關(guān)注

    關(guān)注

    0

    文章

    12

    瀏覽量

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

    關(guān)注

    66

    文章

    8503

    瀏覽量

    134651
  • rnn
    rnn
    +關(guān)注

    關(guān)注

    0

    文章

    89

    瀏覽量

    7115

原文標(biāo)題:GRU模型實(shí)戰(zhàn)訓(xùn)練,智能決策更精準(zhǔn)!

文章出處:【微信號(hào):NXP_SMART_HARDWARE,微信公眾號(hào):恩智浦MCU加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    動(dòng)態(tài)感知+智能決策,一文解讀 AI 場景組網(wǎng)下的動(dòng)態(tài)智能選路技術(shù)

    人工智能(AI),特別是大規(guī)模模型訓(xùn)練和推理,正以前所未有的方式重塑數(shù)據(jù)中心網(wǎng)絡(luò)。傳統(tǒng)的“盡力而為”網(wǎng)絡(luò)架構(gòu),在處理海量、突發(fā)的AI數(shù)據(jù)洪流時(shí)捉襟見肘。AI模型對(duì)網(wǎng)絡(luò)性能的嚴(yán)苛要求——
    的頭像 發(fā)表于 06-20 15:01 ?620次閱讀
    動(dòng)態(tài)感知+<b class='flag-5'>智能</b><b class='flag-5'>決策</b>,一文解讀 AI 場景組網(wǎng)下的動(dòng)態(tài)<b class='flag-5'>智能</b>選路技術(shù)

    宇視科技梧桐大模型賦能交通治理

    迭代已實(shí)現(xiàn)多場景任務(wù)覆蓋。近期推出的“梧桐”大模型事件檢測和交通抓拍系列產(chǎn)品,將AI能力深度落地于交通治理場景,在算法精度、成像質(zhì)量和分析性能等方面實(shí)現(xiàn)顯著提升,賦能交通治理更精準(zhǔn)、更智能、更高效。
    的頭像 發(fā)表于 05-16 17:23 ?454次閱讀

    訓(xùn)練好的ai模型導(dǎo)入cubemx不成功怎么處理?

    訓(xùn)練好的ai模型導(dǎo)入cubemx不成功咋辦,試了好幾個(gè)模型壓縮了也不行,ram占用過大,有無解決方案?
    發(fā)表于 03-11 07:18

    AI賦能邊緣網(wǎng)關(guān):開啟智能時(shí)代的新藍(lán)海

    功耗的AI邊緣計(jì)算平臺(tái);對(duì)于算法企業(yè),要研發(fā)更輕量化、更精準(zhǔn)的邊緣AI模型;對(duì)于系統(tǒng)集成商,則要構(gòu)建完整的邊緣智能解決方案。這個(gè)萬億級(jí)的新市場,正在等待更多創(chuàng)新者的加入。 在這場AI與邊緣計(jì)算融合的產(chǎn)業(yè)革命
    發(fā)表于 02-15 11:41

    【「大模型啟示錄」閱讀體驗(yàn)】+開啟智能時(shí)代的新鑰匙

    閱讀之旅。在翻開這本書之前,我對(duì)大模型的認(rèn)知僅僅停留在它是一種強(qiáng)大的人工智能技術(shù),可以進(jìn)行自然語言處理、圖像識(shí)別等任務(wù)。我知道像 ChatGPT 這樣的應(yīng)用是基于大模型開發(fā)的,能夠與人類進(jìn)行較為流暢
    發(fā)表于 12-24 13:10

    GPU是如何訓(xùn)練AI大模型

    在AI模型訓(xùn)練過程中,大量的計(jì)算工作集中在矩陣乘法、向量加法和激活函數(shù)等運(yùn)算上。這些運(yùn)算正是GPU所擅長的。接下來,AI部落小編帶您了解GPU是如何訓(xùn)練AI大模型的。
    的頭像 發(fā)表于 12-19 17:54 ?753次閱讀

    【「大模型啟示錄」閱讀體驗(yàn)】如何在客服領(lǐng)域應(yīng)用大模型

    地選擇適合的模型。不同的模型具有不同的特點(diǎn)和優(yōu)勢(shì)。在客服領(lǐng)域,常用的模型包括循環(huán)神經(jīng)網(wǎng)絡(luò)(RNN)、長短時(shí)記憶網(wǎng)絡(luò)(LSTM)、門控循環(huán)單元(GRU)、Transformer等,以及基
    發(fā)表于 12-17 16:53

    什么是大模型、大模型是怎么訓(xùn)練出來的及大模型作用

    ,基礎(chǔ)模型。 ? 大模型是一個(gè)簡稱,完整的叫法,應(yīng)該是“人工智能預(yù)訓(xùn)練模型”。預(yù)訓(xùn)練,是一項(xiàng)技
    的頭像 發(fā)表于 11-25 09:29 ?1.3w次閱讀
    什么是大<b class='flag-5'>模型</b>、大<b class='flag-5'>模型</b>是怎么<b class='flag-5'>訓(xùn)練</b>出來的及大<b class='flag-5'>模型</b>作用

    ADC128S022怎么能更精準(zhǔn)的去采樣?

    問題1 連續(xù)轉(zhuǎn)換模式具體功能 問題2 怎么能更精準(zhǔn)的去采樣
    發(fā)表于 11-15 06:02

    如何訓(xùn)練自己的LLM模型

    訓(xùn)練自己的大型語言模型(LLM)是一個(gè)復(fù)雜且資源密集的過程,涉及到大量的數(shù)據(jù)、計(jì)算資源和專業(yè)知識(shí)。以下是訓(xùn)練LLM模型的一般步驟,以及一些關(guān)鍵考慮因素: 定義目標(biāo)和需求 : 確定你的L
    的頭像 發(fā)表于 11-08 09:30 ?1532次閱讀

    Llama 3 模型訓(xùn)練技巧

    Llama 3 模型,假設(shè)是指一個(gè)先進(jìn)的人工智能模型,可能是一個(gè)虛構(gòu)的或者是一個(gè)特定領(lǐng)域的術(shù)語。 1. 數(shù)據(jù)預(yù)處理 數(shù)據(jù)是任何機(jī)器學(xué)習(xí)模型的基礎(chǔ)。在
    的頭像 發(fā)表于 10-27 14:24 ?879次閱讀

    AI大模型訓(xùn)練數(shù)據(jù)來源分析

    AI大模型訓(xùn)練數(shù)據(jù)來源廣泛且多元化,這些數(shù)據(jù)源對(duì)于構(gòu)建和優(yōu)化AI模型至關(guān)重要。以下是對(duì)AI大模型訓(xùn)練數(shù)據(jù)來源的分析: 一、公開數(shù)據(jù)集 公開
    的頭像 發(fā)表于 10-23 15:32 ?3695次閱讀

    如何訓(xùn)練自己的AI大模型

    訓(xùn)練自己的AI大模型是一個(gè)復(fù)雜且耗時(shí)的過程,涉及多個(gè)關(guān)鍵步驟。以下是一個(gè)詳細(xì)的訓(xùn)練流程: 一、明確需求和目標(biāo) 首先,需要明確自己的需求和目標(biāo)。不同的任務(wù)和應(yīng)用領(lǐng)域需要不同類型的AI模型
    的頭像 發(fā)表于 10-23 15:07 ?5009次閱讀

    直播預(yù)約 |數(shù)據(jù)智能系列講座第4期:預(yù)訓(xùn)練的基礎(chǔ)模型下的持續(xù)學(xué)習(xí)

    鷺島論壇數(shù)據(jù)智能系列講座第4期「預(yù)訓(xùn)練的基礎(chǔ)模型下的持續(xù)學(xué)習(xí)」10月30日(周三)20:00精彩開播期待與您云相聚,共襄學(xué)術(shù)盛宴!|直播信息報(bào)告題目預(yù)訓(xùn)練的基礎(chǔ)
    的頭像 發(fā)表于 10-18 08:09 ?606次閱讀
    直播預(yù)約 |數(shù)據(jù)<b class='flag-5'>智能</b>系列講座第4期:預(yù)<b class='flag-5'>訓(xùn)練</b>的基礎(chǔ)<b class='flag-5'>模型</b>下的持續(xù)學(xué)習(xí)

    谷東科技民航維修智能決策模型榮獲華為昇騰技術(shù)認(rèn)證

    經(jīng)過華為專業(yè)評(píng)測,谷東科技民航維修智能決策模型1.0成功與華為Atlas 800T A2訓(xùn)練服務(wù)器完成并通過了相互兼容性測試認(rèn)證,正式榮獲華為昇騰技術(shù)認(rèn)證,被授予Ascend Com
    的頭像 發(fā)表于 09-30 15:22 ?847次閱讀