ajaudio / studyAUDIO-JEPA · RESEARCH NOTES
15 phút đọc · Toàn văn
Mục lục bài · 8 mục

08 — Lộ trình học, bài tập và câu hỏi tự kiểm tra#

1. Cách học để có gốc rễ#

Mỗi buổi có bốn bước: nhớ lại không nhìn tài liệu → đọc để sửa hiểu nhầm → tự giải thích một ví dụ → ghi một câu hỏi còn mở. Không cần GPU cho lộ trình này.

Thời lượng gợi ý 60–90 phút/buổi; có thể tách một buổi thành nhiều lần đọc. Đây là thứ tự học, không phải lịch cố định hay automation. Không cần gấp rút học hết trước ngày nhận kết quả paper.

BuổiNội dung chínhHọc liệuSản phẩm tự làm
1Speech information, source–filter, samplingChương 01 mục 1–2Sơ đồ content/speaker/prosody/channel/process
2STFT, mel, cepstrum, patch geometryChương 01 mục 3–5Truy vết shape và thông tin bị mất từ waveform
3Xác suất, logits, optimization, representation geometryChương 01 mục 6–8Giải thích posterior vs LLR và rank vs usefulness
4Generation/task taxonomyChương 02 mục 1–5Phân loại một TTS nhiều thành phần và task của paper mình
5Datasets và shift taxonomyChương 02 mục 6–7Hộ chiếu của ASV2019,DFADD,ITW; ghi confounds
6SSL targets và objectivesChương 03 mục 1–4Bảng wav2vec2/HuBERT/MAE/data2vec/JEPA
7JEPA mechanism và maskingChương 03 mục 5–6Vẽ gradient/EMA; mô tả hai mask cùng ratio nhưng khác task
8Collapse, anisotropy, predictor scoringChương 03 mục 7–10Các counterexamples: loss thấp, rank cao, fake dễ dự đoán
9Detector recipesChương 04Đặt10 kỹ thuật vào vị trí pipeline, ghi assumption
10Metrics, calibration, split, uncertaintyChương 05 mục 1–7Giải bài logits/DCF và phân loại leakage
11Paper của mình và historical evidenceChương 06Thuyết trình 90 giây; bảng claim→evidence→limit
12Synthesis và đọc literature mớiChương 07 + mục 5–6 dưới đâyMột phiếu paper và ba câu hỏi khoa học, chưa chọn đề tài

2. Năm bài tập có lời giải#

A. Tính token và temporal resolution#

Input T×F=256×128T\times F=256\times128. Patch8×32:

Nt=32,  Nf=4,  N=128.N_t=32,\;N_f=4,\;N=128.

Nếu đổi patch4×32, input giữ nguyên: Nt=64,Nf=4,N=256N_t=64,N_f=4,N=256. Temporal positions gấp đôi; phần dense-attention interactions tăng khoảng4 lần theo N2N^2, nhưng tổng runtime không nhất thiết tăng đúng4 lần vì còn projection, MLP, overhead và hardware.

Hop10ms cho nominal patch span80ms và40ms tương ứng. Không được gọi nó là toàn receptive field; STFT window và attention làm context rộng hơn.

Nếu dùng waveform2,56 s ở32kHz, window25ms=800 samples, hop10ms=320 samples, không center-padding, số complete frames là:

1+⌊81920−800320⌋=254.1+\left\lfloor\frac{81920-800}{320}\right\rfloor=254.

Pad lên256 thêm hai frames hằng. Trong log-mel, zero không mặc nhiên là giá trị log-energy của im lặng.

Bài học: waveform duration, valid frames, patch positions và receptive field là bốn khái niệm khác nhau.

B. Vì sao chấm một logit có thể sai ranking?#

MẫuA có (zB,zS)=(7,6)(z_B,z_S)=(7,6); mẫuB có (4,0)(4,0).

  • Chấm zBz_B: A cao hơn B.
  • Chấm zB−zSz_B-z_S: A=1, B=4.
  • Softmax genuine probability: A≈0,731, B≈0,982.

MẫuB được model coi genuine hơn. Logit riêng không bảo toàn thứ tự posterior; logit difference thì có. Điều này chưa chứng minh probabilities calibrated ngoài miền.

C. Accuracy cao vẫn không đủ tốt#

Ví dụ minh họa, không phải số liệu dự án: deployed prior99% genuine,1% spoof. Một hệ có FRR1%, spoof false acceptance10% tại một threshold:

Accuracy=0.99(0.99)+0.01(0.90)=98.91%.Accuracy=0.99(0.99)+0.01(0.90)=98.91\%.

Nếu Cmiss=1,Cfa=100C_{miss}=1,C_{fa}=100:

DCF=1(0.99)(0.01)+100(0.01)(0.10)=0.1099.DCF=1(0.99)(0.01)+100(0.01)(0.10)=0.1099.

Always-accept genuine đạt99% accuracy nhưng false acceptance spoof100%, DCF=1. Accuracy cao hơn mà chi phí tệ hơn. Đây là chi phí chưa normalized tại operating point; không suy EER chỉ từ cặp FRR/FAR này.

D. Reconstruction average không chứng minh encoder quên detail#

Với một context cc, target tt nhận±1 với xác suất1/2. Dự đoán squared-loss tối ưu là0, expected loss1. Sampling±1 có thể tạo chi tiết “thật” hơn nhưng expected squared error lớn hơn khi không biết target draw.

Điều suy ra: squared-error decoder có lý do trả conditional mean. Điều không suy ra: encoder không giữ cue khác trong context; hoặc JEPA target giữ±1 trong embedding. Muốn trả lời phải đo representations và thiết kế task, không dùng trực giác output làm định lý encoder.

E. Bằng chứng source shortcut cần gì hơn một plot?#

Giả sử source classifier đọc embedding đoán VCTK/LibriTTS tốt. Ta biết source information decodable. Chưa biết detection head dựa vào nó.

Một thought experiment: thay source–label association trong training, giữ evaluation samples cố định, kiểm decisions đổi thế nào. Phải kiểm đồng thời content, generator, channel, class balance và sample count. Nếu can thiệp nhiều yếu tố cùng lúc, kết luận reliance vẫn bị confounded.

Không cần chạy thí nghiệm này trong buổi học. Mục tiêu là tự nói được quan sát nào phân biệt “có source info” và “dùng source info để quyết định fake”.

3. Câu hỏi và đáp án gợi ý#

Hãy trả lời trước khi đọc cột phải. Mức0=chỉ nhận tên;1=giải thích định nghĩa;2=giải thích cơ chế;3=đưa counterexample và phép kiểm. Nhắm mức2 cho mọi câu và mức3 cho các câu JEPA/evaluation.

#Câu hỏiĐáp án gợi ý
1Vì sao16→32kHz không thêm high-frequency evidence?Upsampling nội suy từ mẫu đã có; thông tin trên Nyquist của nguồn đã không còn.
2Window,hop,FFT size khác nhau thế nào?Window điều khiển time-frequency trade-off; hop lấy mẫu thời gian; FFT padding làm lưới mịn hơn nhưng không thêm physical resolution.
3Vì sao128 tokens không phải128 temporal frames?Patch grid có cả time và frequency; trong bài là32×4.
4Vì sao mel hữu ích với speech nhưng có thể bỏ forensic cue?Mel gộp tần số theo perceptual scale; nhiều phổ khác nhau có thể cho cùng band energies.
5TTS+flow matching+GAN vocoder thuộc loại nào?TTS là task; flow matching là acoustic generation mechanism; GAN là waveform-vocoder mechanism.
6Neural-codec resynthesis có luôn là spoof không?Phụ thuộc task label/threat model; cuộc gọi thật qua codec có thể vẫn hợp lệ.
7Unseen generator khác unseen corpus thế nào?Generator-disjoint kiểm process mới; corpus shift thường đổi nhiều yếu tố genuine/source/channel cùng lúc.
8Holdout attack cùng vocoder với train có family-disjoint không?Không được mặc định; shared components còn tạo similarity.
9Partial fake10ms với patch80ms có thể detect không?Có thể tác động feature, nhưng localization granularity và boundary precision cần protocol/model riêng; không suy bằng nominal patch size alone.
10Contrastive và discrete target có loại trừ nhau không?Không; wav2vec2 có quantized targets và contrastive discrimination.
11HuBERT khác MAE ở đâu?HuBERT predict pseudo-unit IDs; MAE reconstruct input values.
12data2vec có liên quan JEPA thế nào?Cũng predict continuous contextualized teacher representations; cần phân biệt recipe/architecture thay vì gọi JEPA là latent prediction đầu tiên.
13Target encoder trong Audio-JEPA nhận gradient không?Không qua matching loss; weights được EMA cập nhật từ context encoder.
14EMA và stop-gradient có cùng vai trò không?Một bên rule update target; một bên chặn gradient path.
15JEPA có bắt buộc EMA teacher không?Không với mọi variant; phải mô tả formulation cụ thể.
16Vì sao random masks có thể quá dễ?Target gần visible neighbors; local correlation có thể đủ giải task mà không học cue mong muốn.
17Mask khó hơn luôn tốt hơn không?Không; task có thể không còn predictable information hữu ích.
18Loss gần0 có chứng minh representation tốt không?Không; constant embeddings có thể match tốt mà không chứa sample information.
19High cosine có chứng minh collapse không?Không; anisotropy phải đọc cùng variance, spectrum, probes và domain.
20Rank cao có chứng minh useful information không?Không; random noise rank cao, và centered tiny noise cũng có entropy-rank cao.
21JEPA trong paper mình được dùng ở bước nào?Released pretraining cung cấp encoder; downstream detection học bằng CE, predictor không dùng.
22Predictor error cao có luôn là fake không?Không; genuine OOD/noisy khó đoán, fake sạch có thể dễ đoán.
23Frozen encoder có phải linear probe không?Không; nonlinear pooling/head vẫn được train trong paper mình.
24Native mel config tốt hơn trên A05 mà kém eval nói điều gì?Validation/task interactions; không đủ kết luận native config vô ích nói chung.
25RawBoost và SpecAugment khác gì?Waveform perturbations mô hình nuisance vs masks trên feature; khác task information bị đổi.
26CMVN có thể hại detection vì sao?Nó xóa scale/mean variation, có thể xóa cả nuisance lẫn artifact.
27Vì sao EER tốt mà fixed-threshold cost kém?Ranking và score calibration/threshold transfer khác nhau.
28Pooled EER khác mean per-corpus EER ở đâu?Pooled có chung threshold và weights theo số samples; per-corpus EER tối ưu threshold từng corpus.
29Class weighting có ảnh hưởng calibrated posterior không?Có thể đổi effective training objective/prior; logits không tự là deployed probabilities.
30Shared VCTK có chứng minh sample leakage không?Không; source relation khác exact/near-duplicate overlap.
31Test đã dùng chọn config còn untouched không?Không; cần coi là development/exploration và giữ evaluation mới.
32Common downstream recipe kiểm soát objective causal effect chưa?Chưa; pretraining data realization,mask,budget,native input và nhiều yếu tố còn khác.
33Ba seed ranges không chồng có significance không?Là descriptive pattern; chưa là test và chưa bao phủ evaluation sampling uncertainty.
34Bootstrap samples có thay nhiều training seeds không?Không; đo hai nguồn uncertainty khác nhau.
35Domain probe cao có chứng minh detector dùng source không?Chỉ decodability; cần reliance/intervention evidence.
360,5 M params học có nghĩa inference model0,5 M không?Không; encoder85,4 M vẫn chạy.
37Tăngdata100→300h với 20 epochs có isolate diversity không?Không; samples seen/compute cũng tăng.
38Một config patch nhỏ hơn thất bại có bác bỏ mọi fine-grained cue không?Không; input adaptation, optimization và architecture vẫn confounded.
39ASR improvement của JEPA mới nói gì cho detection?Motivation/related evidence về representation, chưa là detection evidence.
40Train split của test corpus có trong training luôn là gian lận không?Không; có thể valid in-domain task, nhưng khác unseen-source/zero-shot comparison.

4. Mười hiểu nhầm nên tự bắt được#

  1. JEPA là tên của một ViT architecture.
  2. Non-contrastive chỉ có JEPA; latent prediction xuất hiện lần đầu ở Audio-JEPA.
  3. EMA và stop-gradient tự chứng minh không collapse.
  4. MAE reconstruction làm mượt nên encoder chắc chắn mất forensic details.
  5. Representation isotropic/rank cao chắc chắn hữu ích hơn.
  6. Shared-source performance pattern đã chứng minh source bias là nguyên nhân.
  7. EER thấp đủ để dùng score như probability.
  8. Trainable params thấp đồng nghĩa total inference cost thấp.
  9. Thêm dataset/augmentation chắc chắn tăng generalization.
  10. Thêm module và giảm EER tự tạo đóng góp đủ mạnh cho hội nghị lớn.

Mỗi hiểu nhầm cần có một counterexample từ các chương trước. Đây là cách biến taxonomy thành hiểu biết, thay vì chỉ nhớ thuật ngữ.

5. Phiếu đọc một paper để tự tổng hợp#

Tên/version/ngày:
Nguồn primary, mức đã đọc:

Task và threat model:
Label definition; output; operating point:
Train / pretrain / dev / final test; overlap:

Input representation, resolution, token geometry:
Encoder / predictor / teacher / backend:
Target source và target type:
Loss; gradient paths; update rules; anti-collapse:
Adaptation và checkpoint selection:

Main claim:
Evidence trực tiếp hỗ trợ:
Những confounds còn lại:
Uncertainty được đo / chưa đo:
Baseline nào có thể giải thích lợi ích mà không cần cơ chế mới:

Một điều mình đã hiểu:
Một điều phải kiểm code/protocol:
Một counterexample:
Một câu hỏi khoa học nảy ra:

Không cần viết abstract bài mới ở bước này. Đích là tách claim của tác giả, evidence paper cho, và suy luận của mình.

6. Từ kiến thức tới một bài mới: taxonomy câu hỏi, chưa chọn hướng#

Loại đóng gópCâu hỏi điển hìnhKiến thức phải có
MechanismEncoder giữ/bỏ cue nào và vì sao?SSL objectives, probes, intervention, confounds
MethodMột thiết kế giải quyết failure nào?Mechanism, architecture, matched baselines
Protocol/benchmarkEvaluation hiện tại đo sai/thiếu điều gì?Task taxonomy, leakage, metrics, reproducibility
Data/training recipeDiversity/exposure/sampling tác động thế nào?Generators, sources, balanced designs, scaling
EfficiencyCó thể giữ quality dưới budget nào?Adaptation, compute, latency, Pareto comparison
ReliabilityScore/ngưỡng có hoạt động dưới shift không?Calibration, operating costs, uncertainty, OOD

Một câu hỏi tốt nêu được: đại lượng muốn hiểu → yếu tố thay đổi → yếu tố giữ cố định → competing explanations → observation có thể bác bỏ giả thuyết.

Ví dụ cấu trúc, không phải đề xuất đã chọn: “Ở cùng input/data/budget, thay target type có đổi khả năng đọc cueX ngoài nguồn training hay không, và change đó còn sau khi kiểm channel/speaker không?”

Không cần hứa hẹn SOTA để có câu hỏi khoa học tốt. Nhưng cũng không nên gọi mọi negative result là đóng góp: thiết kế phải trả lời một câu hỏi mới, evidence đủ mạnh và scope có ích cho cộng đồng. Học nền tảng giúp xác định điều đó trước khi tiêu GPU.

7. Bài kiểm tra cuối#

Không nhìn tài liệu, hãy:

  • Vẽ pipeline của paper và nói shape ở mọi bước.
  • Phân loại 5 SSL models bằng target/source/loss/anti-collapse.
  • Phân biệt 5 loại generalization và3 dạng contamination.
  • Giải thích vì sao JEPA thắng 3/4 comparisons mà objective claim còn là hypothesis.
  • Dùng một historical failure để chỉ ra confound và phép kiểm còn thiếu.
  • Viết 3 câu hỏi khoa học từ 3 ô khác nhau của taxonomy, mỗi câu có counterexample.

Nếu làm được, bạn đã có nền để bắt đầu nghĩ bài mới một cách có cơ sở. Nếu chưa, quay lại đúng concept còn vướng; không cần đọc lại toàn bộ từ đầu.

8. Từ điển nhanh Anh–Việt#

Thuật ngữNghĩa dùng trong bộ tài liệu
UtteranceMột phát ngôn/đơn vị audio trong protocol
Bona fide / genuineLớp hợp lệ theo định nghĩa task, thường là speech người thật
SpoofLớp tấn công/không hợp lệ theo threat model; không chỉ TTS
Countermeasure (CM)Hệ chống spoofing
Front-end / back-endKhối tạo feature / khối đọc feature để cho score
Acoustic featureĐặc trưng tính từ signal, như log-mel/LFCC
Representation / embeddingBiểu diễn học được hoặc vector đặc trưng; token embeddings có thể là một chuỗi
TokenĐơn vị xử lý; có thể là patch vector, discrete unit hoặc codec symbol, tùy model
TargetĐáp án supervision của task học; target SSL không nhất thiết là genuine/spoof label
Teacher / studentKhối cung cấp target / khối học match target
Stop-gradientChặn gradient qua một nhánh tính toán
EMATrung bình trượt mũ của trọng số; update rule khác gradient descent
MaskingChe/bỏ một phần thông tin; cần nói location và implementation
Pretraining / fine-tuningHọc representation ban đầu / thích nghi cho task sau
Linear probeEncoder cố định, đánh giá qua classifier tuyến tính
Inductive biasƯu tiên nghiệm đến từ thiết kế/recipe trước khi nhìn hết dữ liệu
NuisanceBiến không phải mục tiêu chính nhưng ảnh hưởng quan sát
ArtifactDấu vết của quá trình tạo/biến đổi; cần phân biệt với source/channel cue
ShortcutQuy tắc dễ học nhưng không phản ánh quan hệ mong muốn hoặc không bền khi chuyển điều kiện
ConfoundYếu tố thay cùng intervention khiến khó quy effect cho một nguyên nhân
AblationBỏ/thay thành phần để đo effect trong một thiết kế đối chứng
EstimandĐại lượng/câu hỏi effect mà thiết kế muốn ước lượng
CalibrationMức score có ý nghĩa xác suất/LLR phù hợp với quyết định
DiscriminationKhả năng xếp/phân biệt hai lớp
HoldoutDữ liệu tách riêng cho một vai trò; phải nói development hay final evaluation
OOD / domain shiftDữ liệu ngoài/chuyển khỏi distribution được học/phát triển
Anisotropy / collapseTập trung theo một số hướng / mất biến thiên-thông tin ở mức nghiêm trọng; không đồng nghĩa
GeneralizationHoạt động ở mẫu/điều kiện chưa thấy; cần chỉ định trục
ReproducibilityKhả năng truy vết và tái tạo protocol, score, kết quả
ProvenanceThông tin về nguồn/lịch sử audio; khác artifact detection
↓ Bản Markdown nguyên gốcGiữ nguyên nội dung · Công thức, bảng và nguồn đầy đủ.Các chat bàn giao được mở trong Codex.

Gõ từ khóa để tìm bài học và đoạn liên quan.