신경 네트워크 식별 핸드폰 최적화 (3)

1063 단어
전언
본고는 자신이 훈련한 모델 구조와 파라미터를 저장하고 훈련된 모델을 탑재하여 예측하기 위한 것이다.
코드
보존
    def save(self,filename):
        """
            
        :param filename:     
        :return: 
        """
        data ={ "sizes": self.sizes, #    
                "weights": [w.tolist() for w in self.weights], #tolist       
                "biases": [b.tolist() for b in self.biases],
                "cost": str(self.cost.__name__) #        
        }
        f=open(filename,"w")
        json.dump(data,f)
        f.close()

로드
def load(filename):
    """
        
    :param filename: 
    :return: 
    """
    f=open(filename,"r")
    data=json.load(f)
    f.close()
    cost=getattr(sys.modules[__name__],data["cost"]) #   
    net=Network(data["sizes"],cost=cost)
    net.weights=[np.array(w) for w in data["weights"]]
    net.biases=[np.array(b) for b in data["biases"]]

    return net

좋은 웹페이지 즐겨찾기