def add_argument( cls, group: argparse._ArgumentGroup) -> argparse._ArgumentGroup: super().add_argument(group) group.add_argument('--adv_train', dest='adv_train', action='store_true', help='enable adversarial training.') group.add_argument( '--adv_train_alpha', dest='adv_train_alpha', type=float, help='adversarial training PGD alpha, defaults to 2/255.') group.add_argument( '--adv_train_epsilon', dest='adv_train_epsilon', type=float, help='adversarial training PGD epsilon, defaults to 8/255.') group.add_argument( '--adv_train_valid_epsilon', dest='adv_train_valid_epsilon', type=float, help='adversarial training PGD epsilon, defaults to 8/255.') group.add_argument( '--adv_train_iter', dest='adv_train_iter', type=int, help='adversarial training PGD iteration, defaults to 7.')
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument( '--original', dest='original', action='store_true', help='load original clean model, defaults to False.')
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument('--cutout', action='store_true', help='use cutout') group.add_argument('--cutout_length', type=int, default=16, help='cutout length')
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument('--tabor_hyperparams', type=list, help='list of weights for regularization terms ' '(default: [1e-6, 1e-5, 1e-7, 1e-8, 0, 1e-2])') return group
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument('--poison_percent', type=float, help='malicious training data injection probability for each batch, defaults to 0.01') group.add_argument('--train_mode', choices=['batch', 'dataset'], help='target class of backdoor, defaults to \'batch\'') return group
def add_encoder_general_arguments(group: _ArgumentGroup) -> _ArgumentGroup: """Define general arguments for encoder.""" group.add_argument( "--etype", default="blstmp", type=str, choices=[ "custom", "lstm", "blstm", "lstmp", "blstmp", "vgglstmp", "vggblstmp", "vgglstm", "vggblstm", "gru", "bgru", "grup", "bgrup", "vgggrup", "vggbgrup", "vgggru", "vggbgru", ], help="Type of encoder network architecture", ) group.add_argument( "--dropout-rate", default=0.0, type=float, help="Dropout rate for the encoder", ) return group
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument('--attack_source', help='attack source (default: "badnet")') group.add_argument('--mark_source', help='mark source (default: "attack")') return group
def _add_argument(cls, ap: argparse._ArgumentGroup, field: Field) -> None: assert cls._is_argument_field(field) assert not isinstance( field.type, ForwardRef), "rework class to not have forward ref" target_type = field.type if hasattr(field.type, "__args__"): target_type = field.type.__args__[0] argparse_type = target_type metavar = target_type.__name__ if issubclass(target_type, Enum): argparse_type = common.argparse_choices_pre_type( [m.name for m in target_type], lambda s: target_type[s], ) metavar = f"[{','.join(m.name for m in target_type)}]" help = "[missing] Add a help annotation on the config class!" if field.metadata: metavar = field.metadata.get("metavar", metavar) help = field.metadata.get("help", help) ap.add_argument( f"--{field.name.replace('_', '-')}", type=argparse_type, metavar=metavar, required=field.default is MISSING and field.default_factory is MISSING, # type: ignore help=help, )
def registerArgparse(self, group: ArgumentGroup): enables = [x for x in self.options if x[0] != "!"] disables = [x[1:] for x in self.options if x[0] == "!"] group.add_argument(*enables, dest=self.name, help=self.description + formatDefault(self.value), action='store_true', default=None) if disables: group.add_argument(*disables, dest=self.name, help=self.description + formatDefault(self.value), action='store_false', default=None)
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument('--original', action='store_true', help='whether to load original clean model ' '(default: False)') return group
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument( '--prune_ratio', type=float, help='the ratio of neuron number to prune (default: 0.95)') return group
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument( '--preprocess_layer', help= 'the chosen layer used to extract feature representation, defaults to ``flatten``' ) group.add_argument( '--poison_image_num', type=int, help= 'the number of sampled poison image to train the model initially, defaults to 50' ) group.add_argument( '--clean_image_num', type=int, help= 'the number of sampled clean image to train the model initially, defaults to 500' ) group.add_argument( '--epsilon', type=int, help= 'the number of examples to remove from each class, defaults to 5') group.add_argument( '--retrain_epoch', type=int, help= 'the epoch to retrain the model on clean image dataset, defaults to 5' ) return group
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument('--attack_source', help='attack source, defaults to ``badnet``') group.add_argument('--mark_source', help='mark source, defaults to ``attack``') return group
def _add_custom_limits(parser: argparse._ArgumentGroup) -> None: def minmax_type(string: str) -> float: value = float(string) if value < 0 or value > 8: raise argparse.ArgumentTypeError( f'{string} must be between 0.0 and 8.0', ) return value high_entropy_help_text = ( 'Sets the entropy limit for high entropy strings. ' 'Value must be between 0.0 and 8.0,') # NOTE: This doesn't have explicit default values since we want to be able to determine # the difference between a value set by default, and an explicitly set value (which happens # to be the same as the default value). This distinction plays an important role when doing # precedence calculation (default value < baseline config < CLI explicit value) parser.add_argument( '--base64-limit', type=minmax_type, nargs='?', help=high_entropy_help_text + ' defaults to 4.5.', ) parser.add_argument( '--hex-limit', type=minmax_type, nargs='?', help=high_entropy_help_text + ' defaults to 3.0.', )
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument( '--class_sample_num', type=int, help= 'the number of sampled images per class, defaults to config[latent_backdoor][class_sample_num][dataset]=100' ) group.add_argument( '--mse_weight', type=float, help= 'the weight of mse loss during retraining, defaults to config[latent_backdoor][mse_weight][dataset]=100' ) group.add_argument( '--preprocess_layer', help= 'the chosen feature layer patched by trigger, defaults to \'features\'' ) group.add_argument('--preprocess_epoch', type=int, help='preprocess optimization epoch') group.add_argument('--preprocess_lr', type=float, help='preprocess learning rate') return group
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument('--defense_input_num', type=int, help='the number of training inputs to evaluate ' '(default: None)') return group
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument( '--data_format', dest='data_format', type=str, help='folder, zip or numpy. (zip is using ZIP_STOREED)')
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument('--seed_num', dest='seed_num', type=int, help='ABS seed number, defaults to -5.') group.add_argument( '--max_troj_size', dest='max_troj_size', type=int, help='ABS max trojan trigger size (pixel number), defaults to 64.') group.add_argument('--remask_epoch', dest='remask_epoch', type=int, help='ABS optimizing epoch, defaults to 1000.') group.add_argument( '--remask_lr', dest='remask_lr', type=float, help='ABS optimization learning rate, defaults to 0.1.') group.add_argument( '--remask_weight', dest='remask_weight', type=float, help='ABS optimization remask loss weight, defaults to 0.1.')
def consumer_set_id_arg(req_args: _ArgumentGroup, opt_args: _ArgumentGroup) -> None: req_args.add_argument( "--consumer-set-id", type=str, help="The identifier of the consumer set", required=True, )
def env_arg(opt_args: _ArgumentGroup) -> None: opt_args.add_argument( "--env", choices=["prod", "dev", "local"], default=None, type=str, help="Switches auth context.", )
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument('--model_index', type=int, required=True) group.add_argument('--model_seed', type=int) group.add_argument('--nats_path') group.add_argument('--autodl_path') group.add_argument('--search_space') return group
def output_fmt_arg(req_args: _ArgumentGroup, opt_args: _ArgumentGroup) -> None: opt_args.add_argument( "-o", "--output-fmt", choices=["table", "json"], type=str, help="Switches output format.", )
def _add_disable_flag(parser: argparse._ArgumentGroup) -> None: parser.add_argument( '--disable-filter', type=str, nargs=1, action='append', # so we can support multiple flags with same value help= 'Specify filter to disable. e.g. detect_secrets.filters.common.is_invalid_file', )
def org_plan_type_arg(req_args: _ArgumentGroup, opt_args: _ArgumentGroup) -> None: req_args.add_argument( "--plan-type", choices=[1, 2, 3, 4, 5, 6], type=int, help="Plan type for organization.", required=True, )
def no_org_arg(req_args: _ArgumentGroup, opt_args: _ArgumentGroup) -> None: opt_args.add_argument( "--no-org", nargs="?", default=False, const=True, type=bool, help="Only show users that are not part of any organization.", )
def args_addr(argument_group: argparse._ArgumentGroup) -> None: # pylint: disable=protected-access """Create addr positional argumenmt.""" argument_group.add_argument( "addr", type=str, help="""Address to listen or connect to. """, )
def configure_parser(cls, arg_group: _ArgumentGroup) -> None: arg_group.add_argument( '--force-beam-block-number', type=int, help="Force beam sync to activate on a specific block number (for testing)", default=None, ) add_disable_backfill_arg(arg_group) add_sync_from_checkpoint_arg(arg_group)
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument( '--prune_ratio', dest='prune_ratio', type=float, help= 'the ratio of neuron number to prune, defaults to config[fine_pruning][prune_ratio]=0.95' )
def args_quick(argument_group: argparse._ArgumentGroup) -> None: # pylint: disable=protected-access """Create -q/--quick argumenmt.""" argument_group.add_argument( "-q", "--quick", action="store_true", help="""Show quick payload results (less detail). """, )
def add_argument(cls, group: argparse._ArgumentGroup): super().add_argument(group) group.add_argument( '--data_format', choices=['folder', 'tar', 'zip'], help='file format of dataset. (zip is using ZIP_STORED)') group.add_argument('--memory', action='store_true', help='put all dataset into memory initialization.') return group