Embedding
Token gather ve satır bazlı scatter-add.
Doğrudan uygulamadaninclude/nexus_model/layers/embedding.hpp
01Tablo ve şekiller#
Embedding(num_embeddings,embedding_dim,padding_idx=-1). [V,D] ağırlık normal(0,1) ile başlar. Girdi şekline D eklenir: [B,T]→[B,T,D]. Ek eksen için girdi rank≤7 olmalı.
Embedding tokens(1000,64,0);auto ids=Tensor::from_values({1,4},{12,9,0,4});auto y=tokens.forward(ids); // [1,4,64]02İndeks sözleşmesi#
İndeksler float32 Tensor içinde taşınır ve çekirdekte int’e çevrilir. Tamsayı değerli, geçerli aralıklı indeksler kullanın; kesirli değerler reddedilmeyebilir. padding_idx negatif değilse [0,V) içinde olmalı.
03Tekrarlanan token türevleri#
Aynı token katkıları aynı satırda birikir. padding_idx çıktı ve gradyanı sıfırdır. backward indekslere sıfır türev döndürür. Yalnız dokunulan satırlar güncellense de grad yoğun tensördür.
◆Kaynak kodla birlikte okuyun. API davranışı mevcut uygulamayı esas alır.