Beispiel #1
0
    parser.add_argument('--sep_cb_type', action='store_true', default=False)
    parser.add_argument('--sep_name', action='store_true', default=False)
    parser.add_argument('--granular', action='store_true', default=False)
    parser.add_argument('--sep_lr', action='store_true', default=False)
    parser.add_argument('--all_algos', action='store_true', default=False)
    parser.add_argument('--keep_datasets', action='store_true', default=False,
                        help='keeps comparing on all datasets at each iteration')
    parser.add_argument('--reduce_algo', action='store_true', default=False)
    parser.add_argument('--filter_algos', default=None)
    parser.add_argument('--interactive', action='store_true', default=False)
    parser.add_argument('--interactive_norank', action='store_true', default=False)
    args = parser.parse_args()


    if not args.reload:
        df = load_names(args.names.split(','), min_actions=None,
                        ty='all' if args.sep_lr else 'best')
        # df = df.loc[df.algo.map(lambda x: x.startswith('epsilon:') or x.startswith('bag:'))]
        # df = df.loc[df.algo.map(lambda x: x in algo_list)].copy()
        # df = df.loc[df.na * df.nf > 200]
        if args.granular:
            df = preprocess_df_granular(df, sep_name=args.sep_name,
                                        sep_lr=args.sep_lr, all_algos=args.all_algos)
        else:
            df = preprocess_df(df, sep_reduction=args.sep_cb_type, sep_name=args.sep_name,
                               reduce_algo=args.reduce_algo, filter_algos=args.filter_algos.split(',') if args.filter_algos else None)

        ds_ids = df.ds.unique()
        ds_to_sz = pickle.load(open('ds_sz.pkl'))

        if args.interactive_norank:
            sys.exit(0)
Beispiel #2
0
    parser.add_argument('--opt_b', action='store_true', default=False)
    parser.add_argument('--enc', default='neg10')
    parser.add_argument('--b', default=None)
    parser.add_argument('--alpha', type=float, default=0.05)
    parser.add_argument('--seed', type=int, default=1337)
    parser.add_argument('--base_name', default='allrandfix')
    args = parser.parse_args()

    set_base_name(args.base_name)
    print(base_name())

    names = [
        '{}{}'.format(base_name(), name)
        for name in ['01', '01b', 'neg10', 'neg10b']
    ]
    df = load_names(names, min_actions=None, min_size=None)

    df = preprocess_df_granular(df,
                                all_algos=True,
                                sep_enc=True,
                                sep_b=not args.opt_b)

    enc_b_str = args.enc
    if not args.opt_b:
        if args.b is not None:
            enc_b_str += ':' + args.b
        else:
            enc_b_str += ':(b|nb)'

    ds_ids = df.ds.unique()
    np.random.seed(args.seed)
Beispiel #3
0
    parser.add_argument('--noval', action='store_true', default=False)
    parser.add_argument('--uci', action='store_true', default=False)
    parser.add_argument('--base_name', default='allrandfix')
    args = parser.parse_args()

    set_base_name(args.base_name)
    print((base_name()))

    if args.avg_std_name and args.base_name.startswith('rcv1'):
        names = ['{}01'.format(base_name())]
    else:
        names = [
            '{}{}'.format(base_name(), name)
            for name in ['01', '01b', 'neg10', 'neg10b']
        ]
    df = load_names(names, use_cs=args.use_cs)

    # filters
    if args.min_actions is not None:
        df = df[df.na >= args.min_actions]
    if args.max_actions is not None:
        df = df[df.na <= args.max_actions]
    if args.min_features is not None:
        df = df[df.nf >= args.min_features]
    if args.max_features is not None:
        df = df[df.nf <= args.max_features]
    if args.min_size is not None:
        df = df[df.sz >= args.min_size]
    if args.max_size is not None:
        df = df[df.sz <= args.max_size]
    if args.min_refloss is not None:
Beispiel #4
0
    parser.add_argument('--sep_name', action='store_true', default=False)
    parser.add_argument('--sep_enc', action='store_true', default=False)
    parser.add_argument('--sep_b', action='store_true', default=False)
    parser.add_argument('--algo', default=None)
    parser.add_argument('--name', default=None)
    parser.add_argument('--enc', default=None)
    parser.add_argument('--b', default=None)
    parser.add_argument('--cb_type', default=None)
    parser.add_argument('--alpha', default=0.05)
    parser.add_argument('--min_size', type=int, default=None)
    parser.add_argument('--diff', action='store_true', default=True)
    parser.add_argument('--nodiff', dest='diff', action='store_false')
    args = parser.parse_args()

    names = ['disagree01', 'disagree01b', 'disagreeneg10', 'disagreeneg10b']
    df = load_names(names, min_actions=None, min_size=args.min_size)

    psi = '0.1'
    if args.granular_opt or args.all:
        df_all = preprocess_df_granular(df, all_algos=True)

        # optimized name
        print 'optimized over encoding/baseline'
        algs = [
            'epsilon:0:mtr', 'epsilon:0:dr',
            'cover:16:psi:{}:nounif:dr'.format(psi), 'bag:16:mtr',
            'bag:16:greedify:mtr', 'epsilon:0.02:mtr',
            'cover:16:psi:{}:dr'.format(psi), 'epsilon:1:nounifa:c0:1e-06:dr'
        ]
        labels = [
            'G-{}'.format(MTR_LABEL), 'G-dr', 'C-nu', 'B', 'B-g',
Beispiel #5
0
    args = parser.parse_args()

    set_base_name(args.base_name)

    if args.noval:
        val_dss = np.load('ds_val_list.npy')

    def filter_heldout(df):
        if args.noval:
            return df.loc[df.ds.map(lambda s: s not in val_dss)]
        else:
            return df

    if args.enc_910 or args.all:
        names = ['disagree910', 'disagree910b']
        df = load_names(names, min_actions=None, use_cs=args.use_cs)
        df = filter_heldout(df)
        algs = [
            'epsilon:0:mtr', 'cover:4:psi:0.1:nounif:dr', 'bag:4:greedify:mtr'
        ]
        labels = ['G', 'C-nu', 'B-g']
        df = preprocess_df_granular(df, algos=algs, sep_name=True)

        for i in range(3):
            scatterplot(df, [algs[i] + ':910', algs[i] + ':910b'],
                        [labels[i] + ', 9/10', labels[i] + ', 9/10 + b'],
                        args=args,
                        fname='robust910_' + labels[i].lower())

    if args.comp_granular or args.all:
        names = [
Beispiel #6
0
    parser.add_argument('--all', action='store_true', default=False)
    parser.add_argument('--enc_910', action='store_true', default=False)
    parser.add_argument('--comp_granular', action='store_true', default=False)
    parser.add_argument('--bag_greedy', action='store_true', default=False)
    parser.add_argument('--baseline', action='store_true', default=False)
    parser.add_argument('--cover_nu', action='store_true', default=False)
    parser.add_argument('--active', action='store_true', default=False)
    parser.add_argument('--active_mtr', action='store_true', default=False)
    parser.add_argument('--greedy', action='store_true', default=False)
    parser.add_argument('--psi', default='0.1')
    parser.add_argument('--alpha', type=float, default=0.05)
    args = parser.parse_args()

    if args.enc_910 or args.all:
        names = ['disagree910', 'disagree910b']
        df = load_names(names, min_actions=None)
        algs = [
            'epsilon:0:mtr', 'cover:16:psi:{}:nounif:dr'.format(args.psi),
            'bag:16:greedify:mtr'
        ]
        labels = ['G-{}'.format(MTR_LABEL), 'C-nu', 'B-g']
        df = preprocess_df_granular(df, algos=algs, sep_name=True)

        for i in range(3):
            scatterplot(df, [algs[i] + ':910b', algs[i] + ':910'],
                        [labels[i] + ', 9/10 + b', labels[i] + ', 9/10'],
                        args=args,
                        fname='robust910_' + labels[i].lower())

    if args.comp_granular or args.all:
        names = [