神經網路 解題報告

2021-06-16 07:24:02 字數 1749 閱讀 1563

noip2003神經網路

【問題背景】

人工神經網路(artificial neural network)是一種新興的具有自我學習能力的計算系統,在模式識別、函式逼近及貸款風險評估等諸多領域有廣泛的應用。對神經網路的研究一直是當今的熱門方向,蘭蘭同學在自學了一本神經網路的入門書籍後,提出了乙個簡化模型,他希望你能幫助他用程式檢驗這個神經網路模型的實用性。

【問題描述】

在蘭蘭的模型中,神經網路就是一張有向圖,圖中的節點稱為神經元,而且兩個神經

元之間至多有一條邊相連,下圖是乙個神經元的例子:

神經元〔編號為1)

圖中,x1—x3是資訊輸入渠道,y1-y2是資訊輸出渠道,c1表示神經元目前的狀態,

ui是閾值,可視為神經元的乙個內在引數。

神經元按一定的順序排列,構成整個神經網路。在蘭蘭的模型之中,神經網路中的神

經無分為幾層;稱為輸入層、輸出層,和若干個中間層。每層神經元只向下一層的神經元

輸出資訊,只從上一層神經元接受資訊。下圖是乙個簡單的三層神經網路的例子。

蘭蘭規定,ci服從公式:(其中n是網路中所有神經元的數目)

公式中的wji(可能為負值)表示連線j號神經元和 i號神經元的邊的權值。當 ci大於0時,該神經元處於興奮狀態,否則就處於平靜狀態。當神經元處於興奮狀態時,下一秒

它會向其他神經元傳送訊號,訊號的強度為ci。

如此.在輸入層神經元被激發之後,整個網路系統就在資訊傳輸的推動下進行運作。

現在,給定乙個神經網路,及當前輸入層神經元的狀態(ci),要求你的程式運算出最後網

絡輸出層的狀態。

第一行是兩個整數n(1≤n≤200)和p。接下來n行,每行兩個整數,第i+1行是神經元i最初狀態和其閾值(ui),非輸入層的神經元開始時狀態必然為0。再下面p行,每行由兩個整數i,j及乙個整數wij,表示連線神經元i、j的邊權值為wij。

包含若干行,每行有兩個整數,分別對應乙個神經元的編號,及其最後的狀

態,兩個整數間以空格分隔。僅輸出最後狀態非零的輸出層神經元狀態,並且按照編號由

小到大順序輸出!

若輸出層的神經元最後狀態均為 0,則輸出 null。

考察語文能力和rp水平。因為題目說明講得有錯。

分析出模型來是一道水題。就是拓撲排序,要滿足c值大於0,就可以取出來,然後對子節點的入度減一。

提交了三次

題目沒說清楚,因為起始節點不能減閥值,輸出層c值應大於0才能輸出,還有範圍是500而不是300

改了之後就ac

#include using std::cout;

using std::cin;

long map[502][502];

long rudu[502];

long chudu[502];

long p;long n;

long u[502];

long c[502];

long stack[502];

bool chushi[502];

long top = 0;

bool used[502];

const long oo = 0x7fff0000;

int main()

for (long i=1;i-oo&&rudu[i]>0)

}c[now] = 0;

} bool nul = true;

for (long i=1;i0&&chudu[i]==0)

}if (nul)

return 0;

}

神經網路 卷積神經網路

這篇卷積神經網路是前面介紹的多層神經網路的進一步深入,它將深度學習的思想引入到了神經網路當中,通過卷積運算來由淺入深的提取影象的不同層次的特徵,而利用神經網路的訓練過程讓整個網路自動調節卷積核的引數,從而無監督的產生了最適合的分類特徵。這個概括可能有點抽象,我盡量在下面描述細緻一些,但如果要更深入了...

神經網路 卷積神經網路

1.卷積神經網路概覽 來自吳恩達課上一張,通過對應位置相乘求和,我們從左邊矩陣得到了右邊矩陣,邊緣是白色寬條,當畫素大一些時候,邊緣就會變細。觀察卷積核,左邊一列權重高,右邊一列權重低。輸入,左邊的部分明亮,右邊的部分灰暗。這個學到的邊緣是權重大的寬條 都是30 表示是由亮向暗過渡,下面這個圖左邊暗...

神經網路簡介 多層神經網路

如上圖所示,該神經網路有三層。我們標記第一層 也就是輸入層 為a 1 第一層與第二層連線權重為w 1 然後第一層輸入與第一層權重的線性和為z 1 第一層神經元個數為n 1 並依次標記剩餘網路層。可以看出,存在 z l j i 1 n l a l i w l i,j a l w l j a l 1 f...