Makine öğrenimi sistemleri için bir IBM projesi olan CodeNet 

IBM logosu

IBM açıkladı son zamanlarda yeni projesi aradı "CodeNet" hangi araştırmacılara makine öğrenimi tekniklerini kullanarak deney yapabilecekleri bir veri kümesi sağlamayı amaçlamaktadır bir programlama dilinden diğerine çevirmenlerin yanı sıra oluşturucular ve kod çözümleyicileri oluşturmak için.

CodeNet, 14 milyon kod örneğinden oluşan bir koleksiyon içerir 4053 ortak programlama problemlerini çözen. Koleksiyon, toplamda yaklaşık 500 milyon satır kod içeriyor ve hem C ++, Java, Python ve Go gibi modern diller hem de COBOL, Pascal ve FORTRAN gibi eski diller olmak üzere 55 programlama dilini kapsıyor.

Ünlü Amerikalı iş adamı Marc Andreessen 2011'de "Yazılım dünyayı yiyor" diye yazmıştı. Bugüne hızlı bir şekilde gelin: yazılım finansal hizmetler ve sağlık hizmetleri, akıllı telefonlar ve akıllı evlerde bulunuyor. Artık arabalarda bile 100 milyon satırdan fazla kod var.

Proje geliştirmeleri Apache 2.0 lisansı altında yayınlanır ve veri setlerinin kamu malı olarak yayınlanması beklenir.

Örnekler açıklanmıştır ve farklı programlama dillerinde aynı algoritmaları uygular. Önerilen setin, açıklamalı görüntülerden oluşan ImageNet veri tabanının görüntü tanıma ve yapay görme sistemlerinin geliştirilmesine yardımcı olma şekline benzeterek, otomatik kod çevirisi ve analizi alanında makine öğrenimi sistemlerini eğitmeye ve yenilikler geliştirmeye yardımcı olması bekleniyor. Koleksiyon oluşturmanın ana kaynaklarından biri olarak çeşitli programlama yarışmalarından bahsedilmektedir.

Project CodeNet, kod makinesinin işlenmesinden ziyade makinenin kod anlayışında daha önemli bir engel oluşturmak için, insan dillerinde uyguladığımız gibi, bu bağlamı sırayla sırayla modellerle çıkarmak için özellikle algoritmik yeniliği yönlendirebilir.

Çeviri kurallarına dayalı geleneksel çevirmenlerin aksine, makine öğrenimi sistemleri, kod kullanımı bağlamını yakalayabilir ve hesaba katabilir. Bir programlama dilinden diğerine dönüştürme yaparken, bağlam da bir insan dilinden diğerine çeviri yaparken olduğu kadar önemlidir. Kodun COBOL gibi eski dillerden dönüştürülmesini engelleyen bağlamsal farkındalık eksikliğidir.

Çeşitli dillerde geniş bir algoritma uygulamaları tabanının varlığı, belirli diller arasında canlı çeviri yerine, belirli programlama dillerinden bağımsız olarak kodun daha soyut bir temsilini değiştiren evrensel makine öğrenimi sistemleri oluşturmaya yardımcı olacaktır.

Böyle bir sistem, desteklenen dillerin herhangi birinde iletilen kodu kendi iç soyut temsiline çeviren bir çevirmen olarak kullanılabilir, buradan birçok dilde kod üretilebilir.

Sistem dahil çift yönlü dönüşümler gerçekleştirebilirsiniz. Örneğin, bankalar ve devlet kurumları eski COBOL projelerini kullanmaya devam ediyor. Bir makine öğrenimi tercümanı, COBOL kodunu Java gösterimine dönüştürebilir ve isteğe bağlı olarak bir Java snippet'ini tekrar COBOL koduna çevirebilir.

Diller arası çeviriye ek olarak, CodeNet uygulama alanlarından bahsedilmektedir. akıllı kod arama sistemlerinin oluşturulması ve klon algılamanın otomasyonu gibi, otomatik kod düzeltme için optimize ediciler ve sistemlerin geliştirilmesi gibi.

Özellikle CodeNet'te sunulan örnekler, performans testlerinin sonuçlarını açıklayan meta verilerle birlikte sağlanır., ortaya çıkan programın boyutu, bellek tüketimi ve doğru kodu hatalarla koddan ayırt etmeye imkan veren durum (doğru kodu yanlış koddan ayırmak için hatalı örnekler özel olarak payı olan koleksiyona dahil edilmiştir. 29,5,% XNUMX).

Bir makine öğrenimi sistemi, en uygun kodu üretmek veya analiz edilen koddaki regresyonları tespit etmek için bu meta verileri hesaba katabilir (sistem, algoritmanın iletilen kodda en iyi şekilde uygulanmadığını veya hatalar içerdiğini anlayabilir).

Nihayet CodeNet hakkında daha fazla bilgi edinmek istiyorsanız, detayları kontrol edebilirsin Aşağıdaki bağlantıda.


Yorumunuzu bırakın

E-posta hesabınız yayınlanmayacak. Gerekli alanlar ile işaretlenmiştir *

*

*

  1. Verilerden sorumlu: AB Internet Networks 2008 SL
  2. Verilerin amacı: Kontrol SPAM, yorum yönetimi.
  3. Meşruiyet: Onayınız
  4. Verilerin iletilmesi: Veriler, yasal zorunluluk dışında üçüncü kişilere iletilmeyecektir.
  5. Veri depolama: Occentus Networks (AB) tarafından barındırılan veritabanı
  6. Haklar: Bilgilerinizi istediğiniz zaman sınırlayabilir, kurtarabilir ve silebilirsiniz.