Xinzhiyuan Derlemesi
API değişiklikleri
torch.range kullanımdan kaldırıldı, numpy ve python aralıklarıyla tutarlı olan torch.arange ile değiştirildi.
Seyrek tensörlerde, bitişik birleşme olarak yeniden adlandırılmıştır, birleştirme artık uygun değildir. (Sparse API'nin hala deneysel olduğunu ve gelişmekte olduğunu, dolayısıyla geriye dönük uyumluluk sağlamadığımızı unutmayın).
Yeni özellikler
Yeni katmanlar ve işlevler
torch.topk artık yalnızca torch.cuda.FloatTensor'u değil tüm CUDA türlerini destekliyor.
Üç yollu sıralama kaybı eklendi: nn.TripletMarginLoss
Her örnek için normalleştirme katmanı eklendi: nn.InstanceNorm1d, nn.InstanceNorm2d, nn.InstanceNorm3d
Her kanal, ortalama çıkarma ve standart sapma ile normalleştirme örneği olarak değerlendirilir. Bu, benzer BatchNorm efektleri gerektiren daha büyük görüntüleri ve daha küçük mini grupları işlerken kullanışlıdır.
Nn.ZeroPad2d ve nn.ConstantPad2d eklendi
Nn.Bilinear eklendi, Y = X1 * W * X2 + b'yi hesaplayın
Tüm fonksiyonların negatif boyutunu destekleyin
Boyutsal parametreleri kullanan her işlev, negatif boyutlara da izin verir. Negatif boyut, önceki boyutun tensörünü indeksleyecektir.
Örneğin:
Burada x'in 3 boyutu olduğundan ve dim = -1 olduğundan, ortalama değeri elde etmek için son boyut yani dim = 3 benimsenmiştir.
Boyut parametrelerine sahip işlevler şunlardır:
CUDA seyrek tensörü ve daha hızlı CPU seyrekliğini destekler
Yeni sürümdeki torch.sparse API'sinin bir kısmı torch.cuda.sparse'ı da destekler. * Tensör.
CUDA tarafından desteklenen işlevler şunlardır:
Bu seyrek işlevleri kullanarak, nn.Embedding artık CUDA'da seyrekliği de destekliyor (seyrek = Gerçek bayrağı kullanarak).
Yeni bir hibrit matris çarpımı hspmm, seyrek matrisi yoğun matrisle çarpar ve hibrit tensör biçiminde 1 matris (yani 1 seyrek boyut, 1 yoğun boyut) döndürür.
Birkaç CPU seyrek işlevinin daha verimli uygulamaları vardır.
İşte gömülü bir sınıflandırıcı eğitim betiği, yazar @martinraison, CUDA seyrek ve CUDA yoğun performansını karşılaştırabiliriz. (Http://t.cn/RaZcltA)
adlandırılmış_parametreler, belirli parametre türlerini filtreler
Önyargılar dışında modelin tüm parametrelerine ağırlık azalması eklemek istediğinizi varsayalım Modelin sadece önyargıları nasıl elde edilir?
Burada, modelin belirli özelliklerini filtrelemeye yardımcı olmak için named_children ve named_modules'i birleştiren nn.Module.named_parameters'ı tanıtıyoruz.
Örnek: bir modelin önyargılarını filtreleyin, weight_decay 0'dır
Performans iyileştirme
Uygun koşullar altında, bazı itme ilkelleri kullanılarak GPU'da cumsum ve cumprod önemli ölçüde hızlandırılır.
Kaynaşmış bir çekirdek ile LSTMCell ve GRUCELL, GPU'da önemli ölçüde hızlandırılır.
CuDNN'nin varsayılan algoritması, daha hızlı bir algoritma olan ve çok az çalışma alanı gerektiren PRECOMP_GEMM olarak değiştirilmiştir. Bu daha önce IMPLICIT_GEMM idi, 0 çalışma alanı kaplıyordu, ancak çok daha yavaştır.
Grupları doğrudan paylaşılan belleğe entegre ederek, veri yükleme hızı% 5 ila% 10 artırılır.
Böl ve yönet yöntemiyle (sgesdd) GPU'da SVD'yi hesaplamak, 2 ~ 5 kat hızlanır.
Yaygın olarak kullanılan işlev genişletmesi, daha küçük modellerde daha iyi performansa sahip olan C'ye taşınır.
Hata düzeltme
Çok çeşitli THNN işlevleri için ağırlık ve önyargı üzerinde bitişik kontroller eklendi
hem alt hem de üst sınır belirtildiğinde random_ doğru aralığı yapın
parallel_apply artık hasarsız argümanlar alabilir
Nokta işlevinde derecelendirmeyi doğru şekilde yeniden şekillendirin (girişlerin 1 boyutlu vektörler olması gerekmez ...)
Variable.type_as eklendi
Norm ve renorm argüman adlarını p = norm_type, dim = dim olacak şekilde birleştirin
btrisolve, CPU çiftlerinde çalışır
Torch.nn.Module için ipython otomatik tamamlama __dir__ uygulanarak düzeltildi
device_ids artık F.data_parallel içinde tekrar Yok olabilir ve mevcut tüm GPU'ları kullanır
BatchNorm'da geçici çözüm cudnn hataları ( < 5.1.10) ve Genişleme (6.0.20)
Conv1d CPU'da doldurma hatası düzeltildi
kalan ve yakıcı tam sayı türleri için sabittir
btrisolve ve getri'deki bellek sızıntısını düzeltin
Herhangi bir istisna nedeniyle nn.Module kaynağı alınamazsa,
seri hale getirmeyi önemli olmayacak şekilde ele alın
collate_fn artık numpy dizisinin türünü koruyor
is_tensor ve is_storage artık eski tarz Python sınıfları için düzeltildi
torch.cat artık anahtar kelime argümanlarını destekliyor
CUDA kolektifleri birleştirmeyi destekledi, ancak girdilerin tümü varsayıldı
aynı Tensör tipinde olması. Bu düzeltildi.
Belirli bir glibc hatası nedeniyle otomatik sürümde bir kilitlenme hatasını düzeltin
linux dağıtımları (özellikle ArchLinux)
abs artık char ve kısa cuda türleri için düzeltildi
boyut argümanı verirken torch.diag autograd'ı düzeltin
önyargı = False olduğunda CPU'da gruplanmış evrişimi düzelt
ConvTranspose * d için genişlemiş evrişimleri ortaya çıkarın
HingeEmbeddingLoss'ta, marjın artık kwargs aracılığıyla belirtilebildiği bir hatayı düzeltin
Xinzhiyuan İşe Alım
Pozisyon: Hesap Yöneticisi
Yıllık maaş pozisyonu: 120.000-250.000 (Maaş + ikramiye)
İş yeri: Pekin-Haidian Bölgesi
Departman: Müşteri Departmanı
Rapor: Hesap Direktörü
Çalışma hayatı: 3 yıl
Dil: İngilizce + Mandarin
Eğitim gereksinimleri: tam zamanlı lisans eğitimi
iş tanımı:
Müşteri ihtiyaçlarını ve şirket marka konumlandırmasını doğru bir şekilde kavrayın, işbirliği planlarını planlayın ve yazın;
Aktif düşünme, yaratıcı, güçlü metin kontrol yeteneği, PPT kullanımında uzman, iyi görsel değerlendirme ve performans yeteneği, mükemmel PS yeteneği en iyisidir;
Hevesli ve neşeli, kişiler arası iletişimde iyi, iyi iletişim ve işbirliği becerileri ve ekip ruhu;
Mükemmel aktivite hazırlama ve uygulama yeteneği, baskıya ve uyarlanabilirliğe karşı güçlü direnç, yüksek yoğunluklu çalışmaya uyum;
4A, bir halkla ilişkiler şirketinde çalışma deneyimi tercih edilir
Özellikle yapay zeka başta olmak üzere yüksek teknolojiye yoğun ilgi duyanlar için bonus puan.
İş sorumlulukları:
Planın uygulanmasını sağlamak için amir tarafından atanan projenin ilerlemesine katılın, yönetin ve takip edin. İlgili politika ve sistemlerin uygulanmasında üst seviyeye formüle edin, katılın veya yardımcı olun. Şirkete düzenli olarak doğru pazar bilgileri ve müşteri bilgileri sağlayın, müşteri ihtiyaçlarını analiz edin, belirlenen şirketin kilit müşterileriyle ilişkilerini sürdürün ve yeni işler geliştirmek için aktif olarak fırsatlar arayın. Müşteri veritabanını oluşturun ve yönetin, ilgili bilgileri izleyin ve analiz edin.
Başvuru e-postası: jobs@aiera.com.cn
HR WeChat: 13552313024
Xinzhiyuan, yüksek ideallere sahip insanları görüşmeye davet ediyor, daha fazla işe alım pozisyonu için lütfen tıklayın Xinzhiyuan İşe Alım Görünüm.