Python ile yapay zeka yol haritası

Dostlar merhaba,

Biraz araştırdım ve Python ile güzelce yapay zeka yapılabileceğini öğrendim. Bunun için makine dili ve derin öğrenme gerekliymiş.

Bunun için nasıl bir yol haritası izlemeliyim? Tavsiye verir misiniz?

“Deep learning is part of a broader family of machine learning methods based on artificial neural networks with representation learning.”
Yapay zeka yapabilmek için derin öğrenme gerekli değil, bu sadece bir yöntem.

Python ile bir yapay zeka yapmak istiyorsanız makine diline ya da herhangi başka bir dile falan ihtiyacınız yok. Makine diliyle neden işiniz olsun ? Makine diliyle CPU’nun işi olur. Python ile bir yapay zeka yapacaksanız size Python dışında başka bir şey lazım değil.
Mesela bakınız burada Python ile yapılmış bir tic tac toe yapay zekası var.

2 Beğeni

Anladım. Teşekkür ederim.

Yapay zeka hangi kısımda acaba. Bana tüm ihtimallerin düşünüldüğü basit algoritma gibi geldi.

2 Beğeni

Bilgisayar kontrollü desek daha doğru olur sanırım. Bazı oyunlarda botların isimleri “AI” ve “Computer” olarak ikiye ayrılıyor.

Minimax algoritması kullanılmış, yapay zeka denmeli mi denmemeli mi bilmiyorum.

Bu belki daha yerinde bir örnek olabilir, QLearning ile yapılmış bir AI.

Google Asistan tarzı bir yapay zeka için soruyorum arkadaşlar. Nasıl bir yol izlemeliyim?

Denmemeli diye düşünüyorum. Emin olmadan cevap vermek karşındakini yanlış yola yönlendirmene neden olabilir

Yapmak istediğin bir sohbet robotu. Buna chatbot da deniyor. Bunun için özellikle doğal dil işleme ve derin öğrenme alanına yoğunlaşmalısın. Diyalog bazlı yapay zeka alanında ilerlemeli ve basit sss botlarından başlayarak ilerleyen zamanlarda alexa, siri gibi chatbotlar üretmeye imkan yaratmalısın.
Tabi bu alan oldukça zor bir alan ve sadece python yetmeyebilir… Projeni daha performanslı hale getirmek için gerektiğinde c++, ruby, r ile de çalışman gerekebilir.
Bunlar da yeterli değil. Olasılık, istatistik gibi matematik alanlarında iyi bir seviyede olman gerekecek.
Elbette uzun bir süreç olacak ancak basit bir chatbot istiyorsan lise matematiği ve python da işini görür ama kayda değer üretim yapmak istiyorsan ileri derece öğrenim görmen gerekecek ve tek başına yapman da çok zor olup uzunca zamanını alacaktır.
Bazı frameworkler ile chatbotun nasıl yapıldığını, nasıl çalıştığını öğrenebilirsin. Sanırım microsoftun vardı.
P.S. Yapay zeka alanında uzman hatta iyi bile sayılmam. Öğrenmeye çalışırken edindiğim bilgileri sana sunmak istedim. Yazdıklarımı araştırıp daha detaylı bilgi sahibi olmanı öneririm.

4 Beğeni

Çok teşekkür ederim. Evet yapmak istediğim chatbot. Python yeteceğini düşünüyorum ama eğer yetmez ise diğer dillere de başvurabilirim.

Doğal dil işleme ve derin öğrenmeye başlamam için kaynak ve sizin önerileriniz nelerdir?

Bir de, basit sss botlarından kastınız tam olarak nedir? Anlayamadım. Soru cevap demeye çalıştınız sanırım?

Yeri geldiğinde dertleşecek, yeri geldiğinde öneri verecek. Eğer elimden gelirse, Siri veya Google Asistandan bile daha iyi bir yapay zeka yapmak istiyorum.

https://ayyucekizrak.medium.com/yapay-zekaya-başlama-rehberi-91e79d3de8e1
Türkçe kaynak olarak bu rehber isteklerini karşılar.

sss Sıkça sorulan sorular’ın kısaltılışı olarak kullanılır. Bu tür chatbotlar kullanıcıya sadece bilgi verirler. Amaç kullanıcının hızlı ve anlık şekilde doğru bilgiye erişmesini sağlamaktır. Örnekle anlatmak gerekirse çoğu kullanıcının soruları birbirine benzerdir. Örneğin internet aboneliğine sahip biri muhtemelen sss botuna ’ internetim kesildi, faturamı nasıl öderim, internetim yavaş’ gibi sorular soracaktır. Bu tür sorulara hazır cevaplar kaydedilir ve sss botu gelen veriyi işleyip sorunun hangi cevaba uygun olduğunu belirler ve bir müşteri temsilcisinden daha hızlı ve kararlı cevap verir/verebilir.
En çok kullanılan türün bu olduğunu biliyorum ve yetersiz olduğunu da düşüyorum ama para ve zaman açısından daha tasarruflu olması olumsuz düşüncelerimi gideriyor.

Tam olarak bu şekilde değil, soru da sınırlı cevap da sınırlı. Eğer rastladıysan zor durumda kalınca sss botlarının ‘sizi müşteri temsilcisine bağlıyoruz’ demelerini görmüşsündür.

İsteğin zor ama imkansız değil. Yardım için burdayız tabi bize de yardım lazım olacak. :grinning_face_with_smiling_eyes:

2 Beğeni

Teşekkür ederim. Bu sistemler için şöyle bir yol haritası hazırlayacağım:

Yapay zekanın tüm yapacaklarını kategoriye ayıracağım.

Mesela dertleşme muhabbeti, normal sohbet, görevler(Google’ı aç vb.) gibi gibi. Hepsini ayrı dosyalarda kodlayacağım.

Teşekkürler tekrardan.

Rica ederim. Başarılar. :clap: :muscle:

1 Beğeni

Hocam bir şey soracağım. Ben şu an normal python öğrendim. Burada “File Handling” başlığına kadar öğrendim. Buradan sonra ne yapmalıyım? Tavsiye verir misiniz?

Gönderdiğin sitenin devamında Python Modules kısmındaki numpy, pandas, SciPy kütüphaneleri ve sonra yine aynı sitenin devamında matplotlib kütüphanesi üzerinde çalışmanı öneririm. Yapay zeka alanında bu kütüphaneleri çokça kullanacaksın. Özellikle veriyle ilgilendiğin zamanlarda pandas ve numpy'ı sık sık kullanacaksın. Şimdiden öğrenmen ve üzerinde çalışman sağlam temeller üzerine ilerlemene yardımcı olur. Algoritma kurma becerin iyi ise bunları bitirdikten sonra veri bilimine, makine öğrenmesine sonra da derin öğrenmeye başlayabilir ya da doğrudan derin öğrenmeye başlayabilirsin. Eğer algoritma kurma becerini yeterli görmüyosan bolca alıştırma yaptıktan sonra devam etmeni öneririm. Çünkü karşına bazen öyle algoritmalar çıkacak ki anlamak için bile saatlerini belki günlerini harcayacaksın. (Algoritma kurmada gelişmek için öğrendiklerin üzerine hayal gücünü kullanarak küçük projeler üretebilirsin. Örneğin şu anki bilgin ile konsol üzerinde çalışan tic tac toe uygulaması yapabilirsin.) Kişisel görüşüm biraz veri bilimi ve makine öğrenmesi üzerinde kafa yorarsan derin öğrenmeyi daha hızlı öğrenirsin yönünde.
P.S. Ben veri bilimi ve makine öğrenmesini temel seviyede öğrendim fakat derin öğrenmeye hala giriş yapamadım maalesef. Daha ileri konular için vereceğim öneriler şimdilik duyduklarımla sınırlı kalacaktır. Tabi yapay zeka planıma geri dönersem ileri konular için de yardım etmeye çalışırım.

Teşekkür ederim. Yarın başlıyorum.

Bir şey daha sormak istiyorum:

Mesela “Selam” kelimesine “Selam” denmesi için sizce satırlarca kod mu yazılmalı, yoksa direktmen if ile yapılmalı mı? Böyle basit diyaloglar. Yani uzun uzun yapay zeka kodları yazmam gerekir mi? Bence gerekmez ama yine sorayım dedim.

Girdileri bir listede, çıktıları ayri bir listede tutarsın ve modeli bu listere uygun şekilde eğitirsin. Eğitim sonunda model senin girdilerine karşı çıktı üretir. Örneğin girdi olarak ‘merhaba, selam, naber, what up, how you doin’ girip, çıktılara ise ‘iyi ya sen, selam, güzel, fine, Im good’ gibi karakter dizileri eklersen model eğitildikten sonra ona merhb bile dediğinde çıktı listesindeki her hangi bir karakter dizisi ile cevap verir.

Zaten yapay zekanın bir diğer amacı tüm ihtimaller üzerine kod yazmak yerine model oluşturup eğiterek daha az kodla daha fazla ihtimal yaratmaktır.
Yani uzun uzun kodları her defasında yazmak zorunda kalmayacaksın.
Gerekirse o uzun kodları yapay zekaya yazmayı öğreteceksin.

Aşağı yapay zeka destekli basit bir chatbot yapımını bıraktım. İzlersen kafandaki sorular silinecektir.

1 Beğeni

Videoda kodlardan anladığım kadarıyla kişinin kullandığı kelimelere göre yeni yeni kelimeler türetiyor ve kişinin kullanma oranını hesaplıyor. bunu ise numPy ile yapıyor anladığım kadarıyla.

Kodları tam anlayamadım ama numPy öğrenince anlarım diye düşünüyorum.

Teşekkürler.

1 Beğeni

Valla yapay zeka yapmak çok zormuş. Hele ki attığınız videodaki gibi bir şey yapmak. Ben en iyisi python alanında kendimi geliştirmeye devam edeyim.

Başlığı görünce haritamı yapılıyor dedim :smiley: