Python Öğrenmeden Yazabilmek...

Başlatan Stargate, 18 Haziran 2020 - 18:05:31

« önceki - sonraki »

0 Üyeler ve 1 Ziyaretçi konuyu incelemekte.

Stargate

Program yazarken her şeyi ezberlemeye gerek yok. İnternetten, indirdiğimiz kaynaklardan kopya çekebiliriz. Yine de bir yazılım dilini öğrenmeden, kopya çekerek program yazamıyorum.

Bu videodaki insanlar gibi her okuduğumu ezberleyemediğim için yazılım öğrenmekte zorlanıyorum.
https://www.youtube.com/watch?v=inV5z7oScsQ

Bu yüzden başka bir yönteme ihtiyaç var. Örneğin python kodları yazmaya yardımcı olan program yazılabilir. Kite benzeri eklentiler gibi basit değil, python kod yazan bir yapay zeka algoritması. En azından Kite eklentisinden daha gelişmiş bir program.

Örneğin 10 python komutunu birleştirip, bu komutlardan 20 farklı, çalışan kodlar yazabilen bir program geliştirilirse, bu programın 100, 1000 komutlu versiyonu da yapılabilir.

Tabi python un yeni versiyonları çıktığında değişiklikler oluyor. Bu yüzden yukarıdaki gibi bir yapay zeka algoritması geliştirilirse, sadece belirli bir python versiyonuna uyumlu olur. Her versiyon için tekrar ayarlanması gerekir.

Sizce neden hala bu tür gelişmiş programlar yok?

.py

#1
Mesela yıllık için 0, aylık için 1 haftalık için 2 değerini tanımlayalım.
Yapay zeka 0,1,2 arasında bir sayı çeker. "eğer 0 sayısını çekerse sizinle yıllık", "1 saysını çekerse sizinle aylık", "2 sayısını çekerse sizinle haftalık" hava durumuyla alakalı sohbet edebilir.  Biz haftalık sonuçları değerlendirmesini istiyoruz ozaman yapay zekanın 2 sayısını çekmiş kabul ederiz.
Son 7 günün hava durumu şu şekilde olsun: "Pazar:35, Pazartesi:31, Salı:33, Çarşamba:20, Perşembe:17, Cuma:19, Cumartesi:10"
Yapay zeka sizinle iletişime geçtiğinde 2 sayısını çektiğini kabul ettiğimiz için yapay zeka veritabanından son 7 günün hava durmunu bakarak:
3 gündür hava diğer günlere göre serin geçiyor yada son güne bakıp diğer günlerle kıyaslama yaparak bugün hava çok soğuk diyebilir.

Yapay zeka dediğimiz şey aslında bundan ibaret.. (biz 3 durumdan söz ettik ama binlerce olasılık söz konusu olabilir.  yapay zeka özetle bu şekilde çalışıyor.)

Alıntı YapSizce neden hala bu tür gelişmiş programlar yok?

İşin içine yapay zekayı soktugumuz zaman işler sığlaşır. bir türde, AYNI TİP ürünler çıkar. BUARADA Dünya çok komplike bir yer bütün olasılıklar TANIMLI bir yapay zekanın olabilieceğini de düşünmüyor. Yukarıdaki verdiğim örnekte 3 durumdan bahsettim, bu durumları yapay zekanın degerlendirmesi için bile 10binlerce satır kod yazılabilir. Peki gerek varmI? BENCE YOK..

Bıybıy.:)

ampirist

Alıntı yapılan: Stargate - 18 Haziran 2020 - 18:05:31
Program yazarken her şeyi ezberlemeye gerek yok. İnternetten, indirdiğimiz kaynaklardan kopya çekebiliriz. Yine de bir yazılım dilini öğrenmeden, kopya çekerek program yazamıyorum.

Bu videodaki insanlar gibi her okuduğumu ezberleyemediğim için yazılım öğrenmekte zorlanıyorum.
https://www.youtube.com/watch?v=inV5z7oScsQ

Bu yüzden başka bir yönteme ihtiyaç var. Örneğin python kodları yazmaya yardımcı olan program yazılabilir. Kite benzeri eklentiler gibi basit değil, python kod yazan bir yapay zeka algoritması. En azından Kite eklentisinden daha gelişmiş bir program.

Örneğin 10 python komutunu birleştirip, bu komutlardan 20 farklı, çalışan kodlar yazabilen bir program geliştirilirse, bu programın 100, 1000 komutlu versiyonu da yapılabilir.

Tabi python un yeni versiyonları çıktığında değişiklikler oluyor. Bu yüzden yukarıdaki gibi bir yapay zeka algoritması geliştirilirse, sadece belirli bir python versiyonuna uyumlu olur. Her versiyon için tekrar ayarlanması gerekir.

Sizce neden hala bu tür gelişmiş programlar yok?
bende ezberleyemiyorum.

Ama sorun ezberde değil o dili öğreten kaynak kitap sorunu var.
birde dil kütüphaneleri genellikle  kullandığın dil dışında yazıldığı için problem oluyor.
Onlarda genellikle ya ücretli oluyor.Yada yazıldığı dili öğreten kaynak sıkıntısı oluyor.
bazıları ise tedavülden kalkmış dil oluyor.Ama onu kopyala yapıştır olarak programcılar içeriğini bilmeden yapıştırıp duruyorlar.

Stargate

Kendi beynime öğretmekle uğraşmaya ek olarak, bilgisayarda bir yapay zeka olsa, ona da öğretsem.  :D Yani kendi beynimdeki python bilgimin kopyasını bilgisayarda oluşturmak isterim. Sadece python için eğitirim.
Örneğin bu videoyu gördüm. Henüz hepsini izlemedim. Ancak chatbot yapay zekaları kullanılarak bir şeyler yapılabilir mi?
https://www.youtube.com/watch?v=_5532kqioPM

.py

[mention=653795]@Stargate[/mention]Yaşınızı sorsam ayıp olur mu?

Stargate

Alıntı yapılan: .py - 18 Haziran 2020 - 22:36:57
[mention=653795]@Stargate[/mention]Yaşınızı sorsam ayıp olur mu?

28

.py

#6
[mention=653801]@Stargate[/mention]Forumda yeni olduğunuz için sordum cevap verdiğniz için teşekkürler.

kısaca yapay zekayı tanımlamak istiyorum.
yapay zeka sizin anladıgınız gibi bir şey değil siz öğrenirken yapay zeka sizinle öğrenemez sizin isteklerinize cevap verebilmesi için o konunun daha önceden programlanmış olması gerekir. çünkü insan ihtiyaçları sonsuzdur. Tanımlı olmayan bir durum oldugunda, "ne yapacagi tanimli olmadigi için yapay
zekadan cevap alamazsınız." yapay zeka bir hedefe yönelik çalışır eğer bir amaç belirlemezseniz sonsuz olasılık ortaya çıkar.

siz yapay zekaya "merhaba" dediğinizde size vereceği cevaplar bir kümenin içinde tanımlıdır "rasgele" bir sayı seçer ve kümedeki cevapların indexleriyle eşleşetirir size farklı cevap verir. sizde yapay zekanın çok zeki oldugunu düşünür durursunuz aslında ortada bir zeka yok sadece olaylar ve olaylar ile alakalı vereceği reaksiyonlar tanımlı listeden (kümeden) birini seçer ve tepki verir.

Alıntı YapÖrneğin 10 python komutunu birleştirip, bu komutlardan 20 farklı, çalışan kodlar yazabilen bir program geliştirilirse, bu programın 100, 1000 komutlu versiyonu da yapılabilir.

10 python komutunu birleştirip, bu komutlardan 20 farklı işe yarar kod yazmasını beklemek doğru bir yaklaşım değil çünkü bir anlamı yok. işe yarar bir kod yazdırmak içinse bir amacının olması gerekir. ve bu amaca nasıl ulaşacağının tanımlı olması gereklidir. imkansız değildir ama anlamsızdır. mesela python 2 de print fonskiyonunu kullanırken parantez  kullanmanız gerekmez python 3 de parantez şarttır. sizin kafanızda böyle bir şey varsa bunun için yada buna benzer durumlar için bir yapay zekaya ihtiyaçınız yoktur.

Alıntı YapSizce neden hala bu tür gelişmiş programlar yok?

yapay zekayı çok iyi anladığımızda neden olmadığınıda anlarız.

mhmtkrktr

[mention=653801]@Stargate[/mention]
Senin söylediğin şey modül denilen şey değilmi zaten. Sen bir sonuç almak için düşünüp, yüzlerce satır kodla uğraşma diye hazırlanmış, sadece "nereye nasıl yazacağını öğren yeter" diye bırakılmış  dış fonksiyonlar. Haa o da hazır olsun diyorsan, belki ilerde olur. Ancak şimdilik ayranın biraz dökülmesi gerekiyor  :)

[mention=653801]@py[/mention]
Sen benim dizimin üstünde ki bilgisayarı tarif etmişsin. "Önceden veri girerim onu işler." Ancak yapay zeka denilen meret şey öyle olmuyor benim bildiğim. Kendisine hiç verilmemiş bilgiyi öğrenir, algoritma üretir. Klasik bilgisayar işleyişi ile yapay zeka arasında ki farkı kabaca şu şekilde ayırabiliriz sanıyorum. Senin örneğine yakın olsun.

Bilgisayara son 10 yılın gün gün hava durumu raporunu girersin. Sonra, sorduğun gün için, son 10 yılın aynı günü için de, oluşan sonuçların ortalamasını bulan bir kod yazarsın. (Gelecekte bir gün için) Kodu her çalıştırdığın da, sorduğun gün için sana ortalamayı verir. Tahminde bulunmuş olmaz, matematiksel olarak yaklaşık en yakın sonucu verir.

Yapay zeka için bunu yapmana gerek yok. (yine gelecekte bir gün için) hava durumunu sorarsın. Meteoroloji, google vs aklına gelecek konuyla ilgili ne kadar kaynak varsa toplayabildiği tüm kaynakları toplar, Muhtemelen bununla ilgili küresel ısınma, mevsimsel kayma gibi verilerin bilimsel makaleleri de değerlendirerek, olası bir tahminde bulunur.

Burada farkı oluşturan önemli noktalar var. Ne söylediğini ve istediğini anlaması ve de istediğin konuyla ilgili nereye bakacağını, bunu başka hangi benzer bilgilerle bağlayacağını tahmin edebilmesi. Bu yüzden ona bilgi-sayar değil de (doğal\yatay\dikey\yapay adına ne dersen de) zeka deniyor. https://tr.wikipedia.org/wiki/Zek%C3%A2

Yinede denilebilir ki, "e bunu yapması içinde sonuçta bir kod yazılmış". Diyebileceğim tek şey, devir aya bayrak dikenin değil, makinaya o kodu yazabilenin devri olacak.  :)

lnxdev

Böyle bir şeye gerek yok zaten çoğu betik dilleri(python,php,javascript, vb..) neredeyse ingilizce okur yazar gibi yazılıyor örneğin javascript'te bir string işlemi yaparken slice,split,replace gibi yani türkçeleri kesme yada dilimleme, ayırma, değiştirme anlamlarını barındıran isim olarak size bariz ne yapacağını çok net söyler şekilde tasarlanmıştır. Hemen hemen çoğu programlama dillerinde de bu işlemler aynıdır farklı isimler yada aynı isimde olup farklı işlemler yapmazlar istisnalar hariç. Yani hiçbir şeyi ezberlemenize gerek yoktur zaten hepsi dokümantasyon denen kaynaklarda yazılı halde bulunmaktadır unutma olursa gidip bu kaynaklardan nasıl çalıştığına dair bilgiler alınabilir. Bu tarz işlerle uğraşırken ingilizceniz olduğu sürece sıkıntı çekmezsiniz ve daha rahat bir şekilde bu süreci geçirirsiniz. Ayrıca dediğiniz şeyi kendi kütüphanenizi oluşturarak @mhmtkrktr dediği gibi kendi modüllerinizi oluştura bilirsiniz.

lafurus

Bu forumda yapay zekayla ilgili çok nutuk atılıyor. Geneli de yapay zeka olmayan şeylerle ilgili nutuklar. Yapay zekaya istatistikçi gözüyle bakılıp döner kesen robotlar üzerinden açıklanmaya çalışıyor şu olur şu olamaz. Arkadaşın dediğini zaten MS bir süredir geliştirmeye çalışıyor. Buyrun videosu:  https://www.youtube.com/watch?v=y5-wzgIySb4&feature=emb_title   

Ayrıca yapay zekanın x düzeyinde olmaması onun yapılamayacağı anlamına gelmiyor. Kaldı ki zeka nedir psikoloji alanında bir problem. Örneğin konuşurken, 5 sözcüklük bir tümce kuracağınızı düşünün. Bu konuşucunun 10.000 sözcük bildiğini varsayalım (genelde geçen rakamlar 50bin civarındadır ben o hesaplara sözcük aileleri ile ilgili tanıma katılmıyorum.). Konuşucunun bu 10bin sözcüğe erişmesi, kurmak istediği tümceyi 5 sözcükten oluşacak şekilde doğru seçmesi lazım. Bütün sözcüksel dizilimlerin olasılıkları 10^20. Bunu nasıl yapıyor, hemen hemen hiçbir fikrimiz yok. Doğuştancı açıklamalar bir yanda istatistikçi açıklamalar öte yanda. İkisi için de çeşitli deneysel kanıtlar mevcut. Ama şudur yapay zeka şöyle olmalıdır diyemiyoruz. Her özgül alanda çeşitli modeller var, çalışıyor bazı alanlarda, ama hala eksik. Kaldı ki bazı uygulamaların yaptığı işler hiç fena değil özellikle konuşma tanıma, resim tanıma konusunda vesaire. Bazen yapay zeka şöyle olmaz böyle olmaz nutukları atmadan önce normal insan zihni nedir ki yapay zeka öyle olmasın diye de sorabilmek lazım. 

Buraya iki video daha koymak istiyorum:
https://www.youtube.com/watch?v=yzFW4-dvFDA
https://www.youtube.com/watch?v=40riCqvRoMs

Bu literatürler her alandan, her disiplinden deniz derya. Biraz şu çok temel random istatikçi modundan çıkmak lazım. 90'ların 80'lerin tartışmaları döndürmenin bir manası yok hala. Evet bir tane robot yapalım, her şeyi öğrensin halletsin böyle bir dünya yok. Ama postu atan arkadaşın istediği şey çok mantıklı, pazarlanabilir ve geliştirilebilir bir şey ki zaten pazarlamaya bile başladılar.

.py

#10
[mention=653807]@lafurus[/mention]
Alıntı Yappazarlanabilir ve geliştirilebilir bir şey ki zaten pazarlamaya bile başladılar.

bi link atsana incelemeyi çok isterim.

Alıntı YapBiraz şu çok temel random istatikçi modundan çıkmak lazım. 90'ların 80'lerin tartışmaları döndürmenin bir manası yok hala.

senin üzmek istemem ama yapay zekanın bir çok alanda random çalıştıgını sonsuza kadar savunmaya devam edicem:)

Bıybıy:)

lafurus

Alıntı yapılan: .py - 19 Haziran 2020 - 23:55:39
[mention=653807]@lafurus[/mention]
Alıntı Yappazarlanabilir ve geliştirilebilir bir şey ki zaten pazarlamaya bile başladılar.

bi link atsana incelemeyi çok isterim.

Alıntı YapBiraz şu çok temel random istatikçi modundan çıkmak lazım. 90'ların 80'lerin tartışmaları döndürmenin bir manası yok hala.

senin üzmek istemem ama yapay zekanın bir çok alanda random çalıştıgını sonsuza kadar savunmaya devam edicem:)

Bıybıy:)

Linkini koymuştum posta. Youtube linki. Bir demo videosu. Bunu pazarlamaya başlamak olarak görmüyorsan bu biraz daha farklı bi konu. Üzerine çalıştıkları şeyin haberlere çıkmasını sağlamak oldukça pazarlama hareketi. Bu insanlar sanırım python bildiği halde, python yazan bir programı sırf eğlenelim diye yapmaya çalışmamakta olduklarını düşünüyorum.

Ayrıca evet bir çok alanda oldukça random (Bu arada random dediğim de binlerce rastgele işlemi simüle edip en iyi sonuçları seçen yazılımlar. Makine öğrenmesi olarak literatürde geçenler. "Nasılsın?" sorusuna 3 tane cevap yazdım, rastgele birini seçiyor buna kimse yapay zeka demez, yapay zeka diyene de gülerler :D). Ki onlarda bile en kötü belli başlı sayıltılar devrededir. Bir çok alan akademik değil, market. Market için belirlediğiniz işlerde maksimum performansı alacak ürünler üretmeye çalışırsınız. Akademide ve artık market daha az umurunda olan mega şirketlerde durum farklı. İnsanı incelersiniz, felsefe okursunuz (filozof alırsınız işe geçen senelerde haber olmuştu bir de bu, haber edenler dünyadan bir haber olunca), öğrenmeyi öğretirsiniz. Sürekli olarak hata yapan yazılımlar var örneğin bunu biliyor musunuz? Hata yapması için tasarlanmış, daha doğrusu çalışan sisteme hasar verilmiş: sebebi de zihni modellemek. Çünkü sürekli aynı tip hata yapan beyin hasarı almış hastalar var. Eğer siz aynı özgül hatayı yaptıracak bir hasar verirseniz ve bu hasar da beyinde gerçekleşen hasara bilindiği kadarıyla yakın olursa, hasarsız çalışan sisteminiz de zihne benziyor demektir. Dediğim gibi bu literatürde her yer deniz derya, bir ucundan tutup çalışmak, diğer uçlarında olan bitenleri takip etmek lazım. Ayrıca iyi bir multidisipliner ekibinizin olması lazım, her ucundan alanlarında uzmanlaşmış insanlarla.

Böyle şeylerle uğraşmak isteyen arkadaşlara birkaç kitap tavsiyesi verebilirim. Bunlar çeşitli alanlara giriş kitabı. Eğer sadece yazılım kısmıyla ilgilenecekseniz bile örneğin ilginizi çeken bir konuyu modellemeye çalışın. Okumaya başladıkça bilmediğiniz (ilginizi çeken konularda) hem daha derin bilgi edinmeye, hem de anlamamışsanız daha temele inmeye deneyiniz.

-Cognitive Science: An Introduction to the Science of the Mind - Bermudez, J.L.
Bilişsel Bilim için doğrudan çok güzel bir giriş kitabı. Biraz psikoloji, dilbilim altyapısı isteyebilir. Bunlar için de (Modern Psikoloji Tarihi - Kaknüs Yayınları, Genel Dilbilim Auzef Yayınları, Talking to Talk: Language, Psychology and Science güzel kaynaklar. Okuması da zevkli.)
-Yapay Öğrenme - Ethem Alpaydın. Herhalde bu epey okunmuştur özellikle Türkçe olması sebebiyle diye düşünüyorum. Özellikle bu forumda.
-Artificial Intelligence A Modern Approach - S. J. Russell ve P. Norvig
-Bir Zihin Yaratmak: İnsan Düşüncesinin Esrarı - R. Kurzweil
Dannetleri, Searleları, Descartesları da bi arada gözden geçirmek oldukça faydalı olacaktır.
Yönelinecek alan ilgi meselesi. Ama buna rağmen diğer alanlardan temel düzeyde haberdar olmak gerekiyor.

Mesajı alıntılamamış olmamın dışında bunları doğrudan bir kişi ya da bir yere cevap olarak yazmış olmadığımı belirtmek isterim. Bu mesajda güdülen amaç bilgi birikimini artırmaktadır. İngilizce olan kitaplara çeşitli yollarla ulaşmak mümkün. Türkçe olanların da basımı var sanıyorum.

Ayrıca seni üzmek istemem kısmı da oldukça komikti gülmeden edemedim :D. Lütfen üzünüz, ağlatınız beni, gizli gizli ağlayım ekran başında :D.