chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

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

GRU模型實戰(zhàn)訓練 智能決策更精準

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

掃碼添加小助手

加入工程師交流群

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

理論知識掌握了,下面就來看看如何訓練一個GRU模型吧。

訓練平臺選用Keras,請?zhí)崆白孕邪惭bKeras開發(fā)工具。直接上代碼,首先是數(shù)據(jù)導入部分,我們直接使用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


# 準備數(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)建與訓練:

# 構(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'])


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

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

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

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

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

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

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

# 模型評估
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)



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

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

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

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

這里,我們就會發(fā)現(xiàn),模型的輸入好像被拆分成了很多份,這是因為我們指定了輸入是28*28。第一個28表示有28個時間步,后面的28則表示每一個時間步的維度。這里的時間步,指代的就是歷史的數(shù)據(jù)。

現(xiàn)在,GRU模型訓練就全部介紹完畢了,對于機器學習深度學習感興趣的伙伴們,不妨親自動手嘗試一下,搭建并訓練一個屬于自己的GRU模型吧!

希望每一位探索者都能在機器學習的道路上不斷前行,收獲滿滿的知識和成果!

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

    關(guān)注

    0

    文章

    12

    瀏覽量

    7721
  • 機器學習
    +關(guān)注

    關(guān)注

    66

    文章

    8540

    瀏覽量

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

    關(guān)注

    0

    文章

    91

    瀏覽量

    7292

原文標題:GRU模型實戰(zhàn)訓練,智能決策更精準!

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

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

掃碼添加小助手

加入工程師交流群

    評論

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

    在Ubuntu20.04系統(tǒng)中訓練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗

    本帖欲分享在Ubuntu20.04系統(tǒng)中訓練神經(jīng)網(wǎng)絡(luò)模型的一些經(jīng)驗。我們采用jupyter notebook作為開發(fā)IDE,以TensorFlow2為訓練框架,目標是訓練一個手寫數(shù)字識
    發(fā)表于 10-22 07:03

    無人駕駛:智能決策精準執(zhí)行的融合

    無人駕駛核心操控技術(shù):智能決策精準執(zhí)行的融合 無人駕駛的核心操控系統(tǒng)是車輛實現(xiàn)自主駕駛的“大腦”與“四肢”,其技術(shù)核心在于通過感知、決策、執(zhí)行三大模塊的協(xié)同工作,替代人類駕駛員完成實
    的頭像 發(fā)表于 09-19 14:03 ?440次閱讀

    不僅管設(shè)備,還能管數(shù)據(jù)!智能系統(tǒng)讓運維決策更精準

    智能系統(tǒng)在設(shè)備管理領(lǐng)域的應(yīng)用,為企業(yè)帶來了全方位的價值提升。它不僅實現(xiàn)了對設(shè)備的高效管理,更通過強大的數(shù)據(jù)管理能力,為運維決策提供了精準依據(jù),幫助企業(yè)降低成本、提高生產(chǎn)效率、增強市場競爭力。
    的頭像 發(fā)表于 09-05 10:10 ?568次閱讀
    不僅管設(shè)備,還能管數(shù)據(jù)!<b class='flag-5'>智能</b>系統(tǒng)讓運維<b class='flag-5'>決策</b><b class='flag-5'>更精準</b>

    make sence成的XML文件能上傳到自助訓練模型上嗎?

    make sence成的XML文件能上傳到自助訓練模型上嗎
    發(fā)表于 06-23 07:38

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

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

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

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

    請問如何在imx8mplus上部署和運行YOLOv5訓練模型?

    我正在從事 imx8mplus yocto 項目。我已經(jīng)在自定義數(shù)據(jù)集上的 YOLOv5 上訓練了對象檢測模型。它在 ubuntu 電腦上運行良好?,F(xiàn)在我想在我的 imx8mplus 板上運行該模型
    發(fā)表于 03-25 07:23

    數(shù)據(jù)標注服務(wù)—奠定大模型訓練的數(shù)據(jù)基石

    數(shù)據(jù)標注是大模型訓練過程中不可或缺的基礎(chǔ)環(huán)節(jié),其質(zhì)量直接影響著模型的性能表現(xiàn)。在大模型訓練中,數(shù)據(jù)標注承擔著將原始數(shù)據(jù)轉(zhuǎn)化為機器可理解、可學
    的頭像 發(fā)表于 03-21 10:30 ?2274次閱讀

    訓練好的ai模型導入cubemx不成功怎么處理?

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

    小白學大模型訓練大語言模型的深度指南

    在當今人工智能飛速發(fā)展的時代,大型語言模型(LLMs)正以其強大的語言理解和生成能力,改變著我們的生活和工作方式。在最近的一項研究中,科學家們?yōu)榱松钊肓私馊绾胃咝У?b class='flag-5'>訓練大型語言模型,進
    的頭像 發(fā)表于 03-03 11:51 ?1195次閱讀
    小白學大<b class='flag-5'>模型</b>:<b class='flag-5'>訓練</b>大語言<b class='flag-5'>模型</b>的深度指南

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

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

    騰訊公布大語言模型訓練新專利

    近日,騰訊科技(深圳)有限公司公布了一項名為“大語言模型訓練方法、裝置、計算機設(shè)備及存儲介質(zhì)”的新專利。該專利的公布,標志著騰訊在大語言模型訓練領(lǐng)域取得了新的突破。 據(jù)專利摘要顯示,
    的頭像 發(fā)表于 02-10 09:37 ?691次閱讀

    【「大模型啟示錄」閱讀體驗】+開啟智能時代的新鑰匙

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

    GPU是如何訓練AI大模型

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

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

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