Example #1
0
def e1002_3D_ucf101():
    set_init_1()
    project_variable.model_number = 25
    project_variable.experiment_number = 1002
    project_variable.sheet_number = 23
    project_variable.device = 1
    project_variable.end_epoch = 100
    project_variable.batch_size = 20
    project_variable.batch_size_val_test = 20

    project_variable.load_model = True  # exp, model, epoch, run
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.000005
    project_variable.use_adaptive_lr = True

    main_file.run(project_variable)
Example #2
0
def e002_dots():
    set_init_1_frames()
    project_variable.dataset = 'dots_frames'
    # project_variable.dataset = 'ucf101'
    # project_variable.model_number = 56 # lenet5 3t
    project_variable.model_number = 55 # lenet5 2D
    project_variable.experiment_number = 2

    project_variable.device = 0
    project_variable.end_epoch = 10
    project_variable.batch_size = 32
    project_variable.batch_size_val_test = 32

    # project_variable.inference_only_mode = True
    project_variable.inference_only_mode = False

    project_variable.load_model = False # loading model from scratch
    # project_variable.load_from_fast = True  # UNUSED?

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    # project_variable.stop_at_collapse = True
    project_variable.stop_at_collapse = False
    # project_variable.early_stopping = True
    project_variable.early_stopping = False

    project_variable.optimizer = 'adam'
    # project_variable.learning_rate = 0.05
    project_variable.learning_rate = 0.0005
    project_variable.use_adaptive_lr = True

    main_file.run(project_variable)
Example #3
0
def e001_3T_kinetics():
    set_init_1()
    project_variable.model_number = 23  # googlenet
    project_variable.experiment_number = 1

    project_variable.device = 2
    project_variable.end_epoch = 200
    project_variable.batch_size = 18  # 5 about 3000
    project_variable.batch_size_val_test = 30  # 30 about 3000

    # project_variable.inference_only_mode = True
    project_variable.inference_only_mode = False

    # project_variable.save_model_every_x_epochs = 1

    project_variable.load_model = True  # loading pre-trained on ImageNet
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    # project_variable.stop_at_collapse = False
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00005
    project_variable.use_adaptive_lr = True

    main_file.run(project_variable)
Example #4
0
def e1011_3T_ucf101():
    set_init_1()
    project_variable.nin = True
    project_variable.train_nin_mode = 'joint'

    project_variable.model_number = 52 # TACoNet
    project_variable.experiment_number = 1011
    project_variable.sheet_number = 22

    project_variable.device = 1
    project_variable.end_epoch = 1
    project_variable.repeat_experiments = 1
    project_variable.batch_size = 20
    project_variable.batch_size_val_test = 20

    project_variable.load_model = None
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00005
    project_variable.use_adaptive_lr = True
    project_variable.num_out_channels = [0]

    main_file.run(project_variable)
Example #5
0
def e1014_3T_ucf101():
    set_init_1()
    project_variable.model_number = 23
    project_variable.experiment_number = 1014
    project_variable.sheet_number = 23
    project_variable.device = 1
    project_variable.end_epoch = 100
    project_variable.batch_size = 15
    project_variable.batch_size_val_test = 15

    project_variable.load_model = [1, 23, 4, 0]  # exp, model, epoch, run
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00005
    project_variable.use_adaptive_lr = True

    utils.wait_for_gpu(wait=True, device_num=project_variable.device, threshold=9700)
    main_file.run(project_variable)
Example #6
0
def e101_conv3D_jester():
    set_init_1()
    project_variable.model_number = 21 # 3Dresnet18 from scratch
    project_variable.experiment_number = 101
    project_variable.sheet_number = 22
    project_variable.device = 2
    project_variable.end_epoch = 100
    project_variable.repeat_experiments = 1
    project_variable.batch_size = 32
    project_variable.batch_size_val_test = 32

    project_variable.load_model = False
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.000005
    project_variable.use_adaptive_lr = True
    project_variable.num_out_channels = [0]

    main_file.run(project_variable)
Example #7
0
def e1010_3T_ucf101():
    set_init_1()
    project_variable.nin = False

    project_variable.model_number = 51 # convnet3T
    project_variable.experiment_number = 38
    project_variable.sheet_number = 23

    project_variable.device = 1
    project_variable.end_epoch = 1
    project_variable.repeat_experiments = 1
    project_variable.batch_size = 20
    project_variable.batch_size_val_test = 20

    project_variable.load_model = None
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00005
    project_variable.use_adaptive_lr = True
    project_variable.num_out_channels = [0]

    # utils.wait_for_gpu(wait=True, device_num=project_variable.device)
    main_file.run(project_variable)
Example #8
0
def e45_conv3T_jester():
    set_init_1()
    project_variable.dataset = 'tiny_jester'
    project_variable.nin = True
    project_variable.train_nin_mode = 'joint'

    project_variable.model_number = 54 # alexnet-taco
    project_variable.experiment_number = 45
    project_variable.sheet_number = 22

    project_variable.device = 0
    project_variable.end_epoch = 100
    project_variable.repeat_experiments = 3
    project_variable.batch_size = 20
    project_variable.batch_size_val_test = 20

    project_variable.load_model = True
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00001
    project_variable.use_adaptive_lr = True
    project_variable.num_out_channels = [0]

    # utils.wait_for_gpu(wait=True, device_num=project_variable.device)
    main_file.run(project_variable)
Example #9
0
def e40_conv3T_jester():
    set_init_1()
    project_variable.dataset = 'tiny_jester'
    project_variable.nin = False
    # project_variable.train_nin_mode = 'nin_only'

    project_variable.model_number = 51 # convnet3T
    project_variable.experiment_number = 40
    project_variable.sheet_number = 22

    project_variable.device = 2
    project_variable.end_epoch = 100
    project_variable.repeat_experiments = 10
    project_variable.batch_size = 20
    project_variable.batch_size_val_test = 20

    project_variable.load_model = None
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00005
    project_variable.use_adaptive_lr = True
    project_variable.num_out_channels = [0]

    wait_for_gpu(wait=True, device_num=project_variable.device, threshold=2000)
    main_file.run(project_variable)
Example #10
0
def e37_conv3T_jester():
    set_init_1()
    project_variable.nin = True
    project_variable.train_nin_mode = 'nin_only'

    project_variable.model_number = 50 # RN18 3T
    project_variable.experiment_number = 37
    project_variable.sheet_number = 22

    project_variable.device = 1
    project_variable.end_epoch = 5
    project_variable.repeat_experiments = 1
    project_variable.batch_size = 1
    project_variable.batch_size_val_test = 1

    project_variable.load_model = [31, 20, 8, 0]
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00005
    project_variable.use_adaptive_lr = True
    project_variable.num_out_channels = [0]

    # wait_for_gpu(wait=True, device_num=project_variable.device)
    main_file.run(project_variable)
Example #11
0
def e009_3T_kinetics():
    set_init_1()
    project_variable.dataset = 'kinetics400'
    project_variable.label_size = 400

    project_variable.model_number = 23  # googlenet
    project_variable.experiment_number = 9

    project_variable.device = 1
    project_variable.end_epoch = 200
    project_variable.batch_size = 17  # 5 about 3000
    # project_variable.batch_size = 10   # 5 about 3000
    project_variable.batch_size_val_test = 29  # 30 about 3000

    # project_variable.inference_only_mode = True
    project_variable.inference_only_mode = False
    # project_variable.eval_on = 'test'
    project_variable.eval_on = 'val'

    # project_variable.load_model = True # loading pre-trained on ImageNet
    project_variable.load_model = [6, 23, 7, 0]

    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00007
    project_variable.use_adaptive_lr = True

    utils.wait_for_gpu(wait=True,
                       device_num=project_variable.device,
                       threshold=9700)
    main_file.run(project_variable)
Example #12
0
def e002_3T_kinetics():
    set_init_1()
    project_variable.dataset = 'kinetics400_metaclass'
    project_variable.label_size = 39

    project_variable.model_number = 23  # googlenet
    project_variable.experiment_number = 2

    project_variable.device = 1
    project_variable.end_epoch = 200
    project_variable.batch_size = 17  # 5 about 3000
    project_variable.batch_size_val_test = 29  # 30 about 3000

    # project_variable.inference_only_mode = True
    project_variable.inference_only_mode = False
    # project_variable.eval_on = 'test'
    project_variable.eval_on = 'val'
    # TODO: standardize the test data

    # project_variable.save_model_every_x_epochs = 1

    project_variable.load_model = True  # loading pre-trained on ImageNet
    # project_variable.load_model = [2, 23, 10, 0]

    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00005
    project_variable.use_adaptive_lr = False

    main_file.run(project_variable)
Example #13
0
def e010_dots():
    set_init_1_frames()
    project_variable.dataset = 'dots_avi'
    # project_variable.dataset = 'ucf101'
    project_variable.model_number = 57 # simplenet3t, 1 conv layer
    project_variable.experiment_number = 10
    project_variable.load_num_frames = 15

    project_variable.device = 0
    project_variable.end_epoch = 20
    project_variable.batch_size = 32
    project_variable.batch_size_val_test = 32

    # project_variable.inference_only_mode = True
    project_variable.inference_only_mode = False

    project_variable.load_model = False # loading model from scratch
    # project_variable.load_from_fast = True  # UNUSED?

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.save_all_models = True
    # project_variable.stop_at_collapse = True
    project_variable.stop_at_collapse = False
    # project_variable.early_stopping = True
    project_variable.early_stopping = False

    project_variable.optimizer = 'sgd'
    # project_variable.learning_rate = 0.03
    # project_variable.learning_rate = 0.05
    project_variable.learning_rate = 0.08
    project_variable.use_adaptive_lr = True

    main_file.run(project_variable)
Example #14
0
def e29_conv3T_jester():
    set_init_1()
    project_variable.model_number = 20
    project_variable.experiment_number = 29
    project_variable.sheet_number = 22
    project_variable.device = 1
    project_variable.end_epoch = 100
    project_variable.repeat_experiments = 1
    project_variable.batch_size = 32
    project_variable.batch_size_val_test = 32

    project_variable.load_model = True
    project_variable.load_from_fast = True

    project_variable.use_dali = True
    project_variable.dali_workers = 32
    project_variable.dali_iterator_size = ['all', 'all', 0]
    project_variable.nas = False

    project_variable.stop_at_collapse = True
    project_variable.early_stopping = True

    project_variable.optimizer = 'adam'
    project_variable.learning_rate = 0.00005
    project_variable.use_adaptive_lr = True
    project_variable.num_out_channels = [0]

    go = False
    while not go:
        gpu_available = get_gpu_memory_map()
        if gpu_available[project_variable.device] < 100:
            go = True
        else:
            print('waiting for gpu...')
            time.sleep(10)

    main_file.run(project_variable)
Example #15
0
def generation_loop_with_cnn(device_num=0):
    '''
    rad_dot_m_t, num_dots_low_t, num_dots_high_t = parameters
    2, 10, 20
    rad_dot_m_r, num_dots_low_r, num_dots_high_r = parameters
    2, 10, 20
    num_dots_low_s, num_dots_high_s, radius_dot_min_s_pos_dir, radius_dot_max_s_pos_dir, radius_dot_min_s_neg_dir, radius_dot_max_s_neg_dir = parameters
    10, 11, 3, 4, 3, 4 
    
    '''
    # parameters = [2, 10, 20, 2, 10, 20, 10, 11, 3, 4, 3, 4]

    random_acc = 1 / 3
    val_acc = 1
    e = 0.05

    it = 1
    while val_acc > random_acc + e:
        opt_remove_dataset()
        parameters = sample_params()
        make_dataset('train', 500, 30, 33, parameters)
        make_dataset('val', 200, 30, 33, parameters)
        pv = config_pv(device_num)
        val_acc = main_file.run(pv)

        if val_acc > random_acc + e:
            print('%d:  val_acc: %f. parameters tried: %s' %
                  (it, val_acc, str(parameters)))
            save_results(val_acc, parameters)
        else:
            print('OPTIMAL PARAMETERS FOUND!')
            print('%d:  val_acc: %f. parameters: %s' %
                  (it, val_acc, str(parameters)))
            save_results(val_acc, parameters)

        it = it + 1