adv_acc_pos = 0 adv_fool = 0 # Post-training print('Loading best weights') model.load_weights(logdir + 'model_best_val_weights.h5') test_loss = model.evaluate(x_test, x_test, batch_size=batch_size, verbose=0) print('Test loss: {:.2f}'.format(test_loss)) # KNN test def sample_points(data_, labels_, n_): target_idxs_ = [] for l_ in np.unique(labels_): t_ = np.argwhere(labels_ == l_).reshape(-1) np.random.shuffle(t_) target_idxs_.append(t_[:n_]) target_idxs_ = np.hstack(target_idxs_) return data_[target_idxs_], labels_[target_idxs_] embeddings_train = clip(encoder.predict(x_train), radius) embeddings_test = clip(encoder.predict(x_test), radius) knn = KNeighborsClassifier(n_neighbors=5, metric=get_distance(radius)) for n_labels in [100, 600, 1000]: knn.fit(*sample_points(embeddings_train, y_train, n_labels)) knn_score = knn.score(embeddings_test, y_test) print('KNN score ({} labels): {}'.format(n_labels, knn_score))
from geometry import create_cube, clip, Plane from unfolding import unfold import svg cube = create_cube() cube.assert_integrity() plane = Plane(1,1,0,0) ph = clip(cube,plane) ph.assert_integrity() svg.write_unfolded_faces('test5.svg', unfold(ph))
from geometry import Point3, create_cube, clip, Plane from unfolding import unfold import svg import math m = 5 cube = create_cube() rest = cube pieces = [] for i in range(m): theta = math.pi/6 * (1-2*i/(m-1)) u = Point3(math.sin(theta),0,math.cos(theta)) plane = Plane(u.x,u.y,u.z, -2*u.x) pieces.append(clip(rest, -plane)) rest = clip(rest, plane) pieces.append(rest) for i,piece in enumerate(pieces): svg.write_unfolded_faces(f"test3-{i+1}.svg", unfold(piece))
from geometry import create_cube, clip, Plane from unfolding import unfold import svg cube = create_cube() plane1 = Plane(0,0,1, 1/3) plane2 = Plane(0,0,1,-1/3) ph12 = clip(cube,plane2) ph1 = clip(ph12,plane1) ph2 = clip(ph12,-plane1) ph3 = clip(cube,-plane2) svg.write_unfolded_faces('test2a.svg', unfold(ph1)) svg.write_unfolded_faces('test2b.svg', unfold(ph2)) svg.write_unfolded_faces('test2c.svg', unfold(ph3))