原创 深度學習常用激活函數之— Sigmoid & ReLU & Softmax

1. 激活函數 Rectified Linear Unit(ReLU) - 用於隱層神經元輸出Sigmoid - 用於隱層神經元輸出Softmax - 用於多分類神經網絡輸出Linear - 用於迴歸神經網絡輸出(或二分類問題)   

原创 C/C++堆和棧的區別

堆和棧的區別 1.       管理方式不同 棧,由編譯器自動管理,無需程序員手工控制;堆:產生和釋放由程序員控制。 2.       空間大小不同 棧的空間有限;堆內存可以達到4G,。 3.       能否產生碎片不同 棧不會產生碎片

原创 數組與字符串長度sizeof()、strlen()、string的length()和size()

目錄 一、 數組或字符串的長度 1、sizeof()---求所佔的字節數 (1)、對於整型字符型數組 (2)、對於整型或字符型指針 2、strlen()---字符數組或字符串所佔的字節數 (1)、針對字符數組 (2)、針對字符指針 3

原创 C++ 輸入函數 cin>>、cin.getline()和cin.get()區別

在字符串輸入中,常用到cin,cin.getline()和cin.get()函數。 cin>>通常只能讀取一個單詞。cin.getline()和cin.get()可以讀取固定長度的字符串,含空格等符號。 一、使用cin函數 由於ci

原创 802.11中的幀間間隔(SIFS/PIFS/DIFS)

一、IEEE 802.11標準的MAC子層分爲兩種工作方式:分佈協調功能(DCF)方式和集中協調功能(PCF)方式。1、分佈協調功能(DCF)DCF 方式:(不使用基站)是 MAC 中最基本的介質接入控制機制。DCF 機制基於 CSMA,

原创 五大算法

分治算法 一、基本概念    在計算機科學中,分治法是一種很重要的算法。字面上的解釋是“分而治之”,就是把一個複雜的問題分成兩個或更多的相同或相似的子問題,再把子問題分成更小的子問題……直到最後子問題可以簡單的直接求解,原問題的解即

原创 C++保留小數

本題要求控制小數點後的位數,如果採用 C 語言的 printf 函數來輸出,那麼控制小數點後的位數形式爲“ printf("%*.*f", a);”,如“ printf("%.3f\n",sum);”。如果採用 C++的 cout輸出,

原创 C++中new和malloc的區別

1、new 是c++中的操作符,malloc是c 中的一個函數 2、new 不止是分配內存,而且會調用類的構造函數,同理delete會調用類的析構函數,而malloc則只分配內存,不會進行初始化類成員的工作,同樣free也不會調用析構

原创 單例設計模式

簡介 因爲在設計或開發中,肯定會有這麼一種情況,一個類只能有一個對象被創建,如果有多個對象的話,可能會導致狀態的混亂和不一致。這種情況下,單例模式是最恰當的解決辦法。它有很多種實現方式,各自的特性不相同,使用的情形也不相同。今天要實現的是

原创 C++:堆與棧區別

C++中堆和棧的區別,自由存儲區、全局/靜態存儲區和常量存儲區 文章來自一個論壇裏的回帖,哪個論壇記不得了! 在C++中,內存分成5個區,他們分別是堆、棧、自由存儲區、全局/靜態 存儲區和常量存儲區。 棧,就是那些由編譯器在需要的時候分配

原创 return 0 和return 1的區別

return 0  代表程序正常退出,return 1代表程序異常退出! 使用return 語句可以返回一個變量內的值或一個指針,也可用return0,表示返回爲空。 return   代表調到函數外, return 0代表函數正

原创 設計模式C++實現(4)——單例模式

軟件領域中的設計模式爲開發人員提供了一種使用專家設計經驗的有效途徑。設計模式中運用了面向對象編程語言的重要特性:封裝、繼承、多態,真正領悟設計模式的精髓是可能一個漫長的過程,需要大量實踐經驗的積累。最近看設計模式的書,對於每個模式,用C

原创 理解dropout

開篇明義,dropout是指在深度學習網絡的訓練過程中,對於神經網絡單元,按照一定的概率將其暫時從網絡中丟棄。注意是暫時,對於隨機梯度下降來說,由於是隨機丟棄,故而每一個mini-batch都在訓練不同的網絡。 dropout是CNN中防