Parse command line arguments Returns: argparse.Namespace: parsed arguments
(arg=None)
| 130 | |
| 131 | |
| 132 | def parseargs(arg=None) -> argparse.Namespace: |
| 133 | """Parse command line arguments |
| 134 | |
| 135 | Returns: |
| 136 | argparse.Namespace: parsed arguments |
| 137 | """ |
| 138 | |
| 139 | parser = argparse.ArgumentParser(description="Training using the autograd and graph.") |
| 140 | parser.add_argument( |
| 141 | "--model", choices=["cnn", "resnet", "xceptionnet", "mlp", "alexnet"], default="mlp" |
| 142 | ) |
| 143 | parser.add_argument("--data", choices=["mnist", "cifar10", "cifar100", "bank"], default="mnist") |
| 144 | parser.add_argument("-p", choices=["float32", "float16"], default="float32", dest="precision") |
| 145 | parser.add_argument( |
| 146 | "-m", "--max-epoch", default=10, type=int, help="maximum epochs", dest="max_epoch" |
| 147 | ) |
| 148 | parser.add_argument( |
| 149 | "-b", "--batch-size", default=64, type=int, help="batch size", dest="batch_size" |
| 150 | ) |
| 151 | parser.add_argument( |
| 152 | "-l", "--learning-rate", default=0.005, type=float, help="initial learning rate", dest="lr" |
| 153 | ) |
| 154 | # Determine which gpu to use |
| 155 | parser.add_argument( |
| 156 | "-i", "--device-id", default=0, type=int, help="which GPU to use", dest="device_id" |
| 157 | ) |
| 158 | parser.add_argument( |
| 159 | "-g", |
| 160 | "--disable-graph", |
| 161 | default="True", |
| 162 | action="store_false", |
| 163 | help="disable graph", |
| 164 | dest="graph", |
| 165 | ) |
| 166 | parser.add_argument( |
| 167 | "-v", "--log-verbosity", default=0, type=int, help="logging verbosity", dest="verbosity" |
| 168 | ) |
| 169 | parser.add_argument( |
| 170 | "-d", |
| 171 | "--data-distribution", |
| 172 | choices=["iid", "non-iid"], |
| 173 | default="iid", |
| 174 | help="data distribution", |
| 175 | dest="data_dist", |
| 176 | ) |
| 177 | parser.add_argument("--num_clients", default=10, type=int) |
| 178 | parser.add_argument("--host", default="127.0.0.1") |
| 179 | parser.add_argument("--port", default=1234) |
| 180 | |
| 181 | args = parser.parse_args(arg) |
| 182 | return args |