Rumah > Peranti teknologi > AI > Perumusan litar ciri dengan autoencoder jarang di LLM

Perumusan litar ciri dengan autoencoder jarang di LLM

王林
Lepaskan: 2025-02-26 01:46:08
asal
617 orang telah melayarinya

Model Bahasa Besar (LLMS) telah membuat kemajuan yang luar biasa yang dapat melakukan pelbagai tugas, dari menghasilkan teks seperti manusia untuk menjawab soalan. Walau bagaimanapun, memahami bagaimana model-model ini berfungsi tetap mencabar, terutamanya kerana terdapat fenomena yang dipanggil superposisi di mana ciri-ciri bercampur dengan neuron, menjadikannya sangat sukar untuk mengekstrak perwakilan manusia yang dapat dimengerti dari struktur model asal. Inilah sebabnya kaedah seperti autoencoder jarang kelihatan dapat menghilangkan ciri -ciri untuk meningkatkan tafsiran.

Dalam catatan blog ini, kami akan menggunakan autoencoder yang jarang untuk mencari beberapa gelung ciri dalam kes yang sangat menarik mengenai konsistensi objek-objek dan memahami bagaimana komponen model menyumbang kepada tugas.

Konsep Utama

Gelung ciri

Dalam konteks rangkaian saraf, gelung ciri adalah bagaimana rangkaian belajar untuk menggabungkan ciri -ciri input untuk membentuk corak kompleks pada tahap yang lebih tinggi. Kami menggunakan metafora "gelung" untuk menggambarkan bagaimana ciri -ciri diproses dalam pelbagai lapisan rangkaian saraf, kerana cara pemprosesan ini mengingatkan kita tentang proses pemprosesan dan menggabungkan isyarat dalam litar elektronik. Gelung ciri ini secara beransur -ansur terbentuk melalui sambungan antara neuron dan lapisan, di mana setiap neuron atau lapisan bertanggungjawab untuk mengubah ciri input, dan interaksi mereka membawa kepada kombinasi ciri berguna yang berfungsi bersama -sama untuk membuat ramalan akhir.

Berikut adalah contoh gelung ciri: Dalam banyak rangkaian saraf visual, kita dapat mencari "gelung, sebagai keluarga unit yang mengesan lengkung dalam sudut yang berbeza. Pengesan lengkung terutamanya terdiri daripada pengesan lengkung awal yang kurang kompleks. dan pelaksanaan pengesan garis.

Dalam bab-bab berikut, kami akan mengkaji gelung ciri untuk tugas-tugas konsisten subjek di LLM.

overlay dan autoencoder jarang

Dalam konteks pembelajaran mesin, kita kadang -kadang memerhatikan superposisi, merujuk kepada fenomena bahawa neuron dalam model mewakili pelbagai ciri bertindih dan bukannya satu ciri yang berbeza. Sebagai contoh, InceptionV1 mengandungi neuron yang bertindak balas terhadap wajah kucing, bahagian depan kereta, dan kaki kucing.

Ini adalah apa yang dilakukan oleh autoencoder (SAE) yang jarang berlaku.

SAE membantu kami menyahsekat pengaktifan rangkaian ke dalam satu set ciri yang jarang. Ciri -ciri jarang ini sering difahami oleh manusia, yang membolehkan kita lebih memahami model. Dengan menggunakan SAE untuk pengaktifan lapisan tersembunyi model LLM, kita boleh mengasingkan ciri -ciri yang menyumbang kepada output model.

Anda boleh mencari butiran tentang bagaimana SAE berfungsi dalam catatan blog saya yang terdahulu.

Kajian Kes: Konsistensi Subjek-Predikat

konsistensi subjek-predikat

Konsistensi subjek-predikat adalah peraturan tatabahasa asas dalam bahasa Inggeris. Subjek dan kata kerja predikat dalam ayat mestilah konsisten dalam kuantiti, iaitu, tunggal atau jamak. Contohnya:
  • "Kucing berjalan ."
  • "The Cats
  • Run ."
  • Bagi manusia, memahami peraturan mudah ini sangat penting untuk tugas -tugas seperti penjanaan teks, terjemahan, dan soalan dan jawapan. Tetapi bagaimana kita tahu jika LLM benar -benar mempelajari peraturan ini?

Kami kini akan meneroka bagaimana bentuk LLM mempunyai gelung untuk tugas ini.

Membina Loop Ciri

Sekarang mari kita membina proses membuat gelung ciri. Kami akan meneruskan dalam empat langkah:

kita mula -mula memasukkan ayat ke dalam model. Untuk kajian kes ini, kami menganggap ayat berikut:
"Kucing berjalan."
    "Kucing berjalan."
  • Kami menjalankan model pada ayat -ayat ini untuk mendapatkan pengaktifan tersembunyi. Pengaktifan ini mewakili bagaimana model memproses ayat di setiap lapisan.
Kami lulus pengaktifan kepada SAE untuk "menyahpepijat" ciri ini.
  1. Kami membina gelung ciri sebagai gambarajah pengiraan:
  2. nod input mewakili ayat tunggal dan jamak.
  3. nod tersembunyi mewakili lapisan model yang memproses input.
    • nod jarang mewakili ciri -ciri yang diperoleh dari SAE.
    • Nod output mewakili keputusan muktamad. Dalam kes ini: berjalan atau lari.
    • Model mainan
  4. kita mula -mula membina model bahasa mainan, yang mungkin tidak masuk akal untuk kod berikut. Ini adalah rangkaian saraf dengan dua lapisan mudah.

Untuk konsistensi subjek-predikat, model harus:

Masukkan ayat dengan kata kerja tunggal atau jamak.

Lapisan tersembunyi menukar maklumat ini ke dalam perwakilan abstrak.
  • Model memilih borang kata kerja yang betul sebagai output.
  • Tidak jelas apa yang berlaku di dalam lapisan tersembunyi. Oleh itu, kami memperkenalkan autoencoder jarang berikut:
<code># ====== 定义基础模型(模拟主谓一致)======
class SubjectVerbAgreementNN(nn.Module):
   def __init__(self):
       super().__init__()
       self.hidden = nn.Linear(2, 4)  # 2 个输入 → 4 个隐藏激活
       self.output = nn.Linear(4, 2)  # 4 个隐藏 → 2 个输出 (runs/run)
       self.relu = nn.ReLU()


   def forward(self, x):
       x = self.relu(self.hidden(x))  # 计算隐藏激活
       return self.output(x)  # 预测动词</code>
Salin selepas log masuk
Kami melatih model asal Subverbagreementnn dan Subverbagreementnn, menggunakan ayat -ayat yang direka untuk mewakili bentuk kata kerja tunggal dan jamak yang berbeza, seperti "The Cat Runs", "The Babies Run". Tetapi, seperti dahulu, untuk model mainan, mereka mungkin tidak masuk akal.

Sekarang kita memvisualisasikan gelung ciri. Seperti yang dinyatakan sebelum ini, gelung ciri adalah unit neuron yang digunakan untuk memproses ciri -ciri tertentu. Dalam model kami, ciri -ciri termasuk:
<code># ====== 定义稀疏自动编码器 (SAE) ======
class c(nn.Module):
   def __init__(self, input_dim, hidden_dim):
       super().__init__()
       self.encoder = nn.Linear(input_dim, hidden_dim)  # 解压缩为稀疏特征
       self.decoder = nn.Linear(hidden_dim, input_dim)  # 重构
       self.relu = nn.ReLU()


   def forward(self, x):
       encoded = self.relu(self.encoder(x))  # 稀疏激活
       decoded = self.decoder(encoded)  # 重构原始激活
       return encoded, decoded</code>
Salin selepas log masuk

Menukar atribut bahasa ke lapisan tersembunyi

perwakilan abstrak.

    SAE
  1. dengan Ciri-ciri Bebas yang secara langsung menyumbang kepada tugas konsistensi kata kerja-subjek.
  2. anda dapat melihat dalam angka yang kita memvisualisasikan gelung ciri sebagai graf:
    • Pengaktifan tersembunyi dan output encoder adalah kedua -dua nod graf.
    • Kami juga mempunyai nod output sebagai kata kerja yang betul.
    • Tepi dalam angka itu ditimbang oleh intensiti pengaktifan, menunjukkan laluan mana yang paling penting dalam keputusan konsensus subjek-predikat. Sebagai contoh, anda dapat melihat bahawa laluan dari H3 hingga F2 memainkan peranan penting.

    Gpt2-Small

    Untuk kes-kes sebenar, kami menjalankan kod serupa pada GPT2-Small. Kami menunjukkan gambarajah gelung ciri yang mewakili keputusan untuk memilih kata kerja tunggal.

    Formulation of Feature Circuits with Sparse Autoencoders in LLM Kesimpulan

    Gelung ciri membantu kita memahami bagaimana bahagian -bahagian LLM yang kompleks membawa kepada output akhir. Kami menunjukkan kemungkinan membentuk gelung ciri menggunakan SAE untuk tugas-tugas yang konsisten.

    Walau bagaimanapun, kita harus mengakui bahawa pendekatan ini masih memerlukan campur tangan manusia, kerana kita tidak selalu tahu sama ada gelung boleh dibentuk tanpa reka bentuk yang betul.

    Rujukan

    [1] Zum: Pengenalan Litar

    Sila ambil perhatian bahawa saya telah mengekalkan ruang letak imej dan mengandaikan imej masih boleh diakses di URL yang disediakan kekal tidak berubah.

Atas ialah kandungan terperinci Perumusan litar ciri dengan autoencoder jarang di LLM. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan