NegPrompt
1.0.0
現有的及時學習方法已經證明了某些功能在分佈(OOD)檢測中,但是他們缺乏目標數據集中的OOD圖像的感知可能會導致OOD圖像與分配(ID)類別之間的不匹配,從而導致高誤報率。為了解決這個問題,我們介紹了一種名為“ Negprompt”的新型OOD檢測方法,該方法旨在學習一組負面提示,每個提示都代表給定類標籤的負面含義,以描繪ID和OOD圖像之間的邊界。它僅使用ID數據來學習這種負面提示,從而消除了其對外部數據的依賴。此外,當前的方法假設所有ID類的樣本的可用性使它們在開放式學習方案中無效,在培訓數據中,推理階段可以包含新的ID類。相比之下,我們學到的負面提示可以轉移到新型類標籤上。基於各種成像網基準的實驗表明,負面影響超過了最先進的基於學習的OOD檢測方法,並在閉合和開放式攝影庫分類方案中保持硬OOD檢測方面的一致鉛。全文可用AR ARXIV。

否定環境需要做好準備:
conda create -n NegPrompt python=3.8
conda activate NegPrompt
pip install -r requirements.txt首先,製作一個新目錄./data來存儲數據集。
然後像https://github.com/atsumiyai/locoop下載數據集一樣。
以這樣的方式安排數據目錄:
NegPrompt
|-- data/
|-- ImageNet1k/
|-- ILSVRC/
|-- Data/
|-- CLS-LOC/
|-- train/
|-- val/
|protocols/
|-- iNaturalist/
|--images/
|-- SUN/
|--images/
|-- Places/
|--images/
|-- dtd/
|--images/
...
培訓Negprompt的對流OOD:
conda activate NegPrompt
python ./scripts/train_test_ood.py培訓否定效果的硬OOD:
conda activate NegPrompt
python ./scripts/train_test_openset.py @inproceedings { li2024learning ,
title = { Learning Transferable Negative Prompts for Out-of-Distribution Detection } ,
author = { Li, Tianqi and Pang, Guansong and Bai, Xiao and Miao, Wenjun and Zheng, Jin } ,
booktitle = { Proceedings of the IEEE/CVF conference on computer vision and pattern recognition } ,
year = { 2024 }
}