English· Español· Deutsch· Nederlands· Français· 日本語· ქართული· 繁體中文· 简体中文· Português· Русский· العربية· हिन्दी· Italiano· 한국어· Polski· Svenska· Türkçe· Українська· Tiếng Việt· Bahasa Indonesia

un

tamu
1 / ?
kembali ke pelajaran

CUDA Melaporkan Indeks Dokumen

Seorang Trainer CUDA Tahu Dokumen Mana yang Diambilnya

Setiap langkah pelatihan menarik urutan dari file .btok biner, yang mengemas banyak dokumen secara berurutan. CUDA mencatat indeks dokumen bersama dengan loss: step 47213, source=gutenberg, doc=128407, loss=2.81. Proksi mengumpulkan laporan ini & mempertahankan kumpulan indeks dokumen unik yang dilihat per sumber.


Dari Hitungan ke Cakupan

Cakupan sebuah sumber = unique_docs_seen / n_docs. Beberapa contoh:


Sumbern_docsunique seencakupan
gutenberg512.000154.00030,1%
hermes3-general67.39547.17670,0%
dictionary88.00088.000100,0%
synthetic-chat1.4001.400100,0%

Sumber kecil jenuh dengan cepat. Sumber besar turun di bawah 50% selama berminggu-minggu. Bonus cakupan memberi hadiah pada bandit untuk mengunjungi dokumen yang belum pernah disampling dalam suatu sumber.


Coverage bonus per source


Rumus Bonus

Bonus cakupan meningkat secara linier dari 1.3x pada cakupan 0% turun ke 1.0x pada cakupan 50%, kemudian tetap di 1.0x di atas 50%:


if coverage < 0.5:
bonus = 1.0 + 0.3 * (1.0 - coverage / 0.5)
else:
bonus = 1.0

Sumber dengan cakupan 0% mendapatkan 1.3x; sumber dengan cakupan 25% mendapatkan 1.15x; sumber dengan cakupan 50% turun menjadi 1.0x. Di atas 50%, tidak ada bonus yang berlaku.

Hitung Bonus

Sebuah run dengan cakupan gutenberg 30% & cakupan hermes3-general 70%. Hitung pengali bonus cakupan untuk setiap sumber. Tunjukkan perhitungan Anda.

Dua Sinyal Kesegaran yang Berbeda

Tujuan yang Sama, Granularitas Berbeda

ANDREA memiliki dua mekanisme yang mencegah over-training pada satu sumber tunggal. Mereka terdengar mirip; mereka mengukur hal yang berbeda.


Hukuman epoch. Melacak aggregate over-pulling. Ketika lifetime_pulls / n_docs > 1.0, sebuah sumber secara teori telah melampaui setiap dokumen setidaknya sekali. Hukuman = 1 / (1 + epochs). Sumber synthetic-chat dengan 1.4K dokumen pada 5.600 lifetime pulls (epochs = 4) mendapat hukuman 1/5 = 0.2x. Hitungan epoch bertahan melintasi restart; mereka tidak pernah berkurang.


Bonus coverage. Melacak kesegaran per-dokumen dalam sebuah sumber. CUDA melaporkan indeks dokumen; proxy mempertahankan set per sumber. Sumber di bawah 50% coverage dokumen unik mendapat hingga 1.3x. Coverage memberi hadiah eksplorasi ekor sumber; hukuman epoch menghukum kelelahan sumber tersebut.


Mengapa Keduanya Penting


SinyalMelacakArahBatasBertahan lintas restart
Penalti epochagregat over-pullingkurangi1/(1+e)ya
Bonus cakupankesegaran per-dokumentingkatkan1.3xya

Sumber gutenberg 500K-dokumen dapat tetap di bawah cakupan 50% selama seluruh pelatihan 200K sambil tidak pernah mendekati epoch=1. Penalti epoch mengabaikannya; bonus cakupan secara aktif menarik bandit menuju ekor 70% gutenberg yang belum dieksplorasi.


Sebaliknya, sumber synthetic-chat 1.4K jenuh cakupan (100%) dalam beberapa ribu tarikan; bonus cakupan tetap di 1.0x sementara penalti epoch tumbuh.

Bedakan Keduanya

Bayangkan dua sumber di tengah pelatihan: sumber A memiliki 1.400 dokumen & 8.400 tarikan seumur hidup. Sumber B memiliki 500.000 dokumen & 80.000 tarikan seumur hidup; proxy telah mencatat 75.000 indeks dokumen unik untuk B sejauh ini. Sinyal mana (penalti epoch atau bonus cakupan) yang mengatur bobot bandit setiap sumber, & mengapa?

Apa yang Dibeli Bonus Cakupan untuk ANDREA

Mode Kegagalan yang Dicegahnya

Tanpa pelacakan tingkat dokumen, bandit yang memilih berdasarkan reward per langkah memilih urutan .btok secara serakah. Korpus gutenberg 500K-dokumen berisi beberapa ribu urutan dengan cross-entropy rendah (prosa konsisten, kosakata umum). Bandit hanya berdasarkan reward kembali ke urutan-urutan tersebut berulang kali karena mereka terus menghasilkan sinyal reward yang kuat.


Hasil: korpus 500K-dokumen hanya disampling melintasi mungkin 2K-5K urutan berbeda selama 200K langkah pelatihan. Model menghafal urutan-urutan tersebut tanpa pernah melihat sisanya. Kapasitas terbuang; coverage terjebak di bawah 1%.


Apa yang Dibeli Bonus Coverage

1.3x pada 0% coverage, menurun secara linier menjadi 1.0x pada 50%. Dorongan itu merambat melalui seleksi UCB1: lengan dengan coverage rendah tetap kompetitif bahkan ketika reward per-pull mereka turun. Bandit mengeksplorasi ekor secara desain daripada secara kebetulan.


Selama pelatihan 200K langkah pada gutenberg 500K-dokumen, bonus coverage biasanya meningkatkan coverage yang diamati dari ~3% (tanpa bonus) menjadi ~25-30% (dengan bonus). Komputasi yang sama, delapan hingga sepuluh kali lebih banyak dokumen yang disentuh.


Di Mana Pelacakan Berada


KomponenTanggung Jawab
microgpt_cuda.cuMelaporkan indeks dokumen per langkah pelatihan
training_proxy.pyMempertahankan set seen_docs per sumber
training_proxy.pyMenghitung cakupan, menerapkan bonus ke hadiah bandit
training_proxy.pyMempertahankan seen_docs ke .state.json melintasi restart

Hubungkan ke Pilihan Teknik Konkret

Misalkan Anda menghapus bonus cakupan dari pelatihan ANDREA-120M. Prediksi satu konsekuensi konkret untuk lengan gutenberg secara khusus (yang memiliki 500K+ dokumen) selama peluncuran 200K langkah. Rujuk salah satu persentase cakupan, keragaman dokumen, atau kualitas sampel hilir.