ds_dir + 'datasets/TIMIT/traininglist_100/testlist_200.txt') rnd.shuffle(TIMIT_lst) p = Augmentor.Pipeline() p.random_distortion(probability=1, grid_width=4, grid_height=4, magnitude=8) p.flip_left_right(probability=0.5) p.flip_top_bottom(probability=0.5) p.rotate90(probability=0.5) p.rotate270(probability=0.5) dp = Birds200DataProvider( min_cluster_count=1, max_cluster_count=5, target_img_size=(128, 128), min_element_count_per_cluster=2, additional_augmentor=lambda x: p.sample_with_array(x)) dp.use_augmentation_for_test_data = False dp.use_augmentation_for_validation_data = False en = CnnEmbedding(output_size=256, cnn_layers_per_block=1, block_feature_counts=[32, 64, 128], fc_layer_feature_counts=[256], hidden_activation=LeakyReLU(), final_activation=LeakyReLU(), batch_norm_for_init_layer=False, batch_norm_after_activation=True, batch_norm_for_final_layer=True, dropout_init=0.25, dropout_after_max_pooling=[0.25, 0.25, 0.25],
from impl.nn.base.embedding_nn.cnn_embedding import CnnEmbedding is_linux = platform == "linux" or platform == "linux2" top_dir = "/cluster/home/meierbe8/data/MT/" if is_linux else "G:/tmp/" ds_dir = "./" if is_linux else "../" p = Augmentor.Pipeline() p.random_distortion(probability=1, grid_width=4, grid_height=4, magnitude=8) p.flip_left_right(probability=0.5) p.flip_top_bottom(probability=0.5) p.rotate90(probability=0.5) p.rotate270(probability=0.5) dp = Birds200DataProvider( min_cluster_count=1, max_cluster_count=5, additional_augmentor=lambda x: p.sample_with_array(x), target_img_size=(96, 96) ) en = CnnEmbedding( output_size=2, cnn_layers_per_block=2, block_feature_counts=[2], fc_layer_feature_counts=[2], hidden_activation=LeakyReLU(), final_activation=LeakyReLU(), batch_norm_for_init_layer=False, batch_norm_after_activation=True, batch_norm_for_final_layer=True, ) c_nn = ClusterNNTry00_V30(dp, 5, en, lstm_layers=1, internal_embedding_size=3, cluster_count_dense_layers=1, cluster_count_dense_units=2, output_dense_layers=1, output_dense_units=2, cluster_count_lstm_layers=2, cluster_count_lstm_units=2, kl_embedding_size=2) c_nn.include_self_comparison = False c_nn.weighted_classes = True
if __name__ == '__main__': # Difference to test_cluster_nn_try00.py: No embedding is used and the network always returns that 10 clusters were # found, but some of them may be empty from sys import platform from impl.data.image.birds200_data_provider import Birds200DataProvider from impl.nn.base.embedding_nn.cnn_embedding import CnnEmbedding is_linux = platform == "linux" or platform == "linux2" top_dir = "/cluster/home/meierbe8/data/MT/" if is_linux else "G:/tmp/" ds_dir = "./" if is_linux else "../" dp = Birds200DataProvider(min_cluster_count=1, max_cluster_count=5) en = CnnEmbedding(output_size=256, cnn_layers_per_block=1, block_feature_counts=[64, 128, 256], fc_layer_feature_counts=[256], hidden_activation=LeakyReLU(), final_activation=LeakyReLU(), batch_norm_for_init_layer=False, batch_norm_after_activation=True, batch_norm_for_final_layer=True, dropout_after_fc=[0.5], dropout_after_max_pooling=[0.5, 0.5, 0.5], dropout_init=0.5) c_nn = ClusterNNTry00_V50(dp, 20,
# data_dir=top_dir + "/TIMIT", cache_directory=top_dir + "/test/cache", # min_cluster_count=5, # max_cluster_count=5, # return_1d_audio_data=False, # # train_classes=speaker_list, # test_classes=speaker_list, # validate_classes=speaker_list, # # concat_audio_files_of_speaker=True # ) classes = list(range(5)) dp = Birds200DataProvider( train_classes=classes, validate_classes=classes, test_classes=classes, min_cluster_count=5, max_cluster_count=5, ) def get_cnn(dataprovider=None): if dataprovider is None: dataprovider = dp en = CnnEmbedding(output_size=100, cnn_layers_per_block=1, block_feature_counts=[32, 64], fc_layer_feature_counts=[100], hidden_activation='relu', final_activation='relu', batch_norm_for_init_layer=True, dropout_after_max_pooling=0.5,