keras中plotmodel依賴包安裝方式

2021-09-11 02:17:38 字數 801 閱讀 7290

需要在pip中(我的環境在anaconda的虛擬python環境中)再安裝graphviz。

然而結局仍然是相同的報錯。看到網上說使用pydot_ng,pydotplus.都pip過仍然沒有效果。

於是。。。只能debug報錯的地方找原因。下面講講如果遇到這個問題的解決方法。

python環境中(anaconda)pip install graphviz。

pip install pydot。

如果報錯,看看錯誤具體內容。如果是因為graphviz或者pydot的問題,很有可能是版本的問題。我的環境pydot 1.3.0和graphviz 0.10.1。因為keras的包中vis_utils.py是這樣匯入的

其實我換過keras版本檢視,這塊**對不同版本是不一樣的。比如舊的版本如果遇到import pydot報錯繼續import pydot_ng 和pyplus.所以不能單純不結合你自己的環境隨便看網上的解決方案。因為這個版本沒有這一項(特別的機器學習框架**改變比天氣改變的還快,再tensorflow的api中也經常遇到)。所以如果你是跟我一樣的keras2.2.4版本,使用pydot 1.3.0和graphviz 0.10.1也許可以(我的環境是這樣的)。

但是如果還是無法解決,我只能用經驗說,很大可能是版本的問題。有些版本可能比較新出來,中文網上沒有對應解決方案,可以去找官網。如果確認不是版本問題,可能是別的依賴比如pyparsing的問題等等。最後,祝所有環境問題的玄學好運呀~~

keras中新增正則化

正則項在優化過程中層的引數或層的啟用值新增懲罰項,這些懲罰項將與損失函式一起作為網路的最終優化目標 懲罰項基於層進行懲罰,目前懲罰項的介面與層有關,但dense,conv1d,conv2d,conv3d具有共同的介面。這些層有三個關鍵字引數以施加正則項 from keras import regul...

keras中sample weight的使用

sample weight的作用就是為資料集中的資料分配不同的權重。我的例子是要將資料集的資料分為三類,用0,1,2代表這三類,我這裡想為0分配權重0.3,為1分配權重1,為2分配權重2.我的資料是儲存在csv檔案中的,我提取出標籤列表,標籤列表的內容是0,1,2的集合,列表名稱為y train。我...

keras中lstm理解(一)

說到lstm,無可避免的首先要提到最簡單最原始的rnn。在這一部分,我的目標只是理解 迴圈神經網路 中的 迴圈 二字,不打算扔出任何公式,順便一提曾經困惑過我的keras中的輸入資料格式。我們經常可以看到有人說,lstm適合時序序列,變長序列,尤其適合自然語言處理。那麼是什麼賦予它可以處理變長序列的...