本文介紹幾種基於線上網頁或軟體的、不用程式碼的神經網路模型結構視覺化繪圖方法。
之前向大家介紹了一種基於Python第三方ann_visualizer
模組的神經網路結構視覺化方法,大家可以直接點選文章Python繪製神經網路模型圖進行檢視;這一方法可以對Dense
隱藏層以及MaxPooling
層、Dropout
層、Flatten
層等其它型別的隱藏層加以繪製,功能非常強大,但是需要用程式碼執行,且在執行前需要將神經網路的全部結構與輸入資料配置好後才可以繪製,稍微有一些繁瑣。
今天,就向大家介紹兩種新的神經網路視覺化繪圖方法,其中,一種是線上繪製,一種是基於軟體繪製(其也可以在網頁中直接繪製)。
1 NN-SVG
網址:http://alexlenail.me/NN-SVG/index.html
NN-SVG是一個線上神經網路結構繪製網頁平臺,進入後點點滑鼠就可以繪製出精美的神經網路影像,且還可以對整幅影像的方向,以及接點、連線線、箭頭等等要素的樣式、大小、顏色、權重、間隙大小等屬性加以調整,可謂非常方便、非常強大。
在其最下方,可以對輸入層、隱藏層與輸出層的數量與神經元個數加以調整。
配置完成取得滿意的影像後,大家可以點選最上方的“Download SVG”進行影像下載。需要注意,下載影像的格式是.svg
,需要我們手動轉換為常見的圖片格式。具體線上格式轉換網站網上有很多,這裡就不再敘述了~
但是,NN-SVG僅僅可以顯示簡單的隱藏層,並不能對隱藏層的型別加以區分繪製。
2 Netron
網址:https://github.com/lutzroeder/netron
Netron是一個對神經網路以及各類機器學習、深度學習演算法進行視覺化的工具,分為軟體版與線上版(線上版:https://netron.app/ )。繪製時我們需要先建立並儲存自己的模型(並且還是要執行之後的,因為其會顯示模型中具體引數的變化情況),隨後用其開啟即可。Netron支援的模型格式如下所示。
我們以Windows下其軟體版本為例介紹。下載安裝包後直接安裝。
安裝完畢後開啟軟體,如下所示。
隨後,開啟我們儲存的模型。
即可實現具體模型及其每一個引數變化情況的視覺化影像,非常具體、細緻。
個人感覺用Netron進行具體帶引數分析的視覺化比較方便,如果只是想單純看一下神經網路的結構的話,用其可能不太方便、不太直觀。