Gợi ý vị trí chèn sơ đồ trong Methodology
Danh sách các chỗ nên thêm hình (ngoài Figure pipeline tổng quan ở §Overview đã có). Mỗi mục ghi rõ: anchor (chèn ở đâu trong
methodology (1).tex), nội dung sơ đồ, caption gợi ý, độ ưu tiên. Bạn xem rồi chọn cái nào làm.Ký hiệu ưu tiên: ⭐⭐⭐ rất nên có (paper/thesis nào cũng vẽ) · ⭐⭐ nên có · ⭐ tuỳ chọn.
A. Phần Data Preparation (§sec:data)
A1. Sơ đồ data pipeline 3 phase ⭐⭐⭐
- Anchor: ngay sau đoạn mở đầu §Data Preparation (đoạn "...operates in three logical phases: selection / image transfer / resize and re-shard...", ~dòng 244–255), trước §Sources.
- Nội dung: flow ngang 3 phase → output:
[SSD: CSV metadata] → Selection → [Cloud notebook] → Image transfer (PhysioNet) → [GPU host] → Resize + tar shard → Unified JSON. Đánh dấu nơi chạy (SSD/cloud/GPU) và artefact trung gian. - Caption: "Three-phase offline data pipeline. Heavy linear-cost work (DICOM join, parsing, resize) runs once; the training loop only consumes the unified JSON + resized image tree."
- Tương đương Figure 2.3 của report mẫu — gần như bắt buộc.
A2. Funnel lọc 4 tầng (selection) ⭐⭐⭐
- Anchor: đầu §Selection Pipeline (sec:selection, ~dòng 283–288), hoặc ngay sau paragraph (d) Stratified sampling.
- Nội dung: sơ đồ phễu (funnel) thu hẹp dần:
~227k studies → (a) frontal-only → (b) report parse (cần cả Findings+Impression) → (c) length-outlier removal → (d) stratified patient-disjoint sampling → 50k (40k/5k/5k). Ghi số study còn lại sau mỗi tầng nếu có. - Caption: "Four-stage filter chain reducing the full MIMIC-CXR corpus to the 50,000-study working subset."
- Rất "ăn điểm" và dễ hiểu; nên có số liệu thật ở mỗi tầng.
A3. Sơ đồ rẽ nhánh report_mode / image_mode → samples ⭐⭐
- Anchor: sau bảng
tab:reportmodes(~dòng 418), trong §Unified Instruction JSON. - Nội dung: 1 study → (image_mode: frontal_only_split → 1 ảnh) → (report_mode: split_cascade → 2 sample:
findingstừ ảnh;impressiontừ ảnh + GT findings). Minh hoạ cascade nối findings→impression. - Caption: "How one study is serialised into training samples under
report_mode=split_cascadeandimage_mode=frontal_only_split."
B. Phần Model Architecture (§sec:arch)
B1. RAD-DINO patchification ⭐⭐
- Anchor: trong §Image Encoder (sec:encoder), sau câu "...emits 1369 patch tokens of dimension 768... class token is discarded..." (~dòng 453–456).
- Nội dung:
518×518 image → ViT-B/14 chia patch 14×14 → grid 37×37 = 1369 tokens (768-d) [+ CLS bị loại]. Có thể thêm overlay heatmap minh hoạ patch. - Caption: "RAD-DINO patchification: a 518×518 chest X-ray becomes 1369 patch tokens (768-d); the [CLS] token is dropped before projection."
B2. Chi tiết module MLP Projection ⭐⭐⭐
- Anchor: trong §MLP Projection (sec:projection), ngay sau khối align equations (eq:tap, ~dòng 501) hoặc cuối tiểu mục.
- Nội dung:
Patch features P (1369×768) + 32 learnable query Q0 → CrossAttn 8-head → H0 (32×768) → Linear W1 + GELU + Dropout → H1 (32×1024) [TAP cho ITC head] → Linear W2 → V (32×4096). Đánh dấu nhánh 1024-d rẽ sang ITC head. - Caption: "MLP projection module. A 32-query cross-attention pool compresses 1369 patch tokens; the 1024-d intermediate is the tap point routed to the ITC head (Stage 1) or onward to the LLM (Stage 2)."
- Module trung tâm của model — nên vẽ kỹ.
B3. CheXpert classifier → PNU string ⭐⭐
- Anchor: trong §CheXpert Classifier (sec:chex), sau khối verbatim ví dụ PNU (~dòng 537) hoặc cuối tiểu mục.
- Nội dung:
RAD-DINO [CLS] embedding → MLP head → 14×3 logits (per-label argmax) → format_pnu() → PNU 3-section string → chèn vào prompt giữa visual tokens và instruction. Phân biệt nhánh train (GT từ CSV) vs eval (classifier tự predict). - Caption: "Auxiliary CheXpert head: the global RAD-DINO embedding is mapped to a 14×3 (Positive/Negative/Uncertain) tensor and serialised into the PNU prompt block."
B4. LoRA injection trên attention block ⭐⭐
- Anchor: trong §Language Model and PEFT (sec:llm), sau đoạn mô tả LoRA trên q/k/v/o (~dòng 584–593).
- Nội dung: 1 transformer block: base weight W (4-bit NF4, frozen) + adapter
ΔW = B·A(rank 16, trainable) trên q/k/v/o; FFN để nguyên. Có thể thêm công thứch = Wx + (α/r)·BAx. - Caption: "LoRA adaptation: rank-16 low-rank adapters on q/k/v/o of every Vicuna block; the 4-bit base weights stay frozen, the feed-forward sublayers are untouched."
B5. Anatomy của prompt + <image> expansion ⭐⭐⭐
- Anchor: trong §Prompt Assembly (sec:prompt), sau khối verbatim prompt skeleton (
dòng 606) và/hoặc sau đoạn mô tả expand 31 vị trí (dòng 608–615). - Nội dung: hai phần:
- Prompt anatomy — thanh ngang chia slot, tô màu theo task:
[SYSTEM] [<image>] [PNU block] [task context: GT findings / empty] [instruction] [ASSISTANT: target]. - Image-token expansion —
1 <image> placeholder → thay bằng 32 visual tokens → attention mask & label tensor nở thêm 31 vị trí; vùng visual + prompt + pad gán -100.
- Prompt anatomy — thanh ngang chia slot, tô màu theo task:
- Caption: "Prompt assembly and image-token expansion. The single
<image>placeholder is replaced by 32 visual tokens; attention mask, position ids, and labels are expanded by 31, with all non-target positions masked to −100." - Quan trọng cho phần dễ sai nhất của pipeline (loss masking).
C. Phần Training Strategy (§sec:training)
C1. Sơ đồ curriculum 3 stage ⭐⭐⭐
- Anchor: đầu §Training Strategy, sau đoạn intro (~dòng 665–674), trước §Stage 0.
- Nội dung: 3 khối nối tiếp, mỗi khối ghi module frozen/trainable + loss:
Stage 0: RAD-DINO frozen → MLP head (BCE, U-MultiClass).Stage 1 (ITC): encoder frozen, projection+ITC head trainable, LLM không load, loss InfoNCE.Stage 2: encoder+classifier+base-LLM frozen, projection+LoRA trainable, loss causal CE. Mũi tên: projection weights Stage 1 → nạp vào Stage 2.
- Caption: "Two-stage training curriculum (preceded by the Stage 0 classifier). Stage 1 aligns the projection contrastively without loading Vicuna; Stage 2 loads the full model and instruction-tunes projection + LoRA."
C2. Sơ đồ contrastive Stage 1 (kiểu CLIP) ⭐⭐⭐
- Anchor: trong §Stage 1 (sec:stage1), sau equation InfoNCE (eq:itc, ~dòng 720).
- Nội dung: hai nhánh:
- Image:
image → RAD-DINO → projection → ITC head → mean-pool → 128-d L2-norm. - Text (offline):
findings (fallback impression) → CXR-BERT → 128-d L2-norm → cache {study_id → tensor}. - Ma trận tương đồng
B×B, đường chéo = positive, InfoNCE đối xứng.
- Image:
- Caption: "Stage 1 image–text contrastive alignment. Text embeddings are precomputed offline with CXR-BERT; only the projection + ITC head receive gradients."
C3. Sơ đồ loss masking (label tensor) ⭐⭐
- Anchor: trong §Loss Masking and Image-Token Accounting (~dòng 781–797).
- Nội dung: một dải token tuyến tính tô màu:
[system −100][32 visual −100][PNU −100][instruction −100][pad −100]vs[assistant response: loss được tính]. Minh hoạ chỉ vùng response đóng góp cross-entropy. - Caption: "Label masking. Cross-entropy is computed strictly on assistant-response tokens; system prompt, visual span, PNU block, instruction, and padding are all set to −100."
D. Phần Evaluation (§sec:eval) — nếu giữ trong Methodology
D1. Sơ đồ luồng evaluation ⭐
- Anchor: đầu §Evaluation Protocol hoặc trong §Tasks and Held-Out Data (~dòng 877–896).
- Nội dung:
test image → [CheXpert PNU predicted] (+ GT findings nếu impression) → model greedy decode → hypothesis → {NLG metrics: BLEU/ROUGE/METEOR/BERTScore} + {Clinical: CheXbert F1} + {VQA: EM/token-F1/LLM-judge}. - Caption: "Evaluation flow per task, from test image to the metric families reported."
D2. Sơ đồ CheXbert F1 ⭐
- Anchor: trong §Clinical Correctness (sec:clinical-f1, ~dòng 938–961).
- Nội dung:
generated report + reference report → CheXbert labeler → 2 vectors 14 nhãn → binarise (−1,0→neg) → macro-F1/P/R. - Caption: "Clinical F1: both generated and reference reports are labeled by CheXbert; the 14-label vectors are compared after binarisation."
Tổng hợp ưu tiên
| # | Sơ đồ | Mục | Ưu tiên |
|---|---|---|---|
| A1 | Data pipeline 3 phase | §Data Prep | ⭐⭐⭐ |
| A2 | Funnel lọc 4 tầng | §Selection | ⭐⭐⭐ |
| B2 | MLP Projection chi tiết | §Projection | ⭐⭐⭐ |
| B5 | Prompt anatomy + <image> expansion |
§Prompt | ⭐⭐⭐ |
| C1 | Curriculum 3 stage | §Training | ⭐⭐⭐ |
| C2 | Contrastive Stage 1 (CLIP-style) | §Stage 1 | ⭐⭐⭐ |
| A3 | report_mode/image_mode → samples | §JSON | ⭐⭐ |
| B1 | RAD-DINO patchification | §Encoder | ⭐⭐ |
| B3 | CheXpert → PNU | §CheXpert | ⭐⭐ |
| B4 | LoRA injection | §LLM | ⭐⭐ |
| C3 | Loss masking | §Masking | ⭐⭐ |
| D1 | Luồng evaluation | §Eval | ⭐ |
| D2 | CheXbert F1 | §Clinical F1 | ⭐ |
Nếu muốn, tôi có thể chèn sẵn các marker
% [INSERT FIGURE Xn: ...]vào đúng vị trí trongmethodology (1).tex(chỉ là comment, không ảnh hưởng biên dịch) để bạn thấy ngay chỗ nào cần hình khi mở file.