close
最近終於順利畢業了,但突然有點懷疑自己的論文究竟建立在什麼樣的東西上
感覺一回頭突然覺得自己被掏空沒啥會的東西
於是翻書重新徒手搭神經網路
發現自己連怎麼保存python物件都有問題
真的蠻可憐的
我這兩年的時間都在做什麼
於是找了點資料開始動手做
總而言之假設各位看官搭起了一個神經網路,建立了損失函數與梯度更新,但是進行完學習之後不會保存這個學習好的物件
造成每次運行的時候都必須重新跑一次學習才能使用,而且每次成效都不同
所以你需要一個保存權重,或是說保存整個類神經網路物件的方法
這時候會用到的library叫做pickle,題外話是json似乎也可以?
接著你需要再你的類神經網路中新增save,load兩種方法
將你需要保存的物件中的參數以這樣的方法保存
程式碼:
def save(self, filename=None): fh = None data = (self.params) fh = open(self.filename, 'wb') pickle.dump(data, fh) if fh is not None: fh.close()
將你需要恢復的物件中的參數以這樣的方法恢復
程式碼:
def save(self, filename=None): fh = None data = (self.params) fh = open(self.filename, 'wb') pickle.dump(data, fh) if fh is not None: fh.close()
文章標籤
全站熱搜
留言列表