1 poin oleh GN⁺ 2024-05-13 | 1 komentar | Bagikan ke WhatsApp
  • Token bernorma tinggi pada feature map ViT terutama muncul di area latar belakang dengan informasi rendah, dan ditafsirkan sebagai gejala bahwa patch token didaur ulang seperti ruang penyimpanan untuk komputasi internal
  • Solusinya adalah menambahkan register token yang terpisah dari patch gambar ke dalam urutan input, sehingga peran komputasi internal dipisahkan ke token khusus
  • Pada ViT supervised maupun self-supervised, artefak berkurang dan feature map serta attention map menjadi lebih mulus, sehingga menguntungkan untuk tugas visual downstream
  • Peningkatan pada object discovery dan dense prediction dilaporkan, tetapi pada OpenCLIP performa object localization sedikit menurun, sehingga klaim “meningkat di semua model” direvisi
  • Menambahkan 4–16 register token menimbulkan biaya komputasi tambahan 2–6%, dan menambah jumlah token tidak selalu meningkatkan performa tugas dense

Artefak yang Terungkap pada Feature Map ViT

  • Vision Transformer digunakan sebagai alat yang kuat untuk pembelajaran representasi visual, tetapi artefak ditemukan pada feature map ViT supervised maupun self-supervised
  • Artefak diamati sebagai token bernorma tinggi yang muncul saat inferensi
    • Terutama terjadi di area latar belakang gambar yang informasinya rendah
    • Tampaknya jaringan mendaur ulang token tersebut untuk komputasi internal
  • Token-token ini berasal dari patch latar belakang yang mirip dengan patch di sekitarnya, dengan sedikit informasi patch lokal tetapi dinilai membawa lebih banyak informasi global gambar
  • Pada DINOv2 dan ViT lain, penurunan resolusi spasial dan akurasi attention map dapat memengaruhi performa downstream untuk object discovery dan localization

Pendekatan Register Token

  • Solusi yang diusulkan adalah menambahkan register token yang terpisah dari patch gambar ke urutan input Vision Transformer
  • Register diposisikan terpisah dari patch token gambar seperti CLS token, tetapi diringkas sebagai token yang tidak langsung digunakan dalam perhitungan loss
  • Tujuannya adalah agar patch token yang ada tidak dipakai seperti “ruang penyimpanan” untuk komputasi internal, melainkan peran itu diambil oleh token khusus
  • Pendekatan ini berkaitan dengan Memory Transformer, tetapi analisis artefak fitur dan penambahan token baru untuk memperbaikinya adalah pendekatan yang spesifik pada analisis makalah ini

Perubahan pada Feature Map dan Tugas Downstream

  • Penambahan register dilaporkan menghilangkan artefak tersebut pada model supervised maupun self-supervised
  • Feature map dan attention map menjadi lebih mulus sehingga lebih menguntungkan untuk pemrosesan visual downstream
  • Dirangkum bahwa metode ini mencapai state of the art baru pada dense visual prediction task untuk model visual self-supervised
  • Metode object discovery juga menjadi dapat digunakan pada model yang lebih besar
  • Pada DINOv2 dan DeiT-III, performa object discovery meningkat, sementara performa tugas tingkat gambar secara umum tetap terjaga

Pengecualian per Model dan Analisis Tambahan

  • Pada OpenCLIP, penambahan register tidak memperbaiki hasil object localization, dan angka pada tabel menunjukkan sedikit penurunan performa
    • Jawaban penulis mengakui bahwa pernyataan “performa object discovery meningkat pada semua model” tidak didukung oleh angka
    • Bagian tersebut direvisi di Section 3.3
  • Pada OpenCLIP, Figure 7 menunjukkan penurunan norm, tetapi hal itu tidak berlanjut menjadi peningkatan object localization di Table 3, dan ketidaksesuaian ini dibahas
    • Dalam evaluasi LOST, untuk tiap model dipilih embedding dengan performa terbaik di antara keys, queries, dan values
    • Pada CLIP, values adalah yang terbaik, dan artefak terlihat pada keys atau queries tetapi tidak pada values, sehingga konsisten dengan Table 3 dan analisis kualitatif
  • Pada MAE, tampaknya “outlier patches” yang sama tidak muncul
    • Hal ini mungkin karena MAE dilatih hanya dengan local loss sehingga tidak perlu, atau lebih sedikit perlu, mengumpulkan informasi global
    • Akurasi klasifikasi ImageNet linear probing pada MAE-ViT-Large adalah 75%, lebih rendah dibanding metode SSL lain

Performa, Biaya, dan Keterbatasan

  • Register adalah metode yang sederhana, tetapi token tambahan meningkatkan biaya komputasi
    • Penambahan 4–16 register token dilaporkan meningkatkan biaya komputasi sebesar 2–6%
  • Penambahan jumlah register tidak selalu menghasilkan peningkatan pada tugas dense
    • Saat naik dari 0 ke 1 register, artefak hilang dan segmentation serta depth prediction membaik
    • Setelah 1 register, penambahan register lebih banyak tidak banyak meningkatkan segmentation dan depth prediction karena feature map sudah bersih
    • Performa classification cenderung membaik tambahan ketika jumlah register lebih banyak, tetapi belum ada intuisi yang jelas tentang alasannya
  • Pada dataset depth NYU, RMSE sedikit meningkat saat jumlah register dinaikkan dari 8 ke 16
    • Hyperparameter optimal mungkin berubah karena panjang urutan bertambah
    • Selisih RMSE 0,03 dari 8 ke 16 lebih kecil dibanding selisih 0,1 dari 0 ke 1, sehingga bisa jadi hanya noise

Penerimaan OpenReview dan Poin Ulasan

  • Keputusan OpenReview adalah Accept (oral)
  • Dalam meta-review, empat reviewer semuanya memberi skor 8, dan kontribusi teknis makalah ini diakui
  • Para reviewer menyoroti kekhawatiran soal ketidaksesuaian performa, bias dataset dan hubungannya dengan model SSL, pemilihan pengaturan optimisasi, serta pengaruh gradient clipping
  • Dalam proses rebuttal, penulis menambahkan eksperimen tambahan dan analisis appendix
  • Diskusi selanjutnya memperkuat analisis mekanisme internal, seperti apakah register mengambil alih perilaku outlier, apakah image token kembali menjadi lebih lokal, dan bagaimana norm CLS token berubah

1 komentar

 
GN⁺ 2024-05-13
Opini Hacker News
  • Menurut makalahnya, register adalah token tambahan yang dapat dipelajari yang disisipkan ke urutan input selama pelatihan model Vision Transformer.
    Token ini ditambahkan setelah lapisan embedding patch sebagai nilai yang dapat dipelajari, mirip token [CLS], lalu di akhir Vision Transformer token register dibuang dan hanya token [CLS] serta token patch yang digunakan sebagai representasi gambar.
    Token ini memberi model ruang untuk menyimpan, memproses, dan mengambil informasi global selama forward pass, sehingga token patch tidak perlu dipaksa dipakai untuk tujuan tersebut.
    Hasilnya, artefak dan token outlier bernorma tinggi yang muncul pada feature map Vision Transformer terlatih menghilang, feature map menjadi lebih mulus, dan performa dense prediction serta penemuan objek tanpa supervisi juga membaik.
    Biaya inferensi hanya naik 2%, tetapi performa ViT meningkat cukup besar, jadi ini terlihat seperti hasil yang rapi dan nyaris seperti makan siang gratis.

    • Tren menambahkan token di sana-sini lalu semuanya bekerja seperti sulap ini terlihat cukup mencurigakan, dan kalau sampai dikaitkan dengan teori probabilitas, orang-orang dari matematika diskret sepertinya sulit menganggapnya enteng.
      Regex probabilistik saja sudah satu hal, tetapi ini adalah tingkat kebebasan matematis yang sama sekali berbeda.
      Tetap saja, sungguh menakjubkan bahwa ini bekerja.
    • Pernah ada juga upaya menambahkan beberapa token [CLS] ke BERT, tetapi hasilnya kurang mengesankan: https://arxiv.org/pdf/2210.05043
    • Saya penasaran apakah Transformer teks umum juga bisa mengambil pelajaran dari sini.
      Ini terdengar mirip dengan attention sink atau pause token.
    • Untuk memakai token seperti ini, hasil dari lapisan akhir harus terlebih dahulu dikembalikan menjadi token, lalu di-embedding lagi pada pass berikutnya.
      Saya penasaran apakah ada yang pernah meneliti cara meneruskan output mentah dari satu pass langsung sebagai input berikutnya.
  • Sepertinya terkait: "Let's Think Dot by Dot: Hidden Computation in Transformer Language Models" https://arxiv.org/abs/2404.15758
    Makalah ini berpendapat bahwa tidak jelas apakah peningkatan performa chain-of-thought pada model bahasa berasal dari pemecahan tugas yang mirip manusia, atau dari komputasi tambahan yang diberikan oleh token ekstra.
    Mereka menunjukkan bahwa Transformer dapat menyelesaikan tugas algoritmik sulit yang sebelumnya gagal dijawab tanpa token perantara, hanya dengan token pengisi tak bermakna seperti ......; namun untuk melatih penggunaan token pengisi seperti itu dibutuhkan supervisi yang spesifik dan rapat.
    Karena itu saya penasaran apakah memasukkan token komputasi/register khusus ke LLM teks juga akan memberi manfaat.
    Diskusi tambahan: https://news.ycombinator.com/item?id=40182695, https://www.reddit.com/r/LocalLLaMA/comments/1cf2w5a/transfo...

  • Dalam beberapa tahun terakhir saya menguji puluhan, mungkin lebih dari 100, makalah dan ide di bidang vision serta persepsi multimodal, dan ini adalah salah satu kasus langka ketika semuanya berjalan dengan baik.
    Misalnya, model ini dilatih dengan 4 token register bersama loss bergaya Matryoshka, dan menghasilkan embedding 64 dimensi yang sangat kecil yang bisa berguna bagi orang yang mencari alternatif CLIP: https://huggingface.co/unum-cloud/uform3-image-text-english-...

  • Saya melihatnya di ICLR; ini salah satu makalah terbaik tahun ini, dan hal itu juga jelas terlihat di sesi poster.
    Selamat untuk para penulisnya.

  • Saya sudah memakai DinoV2 selama beberapa bulan, dan juga mencoba model yang memiliki 4 token register bersama token [CLS] + patch.
    Karena beberapa token embedding dari model lama tanpa register sudah menjadi bagian dari solusi, dan token [CLS] tidak selaras antara model 0 register dan model 4 register, kami tidak mengadopsi model register baru.
    Akan bagus kalau token [CLS] dan token patch bisa diselaraskan dengan suatu cara di antara kedua model itu.

  • Terlihat seperti attention sink untuk model vision