AI, programcıların işlerini ele geçiriyor: AI, 2040'ta programcıların yerini alabilir

Xinzhiyuan Raporu

Kaynak: entegre kod hattı vb.

Derleyici: Xiao Qin

Xin Zhiyuan Rehberi Oak Ridge Ulusal Laboratuvarı'ndaki bazı uzmanlar, 2040'a kadar AI teknolojisinin programcıların yerini alacak kadar güçlü olacağını tahmin ediyor. Bununla birlikte, makineler bugün programcıların yaptığı işi tamamen değiştirebilse bile, bu onların insan yardımına ihtiyaçları olmadığı anlamına gelmez.

Programcılar ve diğer BT işleri türleri şüphesiz şu anda en sıcak işlerdir. Ancak bu eğilim sonsuza kadar sürmeyebilir.

Oak Ridge Ulusal Laboratuvarı'ndaki bazı uzmanlar, 2040'a kadar AI teknolojisi, programcıların yerini alacak kadar güçlü olacak ve AI yazma yazılımı, insan programcılardan daha iyi ve daha hızlı olacak. Başka bir deyişle, yazılım tarafından yazılan yazılım, insanlar tarafından yazılan yazılımlardan daha iyidir.

Bu nasıl oldu? Yapay zeka, son derece yaratıcılık gerektiren entelektüel çalışmaların nasıl yapılacağını gerçekten öğrenebilir mi? Sonuçta, yaratıcılığın her zaman insanlara özgü olduğu düşünülmüştür. AI, bizim öğretebileceğimizden daha fazlasını öğrenecek mi?

Kuralları formüle etmek için yapay sinir ağını kullanın

Yapay sinir ağı, insan beyninin öğrenme mekanizmasını taklit etmeye çalışan bir teknolojidir. Gerçek sinir ağlarından esinlenmiştir ve kısmen gerçek sinir ağlarını simüle eder. İnsan sinir sistemini çok güçlü bir bilgisayar olarak hayal etmeye çalışabiliriz.

Yukarıdaki resimde, her nöronun bir girişi ve çıkışı vardır Giriş aslında bir dizi sinyalin ağırlıklı bir kombinasyonudur. Her sinyalin kendi matematiksel olarak ifade edilebilir etkisi vardır ve sinyallerin toplamı çıktıyı belirler. İnsan sinir ağları ile ilgili özel olan şey, öğrenme ve deneyime göre adapte olabilmeleri ve değişebilmeleridir; bu, aynı girdinin her zaman aynı çıktıyı üretmediği anlamına gelir.

Bu aracılığıyla Farklı darbelerin önceliğini değiştirin ve nöronlar arasındaki fiziksel bağlantıları değiştirin Tamamlamak için. Bu değişiklikler, insanların yeni ortamlara uyum sağlama ve gelecekteki davranışları optimize etme becerilerini geliştirmek için öğrenme algoritmaları ve maliyet işlevleri aracılığıyla belirlenir.

Yapay sinir ağları üzerinde çalışan bilim adamları ve mühendisler bu mekanizmayı kopyalayıp yazılım geliştirmede uygulamaya çalışıyorlar. Bu özellikle, yazılımın bir dizi "eğer ... o zaman" kuralı gibi geleneksel bir şekilde yazılmayacağı anlamına gelir. Teoride, kademeli öğrenme ve optimizasyon süreci yoluyla, yapay sinir ağlarının, insanların yazdığından daha iyi çıktılar elde etmek için kuralları nasıl formüle edeceğini (veya "yazacağını") öğrenebileceğini hayal edebiliriz. AI biliminde buna derin öğrenme denir ve genellikle bir dereceye kadar insan geribildirimine dayanır.

Aşağıda programcıların yerini alabilecek birkaç uygulama bulunmaktadır.

Karpathy: Tekrarlayan sinir ağı kullanarak otomatik kod oluşturma

Stanford Üniversitesi'nde bilgisayar bilimi alanında doktora öğrencisi olan Andrej Karpathy, 2015'in başlarında kod üretmek için tekrarlayan sinir ağlarını kullandı. Bir Linux deposu (tüm kaynak dosyalar ve başlık dosyaları) kullandı, onu büyük bir belgede birleştirdi (400 MB'nin üzerinde kod) ve bu kodları RNN'yi eğitmek için kullandı.

Sistemin bütün gece çalışmasına izin verdi. Ertesi sabah şunu aldı:

AI tarafından oluşturulan kod örnekleri

Yapay zeka tarafından üretilen kod, tam anlamıyla işlevler ve işlev dekorasyonları içerir. Parametrelere, değişkenlere, döngülere ve doğru girintiye sahiptir. Parantezlerde açma parantezleri ve kapatma parantezleri ve hatta yorumlar bulunur.

Bu kodlarda, AI kesinlikle bazı hatalar yaptı. Bazen değişkenler asla kullanılmaz. Diğer zamanlarda, bazı değişkenler daha önce tanımlanmamıştır. Ancak Karpathy sonuçtan memnun.

Karpathy blogunda "Kod genel olarak harika görünüyor. Elbette, derleneceğini sanmıyorum, ancak üretilen koda göz attığınızda, çok büyük bir C kodu tabanı gibi geliyor," diye yazdı.

Bu proje GitHub'da bulunabilir. Torch7'nin derin öğrenme kütüphanesini kullanır. İşte Karpathy'nin aldığı tüm çıktı dosyası:

https://github.com/karpathy/char-rnn

DeepCoder

Microsoft ve Cambridge Üniversitesi'nden araştırmacılar, DeepCoder adı verilen ve öğrenme yeteneğine sahip kod yazabilen bir makine öğrenme sistemi geliştirdiler.

DeepCoder büyük bir kod tabanında arama yapabilir ve ardından etkili kod yazabilir. DeepCoder tarafından kullanılan teknolojiye Program sentezi (Program sentezi), mevcut yazılımın kod satırlarını yakalayarak yeni bir program oluşturmak için. Şimdi birçok programcının aynı şeyi yaptığını itiraf etmeliyim. DeepCoder, bir dizi kod parçasının giriş ve çıkış verilerini öğrenerek, hedef görev için yararlı olan kod parçalarını otomatik olarak çıkarabilir.

DeepCoder bir saniye içinde çalışabilen bir program yazabilir. DeepCoder'in programlama deneyimi arttıkça, yararlı ve yararsız kod parçalarını ayırt etme yeteneği artar ve program oluşturma hızı daha hızlı ve daha hızlı hale gelecektir.

Bu, yapay zekanın kod çaldığı veya mevcut yazılımdan kod kopyalayıp yapıştırdığı veya İnternette çözüm aradığı anlamına gelmez. DeepCoder'in yazarı, yakın gelecekte programlama yarışmalarına katılacağını umuyor.

DeepCoder tarafından oluşturulan Etki Alanına Özgü Dil (DSL) örnek programı

Cambridge Üniversitesi'nde bir Microsoft araştırma projesine katılan DeepCoder'in yaratıcılarından Marc Brockschmidt şunları söyledi: "Bu program, programcı olmayanların program fikirlerini istedikleri programı almak için bilgisayara açıklamalarına izin verecek ve sistem bunu otomatik olarak yazacak."

DeepCoder'in belgelerini burada bulabilirsiniz:

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

AI Python kodu yaz

Bir Fransız mühendis BenjaminTD takma adıyla "bir AI sistemine Python kodunun Python koduyla nasıl yazılacağını" nasıl öğrettiğini açıklayan bir blog yazısı yayınladı.

En popüler tekrarlayan sinir ağı yapılarından biri olan Uzun Kısa Süreli Belleği (LSTM) kullandı. Ağı "beslemek" için pek çok Python kodu (Pandas, Numpy, Scipy, Django, Scikit-Learn, PyBrain, Lasagne, Rasterio, vb. Kullanarak) kullandı. Birleşik dosya boyutu 27 MB'dir.

Ardından, AI kendi kodunu oluşturdu. İşte tanım başlatma:

... Boole ifadelerini kullanma:

... Ve diziyi oluşturun:

Diziye yakından bakarsanız, bir sözdizimi hatası bulacaksınız. BenjaminTD'nin kodu mükemmel olmaktan uzak, ancak yalnızca örnek kodları okuyarak öğrenen bir ağ için iyi göründüğüne inanıyor.

AI Programcısı

2017'de Bloomberg ve Intel Labs araştırmacıları, otomatik olarak eksiksiz bir yazılım programı oluşturabilen ilk AI sistemi "AI Programcısı" nı gerçekleştirdiklerini iddia ettiler.

AI Programmer, karmaşık talimatları simüle etmek için makine öğreniminde genetik algoritmalar kullanır. AI Programmer tarafından oluşturulan programlar artık acemi programcılar tarafından yazılanlarla aynı karmaşıklığa sahip olsa da. Ancak araştırmacılar, AI Programmer tarafından yazılan programların geleneksel kategorileri tamamen aşabileceğine ve insan zamanı ve bilgeliğiyle sınırlı olmadığına inanıyor.

AI Programmer'ın yazılım mimarisi. İnsan tarafından tahrik edilen çok az parça olduğu şekilden görülebilmektedir.Yalnızca başlangıçta komut girmeniz ve sonunda belirli bir göreve uygun işlevleri almanız yeterlidir.Geri kalanı makine tarafından yapılır.

Araştırmacılar, birçok yazılım programı oluşturmak için AI Programmer'ı kullanabileceklerini söylediler. Aşağıdaki tablo, oluşturulan programların bir listesidir.

Potansiyel tehdit: makinenin ne ölçüde yapabileceğinden emin değilim

İnsanların yerini alabilecek programlar var, ancak aşağıdaki soru şu: makineler kendi kendilerine öğrenebilirse, ne kadar öğrenebilirler? Limit nerede? Bu optimizasyon süreci gerçekten yazılıma insanlardan daha iyi kod yazmayı öğretebilir mi? Web sitesi geliştirme ajansları ve yazılım şirketleri, paradan tasarruf etmek için kendileri için kod yazmak üzere yapay zeka odaklı programlar kullanacak mı? Gerçek şu ki biz hala belirsiz Makine ne kadar yapabilir.

Bununla birlikte, yapay zekanın zaten BT endüstrisindeki bazı işleri etkilediğini biliyoruz. Hintli bir yazılım danışmanlığı ve dış kaynak kullanımı şirketi olan Wipro Ltd., geçen yılın Haziran ayından bu yana yazılımın bakımını yapmak için yapay zeka platformu Holmes'u kullanıyor ve 3000'den fazla mühendisi işlerinden endişe duyuyor. Bahsetmiyorum bile, sıklıkla kullandığımız teknolojilerin çoğu - konuşma tanımadan makine çevirisine kadar - makine öğrenimi tekniklerini kullanıyor.

Yapay zeka ve insan programcılar, programlamada tamamlayıcı roller oynayacak

Yapay sinir ağlarıyla ilgili bir sorun, kullandıkları algoritmaların "kara kutular" olması, yani dahili çalışma yöntemlerinin çok karmaşık olmasıdır. Tesla'nın yapay zeka direktörü Andrej Karpathy, çoğu uygulama için tamamen yapay zekaya dayalı% 100 doğru bir modeli asla elde edemeyeceğimize inanıyor. Yapay zeka sistemlerinin doğruluğunun% 90'ı aşacağına, ancak mükemmel olmadıklarına ve zaman zaman beklenmedik şekillerde başarısız olacaklarına inanıyor.

Genel olarak, denetlenen ve denetlenen derin öğrenme sistemleri denetimsiz sistemlerden daha iyi performans gösterir. Bu, en karmaşık AI yazılımının bile yeni çevreyi öğrenmek ve ona uyum sağlamak için insan katılımını ve geri bildirimi gerektirdiği anlamına gelir. Bu gerçek, gelecekte yapay zeka ile insan programcılar arasındaki gerilime - birlikte çalışarak bir çözüm sağlıyor.

Yakın gelecekte, yapay zeka ve insan programcıların programlamada olacağından emin olabiliriz Tamamlayıcı roller oynayın . Yapay zekanın işi, makinenin mükemmel doğruluğunu gerektiren tekrarlayan, zaman alan görevlerle uğraşmak olabilir. Makine, insan faktörlerinden kaynaklanan gramer hatalarını veya tasarım hatalarını önleyebilir. Örneğin, yapay zekanın yardımcı olabileceği bir yol işlevi otomatik olarak tamamlamaktır.Programcı kodun yalnızca küçük bir bölümünü yazar ve ardından YZ, programcının niyetini tanır ve kodun geri kalanını tamamlar, böylece insanlar için çok fazla işten tasarruf sağlar.

Makineler bugün programcıların yaptığı işi tamamen değiştirebilse bile, bu onların insan yardımına ihtiyaçları olmadığı anlamına gelmez. Ancak programcılar dikkatlerini program yazmaktan yapay zekanın performansını izlemeye kaydırmalı ve yapay zekayı verilerle "beslemeli". Karpathy'nin işaret ettiği gibi, programcılar bir Veri sahibi Verileri toplayın, düzenleyin ve analiz edin, ardından bunları yapay zekaya girdi olarak kullanın ve gerisini yapay zekanın yapmasına izin verin.

GAC Mitsubishi Outlander: Kriz zamanlarında bir bahis
önceki
Yılbaşı Gecesi, Çinlileri engellemeye adanmıştır, azarlamak mı istiyorsunuz?
Sonraki
Üçüncü sınıf şehirlerdeki birinci sınıf öğrencilerinin 50.000 yuan değerinde bir araba seçmelerine nasıl yardımcı olunur?
Mikrofonu Ni Ni ve Liu Wen'e verin, hangi fotoğraf uygulamasını kullanıyorsunuz?
Teknik yorum: şanzımanın senkronizörü
"Karısı 2" nin çekim yeri yabancı medyanın kapağında çıktı Bu "Gün Işığı Şehri" çok güzel!
Bugün bize eve kadar eşlik eden bu altı kişiye teşekkür etmeyi unutmayın!
Magotan ile karşılaştırıldığında Citroen C6, B + pazarında pay alabilir mi?
Dünyanın en güzel kar dağı, Tibet'in saf diyarına rakip olan bu romandaki yer dünyayı baştan çıkardı
Şiir Hayat rüzgar ve ayla doludur ve kaderle anlaşmak kolaydır
Güzel görünüyor ve yemek olarak yenemez Dongfeng Peugeot 4008, bağımsız olmayan arka süspansiyonun kusurunu nasıl çözüyor?
Yenilgi arayan Buick GL8'in hedefleri ve değişiklikleri nelerdir?
2019 Wuhan Üniversitesi kiraz çiçeği görüntüleme politikası yayınlandı! Ayrıca yerli kiraz çiçeklerinin bir haritasını da veriyorum, sadece bunu okuyun
Kız, yıl sonu ikramiyesi kısa mesajını aldıktan hemen sonra istifa etti! Netizenler sordu: Bu iyilik mi?
To Top