예제 #1
0
파일: conv.py 프로젝트: yujiali/pynn
    def _load_model_from_stream(self, f):
        super(KMeansLayer, self)._load_model_from_stream(f)

        K = self.n_oc
        D = self.n_ic * self.ksize * self.ksize

        self.C = gnp.garray(np.fromstring(f.read(4*K*D), dtype=np.float32).reshape(
            self.n_oc, self.n_ic*self.ksize*self.ksize))

        dist_name_len = struct.unpack('i', f.read(4))[0]
        self.dist = f.read(dist_name_len)
        self.f_dist = clust.choose_distance_metric(self.dist)
예제 #2
0
파일: conv.py 프로젝트: yujiali/pynn
    def _load_model_from_stream(self, f):
        super(KMeansLayer, self)._load_model_from_stream(f)

        K = self.n_oc
        D = self.n_ic * self.ksize * self.ksize

        self.C = gnp.garray(
            np.fromstring(f.read(4 * K * D), dtype=np.float32).reshape(
                self.n_oc, self.n_ic * self.ksize * self.ksize))

        dist_name_len = struct.unpack('i', f.read(4))[0]
        self.dist = f.read(dist_name_len)
        self.f_dist = clust.choose_distance_metric(self.dist)
예제 #3
0
파일: conv.py 프로젝트: yujiali/pynn
    def __init__(self, kmeans_model=None, stride=2):
        """
        kmeans_model: instance of KMeansModel, contains attributes (C, dist, nc, ksize, prep)
        """
        if kmeans_model is None:
            return

        self.C = gnp.as_garray(kmeans_model.C)
        dist = kmeans_model.dist
        n_ic = kmeans_model.nc
        n_oc = kmeans_model.C.shape[0]
        ksize = kmeans_model.ksize
        prep = kmeans_model.prep

        super(KMeansLayer, self).__init__(n_ic=n_ic, n_oc=n_oc, ksize=ksize, stride=stride, prep=prep)
        assert self.C.shape[1] == ksize*ksize*n_ic

        self.f_dist = clust.choose_distance_metric(dist)
        self.dist = dist
예제 #4
0
파일: conv.py 프로젝트: yujiali/pynn
    def __init__(self, kmeans_model=None, stride=2):
        """
        kmeans_model: instance of KMeansModel, contains attributes (C, dist, nc, ksize, prep)
        """
        if kmeans_model is None:
            return

        self.C = gnp.as_garray(kmeans_model.C)
        dist = kmeans_model.dist
        n_ic = kmeans_model.nc
        n_oc = kmeans_model.C.shape[0]
        ksize = kmeans_model.ksize
        prep = kmeans_model.prep

        super(KMeansLayer, self).__init__(n_ic=n_ic,
                                          n_oc=n_oc,
                                          ksize=ksize,
                                          stride=stride,
                                          prep=prep)
        assert self.C.shape[1] == ksize * ksize * n_ic

        self.f_dist = clust.choose_distance_metric(dist)
        self.dist = dist