def malisPreviewSlice(self, batch, name='A'): pred = self.cnn.class_probabilities(batch[0])[0] # (6, z, x,y) malis = self.cnn.malis_stats( *batch[:3] ) # nll, n_pos, n_neg, n_tot, false_splits, false_merges, rand_index, pos_count, neg_count, labels nll, n_pos, n_neg, n_tot, false_splits, false_merges, rand_index, pos_count, neg_count = malis data, aff_gt, seg_gt = batch[:3] print "NLL : ", nll print "N total: ", n_tot print "N pos : ", n_pos print "N neg : ", n_neg print "Splits : ", false_splits print "Mergers: ", false_merges print "Rand-Index: ", rand_index pred_slices = np.transpose(pred[1::2], (1, 2, 3, 0)) pos_slices = np.transpose(pos_count, (1, 2, 3, 0)) neg_slices = np.transpose(neg_count, (1, 2, 3, 0)) neg_slices = np.log(neg_slices + 1) data = data[0, :, 0] aff_gt = np.transpose(aff_gt[0], (1, 2, 3, 0)) seg_gt = seg_gt[0] trainutils.pickleSave( [pred_slices, aff_gt, pos_slices, neg_slices, seg_gt, data], 'MALIS-%s.pkl' % (name, ))
def malisPreviewSlice(self, batch, name='A'): pred = self.cnn.class_probabilities(batch[0])[0] # (6, z, x,y) malis = self.cnn.malis_stats(*batch[:3]) # nll, n_pos, n_neg, n_tot, false_splits, false_merges, rand_index, pos_count, neg_count, labels nll, n_pos, n_neg, n_tot, false_splits, false_merges, rand_index, pos_count, neg_count = malis data, aff_gt, seg_gt = batch[:3] print "NLL : ", nll print "N total: ", n_tot print "N pos : ", n_pos print "N neg : ", n_neg print "Splits : ", false_splits print "Mergers: ", false_merges print "Rand-Index: ", rand_index pred_slices = np.transpose(pred[1::2], (1, 2, 3, 0)) pos_slices = np.transpose(pos_count, (1, 2, 3, 0)) neg_slices = np.transpose(neg_count, (1, 2, 3, 0)) neg_slices = np.log(neg_slices + 1) data = data[0, :, 0] aff_gt = np.transpose(aff_gt[0], (1, 2, 3, 0)) seg_gt = seg_gt[0] trainutils.pickleSave([pred_slices, aff_gt, pos_slices, neg_slices, seg_gt, data], 'MALIS-%s.pkl' % (name, ))
def __init__(self, path='~/devel/data/adult.pkl', create=False): path = os.path.expanduser(path) if create: self._fields = 'age,workclass,fnlwgt,education,educationnum,maritalstatus,occupation,relationship,race,sex,capitalgain,capitalloss,hoursperweek,nativecountry,target'.split(',') self._kinds = 'cont,cat,cat,cat,cont,cat,cat,cat,cat,cat,cont,cont,cont,cat,cat'.split(',') data_socket = urllib2.urlopen('http://archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.data') train_d = np.genfromtxt(data_socket, skip_header=1, delimiter=',', names=self._fields, dtype=None) train_d = self._normalise_adult(train_d) self.train_l = train_d[:, -1].astype('int16') # np.expand_dims(train_d[:,-1].astype('int16'), 1) self.train_d = train_d[:, :-1] test_socket = urllib2.urlopen('http://archive.ics.uci.edu/ml/machine-learning-databases/adult/adult.test') valid_d = np.genfromtxt(test_socket, skip_header=1, delimiter=',', names=self._fields, dtype=None) valid_d = self._normalise_adult(valid_d) self.valid_l = valid_d[:, -1].astype('int16') #np.expand_dims(valid_d[:,-1].astype('int16'), 1) self.valid_d = valid_d[:, :-1] ut.pickleSave((self.train_d, self.train_l, self.valid_d, self.valid_l), path) else: self.train_d, self.train_l, self.valid_d, self.valid_l = ut.pickleLoad(path) super(AdultData, self).__init__()