• 18-06-2019, 14:34:16
    #1
    Merhaba. Uzun zamandır kendimi php alanında geliştirsem de, artık gelecek görmüyorum. Yapay zeka tabanlı web projeleri için hangi dilleri öğrenmem gerektiği konusunda yardım istiyorum.

    İlgiliendiğim diller şunlar:
    1. Python (web tabanlı kullanılamıyor sanırım) o yüzden django ya mı başlasam direk karar veremedim.
    2. React, Vue ve angular.js hala ne işe yaradıklarını anlamadım Ne tür projelerde kullanılabilir?
    3. Ruby

    Bu dilleri php ile kullanılıyor mu bir de? Beni aydınlatırsanız çok sevinirim. Herkese iyi forumlar.
    wpuzman.com
  • 18-06-2019, 14:53:51
    #2
    bilimokur adlı üyeden alıntı
    Merhaba. Uzun zamandır kendimi php alanında geliştirsem de, artık gelecek görmüyorum. Yapay zeka tabanlı web projeleri için hangi dilleri öğrenmem gerektiği konusunda yardım istiyorum.

    İlgiliendiğim diller şunlar:
    1. Python (web tabanlı kullanılamıyor sanırım) o yüzden django ya mı başlasam direk karar veremedim.
    2. React, Vue ve angular.js hala ne işe yaradıklarını anlamadım Ne tür projelerde kullanılabilir?
    3. Ruby

    Bu dilleri php ile kullanılıyor mu bir de? Beni aydınlatırsanız çok sevinirim. Herkese iyi forumlar.
    django react vue bunlar dil değil, dil olan şey Python ve Python ile django framework'ü üzerinden web tabanlı proje geliştirebilirsin, React ise bir javascript kütüphanesidir.
  • 19-06-2019, 01:34:44
    #3
    merhaba,

    dilden ziyade öncelikle konsepti anlamaya calismalisin. Yapay zekadan basli basina büyük bir olay ve birden fazla konsepten olusuyor. Bunlardan bana göre en önemlisi (önemlilerinden biri) makine ögrenimi (machine learning). O yüzden machine learning e bakmalisin ve nasil oldugunu, nasil calistigini ögrenmelisin.

    Ayrica Performans önemli o yüzden dil secimi de cok önemli. Bize document analysis dersinde machine learning gösterildi ve ilk olarak java ile örnekleme üzerinden gidildi daha sonra dil serbest birakildi. C# i daha iyi bildigim icin c# üzerinden gittim ancak performans olarak bir c++ ya da matlab kadar iyi degildi.

    yukarda yazdigim gibi yapay zeka yani artificial intelligence (AI) temellerinden biri machine learning üzerinedir ve ögrenme önemli bir parcasini olusturur ve en kapsamli ve zor kismi da bana göre bu taraftir. AI üzerine cok fazla calismadim hatta neredeyse hic calismadim diyebilirim, tecrübem daha cok machine learning tarafinda.

    O yüzden AI adimlarini bölüp teker teker bakman lazim. Ama machine learning tarafini cok ayri bir baslik altinda iyice ögrenmeye bak. Bir makineye nasil ögretebilirsin bunla ilgili calismalar yap. En basitinden resim analizleri bu is icin idealdir. Matlab in bunla ilgili kütüphaneleri var ya da diger diller icin de bulabilirsin.

    Bizim yaptimigiz projenin biri söyleydi. 0 dan 9 a kadar olan rakamlar elle yazilmis ve her biri bir resim dosyasi olarak duruyor. 3 tane data setimiz var. Training, validation ve test setleri.

    Ilk olarak training setlerimizi makineye verip ögretiyoruz. Yani 0 yazilmis atiyorum 1000 tane resim veriyoruz bilgisayara ve bunu cesitli sekillerde historgramlarini cikarip 0 yazisinin karakter analizini yaptiriyoruz, bu mantigi diger 9 rakam icin de yaptirip makineye tüm rakamlari tanitmis oluyoruz.Bu islemele classifier deniyor ya da türkce karsiligi olarak siniflandirma desem sanirim yanlis olmaz. Yani 0 karakterini nasil siniflandirabilirim ki, bana ahmet'in de mehmet'in de yazdigi sifir yazisini bulabilsin. 0 in ne gibi özelligi var. Mesela tam bir yuvarlak olmasi (her ne kadar cember olmasa da), icinin bos olmasi, dikey cizgilerin yatay cizgilerden daha fazla pixel barindirmasi vs. Bu gibi attribute (özellik) leri cikarip 0 karakterini tanimliyorum. ve makine artik bu tarz bir resmin 0 oldugunu anlayabilecek sekle geliyor.

    Bunu biraz daha pekistirmek icin ve hata oranini düsürmek-tespit etmek icin ve biraz da optimize etmek icin validation setlerimiz var. bunlar da yine training set gibi tek rakamlardan olusan resimler. Burada birden fazla olan algoritmalardan uygun olani secip en iyisini bulmaya yönelik calismalar yapilabilir.

    Bu islemler bittikten sonra artik programimiz rakamlarin hangi özellikte oldugunu anlayacak seviyeye ulasmis oluyor ve belirli bir hata payiyla cikarabiliyor. En son asamimiz ise test asamamiz. Test asamasi zorunlu olmsa da tavsiye edilen bir seydir. Test setimizi bu asamada kullaniyoruz. Bunlar da yine 0 dan 9 a kadar olan rakam resimleri. Artik program ögrendigi rakamlarin karakter analzinden verilen resimlerin ne oldugunu belirli bir hata payiyla anlayabiliyor. Hatirladigim kadariyla %80 üzerinde bir dogruluk payi iyi sayiliyor.

    Burada dikkat edilmesi gereken, kesinlikle ayni resimleri kullanmaman. Yani hem training set e hem de test setine ayni resimleri vermemen gerek.

    makine ögrenimi temel anlamda böyle bir sey. Bunu daha cok karmasik hale getirebilirsin. Mesela onbinlerce kedi resmi indirip onlari programina ögretebilirsin ve verdigin baska her hangi bir resmin kedi olup olmadigini programin da sana söyleyecek hale gelebilir. Tabi bunun icin cok training sete ihtiyacin olacak. Cünkü bazi resimler kedinin ön tarafi vardir bazilarinda yan bazilarinda da arka.. O yüzden her tip resim icin farkli algoritmalar kullanmak gerek.Yine burada da classifier devreye giriyor..

    Yukarida yazdiklarima bakip gözün korkmasin demek isterdim ama benim sana yazdiklarim isin sadece temeli (: Kolay bir sey degil ama zevkli. Ben profesyonel anlamda ugrasmiyorum AI ya da machine learning ile. Sadece bildiklerimi ve aklimda kalanlari paylasmak istedim yol göstermesi acisindan. Bu konuyla ilgili bir kac kücük projem var,ugrasmasi zevkli seyler ama devamini getirecek durumum olmadi. Umarim bir seyler gerceklestirirsin. Azure un bu konuda cesitli modülleri var. Bir konferansta denk gelmistim, basit olarak bir insanin mutlu, mutsuz ya da kizgin oldugunu tespit ediyor. Temel yine ayni, öncelikle binlerce mutlu-mutsuz ve kizgin insan resimleri ögretiliyor, daha sonra örnek bir resim verilerek tespiti yapiliyor.

    Yukarida yazdiklarimi anlamissan bu isin yazilim dilinden cok konsepte dayali bir is oldugunu anlamissindir. Dil hic sorun degil, performans önemli degilse (profesyonel olmayan islemlerde) istediginle basla (python ya da java ile cok örnek bulabilirsin). Bununla ilgili de bir bas ucu kitabi temin edip okumani tavsiye ederim.

    kolay gelsin
    Lütfen özel mesaj atmak yerine sorularınızı forum üzerinden sorun.