Beispiel #1
0
def download(model_path):
    pth_path = os.path.join(model_path, 'cifar_resnet_2px.pth')
    if not os.path.exists(pth_path):
        if not os.path.exists(os.path.dirname(pth_path)):
            os.makedirs(os.path.dirname(pth_path))
        url = 'https://github.com/locuslab/convex_adversarial/blob/master/models_scaled/cifar_resnet_2px.pth?raw=true'
        download_res(url, pth_path)
Beispiel #2
0
def download(model_path):
    mat_name = 'cifar10-convnet-15742544.mat'
    mat_path = os.path.abspath(os.path.join(model_path, mat_name))
    tar_path = os.path.abspath(
        os.path.join(model_path, 'mnist-cifar10-data-model.tar'))
    if not os.path.exists(mat_path):
        if not os.path.exists(os.path.dirname(tar_path)):
            os.makedirs(os.path.dirname(tar_path), exist_ok=True)
        if not os.path.exists(tar_path):
            print(
                'Please download "mnist-cifar10-data-model.tar" from ' +
                '"https://drive.google.com/open?id=15xoZ-LUbc9GZpTlxmCJmvL_DR2qYEu2J", '
                + 'and save it to "{}".'.format(tar_path))
            return
        import tarfile
        with tarfile.TarFile(tar_path) as f:
            mat_file = f.extractfile('data/' + mat_name)
            with open(mat_path, 'wb+') as t:
                t.write(mat_file.read())
        os.remove(tar_path)
    stats_path = os.path.abspath(os.path.join(model_path, 'stats.mat'))
    if not os.path.exists(stats_path):
        download_res(
            'http://ml.cs.tsinghua.edu.cn/~xiaoyang/downloads/realsafe/DeepDefense/stats.mat',
            stats_path)
Beispiel #3
0
def download(model_path):
    if not os.path.exists(model_path):
        import tarfile

        os.makedirs(model_path)
        download_res('http://download.tensorflow.org/models/ens4_adv_inception_v3_2017_08_18.tar.gz',
                     os.path.join(model_path, 'ens4_adv_inception_v3_2017_08_18.tar.gz'))

        tar = tarfile.open(os.path.join(model_path, 'ens4_adv_inception_v3_2017_08_18.tar.gz'))
        file_names = tar.getnames()
        for file_name in file_names:
            tar.extract(file_name, model_path)

        session = tf.Session(config=tf.ConfigProto(device_count={'GPU': 0}))
        reader = tf.train.load_checkpoint(os.path.join(model_path, 'ens4_adv_inception_v3.ckpt'))
        var_list = list(reader.get_variable_to_dtype_map().keys())
        for var in var_list:
            tf.Variable(reader.get_tensor(var), name=var.replace('InceptionV3', 'Ens4InceptionV3'))
        session.run(tf.global_variables_initializer())

        import shutil
        shutil.rmtree(model_path)
        os.makedirs(model_path)

        saver = tf.train.Saver()
        saver.save(session, os.path.join(model_path, 'ens4_adv_inception_v3.ckpt'))
Beispiel #4
0
def download(model_path):
    if not os.path.exists(model_path):
        if not os.path.exists(os.path.dirname(model_path)):
            os.makedirs(os.path.dirname(model_path))
        download_res(
            'http://ml.cs.tsinghua.edu.cn/~xiaoyang/downloads/resnet56-cifar.ckpt',
            model_path)
Beispiel #5
0
def download(model_path):
    url = 'http://download.tensorflow.org/models/adversarial_logit_pairing/imagenet64_alp025_2018_06_26.ckpt.tar.gz'
    if not os.path.exists(model_path + '.meta'):
        if not os.path.exists(os.path.dirname(model_path)):
            os.makedirs(os.path.dirname(model_path))
        import tarfile
        download_res(url, model_path + '.tar.gz')
        t = tarfile.open(model_path + '.tar.gz')
        t.extractall(os.path.dirname(model_path))
        os.remove(model_path + '.tar.gz')
Beispiel #6
0
def download(model_path):
    if not os.path.exists(os.path.join(model_path, 'models/adv_trained/checkpoint')):
        zip_path = os.path.join(model_path, 'adv_trained.zip')
        if not os.path.exists(zip_path):
            if not os.path.exists(os.path.dirname(zip_path)):
                os.makedirs(os.path.dirname(zip_path))
        download_res('https://www.dropbox.com/s/g4b6ntrp8zrudbz/adv_trained.zip?dl=1', zip_path)
        import zipfile
        zipfile.ZipFile(zip_path).extractall(model_path)
        os.remove(zip_path)
Beispiel #7
0
def download(model_path):
    if not os.path.exists(model_path):
        if not os.path.exists(os.path.dirname(model_path)):
            os.makedirs(os.path.dirname(model_path), exist_ok=True)
        gz_path = os.path.join(os.path.dirname(model_path), 'inception_v3_2016_08_28.tar.gz')
        if not os.path.exists(gz_path):
            download_res('http://download.tensorflow.org/models/inception_v3_2016_08_28.tar.gz', gz_path)
        import tarfile
        with tarfile.open(gz_path) as tar:
            tar.extractall(os.path.dirname(model_path))
        os.remove(gz_path)
Beispiel #8
0
def download(model_path):
    if not os.path.exists(model_path):
        os.makedirs(model_path)
    h5_name = 'cifar10_ResNet110v2_model.200.h5'
    h5_path = os.path.join(model_path, h5_name)
    if not os.path.exists(h5_path):
        url = 'http://ml.cs.tsinghua.edu.cn/~tianyu/ADP/pretrained_models/ADP_standard_3networks/' + h5_name
        download_res(url, h5_path)
    npy_path = os.path.join(model_path, 'mean.npy')
    if not os.path.exists(npy_path):
        download_res(
            'http://ml.cs.tsinghua.edu.cn/~yinpeng/downloads/adp_datamean.npy',
            npy_path)
Beispiel #9
0
    r_filenames, r_labels, r_targets = [], [], []
    if targets is None:
        for filename, label in zip(filenames, labels):
            if label == target_label:
                r_filenames.append(filename)
                r_labels.append(label)
        return r_filenames, r_labels, None
    else:
        for filename, label, target in zip(filenames, labels, targets):
            if label == target_label:
                r_filenames.append(filename)
                r_labels.append(label)
                r_targets.append(target)
        return r_filenames, r_labels, r_targets


if __name__ == '__main__':
    if not os.path.exists(PATH_VAL_TXT):
        os.makedirs(os.path.dirname(PATH_VAL_TXT), exist_ok=True)
        download_res('http://ml.cs.tsinghua.edu.cn/~yinpeng/downloads/val.txt',
                     PATH_VAL_TXT)
    if not os.path.exists(PATH_TARGET_TXT):
        os.makedirs(os.path.dirname(PATH_TARGET_TXT), exist_ok=True)
        download_res(
            'http://ml.cs.tsinghua.edu.cn/~yinpeng/downloads/target.txt',
            PATH_TARGET_TXT)
    if not os.path.exists(PATH_IMGS):
        print(
            'Please download "ILSVRC2012_img_val.tar" from "http://www.image-net.org/download-images", '
            + 'and extract it to "{}".'.format(PATH_IMGS))
Beispiel #10
0
def download(model_path):
    url = 'https://github.com/facebookresearch/ImageNet-Adversarial-Training/releases/download/v0.1/R152-Denoise.npz'
    if not os.path.exists(model_path):
        if not os.path.exists(os.path.dirname(model_path)):
            os.makedirs(os.path.dirname(model_path), exist_ok=True)
        download_res(url, model_path)
Beispiel #11
0
        xs_test[offset:]), tf.data.Dataset.from_tensor_slices(ys_test[offset:])
    ys = ys.map(lambda y: tf.cast(y, label_dtype))
    ts = ts.map(lambda t: tf.cast(t, label_dtype))

    ids = tf.data.Dataset.range(offset, len(ys_test) - offset)

    if target_label is not None:
        if load_target:
            return tf.data.Dataset.zip(
                (ids, xs, ys,
                 ts)).filter(lambda *ps: tf.math.equal(ps[2], target_label))
        else:
            return tf.data.Dataset.zip(
                (ids, xs,
                 ys)).filter(lambda *ps: tf.math.equal(ps[2], target_label))
    if load_target:
        return tf.data.Dataset.zip((ids, xs, ys, ts))
    else:
        return tf.data.Dataset.zip((ids, xs, ys))


if __name__ == '__main__':
    import os
    from realsafe.utils import download_res

    _ = load_data()
    if not os.path.exists(PATH_TARGET):
        os.makedirs(os.path.dirname(PATH_TARGET), exist_ok=True)
        download_res('https://ml.cs.tsinghua.edu.cn/~qian/realsafe/target.npy',
                     PATH_TARGET)