Derin öğrenmeye giriş. Sinir ağları ve derin öğrenme: gelecek yakın

  • 21.06.2019

Derin öğrenme, metinlerle çalışma paradigmasını değiştiriyor, ancak hesaplamalı dilbilimciler ve veri bilimcileri arasında şüpheye neden oluyor. Sinir ağları, güçlü ancak önemsiz bir makine öğrenimi aracıdır.

03.05.2017 Dmitry Ilvovsky, Ekaterina Chernyak

Sinir ağları, metinlerdeki gizli bağlantıların ve kalıpların bulunmasına izin verir, ancak bu bağlantılar açıkça temsil edilemez. Sinir ağları - veri analizi alanında endüstriyel çözümler geliştiren şirketler ve önde gelen bilgisayar dilbilimcileri arasında şüpheciliğe neden olan güçlü, ancak oldukça önemsiz bir araç olsa da.

Sinir ağı teknolojilerine ve derin öğrenmeye olan genel tutku, hesaplamalı dilbilimden - metinlerin doğal dilde otomatik olarak işlenmesinden - kaçınmadı. Bu alandaki ana bilimsel forum olan ACL Association for Computational Linguistics'in son konferanslarında, raporların büyük çoğunluğu hem halihazırda bilinen problemleri çözmek hem de standart makine öğrenimi araçları kullanılarak çözülmemiş yenilerini incelemek için sinir ağlarının kullanımına ayrılmıştı. Dilbilimcilerin sinir ağlarına artan ilgisi çeşitli nedenlerden kaynaklanmaktadır. Sinir ağlarının kullanımı, ilk olarak, metinlerin ve dizilerin sınıflandırılmasıyla ilgili bazı standart problemleri çözme kalitesini önemli ölçüde artırır, ikincisi, doğrudan metinlerle çalışırken emek yoğunluğunu azaltır ve üçüncüsü, yeni problemlerin çözülmesine izin verir (örneğin, sohbet botları oluşturma). Aynı zamanda, sinir ağları, dilbilimsel problemleri çözmek için tamamen bağımsız bir mekanizma olarak düşünülemez.

İlk çalışır derin öğrenme(derin öğrenme) 20. yüzyılın ortalarına aittir. 1940'ların başında, Warren McCulloch ve Walter Pitts insan beyninin resmi bir modelini, yapay bir sinir ağını önerdiler ve bir süre sonra Frank Rosenblatt çalışmalarını özetledi ve bilgisayardaki sinir ağının bir modelini yarattı. Hata geri yayılım algoritmasını kullanarak sinir ağlarını eğitme konusundaki ilk çalışma 1960'lara kadar uzanmaktadır (algoritma, tahmin hatasını hesaplar ve stokastik optimizasyon yöntemlerini kullanarak en aza indirir). Bununla birlikte, beyin taklidi fikrinin güzelliğine ve zarafetine rağmen, "geleneksel" sinir ağlarının eğitiminin uzun zaman aldığı ve küçük veri kümeleri üzerindeki sınıflandırma sonuçlarının, destek vektör makineleri (Support Vector Machine, SVM) gibi daha basit yöntemlerle elde edilen sonuçlarla karşılaştırılabilir olduğu ortaya çıktı. ). Sonuç olarak, sinir ağları 40 yıldır unutuldu, ancak bugün büyük miktarda yapılandırılmamış veri, görüntü ve metinlerle çalışırken yine talep görüyorlar.

Biçimsel bir bakış açısından, bir sinir ağı, belirli bir mimarinin, köşeleri veya düğümleri olarak adlandırılan, yönlendirilmiş bir grafiğidir. nöronlar... Grafiğin ilk seviyesinde, son - çıkış düğümlerinde, sayıları soruna bağlı olan giriş düğümleri vardır. Örneğin, iki sınıfa ayırmak için, ağın çıktı düzeyine bir veya iki nöron yerleştirilebilir, k sınıfı - k nöronlarına sınıflandırma yapılabilir. Sinir ağı grafiğindeki diğer tüm seviyeler genellikle gizli katmanlar olarak adlandırılır. Bir seviyedeki tüm nöronlar, bir sonraki seviyedeki tüm nöronlara kaburgalarla bağlıdır, her kenarın bir ağırlığı vardır. Her nörona, biyolojik nöronların çalışmasını simüle eden bir aktivasyon işlevi atanır: giriş sinyali zayıf olduğunda "sessizdirler" ve değeri belirli bir eşiği aştığında, giriş değerini ağ boyunca ateşler ve iletirler. Bir sinir ağını örneklerle (yani çiftler üzerinde "nesne - doğru cevap") eğitmenin görevi, doğru yanıtları en iyi tahmin eden kenarların ağırlıklarını bulmaktır. En önemli parametresinin tam olarak mimari - sinir ağı grafiğinin yapısının topolojisi - olduğu açıktır. Henüz "derin ağlar" için resmi bir tanım bulunmamakla birlikte, çok sayıda katmandan oluşan veya "standart olmayan" katmanlara sahip (örneğin, yalnızca seçilmiş bağlantıları içeren veya diğer katmanlarla özyinelemeyi kullanan) derin tüm sinir ağları olarak kabul edilir.

Şimdiye kadarki en başarılı sinir ağları uygulamasına bir örnek görüntü analizidir, ancak sinir ağı teknolojileri, metin verileriyle çalışmayı kökten değiştirmiştir. Daha önce metnin her bir öğesinin (harf, kelime veya cümle) farklı nitelikteki birçok özelliğin (morfolojik, sözdizimsel, anlambilimsel, vb.) Yardımıyla tanımlanması gerekiyorsa, şimdi birçok görevde karmaşık tanımlara duyulan ihtiyaç ortadan kalkar. Sinir ağı teknolojilerinin teorisyenleri ve uygulayıcıları genellikle "temsil öğrenimi" hakkında konuşurlar - ham bir metinde, yalnızca kelimelere ve cümlelere bölünmüş bir sinir ağı, bağımlılıkları ve kalıpları bulabilir ve bağımsız olarak bir özellik alanı oluşturabilir. Ne yazık ki, böyle bir alanda kişi hiçbir şey anlamayacaktır - eğitim sırasında sinir ağı, keşfedilen "derin" ilişkileri temsil eden belirli sayılardan oluşan, metnin her bir öğesine bir yoğun vektör atar. Metinle çalışırken, vurgu, özelliklerin bir alt kümesini oluşturmaktan ve harici bilgi tabanlarını aramaktan veri kaynaklarını seçmeye ve standart yöntemlere kıyasla önemli ölçüde daha fazla veri gerektiren bir sinir ağının sonraki eğitimi için metinleri işaretlemeye kayar. Rastgele orman ve destek vektör makineleri gibi diğer kanıtlanmış öğrenme algoritmalarının aksine gerçek endüstriyel ölçekli uygulamalarda sinir ağlarının talep edilmemesinin nedeni, büyük miktarda veri kullanma ihtiyacı ve zayıf yorumlanabilirlik ve öngörülemezliktir. Bununla birlikte, sinir ağları bir dizi otomatik kelime işlem görevinde kullanılmaktadır (Şekil 1).

Sinir ağlarının en popüler kullanımlarından biri, dağıtıcı anlambilim alanıyla ilgili sözcük vektörlerinin oluşturulmasıdır: Bir sözcüğün anlamının, çevreleyen sözcüklerle bağlamının anlamı ile anlaşılabileceğine inanılmaktadır. Aslında, bilinen bir dildeki bir metindeki bir kelimeye aşina değilsek, çoğu durumda anlamını tahmin edebiliriz. Kelimelerin vektörü, bir kelimenin anlamının matematiksel bir modeli olarak hizmet eder: Oldukça büyük bir metin külliyatı üzerine inşa edilmiş geniş bir "kelime bağlamı" matrisindeki satırlar. Belirli bir kelime için "bağlamlar" olarak, bitişik kelimeler, bir sözdizimsel veya anlamsal yapıda verilenlerle birlikte yer alan kelimeler vb. Kullanılabilir. Frekanslar (belirli bir bağlamda bir kelimenin kaç kez geçtiği) böyle bir matrisin hücrelerine yazılabilir, ancak daha sık Verilen bir bağlamda bir kelimenin görünüşünün ne kadar rastgele olmadığını gösteren pozitif ikili karşılıklı bilgi katsayısını (Pozitif Noktasal Karşılıklı Bilgi, PPMI) kullanın. Bu tür matrisler, kelimeleri kümelemek veya istenen kelimeye anlam bakımından yakın olan kelimeleri bulmak için oldukça başarılı bir şekilde kullanılabilir.

2013'te Tomash Mikolov, kelime vektörlerini eğitmek için sinir ağlarını kullanmayı önerdiği bir makale yayınladı, ancak daha küçük bir boyut için: en basit mimarinin bir sinir ağı, tuple (kelime, bağlamlar) kullanılarak eğitildi, çıktıda her kelimeye 300 elementlik bir vektör atandı. Bu tür vektörlerin kelimelerin anlamsal yakınlığını daha iyi aktardığı ortaya çıktı. Örneğin, anlamların toplanması ve çıkarılmasının aritmetik işlemlerini tanımlamak ve aşağıdaki denklemleri elde etmek için kullanılabilirler: "Paris - Fransa + Rusya \u003d Moskova"; "Kral - erkek + kadın \u003d kraliçe". Veya "elma, armut, kiraz, kedi yavrusu" satırında fazladan bir kelime bulun. Çalışma, word2vec genel adı altında skip-gram ve CBOW (Sürekli Kelime Çantası) olmak üzere iki mimari sundu. Daha sonra gösterildiği gibi, word2vec, PPMI ağırlıklarına sahip bir kelime bağlam matrisinin çarpanlara ayrılmasından başka bir şey değildir. Artık word2vec'i derin öğrenmeden ziyade dağıtımsal anlambilime atıfta bulunmak yaygındır, ancak bu modeli oluşturmak için ilk itici güç bir sinir ağının kullanılmasıydı. Ek olarak, word2vec vektörlerinin, metinleri sınıflandırmak için kullanılan derin sinir ağlarına girdiye beslenebilen bir kelimenin anlamının uygun bir temsili olarak hizmet ettiği ortaya çıktı.

Metin sınıflandırması, özellikle tüketicinin bazı ürün veya hizmetlere yönelik görüşlerini veya tutumlarını analiz etmek söz konusu olduğunda, pazarlamacılar için en alakalı olanlardan biridir, bu nedenle araştırmacılar, çözümün kalitesini iyileştirmek için sürekli çalışmaktadır. Bununla birlikte, görüşlerin analizi, metinlerden ziyade cümleleri sınıflandırma görevidir - olumlu bir incelemede, kullanıcı bir veya iki olumsuz cümle yazabilir ve bunları tanımlayıp analiz edebilmek de önemlidir. Cümlelerin sınıflandırılmasındaki bilinen bir zorluk, değişken girdi uzunluğunda yatmaktadır - metinlerdeki cümleler keyfi uzunlukta olduğundan, bunları bir sinir ağının girdisine nasıl sunacağı açık değildir. Bir yaklaşım görüntü analizi alanından ödünç alınmıştır ve evrişimli sinir ağlarını (CNN) kullanmaktır (Şekil 2).

Evrişimsel sinir ağının girdisi, her kelimenin zaten bir vektörle (vektörlerin vektörü) temsil edildiği bir cümledir. Tipik olarak, önceden eğitilmiş word2vec modelleri, kelimeleri vektörler olarak temsil etmek için kullanılır. Evrişimli bir sinir ağı iki katmandan oluşur: bir "derin" evrişim katmanı ve normal bir gizli katman. Evrişim katmanı ise filtrelerden ve bir "altörnekleme" katmanından oluşur. Bir filtre, girdisi metin içinde hareket eden ve sırayla belirli sayıda kelimeyi seçen pencereler kullanılarak oluşturulan bir nörondur (örneğin, "üç" uzunluğundaki bir pencere ilk üç kelimeyi, ikinciden dördüncüye, üçüncüden beşe kadar olan kelimeleri seçecektir, vb.) ... Filtrenin çıktısında, içinde yer alan kelimelerin tüm vektörlerini toplayan bir vektör oluşturulur. Daha sonra, alt örnekleme katmanında, filtrelerin tüm çıktı vektörlerinden bileşen bazında maksimum olarak hesaplanan tüm cümleye karşılık gelen bir vektör oluşturulur. Evrişimli sinir ağlarının öğrenilmesi ve uygulanması kolaydır. Bunları eğitmek için standart bir geri yayılım algoritması kullanılır ve filtre ağırlıklarının eşit olarak dağıtılması nedeniyle (pencereden i-inci kelimenin ağırlığı herhangi bir filtre için aynıdır), evrişimli sinir ağındaki parametre sayısı azdır. Hesaplamalı dilbilim açısından, evrişimli sinir ağları, sınıflandırma için güçlü bir araçtır, ancak arkasında, algoritma hatalarının analizini önemli ölçüde karmaşıklaştıran dilsel bir sezgi yoktur.

Sıra sınıflandırması, her kelimenin tek bir etiketle ilişkilendirilmesi gereken görevlerdir: morfolojik ayrıştırma (her kelime, konuşmanın bir bölümüyle ilişkilendirilir), adlandırılmış varlıkların çıkarılması (her kelimenin bir kişinin adının, coğrafi adının bir parçası olup olmadığını belirleme, vb.) vb. Sıraları sınıflandırırken, bir kelimenin bağlamını dikkate alan yöntemler kullanılır: önceki kelime bir kişinin adının bir parçasıysa, o zaman mevcut kelime de adın bir parçası olabilir, ancak kuruluşun adının bir parçası olma olasılığı düşüktür. Geçen yüzyılın sonunda önerilen dil modelleri fikrini genişleten tekrarlayan sinir ağları, bu gereksinimin pratikte gerçekleştirilmesine yardımcı olur. Klasik dil modeli, i kelimesinin i-1 kelimesinden sonra geçme olasılığını tahmin eder. Dil modelleri, bir sonraki kelimeyi tahmin etmek için de kullanılabilir: verilen kelimeden sonra hangi kelimenin geçmesi daha olasıdır?

Dil modellerini eğitmek için, büyük külliyatlara ihtiyaç vardır - eğitim külliyatı ne kadar büyükse, modelin "bildiği" daha fazla kelime çifti. Dil modelleri geliştirmek için sinir ağlarını kullanmak, depolanan veri miktarını azaltabilir. İ-2 ve i-1 kelimelerinin girişe ulaştığı ve sinir ağının çıktıda i kelimesini tahmin ettiği basit bir ağ mimarisi hayal edelim. Gizli katmanların sayısına ve üzerlerindeki nöronların sayısına bağlı olarak, eğitimli ağ, nispeten küçük boyutlara sahip bir dizi yoğun matris olarak kaydedilebilir. Başka bir deyişle, eğitim külliyatının ve tüm kelime çiftlerinin yerine, yalnızca birkaç matrisi ve benzersiz kelimelerin bir listesini depolayabilir. Bununla birlikte, böyle bir sinir dili modeli, kelimeler arasında uzun bağlantılara izin vermez. Bu problem, gizli katmanın iç durumunun yalnızca girişe yeni bir kelime geldikten sonra güncellenmekle kalmayıp, aynı zamanda bir sonraki adıma da aktarıldığı tekrarlayan sinir ağları ile çözülür (Şekil 3). Böylece, tekrarlayan ağın gizli katmanı iki tür girdiyi kabul eder: önceki adımdaki gizli katmanın durumu ve yeni bir kelime. Yinelenen bir sinir ağı bir cümleyi işlerse, gizli durumlar cümlelerde uzun bağlantıları hatırlamanıza ve iletmenize izin verir. Yinelenen sinir ağlarının cümledeki öznenin cinsiyetini hatırladığı ve bir cümle oluştururken doğru zamirleri (o, kendisi ona ait) seçtiği, ancak bu tür bilgilerin sinir ağında tam olarak nasıl depolandığını veya nasıl kullanıldığını açıkça göstermek için deneysel olarak tekrar tekrar doğrulanmıştır. , hala başarısız oldu.

Yinelenen sinir ağları, metinleri sınıflandırmak için de kullanılır. Bu durumda, ara adımlardaki çıktılar kullanılmaz ve sinir ağının son çıktısı tahmin edilen sınıfı döndürür. Günümüzde çift yönlü (gizli durumu yalnızca "sağa" değil, aynı zamanda "sola" da ileten) gizli katmanda birkaç düzine nöron içeren tekrarlayan ağlar, metin oluşturma ve metin oluşturma sorunlarını çözmek için standart bir araç haline geldi ve aslında diğer algoritmaların yerini aldı. ...

Yinelenen sinir ağlarının gelişimi, biri bir girdinin (örneğin, bir dilde bir soru veya cümle) sunumundan ve analizinden sorumlu olan iki bağlı yinelenen ağdan oluşan Seq2seq türünün mimarisi haline geldi ve ikincisi bir çıktı (başka bir dilde bir cevap veya bir cümle) oluşturmaktan sorumludur. ... Seq2seq ağları, modern Soru-Cevap sistemlerinin, sohbet botlarının ve makine çevirisi sistemlerinin merkezinde yer alır.

Evrişimli sinir ağlarına ek olarak, sözde otomatik kodlayıcılar, örneğin Photoshop veya Instagram'da görüntüler üzerinde efektler oluşturmak için kullanılan ve dilbilimde boyutsallık azaltma probleminde (bir metni temsil eden bir vektörün açık bir şekilde daha düşük boyutlu bir alana projeksiyonunu bulma) uygulama bulan metin analizi için kullanılır. İki boyutlu uzaya projeksiyon, metni bir düzlemde bir nokta olarak göstermeyi mümkün kılar ve bir metin koleksiyonunu bir dizi nokta olarak görsel olarak tasvir etmenize olanak tanır, yani metinleri kümelemeden veya sınıflandırmadan önce bir ön analiz aracı olarak hizmet eder. Sınıflandırma probleminin aksine, boyutsallık azaltma probleminde net bir kalite kriteri yoktur, ancak otomatik kodlayıcılar kullanılarak elde edilen görüntüler oldukça "ikna edici" görünmektedir. Matematiksel bir bakış açısından, bir otomatik kodlayıcı, f (x) \u003d x doğrusal işlevini öğrenen ve iki bölümden oluşan denetlenmeyen bir sinir ağıdır: bir kodlayıcı ve bir kod çözücü. Kodlayıcı, azalan sayıda nörona sahip birkaç gizli katmana sahip bir ağdır. Kod çözücü, artan sayıda nörona sahip benzer bir ağdır. Alt boyutun yeni uzayında boyut olması gerektiği kadar üzerinde nöronun bulunduğu gizli bir katmanla bağlanırlar ve boyutu küçültmekten sorumlu olan odur. Evrişimli sinir ağları gibi, bir otomatik kodlayıcının da dilbilimsel yorumu yoktur, bu nedenle analitik bir araçtan çok bir mühendislik olarak düşünülebilir.

Etkileyici sonuçlara rağmen, bir sinir ağı metin analizi için (bir dilde kalıp aramak) ve hatta metni anlamak için bağımsız bir araç olarak kabul edilemez. Evet, sinir ağları kelimeler arasındaki gizli bağlantıları bulmaya ve metinlerdeki kalıpları keşfetmeye izin verir, ancak bu bağlantılar yorumlanabilir bir biçimde sunulana kadar sinir ağları oldukça önemsiz makine öğrenimi araçları olarak kalacaktır. Buna ek olarak, derin öğrenme, önceden tahmin edilemeyen sonuçlarla veri hazırlama için makul olmayan maliyetler gerektirdiğinden, endüstriyel analitik çözümlerde henüz talep edilmemiştir. Araştırma topluluğunda bile, sinir ağlarını evrensel bir araç haline getirme girişimlerine karşı eleştirel bir tutum var. 2015 yılında, Stanford'daki hesaplamalı dilbilim grubu başkanı ve ACL başkanı Chris Manning, sinir ağlarının uygulanabilirlik aralığını açıkça özetledi. İçinde metin sınıflandırması, sıra sınıflandırması ve boyut azaltma problemlerini içeriyordu. Bununla birlikte, derin öğrenmenin pazarlanması ve yaygınlaşması sayesinde, gerçek hesaplamalı dilbilim ve yeni uygulamalarına dikkat artmıştır.

Edebiyat

  1. Tomas Mikolov vd. al. Vektör Uzayında Kelime Temsillerinin Verimli Tahmini, arxiv.org. URL: http://arxiv.org/pdf/1301.3781.pdf
  2. Levy Omer, Yoav Goldberg, Ido Dagan. Kelime düğünlerinden çıkarılan derslerle dağılımsal benzerliği geliştirmek. Hesaplamalı Dilbilim Derneği İşlemleri 3. - 2015. - S. 211-225. URL: https://www.transacl.org/ojs/index.php/tacl/article/view/570/124 (erişim tarihi: 05/18/2017).
  3. Pavel Velikhov. Doğal Dili Anlamak için Makine Öğrenimi // Açık Sistemler: DBMS. - 2016. - No. 1. - S.18–21. URL: (erişim tarihi: 18.05.2017).
  4. Christopher Manning. Hesaplamalı dilbilim ve derin öğrenme. Hesaplamalı dilbilimleri. - 2016. URL: http://www.mitpressjournals.org/doi/full/10.1162/COLI_a_00239#.WQH8MBhh2qA (erişim tarihi: 18.05.2017).

Dmitry Ilvovsky ([email protected]) - Uluslararası Akıllı Sistemler ve Yapısal Analiz Laboratuvarı Üyesi, Ekaterina Chernyak ([email protected]) - Bilgisayar Bilimleri Fakültesi, Ulusal Araştırma Üniversitesi Ekonomi Yüksek Okulu (Moskova) Sürekli Eğitim Merkezi'nde Öğretim Görevlisi. Bu çalışma SEÇ Temel Araştırma Programı çerçevesinde yapılmıştır.



DARPA himayesinde geliştirilen robot, kapıyla başa çıkamadı. Bir kaynak: IEEE Spectrum / DARPA.

Görünüşe göre yapay zeka, yüksek teknoloji endüstrisinin ayrılmaz bir parçası haline geliyor. Yapay zekanın bir e-posta istemcisinde e-postalara yanıt vermeyi nasıl öğrendiğini sürekli olarak duyuyoruz. Gmail, tatil fotoğraflarını öğrenir ve sıralar. Mark Zuckerberg, evimizi yönetmemize yardımcı olacak yapay zeka yaratmaya başladı. Sorun şu ki, "yapay zeka" kavramının kendisi yüksek beklentilere katkıda bulunuyor. İnsanların, uzay aracımızın evrenin genişliğinde gezinmesine yardımcı olan güçlü süper bilgisayarlar hayal etmeleri, etkili spam filtrelerinden daha kolaydır. Buna ek olarak, insanlar ruhsuz bir yapay zihnin pençelerinden mahkum edilmiş insanlığın ölümünün zamanını tahmin etme ve ayrıntıları tartışma eğilimindedir.

Bilim kurgu filmlerinin ekranlarından geliyormuş gibi mükemmel bir yapay zeka imajının yaratılması, büyük ölçüde yeni antropomorfik dijital asistan modelleriyle bizi şaşırtmayı bırakmayan bilgi teknolojisi şirketlerinin faaliyetleriyle kolaylaştırılıyor. Ne yazık ki, bu tür kavramlar, bilgisayarların yeni yeteneklerini ve çevrelerindeki dünyayı değiştirebilecekleri olasılıkları anlamayı zorlaştırıyor. Bu stereotiplere dayanarak, yapay zekanın en faydacı kullanımlarını tanımlayan bazı terimleri açıklayacağız. Bu makale ayrıca mevcut teknolojinin sınırlamalarından ve neden henüz bir robot isyanı hakkında endişelenmememiz gerektiğinden bahsedecek.

Öyleyse sinir ağı, makine öğrenimi ve derin öğrenme terimlerinin arkasında ne var?

Bu üç cümle herkesin ağzında. Algıyı basitleştirmek için bunlara katman katman bakalım. Sinir ağları bu piramidin en temelindedir. Yapay zeka oluşturmak için gerekli olan özel bir bilgisayar mimarisi türüdür. Bir sonraki seviye, sinir ağları için yazılım görevi gören makine öğrenimidir. Öğrenme sürecini, makine devasa veri kümelerinde gerekli cevapları arayacak şekilde oluşturmanıza olanak tanır. Piramit taçlandırıldı derin öğrenme, büyük ölçüde iki yeni fırsat sayesinde son on yılda inanılmaz popülerlik kazanan özel bir makine öğrenimi türü: önemli ölçüde daha ucuz bilgi işlem gücü ve aynı zamanda İnternet olarak da bilinen sınırsız bilgi genişliği.

Sinir ağları kavramının kökenleri, yapay zeka çalışmasının ayrı bir bilimsel araştırma alanında şekillendiği geçen yüzyılın ellili yıllarına dayanıyor.

Genel olarak, sinir ağlarının yapısı insan beyninin yapısına belirsiz bir şekilde benzer ve sinir bağlantıları gibi inşa edilmiş bir düğümler ağıdır. Bireysel olarak, bu düğümler olağanüstü bir şeyi temsil etmezler, yalnızca en ilkel soruları yanıtlayabilirler, ancak ortak faaliyetleri en karmaşık sorunları çözme yeteneğine sahiptir. Daha da önemlisi, doğru algoritmalarla sinir ağları eğitilebilir!

BİLGİSAYARLARA YAPMANIZ GEREKENLERİ SADECE SÖYLEYİN. MAKİNE ÖĞRENMENİN YARDIMIYLA TAM OLARAK NASIL YAPILACAĞINI GÖSTERİRSİNİZ

New York Üniversitesi'nde profesör olan Ernest Davis, “Diyelim ki bir bilgisayara karşıdan karşıya nasıl geçileceğini söylemek istiyorsunuz” diyor. - Geleneksel programlamanın yardımıyla, ona davranışını belirleyecek kesin bir kurallar dizisi verebilirsiniz: etrafına bakmasını sağlayın, arabaların geçmesine izin verin, yaya geçidinden geçin ... ve sadece sonucu izleyin. Makine öğrenimi durumunda, sisteme yoldan geçen yayaların 10.000 videosunu gösterirsiniz. Ondan sonra, yayalara karşı 10.000 araba çarpışması videosu daha göstermesi ve ardından sistemin işini yapmasına izin vermesi gerekiyor. "

Bir bilgisayara videolardaki bilgileri doğru bir şekilde algılamayı öğretmek birincil ve hiç de önemsiz olmayan bir görevdir. Geçtiğimiz birkaç on yılda insanlık, bilgisayarları öğretmek için birçok yol denedi. Bu tür yöntemler, atanan görevin doğru şekilde yürütülmesi durumunda bilgisayarın bir tür "ödül" aldığı ve en iyi çözümü üretme sürecini kademeli olarak optimize ettiği "öğrenmeyi güçlendirmeyi" içerir. Öğretim metodolojisi üzerine inşa edilebilir genetik algoritmalardoğada doğal seçime benzer mekanizmalar kullanarak rastgele seçim, istenen parametrelerin birleştirilmesi ve değiştirilmesi yoluyla problemleri çözmek için kullanılır.

Derin öğrenmenin, modern makine öğreniminin en pratik yöntemlerinden biri olduğu kanıtlanmıştır. Bu yaklaşım, verileri çeşitli soyutlama düzeylerinde analiz etmek için önemli sayıda sinir ağı katmanı kullanır. Bu nedenle, derin öğrenen sinir ağlarından oluşan bir sisteme bir resim gösterirken, ağın her katmanı, farklı büyütme oranlarında görüntüyü analiz etmekle meşgul olacaktır. Alt katman, yalnızca 5 × 5 piksel boyutundaki piksel ızgaralarını analiz edecek ve bu ızgarada görünen nesnenin türüne bağlı olarak "evet" veya "hayır" olmak üzere iki yanıt verecektir. Alt katman olumlu yanıt verirse, sinir ağının daha yüksek katmanı bu ağın daha büyük şablona nasıl uyduğunu analiz eder. Bu görüntü düz bir çizginin mi yoksa bir açının mı başlangıcı? Yavaş yavaş, bu süreç daha karmaşık hale gelir ve yazılımın en karmaşık verileri anlamasına ve işlemesine ve bileşen parçalarına ayırmasına izin verir.

Şirketteki yapay zeka laboratuvarının başkanı, "Sinir ağının katmanlarını ne kadar yükseğe çıkarırsak, o kadar iddialı şeyleri belirleyebilir" diye açıklıyor. Facebook, Yann LeCun. - Daha soyut hale geliyorlar. En üst katmanın seviyesinde, incelenen nesnenin türünü belirleyebilen sensörler vardır: bir kişi, bir köpek, bir planör vb. "

SİNİR SİSTEMİNİN DERİN ÖĞRENME İLE BAŞARILI ÇALIŞMASI İÇİN BÜYÜK MİKTARDA VERİ VE BELİRGİN BİR MİKTARDA ZAMAN GEREKLİDİR

Şimdi derin öğrenme ile ne istediğimizi hayal edelim. Öncelikle, sinir ağının çeşitli katmanlarını, kedinin unsurlarını bağımsız olarak ayırt etmeyi öğrenecek şekilde programlamanız gerekir: pençeler, pençeler, bıyıklar, vb. Her katman, belirli bir öğeyi tanımasına izin verecek şekilde önceki katman üzerinde yürütülecektir, bu nedenle süreç adlandırılmıştır. "Derin öğrenme". Daha sonra sinir ağına çok sayıda kedi ve diğer hayvanların görüntüsünü göstermemiz ve onlara isim vermemiz gerekir. Karşılık gelen görüntüyü gösterirken bilgisayara "Bu bir kedi" diyeceğiz. - Bu aynı zamanda bir kedi. Ama bu artık tam anlamıyla bir kedi değil. " Sinir ağı görüntülere baktıkça, belirli katman ve düğüm grupları onu tetiklemeye başlayacak ve bu da bir kedinin pençe, pençe, bıyık ve diğer özelliklerinin kategorilerini tanımlamasına ve vurgulamasına yardımcı olacaktır. Yavaş yavaş, sinir ağı bu katmanlardan hangisinin en önemli olduğunu hatırlar ve gerekli bağlantıları güçlendirir ve zayıf bağlantıları görmezden gelir. Örneğin, sistem pençeler ve kedi kategorileri arasındaki önemli korelasyonları tespit edebilmektedir, ancak pençeler kedilere özgü olmadığından, sinir ağı pençe ve bıyık kategorilerinin bir kombinasyonunu bulmaya çalışacaktır.

Bu, geribildirim ilkesine dayalı çok uzun ve tutarlı bir öğrenme sürecidir. Ve burada iki seçenek mümkündür: ya bir kişi bilgisayar hatalarını düzeltir, onu doğru seçimi yapmaya ikna eder ya da yeterli miktarda sınıflandırılmış veriye sahip bir sinir ağı bağımsız testler yapabilir. Böyle bir testin sonucunda, tüm katmanlardaki en ağırlıklı endekslerin en doğru cevaba yol açtığı anlaşılacaktır. Ve şimdi sistemin bir nesneyi güvenle "kedi" olarak adlandırması için kaç adım atılması gerektiğine dair kabaca bir fikrimiz olduğuna göre, dünyadaki herhangi bir şeyi tanımlayabilecek sistemin karmaşıklığını düşünelim. Bu nedenle Microsoft, köpek ırklarını ayırt edebilen bir uygulamayı duyurmaktan mutluluk duydu. İlk bakışta, bir Doberman ile bir Schnauzer arasındaki fark bize açık görünüyor, ancak bir bilgisayarın farkı anlayabilmesi için tanımlanması gereken pek çok ince farklılık var.

Proje tarafından oluşturulan görüntü Derin rüya şirket Google, yapay zeka araştırmalarını kamuoyuna sunan bir tür arama kartı, kolektif bir imaj haline geldi.

Yani kullandıkları şey bu Google, Facebook ve diğerleri?

Çoğunlukla evet.

Derin öğrenme teknolojileri, birçok günlük sorunu çözmek için kullanılır. Büyük bilgi teknolojisi şirketleri uzun zamandır kendi AI araştırma birimlerini kurmuştur. Google ve Facebook bu araştırmayı ve yazılımlarını yaygınlaştırmak için güçlerini birleştirdiler. şirket Google kısa süre önce AI üzerine 3 aylık ücretsiz bir çevrimiçi kurs başlattı. Ve araştırmacıların bilimsel faaliyetleri göreceli olarak belirsiz kalırken, şirketler kelimenin tam anlamıyla bu teknolojiye dayalı yenilikçi uygulamalar geliştiriyorlar: şirketin web uygulamasından başlayarak Microsoftmümkün ve gerçeküstü görüntülerle biten Derin rüya... Derin öğrenme teknolojisinin popülaritesinin bir başka nedeni, büyük müşteri odaklı şirketlerin gelişimine giderek daha fazla dahil olmaları ve periyodik olarak piyasadaki en tuhaf gelişmeleri atmalarıdır.

İSTİHBARAT VE ORTAK DUYUSU FARKLI ŞEYLER Mİ?

Derin öğrenme teknolojilerinin konuşma ve görüntü tanıma görevleriyle güvenle başa çıkmasına ve önemli ticari potansiyele sahip olmasına rağmen, birçok sınırlaması vardır. Çok fazla veri girişi ve ekipmanın ince ayarını gerektirirler. Sorun şu ki, "zekaları" son derece uzmanlaşmış ve oldukça istikrarsız. Bilişsel psikolog Gary Marcus'un günlük makalesinde ustaca belirttiği gibi New Yorklu , popüler teknolojileri kullanmanın modern yöntemleri "nedensellik eksikliği ile ünlüdür (hastalık ve semptomlar arasındaki durumda olduğu gibi) ve" ilgili "veya" aynı "gibi soyut kavramları analiz etmeye çalışırken bazı zorluklarla karşılaşması muhtemeldir. Bu teknolojiler için mantıksal sonuçlar elde edilene kadar, soyut bilginin entegrasyonuna ulaşmak için çok şey öğrenmeleri gerekir: Sonuçta, bir nesne hakkında bilgi almak yeterli değildir, amacını ve nasıl kullanılacağını anlamak önemlidir ”.

Başka bir deyişle, derin öğrenme teknolojileri sağduyuya sahip değildir.

Sinir ağları kullanılarak oluşturulan fantom uzuvlarla desteklenen halter görüntüsü Google... Bir kaynak: Google.

Örneğin, bir araştırma projesinde Google sinir ağı, benzer örnekler üzerinde eğitim aldıktan sonra bir dambıl görüntüsünü oluşturmakla görevlendirildi. Sinir ağı bu görevin üstesinden oldukça iyi geldi: Oluşturduğu resimlerde yatay bir boruyla birbirine bağlanmış iki gri daire görülüyordu. Ancak her bir merminin ortasında, bir vücut geliştiricinin kaslı kolunun ana hatları çizildi. Araştırmacılar, bunun nedeninin sisteme sporcuların görüntülerinin gösterilmesinde yattığını öne sürdü. kim tuttu dambıl. Derin öğrenme teknolojisi, on binlerce merminin ortak görsel ipuçlarını ezberleyebilir, ancak sistemin kendisi asla bilişsel bir sıçrama yapamayacak ve halterlerin kolları olmadığını anlayamayacak. Sorunların listesi sağduyu ile sınırlı değildir. Verilerin algılanması ve çalışma şekli nedeniyle, derin öğrenme sinir ağları rastgele piksel kombinasyonları ile karıştırılabilir. Resimde sadece gürültü görüyoruz, ancak bilgisayar bunun bir çitanın resmi olduğundan% 95 emin.

Ancak, bu tür kısıtlamalar ustaca gizlenebilir ve bunların etrafından dolaşmaya çalışılabilir. Örnek olarak, yeni nesil dijital asistanları düşünün. Siri... Genellikle bizi anlıyormuş gibi yaparlar - sorulan soruları yanıtlar, alarm kurar ve önceden programlanmış birkaç şaka ve şakayla bizi güldürmeye çalışırlar.

Yapay zeka alanındaki ünlü bilim adamı Hector Levesque (Hector Levesque), böylesi "anlamsız davranışların" yapay zeka ile canlı beyin arasındaki algı açığını bir kez daha vurguladığından emin. Levesque, meslektaşlarının "yapay zeka" terimindeki "zeka" kelimesini unuttuklarını iddia ediyor ve ünlü Turing testini hatırlamaya çağırıyor. Hector her seferinde makinelerin bu test sırasında çeşitli numaralara başvurduğunu ve muhatabı kandırmak için her türlü çabayı gösterdiğini vurguluyor. Botlar isteyerek şakalar, alıntılar kullanırlar; şiddetli duygu patlamalarını tasvir etmenin ve görüşmecinin kafasını karıştırmak ve dikkatini dağıtmak için her türlü sözlü saldırıyı kullanmanın yollarıdır. Nitekim bazı yayınlara göre Turing testini başarıyla geçen makine. Bu "efsane", botun yaratıcıları tarafından cehaletini, garip ifadelerini ve mantıksız sonuçlara varma arzusunu haklı çıkarmak için seçildi.

Levesque, AI araştırmacılarına soyut, gerçeküstü sorular içeren bir anket olması gerektiğine inandığı farklı bir test türü sunuyor. Bu sorular mantıklı olacaktır, ancak Marcus'un tanımladığı kapsamlı arka plan bilgisini içerecektir. Hector botlara basit sorular sormayı öneriyor: "Timsah yüz metrelik bir engel parkurunu geçebilecek mi?" veya "Beyzbol oyuncularının şapkalarına küçük kanatlar yapıştırmasına izin verilir mi?" Bir bilgisayarın bu tür soruları yanıtlamak için hangi bilgiye sahip olması gerektiğini hayal edin?

Peki "gerçek" yapay zeka nedir?

"Yapay zeka" terimini kullanmanın zorluğu da bu: çok belirsiz ve tanımlanması zor. Aslında, bir aksiyom sektörde uzun zamandır kabul görmüştür: bir makine daha önce yalnızca bir kişi tarafından çözülebilen bir görevi tamamladığında - ister satranç ister yüz tanıma oyunu olsun - bu görev bir zeka işareti olmaktan çıkar.

Bilgisayar bilimcisi Larry Tesler bunu şu şekilde ifade etti: "Makineler ulaşana kadar her şeye zeka denebilir."... Ve insanlar için mevcut olmayan problemleri çözme durumunda bile, makineler insan zekasını yeniden üretmeye çalışmaz.

Yann LeCun, "Sinir ağı ile beyin benzerliği hakkındaki metafor tamamen doğru değil" diyor. Uçağın bir kuşa benzediğini söylemek kadar yanlış. Kanatlarını çırpmıyor, tüyleri ve kasları yok. "

Bilim adamı, "Yapay zeka yaratmayı başarsak bile, insan zihnine veya bir hayvanın bilincine benzemeyecek" diyor bilim adamı. Örneğin, kendini koruma [arzusu] olmayan zeki bir varlığı hayal etmemiz çok zor olacaktır. "

Çoğu yapay zeka araştırmacısı, asla gerçekten yaşayan, duyarlı yapay zeka yaratamayacağımız fikrini görmezden geliyor. "Şu anda yapay zekanın programlanmış tutumların ötesine geçmesine ve çeşitli problemleri çözmede gerçekten esnek hale gelmesine izin verecek bilimsel bir yaklaşım yok," diyor Massachusetts Teknoloji Enstitüsü'nden Beyinler, Zihinler ve Zihinler Merkezi'nin başkanı olan Andrei Barbu, " Makineler (CBMM). "Yapay zekaya yönelik araştırmanın şu anda belirli, son derece özelleşmiş sorunları çözecek sistemler oluşturma aşamasında olduğu anlaşılmalıdır."

Profesör, daha önce sistemin etiketlenmemiş verileri işlemesi gereken denetimsiz öğrenme girişimlerinin olduğunu, ancak bu tür çalışmaların hala emekleme aşamasında olduğunu belirtiyor. Daha iyi bilinen bir örnek, şirketin sinir ağı Google video hizmetinden 10 milyon rastgele küçük resim yüklendi Youtube... Sonuç olarak, sinir ağının kendisi kedilerin neye benzediğini anladı, ancak yaratıcıları bu beceriyi olağanüstü bir şey olarak görmedi.

Yang Lecun'un geçen yıl Orange Institute hackathon'unda söylediği gibi, "Henüz denetimsiz öğrenim sürecini nasıl kuracağımızı bilmiyoruz. Esas sorun bu. "

Yapay zekanın gücünün çarpıcı bir gösterimi. Ağ Watson şirket IBM TV test oyununu kazanır Jeopardy! Ancak bu etkileyici özelliklerin kullanımı çok sınırlıdır.

Derin öğrenmenin ne olduğunu öğrenmek için okumaya devam edin. Makale ayrıca bu alanda uzmanlaşmak için kullanabileceğiniz birçok kaynak içerir.

Günümüz dünyasında, sağlık hizmetlerinden üretime kadar derin öğrenme her yerde mevcuttur. Şirketler, konuşma ve nesne tanıma, makine çevirisi vb. Gibi karmaşık sorunları çözmek için bu teknolojiye yöneliyor.

Bu yılki en etkileyici başarılardan biri, dünyanın en iyi Go oyuncusunu yenen AlphaGo'ydu. Go dışında, arabalar diğer oyunlarda insanları atladı: dama, satranç, ters çevirme ve jeopardi.

Tahta oyununu kazanmak gerçek dünyadaki sorunları çözmek için işe yaramıyor gibi görünebilir, ancak hiç de değil. Go, yapay zekanın onu yenemeyeceği şekilde tasarlandı. Bunu yapmak için, bu oyun için önemli olan bir şeyi öğrenmesi gerekir - insan sezgisi. Şimdi, bu gelişmenin yardımıyla daha önce bir bilgisayarda bulunmayan birçok sorunu çözmek mümkün.

Açıkçası, derin öğrenme mükemmel olmaktan uzaktır, ancak zaten ticari değere yakındır. Örneğin, bu sürücüsüz arabalar. Google, Tesla ve Uber gibi ünlü şirketler şimdiden otonom arabaları şehir sokaklarına taşımaya çalışıyor.

Ford, 2021 yılına kadar sürücüsüz araçların payında önemli bir artış öngörüyor. ABD hükümeti ayrıca onlar için bir dizi güvenlik kuralı geliştirmeyi başardı.

Derin Öğrenme nedir?

Bu soruyu cevaplamak için, makine öğrenimi, sinir ağları ve yapay zeka ile nasıl etkileşime girdiğini anlamanız gerekir. Bunu yapmak için, eşmerkezli daireler kullanarak görselleştirme yöntemini kullanıyoruz:

Dış çember genel olarak yapay zekadır (bilgisayarlar gibi). Biraz daha ileri - makine öğrenimi ve oldukça merkezde - derin öğrenme ve yapay sinir ağları.

Kabaca konuşursak, derin öğrenme yapay sinir ağları için daha uygun bir isimdir. Bu ifadede "derin" terimi, genellikle çok yüzeysel olabilen sinir ağının karmaşıklık derecesi (derinlik) anlamına gelir.

İlk sinir ağının yaratıcıları serebral korteksin yapısından ilham aldı. Ağın temel seviyesi olan algılayıcı, özünde biyolojik bir nöronun matematiksel analoğudur. Ve beyinde olduğu gibi, birbiriyle kesişen algılayıcılar sinir ağında görünebilir.

Sinir ağının ilk katmanına giriş katmanı denir. Bu katmanın her bir düğümü, bir girdi olarak bazı bilgileri alır ve bunu diğer katmanlardaki sonraki düğümlere iletir. Çoğu zaman, bir katmanın düğümleri arasında hiçbir bağlantı yoktur ve zincirin son düğümü, sinir ağı işleminin sonucunu görüntüler.

Ortadaki düğümler gizli olarak adlandırılır çünkü çıkış ve giriş düğümleri gibi dış dünya ile bağlantıları yoktur. Yalnızca önceki katmanlar etkinleştirilirse çağrılırlar.

Derin öğrenme, temelde, şablonları kullanarak karmaşık sorunları (konuşma tanıma gibi) çözmek için birçok katmanı kullanan bir sinir ağı eğitim tekniğidir. Seksenlerde, çoğu sinir ağı, yüksek maliyetleri ve veri sınırlamaları nedeniyle tek katmandı.

Makine öğrenimini bir dal veya yapay zekanın nasıl çalıştığının bir varyantı olarak düşünürsek, o zaman derin öğrenme böyle bir dalın özelleşmiş bir türüdür.

Makine öğrenimi, anında yanıt vermeyen bilgisayar zekasını kullanır. Bunun yerine, kod test verileri üzerinde çalışacak ve sonuçlarının doğruluğuna bağlı olarak rotasını ayarlayacaktır. Bu sürecin başarısı için, genellikle çeşitli teknikler kullanılır; statik yöntemleri ve doğrusal cebiri açıklayan özel yazılım ve bilgisayar bilimi.

Derin öğrenme yöntemleri

Derin öğrenme yöntemleri iki ana türe ayrılır:

  • Bir öğretmenle öğrenmek
  • Öğretmensiz öğrenmek

İlk yöntem, istenen sonucu elde etmek için özel olarak seçilmiş verileri kullanır. Verilerin manuel olarak seçilmesi gerektiğinden, çok fazla insan müdahalesi gerektirir. Ancak, sınıflandırma ve regresyon için kullanışlıdır.

Bir şirketin sahibi olduğunuzu ve ikramiyelerin çalışanlarınızla yaptığınız sözleşmelerin süresi üzerindeki etkisini belirlemek istediğinizi hayal edin. Önceden toplanan verilerle, denetimli öğrenmenin yeri doldurulamaz ve oldukça etkili olacaktır.

İkinci yöntem, önceden hazırlanmış yanıtları ve çalışma algoritmalarını ima etmez. Verilerdeki gizli kalıpları ortaya çıkarmayı amaçlar. İstemcileri davranışa göre gruplamak gibi kümeleme ve ilişkili görevler için yaygın olarak kullanılır. Amazon'da "Bununla birlikte seç", ilişkisel görevin bir çeşididir.

Denetimli öğrenme yöntemi genellikle oldukça uygun olsa da, daha karmaşık olan versiyon daha iyidir. Derin öğrenme, insan gözetimine ihtiyaç duymayan bir sinir ağı olarak kendini kanıtlamıştır.

Derin öğrenmenin önemi

Bilgisayarlar, bir görüntüdeki belirli özellikleri tanımak için uzun süredir teknolojiyi kullanıyor. Ancak sonuçlar başarılı olmaktan uzaktı. Bilgisayarla görmenin derin öğrenme üzerinde inanılmaz bir etkisi oldu. Bu iki teknik şu anda tüm tanıma sorunlarını çözüyor.

Özellikle Facebook, derin öğrenmeyi kullanarak fotoğraflardaki yüzleri tanımayı başardı. Bu, teknolojideki basit bir gelişme değil, önceki tüm fikirleri değiştiren bir dönüm noktasıdır: “Bir kişi% 97.53 olasılıkla aynı kişinin iki farklı fotoğrafta temsil edilip edilmediğini belirleyebilir. Facebook ekibi tarafından geliştirilen programın, ışıktan bağımsız olarak veya kişinin doğrudan kameraya bakıp bakmadığı veya yana bakıp bakmadığı fark etmeksizin bunu yapma şansı% 97,25. "

Konuşma tanıma da önemli değişikliklere uğradı. Çin'in önde gelen arama motorlarından biri olan Baidu'daki ekip, mobil cihazlarda metin yazma hızı ve doğruluğu konusunda insanları geride bırakmayı başaran bir konuşma tanıma sistemi geliştirdi. İngilizce ve Mandarin olarak mevcuttur.

Özellikle ilginç olan şey - tamamen farklı iki dil için ortak bir sinir ağı yazmak çok fazla çalışma gerektirmiyordu: "Tarihsel olarak insanlar Çince ve İngilizceyi tamamen farklı iki dil olarak gördüler, bu nedenle her birine yaklaşım farklı bir dil gerektirdi," diyor araştırma başkanı Merkez Baidu, Andrew Ng. "Öğrenme algoritmaları artık o kadar genelleştirildi ki, sadece öğrenin. "

Google, şirketin veri merkezlerindeki enerjiyi yönetmek için derin öğrenmeyi kullanıyor. Soğutma kaynaklarının maliyetini% 40 azaltabildiler. Bu yaklaşık% 15 daha fazla enerji verimliliği ve milyonlarca dolar tasarruf demektir.

Derin Öğrenme Mikro Hizmetleri

İşte derin öğrenmeyle ilgili hizmetlere hızlı bir genel bakış.

İllüstrasyon Etiketleyici. Illustration2Vec tarafından tamamlanan bu hizmet, resmin içeriğini önceden anlamak için görüntüleri "korumalı", "şüpheli", "tehlikeli", "telif hakkı" veya "genel" derecelendirmeleriyle işaretlemenize olanak tanır.

  • Theano için Google eklentisi
  • Python ve Numpy'de düzenlenebilir
  • Genellikle belirli bir dizi sorunu çözmek için kullanılır
  • Genel amaçlı değil. Makine görüşüne odaklanma
  • C ++ ile düzenlenebilir
  • Bir Python arayüzü var

Derin Öğrenme Çevrimiçi Kursları

Google ve Udacity, Udacity Makine Öğrenimi Kursu'nun bir parçası olan ücretsiz bir derin öğrenme kursu oluşturmak için iş birliği yaptı. Bu program, makine öğrenimi ve özellikle derin öğrenme gibi alanlar geliştirmek isteyen deneyimli geliştiriciler tarafından yönetilmektedir.

Diğer bir popüler seçenek de Andrew Ng'nin Coursera ve Stanford tarafından desteklenen Makine Öğrenimi kursudur.

  1. Makine Öğrenimi - Stanford, Andrew Ng tarafından Coursera'da (2010-2014)
  2. Makine Öğrenimi - Caltech, Yaser Abu-Mostafa (2012-2014)
  3. Makine Öğrenimi - Carnegie Mellon, Tom Mitchell (Bahar 2011)
  4. Makine Öğrenimi için Sinir Ağları - Geoffrey Hinton on Coursera (2012)
  5. Sinir ağları üzerine sınıf - Université de Sherbrooke'dan Hugo Larochelle (2013

Derin Öğrenme Kitapları

Önceki bölümdeki kaynaklar oldukça kapsamlı bir bilgi tabanına dayanırken, Grokking Derin Öğrenme kitabı, aksine, yeni başlayanları hedeflemektedir. Yazarların dediği gibi, "11. sınıfı bitirdiyseniz ve Python'da nasıl yazılacağına dair kabaca bir anlayışınız varsa, size derin öğrenmeyi öğreteceğiz."

Bu kitabın popüler bir alternatifi, Derin Öğrenme Kitabı başlıklı kitaptır. Özellikle iyi çünkü bu alana dalmak için ihtiyacınız olan tüm matematiği açıklıyor.

    1. Yoshua Bengio, Ian Goodfellow ve Aaron Courville (2015) tarafından Derin Öğrenme
  1. Sinir Ağları ve Derin Öğrenme, Michael Nielsen (2014)
  2. Microsoft Research'ten Derin Öğrenme (2013)
  3. LISA Lab, Montreal Üniversitesi'nden Derin Öğrenme Dersleri (2015)
  4. Andrej Karpathy'den "Neuraltalk"
  5. "Genetik Algoritmalara Giriş"
  6. "Yapay zekaya modern bir yaklaşım"
  7. "Derin öğrenme ve sinir ağlarına genel bakış"

Videolar ve dersler

Basitleştirilmiş Derin Öğrenme, harika bir YouTube kanalıdır. İşte ilk videoları:

"Derin öğrenme" teriminin ortaya çıkışından bu yana 20 yıldan fazla zaman geçti, ancak son zamanlarda geniş çapta tartışıldı. Neden olduğunu, derin öğrenmenin ne olduğunu, makine öğreniminden nasıl farklı olduğunu ve neden bunu bilmeniz gerektiğini kısaca açıklıyoruz.

  • Ne olduğunu?

    Derin öğrenme, beynin yapısından - nöronların etkileşiminden - esinlenen bir modeli kullanan bir makine öğrenimi dalıdır.

    Terimin kendisi 1980'lerde ortaya çıktı, ancak 2012'ye kadar bu teknolojiyi uygulamak için yeterli kapasite yoktu ve neredeyse hiç kimse buna dikkat etmedi. Ünlü bilim adamlarının bir dizi makalesi, bilimsel dergilerdeki yayınlardan sonra, teknoloji hızla popüler oldu ve büyük medyanın ilgisini çekti - The New York Times, dünya medyasında bu konuda yazan ilk kişi oldu. Materyalin nedenlerinden biri, Toronto Alex Krizhevsky, Ilya Satskever ve Jeff Hinton üniversitelerinden uzmanların bilimsel çalışmalarıydı. Derin öğrenme sinir ağlarının büyük bir farkla kazandığı ImageNet görüntü tanıma yarışmasının sonuçlarını tanımladılar ve analiz ettiler - sistem nesnelerin% 85'ini belirledi. O zamandan beri rekabeti yalnızca derin bir sinir ağı kazandı

  • Bekle, makine öğrenimi nedir?

    Bu, yapay zekanın bir alt alanı ve bir terimdir - özel bir program yazmadan kendi deneyimlerinden öğrenen algoritmalar oluşturma yöntemlerini açıklarlar. Yani bu durumda kişi makineye sorunun nasıl çözüleceğini açıklamasına gerek kalmaz, kendisine verilen verilerden cevabı kendisi bulur. Örneğin, algoritmanın yüzleri algılamasını istiyorsak, ona on bin farklı yüzü göstermeliyiz, yüzün tam olarak nerede olduğunu işaretlemeliyiz ve sonra program onu \u200b\u200bkendi kendine algılamayı öğrenecektir.

    Makine hem öğretmenin yardımıyla, hem makine için doğru cevapları işaretlediğinde hem de onsuz öğrenebilir. Ancak, bir öğretmenle öğrettiğinde sonuçlar daha iyidir. Veriler her işlendiğinde sistem daha doğru hale gelir.

  • Derin öğrenme nasıl çalışır?

    Bir kişinin soyut düşüncesini taklit eder ve nasıl genelleme yapılacağını bilir. Örneğin, makine tarafından eğitilmiş bir sinir ağı, el yazısıyla yazılmış harfleri iyi tanımaz ve çeşitli yazımlarda karıştırılmaması için hepsinin ona yüklenmesi gerekir.

    Derin öğrenme ise çok katmanlı yapay sinir ağları ile çalışma durumunda kullanılır ve bu görevle baş edebilecektir.

    "Son zamanlarda neredeyse birbirinin yerine kullanılan üç terim var: yapay zeka, makine öğrenimi ve derin öğrenme. Ancak, bunlar aslında "iç içe geçmiş" terimlerdir: yapay zeka, bir bilgisayarın insan görevlerini yerine getirmesine yardımcı olabilecek herhangi bir şeydir; makine öğrenimi, programların yalnızca sorunları çözmediği, deneyimlerinden de öğrendiği ve derin öğrenmenin derin sinir ağlarını inceleyen bir makine öğrenimi dalıdır.

    Basitçe söylemek gerekirse: 1. satranç oynayan bir program yazdıysanız, bu yapay zekadır; 2.aynı zamanda büyükustaların oyunları temelinde öğrenirse veya kendine karşı oynarsa - bu makine öğrenimidir; 3.ve ondan bir şey değil, derin bir sinir ağı öğrenirse, bu derin öğrenmedir ".

  • Derin öğrenme nasıl çalışır?

    Basit bir örnek verelim - bir erkek ve bir kızın sinir ağları fotoğraflarını göstereceğiz. İlk katmanda nöronlar, parlaklıktaki değişiklikler gibi basit görsel görüntülere yanıt verir. İkincisi - daha karmaşık: köşeler, daireler. Üçüncü katmanla, nöronlar yazıtlara ve insan yüzlerine yanıt verebilir. Sonraki her katman için tanımlanan görüntüler daha zor olacaktır. Sinir ağının kendisi, bu sorunu çözmek için hangi görsel unsurların ilgisini çekeceğini belirler ve gelecekte fotoğrafta neyin gösterileceğini daha iyi anlamak için bunları önem sırasına göre sıralar.

  • Ve bunun yardımıyla zaten ne geliştirildi?

    Derin öğrenme projelerinin çoğu fotoğraf veya ses tanıma, hastalık teşhisinde kullanılır. Örneğin, bir resimden Google çevirilerinde zaten kullanılıyor: Derin Öğrenme teknolojisi, bir resimde harf olup olmadığını belirlemenize ve ardından bunları çevirmenize olanak tanır. Fotoğrafla çalışan bir başka proje de DeepFace adlı bir yüz tanıma sistemidir. İnsan yüzlerini% 97,25'lik bir doğrulukla tanıyabilir - yaklaşık bir kişiyle aynı doğrulukta.

    2016'da Google, insan konuşmasını taklit edebilen bir sistem olan WaveNet'i piyasaya sürdü. Bunu yapmak için şirket, OK Google projesinde kullanılan milyonlarca dakikalık kaydedilmiş ses talebini sisteme yükledi ve çalıştıktan sonra sinir ağı doğru vurgu, aksan ve mantıksız duraksamalar olmadan cümleleri kendisi oluşturabildi.

    Aynı zamanda, derin öğrenme bir görüntüyü veya videoyu anlamsal olarak bölümlere ayırabilir - yani, yalnızca resimde bir nesne olduğunu göstermekle kalmaz, aynı zamanda ideal olarak konturlarını da vurgulayabilir. Bu teknoloji, yolda parazit olup olmadığını algılayan ve kazaları önlemek için yol işaretlerinden bilgileri okuyan sürücüsüz otomobillerde kullanılır. Sinir ağı aynı zamanda tıpta da kullanılır - örneğin, hastaların gözlerinin fotoğraflarından diyabetik retinopatiyi belirlemek için. ABD Sağlık Bakanlığı, bu teknolojinin devlet kliniklerinde kullanılmasını onayladı.

  • Derin öğrenmeyi neden daha erken uygulamaya başlamadılar?

    Eskiden maliyetli, zor ve zaman alıcıydı - güçlü GPU'lara, video kartlarına ve belleğe ihtiyacınız vardı. Derin öğrenmedeki patlama, bilgi işlemi daha hızlı ve daha ucuz hale getiren GPU'ların yaygın olarak benimsenmesi, neredeyse sınırsız depolama seçenekleri ve büyük veri teknolojisinin gelişmesinden kaynaklanmaktadır.

  • Bu çığır açan bir teknoloji, her şeyi değiştirecek mi?

    Bundan kesin olarak söylemek zor, görüşler farklı. Bir yandan, Google, Facebook ve diğer büyük şirketler zaten milyarlarca dolar yatırım yaptı ve iyimserler. Onların görüşüne göre, derin öğrenme sinir ağları dünyanın teknolojik yapısını değiştirebilir. Makine öğreniminin ana uzmanlarından biri olan Andrew Eung şöyle diyor: "Bir kişi zihnindeki bir görevi bir saniyede tamamlayabilirse, büyük olasılıkla bu görev yakın gelecekte otomatik hale gelecektir." Yung, makine öğrenimini "yeni elektrik" olarak adlandırıyor - bu teknolojik bir devrimdir ve bunu görmezden gelen şirketler kendilerini çok hızlı bir şekilde rekabetin arkasında bulacaktır.

    Öte yandan, şüpheciler de var: derin öğrenmenin bir moda sözcük veya sinir ağlarının yeniden markalaşması olduğuna inanıyorlar. Örneğin, İktisat Yüksek Okulu Bilgisayar Bilimleri Fakültesi'nde kıdemli bir öğretim görevlisi olan Sergey Bartunov, bu algoritmanın, toplu yayınlar tarafından hızla toplanan ve artık herkesin bildiği bir sinir ağını öğretme seçeneklerinden yalnızca biri (ve en iyisi değil) olduğuna inanıyor.

    Derin Öğrenme kitabının ortak yazarı Sergei Nikolenko: Yapay zeka tarihi, yutturmaca ve yüksek beklentilerin ardından hayal kırıklığı dalgasının geldiği iki kış mevsimini zaten biliyordu. Bu arada iki sefer de sinir ağlarıyla bağlantılıydı. İlk olarak 1950'lerin sonlarında Rosenblatt'ın algılayıcısının anında makine çevirisine ve özbilinçli bilgisayarlara yol açacağı düşünülüyordu; ancak elbette sınırlı donanım, veri ve uygun modellerin olmaması nedeniyle işe yaramadı.

    Ve 1980'lerin sonlarında, herhangi bir sinir ağı mimarisini nasıl eğiteceklerini anladıklarında aynı hatayı yaptılar. Görünüşe göre burada, her kapıyı açan altın bir anahtar. Bu artık o kadar da saf bir sonuç değildi: Gerçekten de, 1980'lerin sonlarından itibaren bir sinir ağını mekanik olarak büyütürseniz (nöron sayısını arttırırsanız) ve onu modern veri kümeleri ve modern donanım üzerinde eğitirseniz, çok iyi çalışacaktır! Ancak o dönemde yeterli veri veya donanım yoktu ve derin öğrenme devriminin 2000'lerin sonuna kadar ertelenmesi gerekiyordu.

    Şimdi yapay zeka yutturmacasının üçüncü dalgasında yaşıyoruz. Üçüncü 'kışın' mı yoksa güçlü bir yapay zekanın yaratılmasıyla mı bitecek - bunu sadece zaman gösterecek. "