Xinzhiyuan önerilir
Yazar: Rishabh Singh, Jacob Devlin, Abdelrahman Mohamed ve Pushmeet Kohli
Lütfen makalenin sonundaki orijinal metni okumak için tıklayın veya orijinal metni görüntülemek için URL'yi doğrudan tarayıcıya kopyalayın. https://www.microsoft.com/en-us/research/blog/deep-learning-program-synthesis/
Geçtiğimiz birkaç on yılda, bilgisayar bilimi alanında büyük ilerleme kaydedildi, ancak gerçek bilgisayar yazılımı yazma süreci temelden değiştirilmedi - programcılar, programdaki algoritma mantığını adım adım manuel olarak yazmak için özel programlama dilleri kullanmalıdır. . Programlama dilleri yıllar içinde gittikçe daha kolay hale gelse de, nasıl programlanacağını öğrenmek çoğu bilgisayar kullanıcısı için hala yasak.
Yakın zamanda yayınlanan bir makalede, derin öğrenmeyi program sentezine uygulamanın en son araştırma sonuçlarını gösterdik, derin sinir ağlarının kullanıcı niyetlerine göre bilgisayar programları oluşturmayı öğrenmesine izin vermeye çalıştık. Kullanıcının, istenen program davranışını belirtmek için yalnızca birkaç giriş / çıkış (G / Ç) örneği sağlaması gerekir ve sistem buna göre ilgili programı oluşturur.
Kullanıcının listeyi belirli bir şekilde (aşağıda gösterildiği gibi) biçimlendirmek istediğini varsayalım. Yalnızca birkaç giriş / çıkış örneği sağlaması gerekir ve sistem kalan çıktıyı otomatik olarak doldurur (açık gri ile gösterilmiştir). Kullanıcıların yüzlerce veya binlerce giriş dizesini işlemesi gerekiyorsa, bu program çok zaman kazandırabilir.
Sistem, programları oluşturmak için etki alanına özel dil (DSL) kullanır. Kullanıcının DSL'in ayrıntılarını anlamasına gerek yoktur - aslında programın içeriğini hiç göremez. DSL'mizde, yukarıdaki örneğe karşılık gelen doğru program:
Program sentezinde iki temel zorluk vardır. Birincisi, etkileyici DSL'imizde on binlerce olası program vardır ve doğru program, sistemin daha önce hiç görmediği bir şey olabilir. İkincisi, G / Ç örnekleri gerçek kişiler tarafından manuel olarak oluşturulduğundan, yukarıdaki örnekte gösterildiği gibi genellikle gürültü (yazım hataları vb.) İçerirler (ikinci çıktı örneğinde, Useato Uesato olarak yanlış yazılmıştır).
Geçmişte, bu sorunun çözümü (en ünlüsü Microsoft Excelin FlashFill sistemidir) sezgisel aramaları yönlendirmek için elle yazılmış kurallara güvenmekti. Bununla birlikte, bu yöntem DSL'in yeteneklerini genişletmeyi zorlaştırır, sadece yıllar boyunca biriktirilmiş manuel kural yazmayı gerektirmez, aynı zamanda G / Ç örneğindeki herhangi bir gürültüye karşı da çok hassastır.
Ve RobustFill sistemimiz, programları herhangi bir manuel kural olmaksızın veriye dayalı bir şekilde sentezlemek için derin öğrenmenin en son sonuçlarını kullanır. Bunun yerine, I / O örneklerine dayalı programlar oluşturmak için ilk olarak dil çevirisi için kullanılan dikkatli sekans-sekans sinir ağını kullanır. Kullandığımız sinir ağının taslağı aşağıdaki gibidir ve detaylı bilgiler şekilde verilmiştir.
Sistemi eğitmek için rastgele oluşturulmuş milyonlarca I / O + program çifti kullandık ve DSL anlambilimini öğrenebildiği için gerçek dünya verileri üzerinde de iyi performans gösteriyor. Genel olarak, sistemimiz bir dizi gerçek karşılaştırmada% 92 doğruluk elde etti. I / O örneğinde önemli miktarda gürültü olsa bile sistemin yüksek doğruluğu koruyabilmesi özellikle cesaret vericidir.
Programlama için çıkarımlar
Sinir ağlarını karmaşık işlevsel bir dilde (FlashFill DSL) programlamayı öğrenmeleri için eğitmek başarılı oldu Bu atılım, aynı zamanda daha genel yapay zekanın gerçekleştirilmesine yönelik küçük ama dikkate değer bir adımdır. Bunu sadece sinirsel program sentezine yorumlanabilirliğin heyecan verici bir şekilde dahil edilmesini işaret eden temel bir zorluğu çözmez, aynı zamanda bilginin dağıtılmış ve sembolik temsillerinin ilişkilendirilmesi konusuna da değinir.
Daha zengin bir program kategorisi oluşturmak için şu anda bu sinir ağlarını genişletiyoruz, durum değişkenleri ve kontrol akışı içeren DSL'lerle yazılmış programları öğreniyoruz. Bu doğrultuda daha fazla araştırmanın, program sentezi ve indüksiyonla ilgili en temel teknik konuları daha iyi anlamamızı ve bunlarla ilgilenmemizi gerektireceğine inanıyoruz.
Bununla ilgili daha fazla bilgi edinin:
Jacob Devlin, Jonathan Uesato, Surya Bhupatiraju, Rishabh Singh, Abdelrahman Mohamed ve Pushmeet Kohli'nin yazdığı "RobustFill: Noisy I / O Altında Sinirsel Program Öğrenme", arXiv'de: 1703.07469
5. Uluslararası Öğrenme Temsilcileri Konferansı'nda Emilio Parisotto, Abdelrahman Mohamed, Rishabh Singh, Lihong Li, Denny Zhou ve Pushmeet Kohli tarafından "Nöro-Sembolik Program Sentezi" (ICLR 2017)
Bu makaleye katkıda bulunan stajyerler: Emilio Parisotto (Carnegie Mellon Üniversitesi), Jonathan Uesato (MIT), Surya Bhuptairaju (MIT)
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 alanında 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 politikaların 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.