# SRAAL **Repository Path**: bcpolaris/sraal ## Basic Information - **Project Name**: SRAAL - **Description**: "State-Relabeling Adversarial Active Learning" 的开源代码 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-05-30 - **Last Updated**: 2023-05-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于状态重标注的对抗式主动学习算法 # State-Relabeling Adversarial Active Learning ## 1. 算法描述 在数据标注预算有限的情况下的主动学习,利用生成式模型VAE对数据进行基于变分过程的无监督特征重建学习,并使用状态重标注方法对未标注样本标定不确定性分数,从而使用判别器利用对抗机制,评估未标注样本的采样价值,从而选取更具指导意义的样本进行标注,显著提升主动学习的采样质量和目标性能。 ## 2. 环境依赖及安装 该框架所需的环境依赖如下: - torch >= 1.6.0 - torchvision >= 0.9.1 - numpy == 1.19.2 - tqdm >= 4.31.1 - Pillow == 8.0.1 - matplotlib == 3.3.2 - scipy == 1.5.2 - seaborn >= 0.11.0 - scikit-learn == 0.23.2 - six == 1.15.0 - h5py == 2.8 - nltk == 3.3 建议使用anaconda或pip配置环境。例如: ``` pip install numpy==1.19.2 pip install tqdm==4.31.1 pip install torch==1.6.0 pip install torchvision == 0.9.1 ... ``` ## 3. 运行示例 ### 模型训练 主动学习从10%样本开始采样, 每轮采样5%, 一直持续到采样达到40%, 数据集自动下载无需手动准备。 1. 模型训练和采样,采样结果位于 ./results_cifar100/ ``` python main.py ``` 2. 采样结果性能测试: ``` python acc100.py ``` ## 4. 论文/专利成果 > Beichen Zhang, Liang Li, Shijie Yang, Shuhui Wang, Zheng-Jun Zha and Qingming Huang. State-Relabeling Adversarial Active Learning. CVPR 2020 (Oral)