From 017ec3492794556f8627be8af930f74088b9809b Mon Sep 17 00:00:00 2001
From: Mina Moshfegh <mina.moshfegh@fau.de>
Date: Wed, 19 Feb 2025 10:33:36 +0000
Subject: [PATCH] Delete README.md

---
 README.md | 179 ------------------------------------------------------
 1 file changed, 179 deletions(-)
 delete mode 100644 README.md

diff --git a/README.md b/README.md
deleted file mode 100644
index 6af4b63..0000000
--- a/README.md
+++ /dev/null
@@ -1,179 +0,0 @@
-# Adversarial Defense Methods
-
-This repository contains implementations of various adversarial defense methods, including **AIR**, **Vanilla Adversarial Training (AT)**, **LFL**, **EWC**, **Feat. Extraction** and **Joint Training**.
-The code also allows training on multiple tasks (attacks) sequentially, with automatic defense method selection from the configuration file.
-
-## Setup & Installation
-
-### Prerequisites
-
-To run this code, you’ll need to install the following dependencies:
-
-1. **Python 3.x**
-2. **PyTorch** (for training models)
-3. **NumPy** (for numerical computations)
-4. **torchvision** (for image transformations and datasets)
-5. **Matplotlib** (for plotting and visualization)
-6. **scikit-learn** (for t-SNE visualization)
-
-### Step-by-step setup
-
-1. **Clone the repository:**
-
-   First, clone the repository to your local machine:
-
-   ```bash
-   git clone https://gitlab.cs.fau.de/ex55aveq/defense-without-forgetting-reproduction.git
-   cd adversarial-defense
-   ```
-
-2. **Create and activate a virtual environment:**
-
-   It's recommended to use a virtual environment to isolate the dependencies.
-
-   ```bash
-   python -m venv venv
-   source venv/bin/activate
-   ```
-
-3. **Install dependencies:**
-
-   Install the necessary dependencies using `pip`:
-
-   ```bash
-   pip install -r requirements.txt
-   ```
-
-4. **Configure the environment:**
-
-   Set up the configuration file (`Config`) in the Python code to specify your training parameters, dataset, and attack/defense methods.
-
----
-
-## Usage Instructions
-
-### Running the code
-
-After setting up the environment, you can start training your model using the following command:
-
-```bash
-python main.py
-```
-
-This will start training on the dataset and attacks specified in the `Config` class, which is located in `utils/config.py`. You can modify the config file to specify different training parameters, attack methods, defense methods, and dataset.
-
-### Configuration Options
-
-The configuration options can be found in `utils/config.py`. Some of the key parameters you can adjust include:
-
-- **Dataset**: Choose between `MNIST`, `CIFAR10`, and `CIFAR100`.
-- **Attack Methods**: Specify the sequence of attacks you want to train on (e.g., `FGSM`, `PGD`, or `None`).
-- **Defense Methods**: Choose a defense method like `AIR`, `LFL`, `JointTraining`,`VanillaAT`, `FeatExtraction`,`EWC`, etc.
-- **Training Parameters**: You can adjust `epochs`, `batch_size`, `learning_rate`, and other parameters as needed.
-
-### Configuration Example
-
-Below is an example of the configuration you might define in `config.py`:
-
-```python
-@dataclass
-class Config:
-    # General
-    seed: int = 42
-    device: str = "cuda"
-
-    # Training
-    epochs: int = 30
-    batch_size: int = 128
-    learning_rate: float = 0.1
-    momentum: float = 0.9
-    weight_decay: float = 5e-4
-
-    # Attack params
-    epsilon: float = 8 / 255
-    alpha: float = 2 / 255
-    num_steps: int = 10
-    random_init: bool = True
-
-    # Defense selection
-    defense_method: str = "AIR"
-
-    # AIR parameters
-    lambda_SD: float = 1.0
-    lambda_IR: float = 1.0
-    lambda_AR: float = 1.0
-    lambda_Reg: float = 1.0
-    alpha_range: tuple = (0.3, 0.7)
-    use_rdrop: bool = True
-
-    # Isotropic replay augmentations
-    iso_noise_std: float = 0.01
-    iso_clamp_min: float = 0.0
-    iso_clamp_max: float = 1.0
-    iso_p_flip: float = 0.5
-    iso_flip_dim: int = 3
-    iso_p_rotation: float = 0.5
-    iso_max_rotation: int = 10
-    iso_p_crop: float = 0.5
-    iso_p_erase: float = 0.5
-
-    # Dataset
-    dataset: str = "MNIST"
-    data_root: str = "./data"
-    num_workers: int = 2
-
-    # LFL
-    lambda_lfl: float = 1.0
-    feature_lambda: float = 1.0
-    freeze_classifier: bool = True
-
-    # JointTraining
-    joint_lambda: float = 0.5
-
-    # VanillaAT
-    adv_lambda: float = 1.0
-
-    # FeatExtraction
-    feat_lambda: float = 1.0
-    noise_std: float = 0.01
-
-    # EWC
-    lambda_ewc: float = 100.0
-
-    # Multi-task or multi-attack scenario
-    attack_sequence: tuple = ("FGSM", "PGD")
-```
-
-You can modify `attack_sequence` and `defense_method` as per your needs.
-
----
-
-## Results
-
-After training, the results will be saved and displayed. You can see:
-
-- **Clean Accuracy**: Accuracy on the test dataset without any attack.
-- **Robust Accuracy**: Accuracy under adversarial attacks (e.g., PGD, FGSM).
-- **Losses**: Both clean and adversarial losses.
-
----
-
-## Dependencies
-
-- **PyTorch**: For deep learning and model training.
-- **torchvision**: For image processing and dataset utilities.
-- **NumPy**: For numerical computations.
-- **matplotlib**: For plotting training and evaluation results.
-- **scikit-learn**: For t-SNE visualization.
-
----
-
-## Author
-
-- **Mina Moshfegh**
-
----
-
-### Notes:
-
-- This README provides clear setup instructions, usage details, configuration, and dependency installation steps.
\ No newline at end of file
-- 
GitLab