[ICCV 23] DLT: การสร้างโครงร่างแบบมีเงื่อนไขด้วย Joint Discrete-Continuous Diffusion Layout Transformer
พื้นที่เก็บข้อมูลนี้เป็นการใช้งานเอกสาร DLT อย่างเป็นทางการ โปรดดูเอกสารสำหรับรายละเอียดเพิ่มเติมและหน้าโครงการสำหรับภาพรวมทั่วไป
ไม่มีเงื่อนไข | หมวดหมู่ | หมวดหมู่ + ขนาด |
---|---|---|
ข้อกำหนดที่เกี่ยวข้องทั้งหมดแสดงอยู่ใน Environmental.yml เราขอแนะนำให้ใช้ conda เพื่อสร้างสภาพแวดล้อมที่เหมาะสมและติดตั้งการขึ้นต่อกัน:
conda env create -f environment.yml
conda activate dlt
โปรดดาวน์โหลดชุดข้อมูลสาธารณะที่หน้าเว็บต่อไปนี้ ใส่ไว้ในโฟลเดอร์ของคุณและอัปเดต ./dlt/configs/remote/dataset_config.yaml
ตามนั้น
คุณสามารถฝึกโมเดลได้โดยใช้สคริปต์การกำหนดค่าใดๆ ในโฟลเดอร์ configs ตัวอย่างเช่น หากคุณต้องการฝึกโมเดล DLT ที่ให้มาบนชุดข้อมูล publaynet คำสั่งจะเป็นดังนี้:
cd dlt
python main.py --config configs/remote/dlt_publaynet_config.yaml --workdir < WORKDIR >
โปรดดูว่าโค้ดนั้นไม่เชื่อเรื่องพระเจ้าแบบเร่งความเร็ว หากคุณไม่ต้องการบันทึกผลลัพธ์ไปที่ wandb เพียงตั้งค่า --workdir test
เป็น args
หากต้องการสร้างตัวอย่างสำหรับการประเมินชุดทดสอบ ให้ทำตามขั้นตอนเหล่านี้:
# put weights in config.logs folder
DATASET = " publaynet " # or "rico" or "magazine"
python generate_samples.py --config configs/remote/dlt_{ $DATASET }_config.yaml \
--workdir < WORKDIR > --epoch < EPOCH > --cond_type < COND_TYPE > \
--save True
# get all the metrics
# update path to pickle file in dlt/evaluation/metric_comp.py
./download_fid_model.sh
python metric_comp.py
โดยที่ <COND_TYPE>
สามารถเป็น: (all, whole_box, loc) - (ไม่มีเงื่อนไข, หมวดหมู่, หมวดหมู่+ขนาด) ตามลำดับ <EPOCH>
คือหมายเลขยุคของโมเดลที่คุณต้องการประเมิน และ <WORKDIR>
คือเส้นทางไปยัง โฟลเดอร์ที่บันทึกน้ำหนักของโมเดล (เช่น rico_final) ตัวอย่างที่สร้างขึ้นจะถูกบันทึกไว้ในโฟลเดอร์ logs/<WORKDIR>/samples
หาก save
เป็น True
ผลลัพธ์ที่ได้คือไฟล์ดองพร้อมตัวอย่างที่สร้างขึ้น คุณสามารถใช้มันเพื่อคำนวณเมตริก
โฟลเดอร์ที่มีน้ำหนักหลังการฝึกมีโครงสร้างดังนี้:
logs
├── magazine_final
│ ├── checkpoints
│ └── samples
├── publaynet_final
│ ├── checkpoints
│ └── samples
└── rico_final
├── checkpoints
└── samples
หากคุณพบว่าโค้ดนี้มีประโยชน์สำหรับการวิจัยของคุณ โปรดอ้างอิงรายงานของเรา:
@misc{levi2023dlt,
title={DLT: Conditioned layout generation with Joint Discrete-Continuous Diffusion Layout Transformer},
author={Elad Levi and Eli Brosh and Mykola Mykhailych and Meir Perez},
year={2023},
eprint={2303.03755},
archivePrefix={arXiv},
primaryClass={cs.CV}
}