Sinir ağı yazılımı - Neural network software

Sinir ağı yazılımı alışkın benzetmek, Araştırma, geliştirmek ve uygula yapay sinir ağları, uyarlanan yazılım konseptleri biyolojik sinir ağları ve bazı durumlarda daha geniş bir dizi uyarlanabilir sistemler gibi yapay zeka ve makine öğrenme.

Simülatörler

Sinir ağı simülatörleri, yapay veya biyolojik sinir ağlarının davranışını simüle etmek için kullanılan yazılım uygulamalarıdır. Bir veya sınırlı sayıda spesifik sinir ağına odaklanırlar. Tipik olarak bağımsızdırlar ve diğer yazılımlara entegre edilebilen genel sinir ağları üretmeyi amaçlamazlar. Simülatörlerin genellikle bir tür yerleşik görselleştirme eğitim sürecini izlemek için. Bazı simülatörler ayrıca sinir ağının fiziksel yapısını da görselleştirir.

Araştırma simülatörleri

SNNS araştırma sinir ağı simülatörü

Tarihsel olarak, en yaygın sinir ağı yazılımı türü, sinir ağı yapılarını ve algoritmalarını araştırmak için tasarlanmıştı. Bu tür bir yazılımın birincil amacı, simülasyon yoluyla, sinir ağlarının davranışını ve özelliklerini daha iyi anlamaktır. Günümüzde yapay sinir ağları çalışmasında simülatörler, araştırma platformları olarak büyük ölçüde daha genel bileşen tabanlı geliştirme ortamları ile değiştirildi.

Yaygın olarak kullanılan yapay sinir ağı simülatörleri şunları içerir: Stuttgart Sinir Ağı Simülatörü (SNNS), Acil ve Sinir Laboratuvarı.

Biyolojik sinir ağları çalışmasında ise, simülasyon yazılımı hala mevcut tek yaklaşımdır. Bu tür simülatörlerde sinir dokusunun fiziksel biyolojik ve kimyasal özellikleri ile nöronlar arasındaki elektromanyetik dürtüler incelenir.

Yaygın olarak kullanılan biyolojik ağ simülatörleri şunları içerir: Nöron, YARATILIŞ, NEST ve Brian.

Veri analizi simülatörleri

Araştırma simülatörlerinden farklı olarak, veri analizi simülatörleri yapay sinir ağlarının pratik uygulamaları için tasarlanmıştır. Öncelikli odak noktaları veri madenciliği ve tahminidir. Veri analizi simülatörleri genellikle bazı ön işleme yeteneklerine sahiptir. Daha genel geliştirme ortamlarının aksine, veri analizi simülatörleri, yapılandırılabilen nispeten basit bir statik sinir ağı kullanır. Piyasadaki veri analizi simülatörlerinin çoğu, temel olarak geri yayılım yapan ağları veya kendi kendini organize eden haritaları kullanır. Bu tür bir yazılımın avantajı, kullanımının nispeten kolay olmasıdır. Sinir Tasarımcı bir veri analizi simülatörü örneğidir.

Sinir ağı teorisini öğretmek için simülatörler

Ne zaman Paralel Dağıtılmış İşleme ciltler[1][2][3] 1986-87'de piyasaya sürüldüklerinde, nispeten basit bir yazılım sağladılar. Orijinal PDP yazılımı herhangi bir programlama becerisi gerektirmedi, bu da çeşitli alanlarda çok çeşitli araştırmacılar tarafından benimsenmesine yol açtı. Orijinal PDP yazılımı, PDP ++ adı verilen daha güçlü bir paket halinde geliştirildi ve bu da daha güçlü bir platform adı verilen Acil. Her geliştirmeyle birlikte, yazılım daha güçlü hale geldi, ancak yeni başlayanlar tarafından kullanımı daha da göz korkutucu hale geldi.

1997'de tLearn yazılımı bir kitaba eşlik etmek üzere piyasaya sürüldü.[4] Bu, acemi kullanıcılar düşünülerek tasarlanmış küçük, kullanıcı dostu bir simülatör sağlama fikrine bir dönüş oldu. tLearn, her ikisi de basit geri yayılma algoritmasıyla eğitilebilen basit tekrarlayan ağlarla birlikte temel ileri beslemeli ağlara izin verdi. tLearn 1999'dan beri güncellenmedi.

2011'de Basic Prop simülatörü piyasaya sürüldü. Basic Prop, tLearn ile aynı basit işlevselliklerin çoğunu sağlayan, platformdan bağımsız bir JAR dosyası olarak dağıtılan bağımsız bir uygulamadır.

2012'de Wintempla, uygulamak için bir dizi C ++ sınıfıyla birlikte NN adlı bir ad alanını dahil etti: ileri beslemeli ağlar, olasılıklı sinir ağları ve Kohonen ağları. Sinir Laboratuvarı Wintempla sınıflarına dayanmaktadır. Neural Lab öğreticisi ve Wintempla öğreticisi, sinir ağları için bu sınıflardan bazılarını açıklamaktadır. Wintempla'nın ana dezavantajı, yalnızca Microsoft Visual Studio ile derlenmesidir.

Geliştirme ortamları

Sinir ağları için geliştirme ortamları, yukarıda açıklanan yazılımdan temel olarak iki hesapta farklılık gösterir - özel sinir ağları türleri geliştirmek için kullanılabilirler ve desteklerler dağıtım sinir ağının çevrenin dışında. Bazı durumlarda ilerlediler ön işleme, analiz ve görselleştirme yetenekleri.[5]

Bileşen bazlı

Peltarion Sinaps bileşen tabanlı geliştirme ortamı.

Şu anda hem endüstriyel hem de bilimsel kullanımda tercih edilen daha modern bir geliştirme ortamı türü, bileşen tabanlı paradigma. Sinir ağı, uyarlanabilir filtre bileşenlerinin bir boru filtre akışına bağlanmasıyla oluşturulur. Bu, ağ tarafından kullanılan özel bileşenlerin yanı sıra özel ağlar oluşturulabildiğinden daha fazla esneklik sağlar. Çoğu durumda bu, uyarlanabilir ve uyarlanabilir olmayan bileşenlerin bir kombinasyonunun birlikte çalışmasına izin verir. Veri akışı, hem değiştirilebilir bir kontrol sistemi hem de uyarlama algoritmaları tarafından kontrol edilir. Diğer önemli özellik, dağıtım yetenekleridir.

Gibi bileşen tabanlı çerçevelerin ortaya çıkmasıyla birlikte .AĞ ve Java Bileşen tabanlı geliştirme ortamları, geliştirilen sinir ağını bu çerçevelere devralınabilir bileşenler olarak dağıtabilir. Ek olarak, bazı yazılımlar bu bileşenleri birkaç platforma da dağıtabilir, örneğin gömülü sistemler.

Bileşen tabanlı geliştirme ortamları şunları içerir: Peltarion Sinaps, NeuroDimension NeuroSolutions, Bilimsel Yazılım Nöro Laboratuvarı, ve ASLAN çözücü entegre yazılım. Bedava açık kaynak bileşen tabanlı ortamlar şunları içerir Kodlama ve Nörof.

Eleştiri

Bileşen tabanlı geliştirme ortamlarının bir dezavantajı, simülatörlerden daha karmaşık olmalarıdır. Tam olarak çalışmak için daha fazla öğrenmeye ihtiyaç duyarlar ve gelişmeleri daha karmaşıktır.

Özel sinir ağları

Bununla birlikte, mevcut sinir ağlarının çoğu uygulamaları, çeşitli programlama dillerinde ve çeşitli platformlarda özel uygulamalardır. Temel sinir ağları türlerinin doğrudan uygulanması kolaydır. Ayrıca çok var programlama kitaplıkları sinir ağı işlevselliği içeren ve özel uygulamalarda kullanılabilen (ör. TensorFlow, Theano, vb., genellikle gibi dillere bağlar sağlar. Python, C ++, Java ).

Standartlar

Sinir ağı modellerinin farklı uygulamalar tarafından paylaşılabilmesi için ortak bir dil gereklidir. Tahmine Dayalı Model Biçimlendirme Dili (PMML) bu ihtiyacı karşılamak için önerilmiştir. PMML, uygulamaların sinir ağı modellerini (ve diğer veri madenciliği modellerini) PMML uyumlu uygulamalar arasında tanımlaması ve paylaşması için bir yol sağlayan XML tabanlı bir dildir.

PMML, tescilli sorunlar ve uyumsuzlukların uygulamalar arasında model alışverişi için artık bir engel oluşturmaması için uygulamalara satıcıdan bağımsız bir model tanımlama yöntemi sağlar. Kullanıcıların bir satıcının uygulamasında modeller geliştirmesine ve modelleri görselleştirmek, analiz etmek, değerlendirmek veya başka bir şekilde kullanmak için diğer satıcıların uygulamalarını kullanmasına olanak tanır. Önceden bu çok zordu, ancak PMML ile uyumlu uygulamalar arasında model değişimi artık çok kolay.

PMML tüketicileri ve üreticileri

PMML üretmek ve tüketmek için bir dizi ürün sunulmaktadır. Bu sürekli büyüyen liste aşağıdaki sinir ağı ürünlerini içerir:

  • R: pmml paketi aracılığıyla sinir ağları ve diğer makine öğrenimi modelleri için PMML üretir.
  • SAS Enterprise Miner: çeşitli madencilik modelleri için PMML üretir. nöral ağlar, doğrusal ve lojistik regresyon, karar ağaçları ve diğer veri madenciliği modelleri.
  • SPSS: sinir ağları ve diğer birçok madencilik modeli için PMML üretir.
  • STATISTICA: sinir ağları, veri madenciliği modelleri ve geleneksel istatistiksel modeller için PMML üretir.

Ayrıca bakınız

Referanslar

  1. ^ Rumelhart, D.E., J.L. McClelland ve PDP Araştırma Grubu (1986). Paralel Dağıtılmış İşleme: Bilişin Mikro Yapısındaki Araştırmalar. Cilt 1: Temeller, Cambridge, MA: MIT Press
  2. ^ McClelland, J.L., D.E. Rumelhart ve PDP Araştırma Grubu (1986). Paralel Dağıtılmış İşleme: Bilişin Mikro Yapısındaki Araştırmalar. Cilt 2: Psikolojik ve Biyolojik Modeller, Cambridge, MA: MIT Press
  3. ^ McClelland ve Rumelhart "Paralel Dağıtılmış İşleme El Kitabında Keşifler", MIT Press, 1987
  4. ^ Plunkett, K. ve Elman, J.L., Doğuştanlığı Yeniden Düşünme Egzersizleri: Bağlantısal Simülasyonlar için Bir El Kitabı (The MIT Press, 1997)
  5. ^ "Ar-Ge Hattı Devam Ediyor: Sürüm 11.1 Başlatılıyor — Stephen Wolfram". blog.stephenwolfram.com. Alındı 2017-03-22.

Dış bağlantılar