色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

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

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

3天內不再提示

LSTM隱層神經元結構分析,及應用的程序詳細概述

C語言專家集中營 ? 來源:未知 ? 作者:易水寒 ? 2018-07-29 10:06 ? 次閱讀

C語言LSTM隱層神經元結構:

LSTM隱層神經元詳細結構:

//讓程序自己學會是否需要進位,從而學會加法#include "iostream"#include "math.h"#include "stdlib.h"#include "time.h"#include "vector"#include "assert.h"using namespace std;#define innode 2 //輸入結點數,將輸入2個加數#define hidenode 26 //隱藏結點數,存儲“攜帶位”#define outnode 1 //輸出結點數,將輸出一個預測數字#define alpha 0.1 //學習速率#define binary_dim 8 //二進制數的最大長度#define randval(high) ( (double)rand() / RAND_MAX * high )#define uniform_plus_minus_one ( (double)( 2.0 * rand() ) / ((double)RAND_MAX + 1.0) - 1.0 ) //均勻隨機分布int largest_number = ( pow(2, binary_dim) ); //跟二進制最大長度對應的可以表示的最大十進制數//激活函數double sigmoid(double x) { return 1.0 / (1.0 + exp(-x)); }//激活函數的導數,y為激活函數值double dsigmoid(double y) { return y * (1.0 - y); } //tanh的導數,y為tanh值double dtanh(double y) { y = tanh(y); return 1.0 - y * y; }//將一個10進制整數轉換為2進制數void int2binary(int n, int *arr) { int i = 0; while(n) { arr[i++] = n % 2; n /= 2; } while(i < binary_dim) ? ? ? ?arr[i++] = 0; }class RNN {public: ? ?RNN(); ? ?virtual ~RNN(); ? ?void train();public: ? ?double W_I[innode][hidenode]; ? ? //連接輸入與隱含層單元中輸入門的權值矩陣 ? ?double U_I[hidenode][hidenode]; ? //連接上一隱層輸出與本隱含層單元中輸入門的權值矩陣 ? ?double W_F[innode][hidenode]; ? ? //連接輸入與隱含層單元中遺忘門的權值矩陣 ? ?double U_F[hidenode][hidenode]; ? //連接上一隱含層與本隱含層單元中遺忘門的權值矩陣 ? ?double W_O[innode][hidenode]; ? ? //連接輸入與隱含層單元中遺忘門的權值矩陣 ? ?double U_O[hidenode][hidenode]; ? //連接上一隱含層與現在時刻的隱含層的權值矩陣 ? ?double W_G[innode][hidenode]; ? ? //用于產生新記憶的權值矩陣 ? ?double U_G[hidenode][hidenode]; ? //用于產生新記憶的權值矩陣 ? ?double W_out[hidenode][outnode]; ?//連接隱層與輸出層的權值矩陣 ? ?double *x; ? ? ? ? ? ? //layer 0 輸出值,由輸入向量直接設定 ? ?//double *layer_1; ? ? //layer 1 輸出值 ? ?double *y; ? ? ? ? ? ? //layer 2 輸出值};void winit(double w[], int n) //權值初始化{ ? ?for(int i=0; i I_vector; //輸入門 vector F_vector; //遺忘門 vector O_vector; //輸出門 vector G_vector; //新記憶 vector S_vector; //狀態值 vector h_vector; //輸出值 vector y_delta; //保存誤差關于輸出層的偏導 for(epoch=0; epoch<11000; epoch++) ?//訓練次數 ? ?{ ? ? ? ?double e = 0.0; ?//誤差 ? ? ? ?int predict[binary_dim]; ? ? ? ? ? ? ? //保存每次生成的預測值 ? ? ? ?memset(predict, 0, sizeof(predict)); ? ? ? ?int a_int = (int)randval(largest_number/2.0); ?//隨機生成一個加數 a ? ? ? ?int a[binary_dim]; ? ? ? ?int2binary(a_int, a); ? ? ? ? ? ? ? ? //轉為二進制數 ? ? ? ?int b_int = (int)randval(largest_number/2.0); ?//隨機生成另一個加數 b ? ? ? ?int b[binary_dim]; ? ? ? ?int2binary(b_int, b); ? ? ? ? ? ? ? ? //轉為二進制數 ? ? ? ?int c_int = a_int + b_int; ? ? ? ? ? ?//真實的和 c ? ? ? ?int c[binary_dim]; ? ? ? ?int2binary(c_int, c); ? ? ? ? ? ? ? ? //轉為二進制數 ? ? ? ?//在0時刻是沒有之前的隱含層的,所以初始化一個全為0的 ? ? ? ?double *S = new double[hidenode]; ? ? //狀態值 ? ? ? ?double *h = new double[hidenode]; ? ? //輸出值 ? ? ? ?for(i=0; i=0 ; p--) { x[0] = a[p]; x[1] = b[p]; //當前隱藏層 double *in_gate = I_vector[p]; //輸入門 double *out_gate = O_vector[p]; //輸出門 double *forget_gate = F_vector[p]; //遺忘門 double *g_gate = G_vector[p]; //新記憶 double *state = S_vector[p+1]; //狀態值 double *h = h_vector[p+1]; //隱層輸出值 //前一個隱藏層 double *h_pre = h_vector[p]; double *state_pre = S_vector[p]; for(k=0; k=0; k--) cout << predict[k]; ? ? ? ? ? ?cout << endl; ? ? ? ? ? ?cout << "true:" ; ? ? ? ? ? ?for(k=binary_dim-1; k>=0; k--) cout << c[k]; ? ? ? ? ? ?cout << endl; ? ? ? ? ? ?int out = 0; ? ? ? ? ? ?for(k=binary_dim-1; k>=0; k--) out += predict[k] * pow(2, k); cout << a_int << " + " << b_int << " = " << out << endl << endl; ? ? ? ?} ? ? ? ?for(i=0; i

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7614

    瀏覽量

    137420
  • 程序
    +關注

    關注

    117

    文章

    3795

    瀏覽量

    81292
  • 神經元
    +關注

    關注

    1

    文章

    363

    瀏覽量

    18489

原文標題:LSTM神經網絡的詳細推導與c++實現

文章出處:【微信號:C_Expert,微信公眾號:C語言專家集中營】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    神經網絡教程(李亞非)

    神經元  第3章 EBP網絡(反向傳播算法)  3.1 含的前饋網絡的學習規則  3.2 Sigmoid激發函數下的BP算法  3.3 BP網絡的訓練與測試  3.4 BP算法的改進  3.5 多層
    發表于 03-20 11:32

    【案例分享】基于BP算法的前饋神經網絡

    期望的輸出。BP神經網絡算法推導(更新權重和偏倚):從上面推導可以發現:對于任意從神經元i(輸出神經元/
    發表于 07-21 04:00

    【案例分享】ART神經網絡與SOM神經網絡

    的拓撲結構,即將高位空間中相似的樣本點映射到網絡輸出中的鄰近神經元。SOM神經網絡中的輸出神經元
    發表于 07-21 04:30

    模糊控制與神經網絡的資料總結

    如圖所示拓撲結構的單前饋網絡,一般稱為三前饋網或三感知器,即:輸入、中間層(也稱
    發表于 03-01 10:09 ?17次下載
    模糊控制與<b class='flag-5'>神經</b>網絡的資料總結

    神經元 C 參考指南

    神經元 C 參考指南
    發表于 07-04 20:48 ?0次下載
    <b class='flag-5'>神經元</b> C 參考指南

    神經元的信息傳遞方式是什么

    神經元神經系統的基本單位,它們通過電信號和化學信號的方式進行信息傳遞。 神經元的信息傳遞方式 神經元結構和功能
    的頭像 發表于 07-03 11:27 ?1447次閱讀

    神經元的基本作用是什么信息

    神經元神經系統的基本功能單位,它們在大腦、脊髓和周圍神經系統中發揮著至關重要的作用。神經元的基本作用是接收、處理和傳遞信息。本文將詳細介紹
    的頭像 發表于 07-03 11:29 ?1041次閱讀

    神經元結構及功能是什么

    神經元神經系統的基本結構和功能單位,它們通過電信號和化學信號進行信息傳遞和處理。神經元結構和功能非常復雜,涉及到許多不同的方面。 一、
    的頭像 發表于 07-03 11:33 ?1491次閱讀

    神經元的分類包括哪些

    )是神經系統的基本功能單位,是一種高度分化的細胞,具有接收、傳遞和處理信息的能力。神經元通過電信號和化學信號進行信息傳遞和處理,是神經系統中最重要的細胞類型。 1.2 神經元
    的頭像 發表于 07-03 11:36 ?1438次閱讀

    神經網絡三結構的作用是什么

    網絡的三結構是最基本的神經網絡結構,包括輸入、隱藏和輸出。下面介紹
    的頭像 發表于 07-11 11:03 ?1042次閱讀

    人工智能神經元的基本結構

    ,旨在創建能夠執行通常需要人類智能的任務的計算機系統。神經元是構成人腦的基本單元,也是人工智能研究的基礎。本文將詳細介紹人工智能神經元的基本結構
    的頭像 發表于 07-11 11:19 ?1484次閱讀

    生物神經元模型包含哪些元素

    生物神經元模型是神經科學和人工智能領域中的一個重要研究方向,它旨在模擬生物神經元的工作原理,以實現對生物神經系統的理解和模擬。 神經元的基本
    的頭像 發表于 07-11 11:21 ?1152次閱讀

    人工神經元模型的基本構成要素

    ,它能夠接收、處理和傳遞信息。在人工神經元模型中,神經元的基本結構包括輸入、輸出和激活函數。 1.1 輸入 神經元的輸入是一組數值,通常用向量表示。這些數值可以是特征值、像素值等,它們
    的頭像 發表于 07-11 11:28 ?1444次閱讀

    神經元是什么?神經元神經系統中的作用

    神經元,又稱神經細胞,是神經系統的基本結構和功能單位。它們負責接收、整合、傳導和傳遞信息,從而參與和調控神經系統的各種活動。
    的頭像 發表于 07-12 11:49 ?1538次閱讀
    <b class='flag-5'>神經元</b>是什么?<b class='flag-5'>神經元</b>在<b class='flag-5'>神經</b>系統中的作用

    LSTM神經網絡的結構與工作機制

    網絡的結構與工作機制的介紹: 一、LSTM神經網絡的結構 LSTM神經網絡的
    的頭像 發表于 11-13 10:05 ?546次閱讀
    主站蜘蛛池模板: 麻生希快播在线 | 美目盼兮amy198281 | 黄页网站免费视频大全9 | 99热精品在线视频观看 | 97人妻AV天天澡夜夜爽 | 含羞草免费完整视频在线观看 | 全免费A敌肛交毛片免费懂色AV | 动漫H片在线播放免费高清 动漫AV纯肉无码AV电影网 | 色列少女漫画 | 欧美日韩国产高清综合二区 | 国产成人精品精品欧美 | 四虎永久精品视频在线 | 人妻少妇偷人精品无码洋洋AV | 老太婆风流特黄一级 | 4455永久在线毛片观看 | 久久99精品国产免费观看 | 姑娘日本大全免费观看版中文翻译 | 美女拉开腿让男生桶到爽 | 国产一区二区青青精品久久 | 欧美日韩免费看 | 日韩人妻少妇一区二区三区 | 真人做受120分钟免费看 | 国语精彩对白2021 | 青青视频 在线 在线播放 | 99久久99久久精品 | 亚洲天堂一区二区三区 | 好硬好湿好大再深一点动态图 | 91精品国产品国语在线不卡 | 久久99热在线观看7 久久99热狠狠色一区二区 | 在线免费福利 | 男女免费观看在线爽爽爽视频 | 色婷婷国产精品视频一区二区 | 国产女人91精品嗷嗷嗷嗷 | 又黄又猛又爽大片免费 | 菠萝视频高清版在线观看 | 亚洲精品高清在线 | 欧美精品色视频 | 黑人猛挺进小莹的体内视频 | 国产精品久久久久影院色 | 久久久久综合一本久道 | 精品国产乱码久久久久久人妻 |