Yapay zeka programlama insanların daha akıllı makineler yapmasına yardımcı olur mu?

Tam metin 2021 Kelimeler, tahmini öğrenme süresi 6 dakika

Kaynak: Pexels

Teknolojinin hızla gelişmesiyle birlikte, yapay zeka programlama giderek daha olgun hale geliyor. Gelişimi, insanların daha akıllı makineler yapmasına yardımcı olabilir mi?

Program sentezi, spesifikasyonlara göre otomatik olarak program oluşturma kavramını ifade eder. Program doğrulamasından farklıdır. Program doğrulama, programın resmi şartnamelere uygun olarak çalıştığını doğrulamak için resmi sertifikaya dayanır.

1957'de, Cornell Üniversitesi İşaret Mantığı Derneği'nin Yaz Konferansı sırasında Alonzo Church, matematiksel gereksinimlere dayalı programları sentezlemeye çalıştı. 1960'larda, yapay zeka ile ilgili araştırmacılar program sentezi kavramını detaylandırdılar ve bunu tipik yapay zeka araştırmalarına uyguladılar.

Son yıllarda, derin öğrenme, yapay zekanın görevleri tamamlama şeklini değiştirdi. Bu ilerleme, araştırmacıları yapay zekaya insanların neyin iyi olduğunu öğretmeye teşvik etti. Önemli alanlardan biri, yapay zekanın insanların iyi olduğu çeşitli görevleri öğrenmesine izin veren bir meta-öğrenme sistemi oluşturmaktır. Nöral program sentezi ve robotik üzerine ilgili araştırmalar başlangıçta robotlara görevleri doğru bir şekilde gerçekleştirmeyi öğretmek için program sentezini kullanma yeteneğini göstermiştir.

Program sentezi en yaygın olarak bilgisayar programlamanın uygulanmasını kolaylaştırmak için kullanılır. AutoProf, FlashFill ve Storyboard programlama araçları gibi uygulamalar, öğrencilerin kod yazmadan belirli kavramları doğrudan çalıştırarak daha sezgisel bir şekilde program yazmalarına olanak tanır.

Yapay zeka araştırmacısı François Choletin "Intelligence Testing" adlı makalesinde, ARC'nin zeka testi problemlerini modelleme görevini çözmek için bir teknik olarak program sentezini kullandı.

Verge web sitesiyle makalesi hakkında yaptığı röportajda Qiaolai şunları söyledi: Kilit nokta, herhangi bir görevde yüksek beceriler elde etmenin bir zeka performansı olmamasıdır. Görev daha önce bilinmeyen çok sayıda sorunu içeren bir meta-görev olmadığı sürece. Yeni beceriler kazanmak. Bence zekanın ölçütü bu. "

Esasen, Qiaolai'nin dediği gibi, sistem zekası şu şekilde test edilmelidir: "Bu, yalnızca sistemin daha önce bilmediği yeni görevlerin kullanılması, sistemin başlangıçta görevle ilgili önceki bilgisinin ölçülmesi ve sistemin örnekleme verimliliğinin ölçülmesi anlamına gelir ( Yani, görevi tamamlamak için ne kadar veriye ihtiyaç var). Belli bir beceri seviyesine ulaşmak için ne kadar az bilgi (önceki bilgi ve deneyim) gerekiyorsa o kadar akıllıdır. Günümüzün yapay zeka sistemleri hiç akıllı değil. "

@alinnnaaa unsplash.com

Daha sonra ARC görevini Kaggle'ın soyutlama ve akıl yürütme sorununu çözmek için bir problem olarak yayınladı. Bu problemi çözmek, önceden bilinmeyen ARC görevlerini öğrenmek için programlama sentezinin gücünü kullanmayı içerecektir.

Programlama sentez problemlerini ayrıştırın

Görünüşte imkansız olan her problem için, önce problemi küçük problemlere ayırabilirsiniz. Programlama sentezini hiç öğrenmediyseniz, çalışmaya başlamadan önce sorunun ne olduğunu ve nasıl çözüleceğini anlayın.

1. Program alanı sorunları

Her programlama sentezi problemi, sonunda tüm program alanında aranacaktır. Arama yöntemi geçerli olmalıdır. Ağaç algoritması kullanılıyorsa, bu ağacın dallarını kesmenin bir yolu olması gerektiğini, aksi takdirde büyüdükçe sınırsız büyüme potansiyeline sahip olduğunu hayal edin.

2. Kullanıcı niyet sorusu

Kullanıcı amacını test etmenin mantığı arasında genellikle belirsizlikler vardır. Kullanıcı çevre ile etkileşime geçtiğinde insanlar bir keşif yaşar, yeni veriler kullanıcı gözünde sorunu yepyeni bir soruna dönüştürebilir.

Kaggle sorununu başarılı bir şekilde çözmek için bu iki sorunu çözmeyi içermesi gerekir.

Program sentezi için yardımcı araçlar

Kaynak: dy.163

Python'da Z3, program sentezi için bir Python paketidir. İşte Adrian Sampson tarafından Z3 için sağlanan mükemmel bir öğretici.

Makaledeki örnek aşağıdaki gibidir:

Aşağıdaki gibi genel bir çözücü oluşturun:

Kod, Adrian Sampson'ın blogundan alınmıştır.

Ardından, çalıştırılacak formülü tanımlayın.

Kod, Adrian Sampson'ın blogundan alınmıştır.

Çalıştır: herhangi bir sorunu çözmek için yazdır (çöz (formül)). Daha fazla ayrıntı ve örnek için eğitimini okuyabilirsiniz.

Program sentezi hakkında daha fazla şey öğrenmek ister misiniz?

Aşağıda program senteziyle ilgili birkaç öğrenme kaynağı bulunmaktadır.

1. Program Sentezi için Derin Öğrenme https://sunblaze-ucb.github.io/program-synthesis/index.html

2. Derin Kodlayıcı: Program Yazmayı Öğrenme (Derin Kodlayıcı: Program Yazmayı Öğrenme)

https://openreview.net/pdf?id=ByldLrqlx

3. Derin Öğrenme Programı Sentezi Microsoft Research

https://www.microsoft.com/en-us/research/blog/deep-learning-program-synthesis/

François Cholet tarafından sunulan Kaggle yarışması üzerinde çalışıyorsanız, bu makale size yardımcı olacaktır.

Kaynak: Pexels

"Onu yaratan aynı bilinç düzeyinden hiçbir sorun çözülemez." - Einstein

Her "imkansız" zorluk, sorunu çözmekten vazgeçmeyen insanlar tarafından adım adım çözülür.

Hadi, sen en iyisisin!

Yorum Beğen Takip Et

Yapay zeka öğrenme ve geliştirmenin kuru mallarını paylaşalım

Yeniden yazdırıyorsanız, lütfen arka planda bir mesaj bırakın ve yeniden yazdırma şartnamelerine uyun

Xinsheng Bugün | Arkadaş edinmek için para kazanmıyor musunuz? Luo Yonghao, Nisan Şaka Günü akşamı saat 8'de ürünleri canlı yayınlayacak.
önceki
Ayrıntılı eğitim: Vue2 ve Vue3'te aynı bileşenleri oluşturun
Sonraki
Yapay zeka bilinç boşluğunu kapatabilir mi?
En sevdiğiniz metin düzenleyiciniz karakterinizi mi ortaya çıkarıyor?
Core Voice Today DeepCode, C / C ++ 'ya AI statik kod analizi desteği ekler
Smart Edge, ne kadar biliyorsun?
Yapay zekanın hayatları değiştirebileceği 10 yol
Worker JavaScript'te hangi rolü oynar?
Python neden adını alıyor?
Bugün Core Voice | iOS 14 Kodu Sızdırıldı! Apple ve BMW, CarKey işleviyle işbirliği yapıyor
2020'de matematik kitapları okumalı - matematik hayatın tüm yönlerini nasıl etkiler?
Yapay zeka, şirketin sürdürülebilir gelişimini nasıl destekliyor?
Makine öğrenimi platformumuz neden R yerine Python'u destekliyor?
Mart ayında 300'den fazla "beyaz melek" havai fişek Yangzhou'ya gidiyor ve Slender West Gölü'nde tekne gezintisi yapıyor
To Top