Yapay Sinir Ağları hakkında bilgi edinmek için bazı iyi kaynaklar nelerdir? [kapalı]


109

Yapay Sinir Ağları ile gerçekten ilgileniyorum ama başlamak için bir yer arıyorum.

Orada hangi kaynaklar var ve iyi bir başlangıç ​​projesi nedir?


Yapay sinir ağları olduğunu varsayıyorum. Hangi alanla ilgileniyorsunuz (neye uygularsınız: el yazısı, sınıflandırma, mantık)?
önyargı

Sanırım mantık: Labirentteki bir robotu ya da onun gibi bir şeyi düşünüyordum ve farklı algoritmalar
deniyordum

3
Geoffrey Hinton'dan nöral ağlar hakkında gerçekten harika bir kurs var. Temel bilgilerle başlar ve son teknoloji yaklaşımlarla ve hatta daha fazlasıyla biter.
alfa

4
Tabii Andrew Ng Makine Öğrenimi ben Geoffrey Hinton ele almaktadır daha gelişmiş sinir ağları ve teorik yönlerini seyrini yapmadan önce, yeni başlayanlar için tavsiye budur.
gaborous

Yanıtlar:


17

İşte bazı Sinir Ağı programlama örnekleri. http://www.codeproject.com/KB/recipes/neural_dot_net.aspx

buradan okumaya başlayabilirsiniz: http://web.archive.org/web/20071025010456/http://www.geocities.com/CapeCanaveral/Lab/3765/neural.html

Kendi adıma bununla ilgili bir kursu ziyaret ettim ve bazı literatür üzerinde çalıştım.


2
Geocities birkaç gün önce azaldı ancak web.archive.org/web/20071025010456/http://www.geocities.com/… adresinde arşivlenmiş bir sürümü var (en azından şimdilik ...)
RCIX

33

Her şeyden önce, yapay sinir ağlarının beyinle bir ilgisi olduğu, ancak biyolojik nöron ağlarına geçici bir benzerlik olduğu fikrinden vazgeçin. Biyoloji öğrenmek, sinir ağlarını etkili bir şekilde uygulamanıza yardımcı olmaz; doğrusal cebir, hesap ve olasılık teorilerini öğrenecek. En azından kendinizi fonksiyonların temel farklılaşması, zincir kuralı, kısmi türevler (gradyan, Jacobian ve Hessian) ve matris çarpımını ve köşegenleştirmeyi anlama fikrine aşina olmalısınız.

Gerçekten bir ağı eğitirken yaptığınız şey, büyük, çok boyutlu bir işlevi optimize etmektir (ağdaki her bir ağırlığa göre hata ölçümünüzü en aza indirir) ve bu nedenle, doğrusal olmayan sayısal optimizasyon tekniklerinin araştırılması öğretici olabilir. Bu, sinir ağlarının dışındaki geniş bir literatür temeliyle geniş çapta incelenen bir sorundur ve web'de sayısal optimizasyonda çok sayıda ders notu mevcuttur. Başlangıç ​​olarak, çoğu insan basit eğimli iniş kullanır , ancak bu, aşağıdaki gibi daha incelikli yöntemlerden çok daha yavaş ve daha az etkili olabilir.

Temel fikirleri öğrendikten sonra, gizli katmanınızda farklı "ezme" işlevlerini denemeye başlayabilir, öğrenmeyi hızlandırmak için çeşitli düzenleme türleri ve çeşitli ince ayarlar ekleyebilirsiniz. Kapsamlı bir "en iyi uygulamalar" listesi için bu makaleye bakın .

Konuyla ilgili en iyi kitaplardan biri Chris Bishop'un Örüntü Tanıma için Sinir Ağları'dır . Bu aşamada oldukça eskidir, ancak yine de mükemmel bir kaynaktır ve genellikle kullanılmış kopyaları yaklaşık 30 $ karşılığında çevrimiçi olarak bulabilirsiniz. Yeni kitabı Örüntü Tanıma ve Makine Öğrenimi'ndeki sinir ağı bölümü de oldukça kapsamlı. Özellikle iyi bir uygulama merkezli eğitim için, bağlantıyı görsel kalıpları sınıflandırmayı öğrenmede çok iyi hale getirecek şekilde kısıtlayan, evrişimli ağ adı verilen akıllı bir ağ türü uygulayan CodeProject.com'da buna bakın .

Destek vektör makineleri ve diğer çekirdek yöntemleri oldukça popüler hale geldi çünkü ne yaptığınızı bilmeden bunları uygulayabilir ve genellikle kabul edilebilir sonuçlar elde edebilirsiniz. Öte yandan sinir ağları, birçok sorun için, özellikle de bilgisayar görüşü gibi alanlardaki büyük ölçekli problemler için hala tercih edilmelerine rağmen, dikkatli ayarlama gerektiren büyük optimizasyon problemleridir.


İyi bir nokta. Bir nöron, lojistik regresyondan gelen lojistik bir birimdir. Daha sonra çok fazlı çoklu regresyon birimleri oluşturulur ve sinir ağlarına "benzediği" için Sinir Ağları olarak adlandırılır. Beyinden falan ilham almıyor.
ozgur

Gerçek sinirbilim üzerinde çalışmanın bu alandaki araştırmalara yardımcı olmayacağını söylemek gerçekten doğru değil. Jeff Hawkins ve araştırması, nörobiyoloji hakkında daha fazla bilgiyi HTM'ler üzerine yaptığı çalışmalara dahil etmeye çalıştı. HTM oldukça iyi çalışıyor. Sonunda, gerçek biyolojik örnekleri taklit eden yeni ağ topolojilerini ve etkileşim tekniklerini araştırmayı denemek istiyorsanız, nörobiyoloji çalışmak yararlı olabilir. Kendi araştırmanızı yapmak yerine sadece başkalarının zaten araştırmış olduğu şeyleri kullanmak niyetindeyseniz, o zaman evet, sinirbilim araştırması anlamsız olabilir.
SmugDoodleBug

29

Anoop Madhusudanan'ın bu harika serisini Code Project üzerine şiddetle tavsiye ediyorum .

Nasıl çalıştıklarını kolay anlaşılır bir şekilde anlamanız için sizi temel bilgilerden geçirir ve kendi brainnetkütüphanenizi oluşturmak için kendi kütüphanesini nasıl kullanacağınızı gösterir .


7
Vay havalı. Bunu blogumdan
amazedsaint

11

Yapay Sinir Ağları bu günlerde biraz azalıyor. Destek vektör makineleri ve çekirdek yöntemleri daha fazla sorun sınıfı için geri yayılmadan daha iyidir. Sinir ağları ve genetik algoritmalar, modern makine öğrenimi hakkında pek bilgisi olmayan ancak son teknoloji ürünü olmayan insanların hayal gücünü yakalar.

Yapay zeka ve makine öğrenimi hakkında daha fazla bilgi edinmek istiyorsanız, Peter Norvig'in Yapay Zeka: Modern Bir Yaklaşım kitabını okumanızı tavsiye ederim . AI ve birçok modern teknolojinin geniş bir araştırması. Geçmişi ve eski teknikleri de gözden geçirir ve size yapay zeka ve makine öğreniminin temelleri hakkında daha eksiksiz bir temel sağlar.

Yine de sinir ağları oldukça kolaydır. Özellikle ağırlıkları belirlemek için genetik bir algoritma kullanıyorsanız, doğru geri yayılımdan ziyade.


1
Sinir ağı yalnızca geri yayılmadan ibaret değildir; bağlantılı bellekler, Kohonen SOFM en, adaptif reseonance tabanlı ağlar ve benzeri ... MLP ve geri yayılım en popüler ağları, ancak değil etkili ve verimli ... - Orada diğer ağlar bademcik
lmsasu

3
"Sinir Ağları bu günlerde bir nevi azalıyor" - pekala, artık değil. Çok katmanlı NN ve ad hoc mimari NN eğitimi için "derin öğrenme" teknikleri şu anda makine öğrenimindeki en sıcak şeyler arasında görünüyor. Pek çok örnekten sadece biri, googleresearch.blogspot.co.uk/2015/03/…
John Donn

5

Dwf'nin Chris Bishop tarafından kaleme alınan Örüntü Tanıma için Sinir Ağları tavsiyesini ikinci olarak ben . Yine de, belki de başlangıç ​​metni değil. Norvig veya çevrimiçi bir eğitim (Matlab'da kodlu!) Muhtemelen daha nazik bir giriş olacaktır.

İyi bir başlangıç ​​projesi OCR (Optik Karakter Tanıma) olacaktır. Sınıflandırma yapmak için metin sayfaları halinde tarayabilir ve her karakteri ağ üzerinden besleyebilirsiniz. (Elbette önce ağı eğitmeniz gerekir!).



4

Nereden başlamayacağımı tavsiye edebilirim. Amazon'da iyi değerlendirmeleri olan ve "bilişsel ve bilgisayar bilimindeki en önemli konulardan birine oldukça erişilebilir bir giriş" olduğunu iddia eden Kevin Gurney'den Sinir Ağlarına Giriş'i satın aldım . Şahsen, bu kitabı başlangıç ​​olarak tavsiye etmem. Bunun sadece% 10'unu anlayabiliyorum, ama belki sadece benim (İngilizce benim ana dilim değil). Bu konudaki diğer seçeneklere bakacağım.


3

http://www.ai-junkie.com/ann/evolved/nnt1.html , geri yayılım algoritmasını tanımlamasa da, çok katmanlı algılayıcıya açık bir giriş niteliğindedir

Genel olarak AI hakkında birçok makale sunan ve sinir ağı hakkında harika metinler içeren generation5.org'a da bakabilirsiniz.


2

Para harcamayı dert etmiyorsanız, The Handbook of Brain Theory and Neural Networks çok iyidir. Pek çok disiplinden araştırmayı kapsayan 287 makale içermektedir. Bir giriş ve teori ile başlar ve ardından ilgi alanlarınızı en iyi şekilde karşılamak için makalelerdeki yolları vurgular.

İlk projeye gelince, Kohonen haritaları kategorize etmek için ilginçtir : müzik koleksiyonunuzdaki gizli ilişkileri bulun, akıllı bir robot oluşturun veya Netflix ödülünü çözün .


1

Bence iyi bir başlangıç ​​noktası her zaman Wikipedia olacaktır . Orada, sinir ağları kullanan belgelere ve projelere yönelik bazı yararlı bağlantılar da bulacaksınız.






1

Biyoloji okumanın iyi bir başlangıç ​​noktası olmadığını söyleyen diğer insanlarla aynı fikirdeyim ... çünkü biyolojide pek çok alakasız bilgi var. Bir nöronun işlevselliğini yeniden yaratmak için nasıl çalıştığını anlamanıza gerek yoktur - sadece hareketlerini simüle etmeniz gerekir. Ray Kurzweil'in "How To Create A Mind" adlı kitabını öneriyorum - biyolojinin hesaplama modelleriyle ilgili yönüne giriyor (birkaç girdiyi birleştirerek ve bir eşik değere ulaşıldığında ateşleyerek simüle edilmiş bir nöron yaratarak) ancak gibi ilgisiz şeyleri görmezden geliyor. nöronun aslında eş girdilerini bir araya nasıl eklediği. (Örneğin, bir eşikle karşılaştırmak için sadece + ve bir eşitsizlik kullanacaksınız)

Ayrıca kitabın gerçekten 'zihin yaratmak' ile ilgili olmadığını da belirtmeliyim - sadece hiyerarşik örüntü tanıma / neokortekse odaklanıyor. Genel tema hakkında 1980'lerden beri konuşulduğuna inanıyorum, bu yüzden muhtemelen aynı bilgilerin biraz tarihli biçimlerini içeren birçok eski kitap var. Örneğin görme sisteminin çok katmanlı bir model tanıyıcı olduğunu belirten eski belgeleri okudum. Bunun tüm neokorteks için geçerli olduğunu iddia ediyor. Ayrıca, 'tahminlerini' biraz tuzlu bir şekilde alın - donanım tahminleri muhtemelen oldukça doğru, ancak bence işlerin ne kadar karmaşık olabileceğini hafife alıyor (örneğin: araba kullanmak). Doğrusu, pek çok ilerleme gördü (ve bir kısmının bir parçası oldu) ama yine de aşırı iyimser olduğunu düşünüyorum. Bir yapay zeka aracının, bir insanın yapabileceği% 99,9 + ile karşılaştırıldığında,% 90 oranında başarılı bir şekilde bir mil sürebilmesi arasında büyük bir fark vardır. Herhangi bir yapay zekanın beni en az 20 yıldır gerçekten dışarı çıkarmasını beklemiyorum ... (BMW'nin gerçek yolda 'eğitilmesi' gereken pist arabalarını saymıyorum, çünkü gerçekten aynı şekilde oynamıyorlar oyun)

Yapay zekanın ne olduğu ve nasıl modellenebileceği konusunda zaten temel bir fikriniz varsa, daha teknik bir şeye geçmeniz daha iyi olabilir.


0

Gerçek bir simülatörde bazı sinir ağı kavramlarının uygulamaları hakkında hızlı bir şekilde bilgi edinmek istiyorsanız, http://grey.colorado.edu/CompCogNeuro/index adresinde 'Hesaplamalı Bilişsel Sinirbilim' adlı harika bir çevrimiçi kitap (şimdi wiki) var . php / CCNBook / Main

Kitap okullarda ders kitabı olarak kullanılıyor ve sizi bireysel nöronlardan üst düzey yönetici işlevlere kadar birçok farklı beyin alanına götürüyor.

Ek olarak, her bölüm sizin için zaten kapalı olan ev ödevi 'projeleri' ile zenginleştirilir. Sadece indirin, adımları izleyin ve bölümde anlatılan her şeyi simüle edin. Kullandıkları yazılım olan Emergent biraz titiz ama inanılmaz derecede sağlam: İnanıyorum ki 10 yılı aşkın bir çalışmanın ürünü.

Geçtiğimiz dönem bir lisans sınıfında geçtim ve harikaydı. Her şeyi adım adım gösterir

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.