TensorFlow, Theano, Torch, Keras: Derin Öğrenme Kitaplığı

İçindekiler:

Anonim

Yapay zeka, işletmelerinde yapay zeka kullanan büyük şirketlerin% 20'si ile 2016'dan bu yana popülaritesini artırıyor (McKinsey raporu, 2018). Aynı rapora göre AI, endüstriler arasında önemli bir değer yaratabilir. Bankacılıkta, örneğin, AI potansiyeli olarak tahmin ediliyor $ için perakende sayı havai fişeğin içinde, 300 milyar $ 600 milyar.

Yapay zekanın potansiyel değerini ortaya çıkarmak için şirketler doğru derin öğrenme çerçevesini seçmelidir. Bu öğreticide, derin öğrenme görevlerini gerçekleştirmek için kullanılabilen farklı kitaplıklar hakkında bilgi edineceksiniz. TensorFlow gibi yeni kütüphaneler son yıllarda gün ışığına çıkarken, bazı kütüphaneler yıllardır buralarda.

8 En İyi Derin Öğrenme Kitaplıkları / Çerçevesi

Bu listede, en iyi Derin öğrenme çerçevelerini karşılaştıracağız. Hepsi açık kaynaklıdır ve veri bilimci topluluğunda popülerdir. Ayrıca popüler makine öğrenimini bir hizmet sağlayıcı olarak karşılaştıracağız

Meşale

Torch eski bir açık kaynak makine öğrenimi kitaplığıdır. İlk kez 15 yıl önce piyasaya sürüldü. Birincil programlama dilleri LUA'dır, ancak C'de bir uygulaması vardır. PyTorch ile TensorFlow karşılaştırıldığında, derin öğrenme dahil olmak üzere makine öğrenimi algoritmaları için geniş bir kitaplığı destekler. Paralel hesaplama için CUDA uygulamasını destekler.

Torch derin öğrenme aracı, Facebook, Google, Twitter, Nvidia vb. Gibi önde gelen laboratuvarların çoğu tarafından kullanılmaktadır. Torch, Python adlarında Pytorch'ta bir kitaplığa sahiptir.

Infer.net

Infer.net, Microsoft tarafından geliştirilmiş ve sürdürülmüştür. Infer.net, Bayes istatistiğine odaklanan bir kütüphanedir. Infer.net, uygulayıcılara olasılıklı modelleme için son teknoloji algoritmalar sunmak üzere tasarlanmış Derin Öğrenme için bir görselleştirme aracıdır. Kütüphane, Bayes analizi, gizli Markov zinciri, kümeleme gibi analitik araçlar içerir.

Keras

Keras, derin öğrenme için bir Python çerçevesidir. Herhangi bir derin öğrenme algoritması oluşturmak için uygun bir kütüphanedir. Keras'ın avantajı, CPU veya GPU'da çalıştırmak için aynı Python kodunu kullanmasıdır. Ayrıca, kodlama ortamı saftır ve diğerlerinin yanı sıra bilgisayarla görme, metin tanıma için son teknoloji algoritma eğitimine izin verir.

Keras, Google'da bir araştırmacı olan François Chollet tarafından geliştirilmiştir. Keras, CERN, Yelp, Square veya Google, Netflix ve Uber gibi önde gelen kuruluşlarda kullanılmaktadır.

Theano

Theano, Université de Montréal tarafından 2007 yılında geliştirilen bir derin öğrenme kitaplığıdır. Theano ile TensorFlow'u karşılaştırarak, hızlı hesaplama sunar ve hem CPU hem de GPU'da çalıştırılabilir. Theano, derin sinir ağı algoritmalarını eğitmek için geliştirilmiştir.

Microsoft Bilişsel Araç Seti (CNTK)

Daha önce CNTK olarak bilinen Microsoft araç seti, Microsoft tarafından geliştirilen bir derin öğrenme kitaplığıdır. Microsoft'a göre, kütüphane piyasadaki en hızlılar arasındadır. Microsoft araç seti açık kaynaklı bir kitaplıktır, ancak Microsoft bunu Skype, Cortana, Bing ve Xbox gibi ürünleri için yoğun bir şekilde kullanıyor. Araç seti hem Python hem de C ++ 'da mevcuttur.

MXNet

MXnet, yeni bir derin öğrenme kitaplığıdır. C ++, Julia, Python ve R. dahil olmak üzere birden çok programlama diliyle erişilebilir. MXNet hem CPU hem de GPU üzerinde çalışacak şekilde yapılandırılabilir. MXNet, Evrişimli Sinir Ağı ve Uzun Kısa Süreli Bellek gibi son teknoloji derin öğrenme mimarisini içerir. MXNet, dinamik bulut altyapısıyla uyum içinde çalışmak üzere oluşturulmuştur. MXNet'in ana kullanıcısı Amazon'dur

Caffe

Caffe, Yangqing Jia tarafından Berkeley'de doktora öğrencisi iken inşa edilmiş bir kütüphanedir. Caffe ile TensorFlow'u karşılaştıran Caffe, C ++ ile yazılmıştır ve hem CPU hem de GPU'da hesaplama yapabilir. Caffe'nin birincil kullanımları Evrişimli Sinir Ağı'dır. Yine de 2017'de Facebook, Recurrent Neural Network dahil olmak üzere daha derin öğrenme mimarisiyle Caffe'yi genişletti. Caffe, akademisyenler ve yeni başlayanlar tarafından, ayrıca Yahoo! Gibi bazı büyük şirketler tarafından kullanılmaktadır.

TensorFlow

TensorFlow, Google'ın açık kaynak projesidir. TensorFlow, bugünlerde en ünlü derin öğrenme kitaplığıdır. 2015'in sonlarında halka açıklandı

TensorFlow, C ++ ile geliştirilmiştir ve kullanışlı Python API'ye sahiptir, ancak C ++ API'leri de mevcuttur. Airbus, Google, IBM gibi önde gelen şirketler, derin öğrenme algoritmaları üretmek için TensorFlow kullanıyor.

TensorFlow Vs Theano Vs Torch Vs Keras Vs infer.net Vs CNTK Vs MXNet Vs Caffe: Anahtar Farklılıklar

Kütüphane Platform Yazılmış Cuda desteği Paralel Yürütme Eğitimli modelleri var RNN CNN
Meşale Linux, MacOS, Windows Lua Evet Evet Evet Evet Evet
Infer.Net Linux, MacOS, Windows Görsel stüdyo Hayır Hayır Hayır Hayır Hayır
Keras Linux, MacOS, Windows Python Evet Evet Evet Evet Evet
Theano Çapraz platform Python Evet Evet Evet Evet Evet
TensorFlow Linux, MacOS, Windows, Android C ++, Python, CUDA Evet Evet Evet Evet Evet
MICROSOFT BİLİŞSEL ARAÇ SETİ Docker ile Linux, Windows, Mac C ++ Evet Evet Evet Evet Evet
Caffe Linux, MacOS, Windows C ++ Evet Evet Evet Evet Evet
MXNet Linux, Windows, MacO'lar, Android, iOS, Javascript C ++ Evet Evet Evet Evet Evet

Karar:

TensorFlow, herkesin erişebileceği şekilde inşa edildiği için en iyi kitaplıktır. Tensorflow kitaplığı, CNN veya RNN gibi ölçekli derin öğrenme mimarisi oluşturmak için farklı API içerir. TensorFlow grafik hesaplamasına dayanır, geliştiricinin sinir ağının yapısını Tensorboad ile görselleştirmesine olanak tanır. Bu araç, programda hata ayıklamak için faydalıdır. Son olarak, Tensorflow uygun ölçekte dağıtılacak şekilde tasarlanmıştır. CPU ve GPU üzerinde çalışır.

Tensorflow, diğer derin öğrenme kitaplıklarına kıyasla GitHub'daki en büyük popülariteyi çekiyor.

Makine Öğrenimini Hizmet Olarak Karşılaştırma

Aşağıdakiler, servis sağlayıcı olarak 4 popüler DL'dir

Google Cloud ML

Google, Cloud AutoML'de bulunan geliştiricilere önceden eğitilmiş bir model sağlar. Bu çözüm, makine öğreniminde güçlü bir geçmişi olmayan bir geliştirici için mevcuttur. Geliştiriciler, verileri üzerinde son teknoloji ürünü Google'ın önceden eğitilmiş modelini kullanabilir. Herhangi bir geliştiricinin herhangi bir modeli sadece birkaç dakika içinde eğitmesine ve değerlendirmesine olanak tanır.

Google şu anda bilgisayarla görme, konuşma tanıma, çeviri ve NLP için bir REST API sağlamaktadır.

Google Cloud'u kullanarak, TensorFlow, Scikit-learn, XGBoost veya Keras üzerine inşa edilmiş bir makine öğrenimi çerçevesi eğitebilirsiniz. Google Cloud makine öğrenimi, modelleri bulutunda eğitecek.

Google bulut bilişimini kullanmanın avantajı, makine öğrenimini üretime dağıtmanın basitliğidir. Docker container kurmaya gerek yoktur. Ayrıca bulut altyapıyla ilgileniyor. Kaynakların CPU'lar, GPU'lar ve TPU'larla nasıl tahsis edileceğini bilir. Paralel hesaplama ile eğitimi daha hızlı hale getirir.

AWS SageMaker

Google Cloud'un en büyük rakibi Amazon bulutu, AWS'dir. Amazon, veri bilimcilerin ve geliştiricilerin herhangi bir makine öğrenimi modelini oluşturmasına, eğitmesine ve üretime sokmasına olanak sağlamak için Amazon SageMaker'ı geliştirdi.

SageMaker bir Jupyter Dizüstü Bilgisayarda mevcuttur ve en çok kullanılan makine öğrenimi kitaplığı olan TensorFlow, MXNet, Scikit-learn'ün yanı sıra diğerlerini içerir. SageMaker ile yazılan programlar Docker konteynerlerinde otomatik olarak çalıştırılır. Amazon, eğitim ve dağıtımı optimize etmek için kaynak tahsisini gerçekleştirir.

Amazon, geliştiricilere uygulamalarına zeka eklemek için API sağlar. Bulutta önceden eğitilmiş güçlü modeller varken, bazı durumlarda sıfırdan yeni modeller oluşturarak tekerleği yeniden icat etmeye gerek yoktur. Amazon, bilgisayarla görme, sohbet robotları ve dil hizmetleri için API hizmetleri sağlar:

Kullanılabilir üç ana API şunlardır:

  • Amazon Rekognition: bir uygulamaya görüntü ve video tanıma sağlar
  • Amazon Comprehend: Örneğin finansal belgenin yasallığını kontrol etme sürecini otomatikleştirmek için metin madenciliği ve sinirsel dil işleme gerçekleştirin
  • Amazon Lex: Bir uygulamaya sohbet robotu ekleyin

Azure Machine Learning Studio

Muhtemelen makine öğrenimine en kolay yaklaşımlardan biri Azure Machine Learning Studio'dur. Bu çözümün önemli avantajı, önceden programlama bilgisine gerek olmamasıdır.

Microsoft Azure Machine Learning Studio, makine öğrenimi çözümü oluşturmak, eğitmek, değerlendirmek ve dağıtmak için sürükle ve bırak iş birliğine dayalı bir araçtır. Model, web hizmetleri olarak verimli bir şekilde dağıtılabilir ve Excel gibi çeşitli uygulamalarda kullanılabilir.

Azure Machine Learning arabirimi etkileşimlidir ve kullanıcının yalnızca öğeleri hızlı bir şekilde sürükleyip bırakarak bir model oluşturmasına olanak tanır.

Model hazır olduğunda, geliştirici onu kaydedebilir ve Azure Gallery veya Azure Marketplace'e gönderebilir.

Azure Makine öğrenimi, özel yerleşik paketleriyle R veya Python'a entegre edilebilir.

IBM Watson ML

Watson Studio, işletmenin daha akıllı ve daha hızlı olmasına yardımcı olmak için verilerden değer ve içgörü elde etmeye olanak tanıyan modern bir süreçle veri projelerini basitleştirebilir. Watson studio, tek bir yerde modeller oluşturmak ve eğitmek, verileri hazırlamak ve analiz etmek ve içgörüleri paylaşmak için kullanımı kolay, işbirliğine dayalı bir veri bilimi ve makine öğrenimi ortamı sağlar. Watson Studio'nun sürükle ve bırak koduyla kullanımı kolaydır.

Watson studio, Tensorflow, Keras, Pytorch, Caffe gibi en popüler çerçevelerden bazılarını destekler ve modellemeyi hızlandırmaya yardımcı olmak için Nvidia'nın en yeni GPU'larına derin öğrenme algoritması yerleştirebilir.

Karar:

Bize göre Google bulut çözümü en çok tavsiye edilen çözümdür. Google bulut çözümü, veri depolama ve makine öğrenimi çözümü için AWS için en az% 30 daha düşük fiyatlar sağlar. Google, AI'yı demokratikleştirmek için mükemmel bir iş çıkarıyor. Bir açık kaynak dili olan TensorFlow, optimize edilmiş veri ambarı bağlantısı geliştirdi, veri görselleştirme, veri analizinden makine öğrenimine kadar muazzam araçlar sağlar. Ayrıca, Google Console ergonomiktir ve AWS veya Windows'tan çok daha kapsamlıdır.