2018'deki en iyi yazılım geliştirme, bulut bilişim, büyük veri analizi ve makine öğrenimi araçları

InfoWorld editörleri ve eleştirmenleri bu yıl en iyi yazılım geliştirme, bulut bilişim, büyük veri analizi ve makine öğrenimi araçlarını seçti.

InfoWorldün Yıllık Teknoloji Ödüllerine hoş geldiniz. Bu, bilgi teknolojisi alanındaki en iyi, en yenilikçi ve en önemli ürünleri yıllık kutlamamızdır. Ödüllerin bu 2019 baskısında, kapsayıcıların, bulut yerel uygulama yığınlarının, dağıtılmış veri işleme sistemlerinin ve makine öğreniminin ana temalar olduğunu tahmin edebilirsiniz.

Ödüllü 16 teknolojimiz arasında önde gelen üç makine öğrenimi kitaplığı, derin öğrenmeyi hızlandıran dağıtılmış bir eğitim çerçevesi ve uzman olmayanlara özellik mühendisliği, model seçimi, eğitim ve optimizasyon yoluyla rehberlik eden bir otomasyon bulacaksınız. platform. Bu, makine öğrenimini, alandaki şaşırtıcı etkinlik düzeyini yansıtan yazılım geliştirme dahil diğer tüm ürün kategorilerinden daha fazla seçenek haline getiriyor.

Bu yıl kazanan listemizde geniş sütunlu veri depolama, çok işlevli veri depolama ve veri depolama kadar çok uygulama platformuna sahip bir veritabanı dahil olmak üzere üç veritabanı teknolojisi yer aldı. Verilerin her zaman buradan oraya, tercihen gerçek zamanlı olarak taşınması gerektiğinden, akış işleme uygulamaları oluşturmak için iki önde gelen platformu da dahil ediyoruz.

Bu yılın kazananları hakkında bilgi edinmek için okumaya devam edin.

1. Kubernetes

Kubernetes (diğer adıyla K8s) son birkaç yılda inanılmaz bir büyüme yaşadı. Eskiden birçok konteyner düzenleme sisteminden biriydi, ancak şimdi ister büyük bulut sağlayıcılarında ister yerel kurumsal düzeydeki kurulumlarda olsun, hızla evrensel bir standart platform haline geliyor. Operasyonel alandaysanız, Kubernetes üzerinde vakit geçirmek büyük olasılıkla karşılığını alacaktır, çünkü açık kaynaklı projeler acımasız yürüyüşlerine devam edecek.

Google'ın devasa veri merkezlerini son on yılda çalıştırarak öğrenilen fikirlere ve derslere dayanan Kubernetes, büyük kümelerde kapsayıcı tabanlı uygulamaları ve iş yüklerini dağıtmak, ölçeklendirmek ve izlemek için savaşta test edilmiş bir platformdur. Geçtiğimiz yıl, Kubernetes'in piyasaya sürülmesi, depolama revizyonları, konteyner depolama arabirimlerine geçiş, TLS korumalı Kubelet önyükleme ve iyileştirilmiş Microsoft Azure desteği gibi önemli noktaları beraberinde getirdi.

Dağıtım, gözlemlenebilirlik ve güvenlik üzerinde daha iyi kontrole sahip bir hizmet ağını tanımlayan Istio gibi çekirdek Kubernetes yığınına önemli eklemeler de gördük. Kubernetes üzerinde TensorFlow veya PyTorch makine öğrenimi ardışık düzenlerini kolayca başlatmanıza olanak tanıyan Kubeflow gibi daha özel çerçeveler gördük ve bunların tümü aynı zamanda kümede çalışan Jupyter not defterleri tarafından kontrol ediliyor.

Uygulama tanımını basitleştirmekten birden çok kümeyi izlemeye kadar Kubernetes yönetiminin belirli yönlerini basitleştirmek için tasarlanmış üçüncü taraf araçların ve çerçevelerin sayısı her geçen gün artıyor gibi görünüyor. Kubernetes'i benimseyenlerin sayısı gibi, 2018'deki ana duyurular ve öneriler de IBM, Huawei, Sling TV ve ING'den geldi. Hata! Chick-fil-A bile her restoranda Kubernetes çalıştırıyor. K8S gemisine de binmeli misiniz?

- Ian İşaretçisi

2. Firebase

Yakın gelecekte kuantum hesaplama, düşünme okuma yapay zekası ve postacı problemini çözmek için alt doğrusal algoritmalar olmayabilir, ancak her durumda kesinlikle bir "veritabanı" kullanacağız. Tüm mükemmel yazılım teknolojileri sonunda DBA tarafından yönetilen Borg tarafından emildi. Firebase'in ortaya çıkışı, bu hedefe nasıl ulaşılacağına dair güzel bir örnektir.

Firebase, ilk bakışta anahtarlar ve bunlara eşlik eden değerler için basit bir depolama çözümü gibi görünüyor. Diğer bir deyişle, diğer NoSQL veritabanları gibi, bir çift makul ölçüde tutarlıdır. Ancak yıllar geçtikçe Google, Firebase'in bulut tabanlı web uygulamalarının yapabileceği daha fazla işi yapmasına olanak tanıyan bazı özellikler ekliyor ve hatta Google Firebase'i bir mobil platform olarak adlandırmaya bile başladı.

İnternet mükemmel olmadığında istemcide verileri önbelleğe alma zorluğunuzu hatırlıyor musunuz? Firebase ekibi, veritabanı tutarlılığını koruyan senkronizasyon rutinlerinin de mobil istemcilerden veri aktarmak ve çıkarmak için ideal araçlar olduğunu fark etti. Senkronizasyon sürecini başlattılar ve şimdi kodunuzun ağla el sıkışmak veya keman çalmak için bazı karmaşık algoritmalarla uğraşmasına gerek yok. Bunları Firebase'e taşımanız yeterlidir ve sihir gibi telefonunuzun bir kopyasında görünürler. Bu sadece büyük bir veritabanıdır, sunucu rutinleriniz ve istemci rutinleriniz sadece halka açık havuzdan okur ve yazar.

Firebase geri kalanıyla entegre olduğundan, Google daha fazla içerik eklemeye devam ediyor. Facebook, Google'daki sosyal giriş bilgilerinizi doğrulayın ve kullanıcılarınızın doğru veritabanı parçalarına erişmesine izin verin. Analiz, barındırma, mesajlaşma, tüm Google çözümleri aşamalı olarak veritabanı tarafından kapsanmaktadır. Makine öğrenimi dahil olmak üzere, veritabanındaki mevcut anahtar / değer çiftlerini analiz etmek isteyen Firebase kullanıcıları için zaten bir beta seçeneğidir. Bir anlamda yapay zekayı veri tabanları ile birleştirmeye başladık.

--Peter Wayner

3. Sunucusuz

Bir sunucuyu kiralayan birinci nesil bulut, donanımla ilgili tüm hantal sorumlulukları ortadan kaldırarak bize zaman kazandırır. Sunucu uzak bir binaya yerleştirilir, ısıtma, soğutma ve bakım diğer tüm insanların sorunlarıdır. Yeni nesil bulut teknolojisi, en azından ismen, sunuculardan kurtuluyor ve sadece işletim sistemi yamaları ve güncellemelerinin zahmetinden kurtulmakla kalmıyor, aynı zamanda uygulama teslimi ile ilgili zorlukların çoğunu da ortadan kaldırıyor.

Kodumuz hala sunucu donanımında ve işletim sisteminde var, ancak şimdi daha çok başkalarının sorumluluğunda. Kök erişim yoluyla bir şeyler elde etmek yerine işlevleri yükleyebilir ve başkalarının yazılım yığınlarının bunları değerlendirmesine izin verebiliriz. İşlevselliğe odaklanabilir ve diğer her şeyi bulutun çalışmasını sağlayan teknolojilere bırakabiliriz.

Ancak yine de zorluklar var: Sunucusuz, teknik mimariyi yeniden düşünmek demektir. Olaylara ve eşzamansız kuyruklara güvenmek, uygulamanın düzgün bir şekilde bölünmüş görevler halinde yeniden düzenlenmesini gerektirir. Bazı araç desteği olsa da, yine de çözülmesi gerekiyor: entegre hata ayıklama, dağıtılmış izleme, dağıtım paketi, işlevsel sürüm kontrolü vb.

Bir de tedarikçi kilitlenme endişeleri var. Önde gelen FaaS (Hizmet Olarak İşlev) sağlayıcıları: AWS Lambda, Microsoft Azure Functions ve Google Cloud Functions, hepsinin kendi özel dağıtım ve işlem yöntemleri vardır.

Sunucusuz çerçevenin benzersiz özelliği, uygulama dağıtımını basitleştirmek için satıcıya özgü uygulamalar için bir soyutlama katmanı sağlamaktır. Açık kaynak çerçevesi, işlevlerinizi çeşitli bulut sağlayıcılarına test etmek ve dağıtmak için uygun bir yol sağlar ve yaygın YAML dosyaları aracılığıyla yapılandırma güncellemelerini basitleştirirken, aynı zamanda zengin işlev yönetimi ve güvenlik işlevleri sağlar.

Bu uzmanlıklara ek olarak Serverless Framework, FaaS'yi Kubernetes kümelerinde konuşlandırmak için bir çerçeve olan Kubeless'ı ve IBM Cloud Functions'ı destekleyen Docker tabanlı bir platform olan Apache OpenWhisk'i de destekler, kapsamlı dil desteği ve ele alınacak benzersiz özellikler sunar Daha uzun bağlantı.

Sunucusuz bilgi işlem, her kullanım durumu için ne olgun ne de sihirli bir değnekdir, ancak ekonomi ve verimliliğe direnmek zordur. Zorlukları hafifletmek için sunucusuz bir çerçevenin yardımıyla, işletim maliyetlerini düşürmek ve dağıtımı hızlandırmak için sunucusuz hale gelen daha fazla kuruluşa neden katılmayasınız?

- James R. Borck

4. Elastik Yığın

Şu anda kullanıcı odaklı bir web uygulaması çalıştırıyorsanız, karmaşık arama işlevleri sağlayamazsınız. Kullanıcılara sürekli olarak, yazımı düzeltebilen, otomatik olarak alternatif ifadeler önerebilen ve belirli sonuçların döndürülmesinin nedenlerini göstermek için arama sonuçlarını vurgulayan ücretsiz bir metin arama arayüzü sağlayın. Beğenseniz de beğenmeseniz de, uymanız gereken arama kriterleri bunlar.

Neyse ki, Elastic Stack tüm arama ihtiyaçlarınızı ve daha fazlasını karşılayacaktır. Elastic Stack temel olarak Elasticsearch, Kibana, Logstash ve Beats'ten oluşur ve kullanıcı odaklı belge arama ve merkezi günlük toplama ve analizi dahil olmak üzere birçok kullanım durumunu destekler. Belgeleri tek seferde indekslemek veya çok sayıda indeks, hemen hemen her dilden indekslenebilir ve tüm alanların eşleme tipi hakkında en iyi tahmininizi yapabilirsiniz (lütfen ilişkisel veritabanındaki sütun veri tipini göz önünde bulundurun). Artık bulanık arama, vurgulama ve çok yönlü arama sonuçları dahil olmak üzere tam arama API'sini kullanabilirsiniz. Searchkit gibi ön uç araçlarla eşleştirin ve hemen hızlı bir şekilde çok yönlü bir ücretsiz metin arama prototipi edinebilirsiniz.

Logstash ve Beats'i herhangi bir sayıdaki bireysel hizmetten günlükleri toplamak için kullanmak daha kolay hale geldi ve daha kolay sorun giderme ve analiz için günlük satırlarını merkezi bir Elasticsearch kümesine göndermenize olanak tanıdı. Günlük verilerini indeksledikten sonra, Kibana'yı kullanarak bir bakışta sistem sağlığını elde etmek için grafikler oluşturmak ve panoları birleştirmek için, Elastic Stack bugün herhangi bir yeni web projesi için olmazsa olmazlardan biridir.

--Jonathan Freeman

5. DataStax Enterprise

Apache Cassandra, Google'ın Bigtable makalesinden esinlenilmiş, açık kaynaklı, büyük ölçekli, dağıtılmış bir sütun serisi veritabanıdır ve büyük ölçüde ölçeklenebilir bir küresel veri altyapısı çalıştırmanın mükemmel bir yoludur. Sahipsiz tasarım, birçok türde yüksek verimli bulut uygulamalarını çalıştırmak için çok uygundur.

Ancak Cassandra, kurulumu ve yönetimi en kolay sistem değildir. Analiz, arama ve grafik işlemlerini içeren çeşitli uygulama türlerini yürütmeye çalışırken de sizi hayal kırıklığına uğratacaktır. DataStax Enterprise (DSE olarak da bilinir) bu özellikleri ve gelişmiş performans ve güvenliği ekleyerek yönetimi, gelişmiş çoğaltma, bellek içi OLTP, toplu yükleyici, katmanlı depolama, arama, analiz ve geliştirici stüdyolarını büyük ölçüde iyileştirir.

Bigtable ve Cassandra gibi, DataStax Enterprise da büyük veritabanları, terabaytlar ila gigabaytlar için en uygun olanıdır ve en iyi, her satırın birçok sütuna sahip olduğu denormalize edilmiş bir mimariyle kullanılır. DataStax ve Cassandra kullanıcıları, bunu çok büyük ölçekli uygulamalar için kullanma eğilimindedir. Örneğin eBay, günde 6 milyar kez yazılan ve her seferinde 5 milyar kez okunan 250 TB açık artırma verisini depolamak için DataStax Enterprise'ı kullanıyor.

DataStax Enterprise 6, 2018'de DSE Analytics, DSE Graph ve DSE Search'te çeşitli yeni özelliklerin yanı sıra daha hassas güvenlik ayarları getiriyor. DataStax Studio'daki iyileştirmeler, Spark SQL desteği ve etkileşimli grafiklerle DSE Graph için genişletilmiş IDE desteği gibi DSE Analytics'teki iyileştirmeleri izler. En önemlisi, karşılaştırma testi DSE 6'nın Cassandra'dan çok daha hızlı olduğunu gösteriyor.

- Andrew C. Oliver

6. Apache Kafka

Dürüst olmak gerekirse, Apache Kafka'nın olmadığı bir dünya hayal etmek garip. Dağıtılmış akışlı medya platformu yakında sekizinci yaş gününü kutlayacak ve proje, ister Apache Storm veya Apache Spark gibi işlemleri eklemek veya Apache Kafka'yı kullanmak olsun, akışlı ortam uygulamaları için hala sağlam bir açık kaynak seçimidir. Kafka, düşük gecikmeli uygulamaları kolayca işleyebilir ve günlük tabanlı depolaması, onu güvenilirlik için mükemmel bir seçim haline getirir.

Kafka Connect, veritabanları ve diğer veri kaynakları ile etkileşim kurmak için Microsoft SQL Server, Elasticsearch, HDFS, Amazon S3 vb. Gibi popüler ürünlere birçok bağlayıcı içerir ve veri akışlarını düzenleyerek Apache Kafka kümelerine ve yapılandırma dosyalarına veri akışına izin verir. . Özel kod yazmadan veya herhangi bir Java koduna dokunmadan veritabanından Amazon S3'e tüm ardışık düzeni kurduğunuzu hayal edin.

Confluent, açık kaynaklı ürünlere dayalı bir platform sağlayan orijinal yaratıcılar olan Jay Kreps, Neha Narkhede ve Jun Rao dahil olmak üzere Apache Kafka'nın ana geliştiricilerinden biridir. Bu, daha iyi bir operasyonel kullanıcı arabirimi gibi geleneksel kurumsal ürünleri içerse de, doğrudan SQL kullanarak Kafka konularında depolanan verileri sorgulamanızı ve işlemenizi sağlayan bir kitaplık olan KSQL'i de içerir.

Apache Kafka'yı kendi başınıza çalıştırma görevini tamamlamazsanız, Google Confluent ile birleştirilmiş bir barındırma platformu sağlayacak ve Amazon, Kafka için Yönetilen Akış (Amazon MSK) sağlayacaktır. Amazon MSK şu anda genel bir önizlemeden geçiyor ve 2019'da bir ara genel kullanılabilirliğe erişebilir.

- Ian İşaretçisi

7. Apache Kiriş

Apache Beam, toplu iş ve akış işleme ardışık düzenleri geliştirmek için ileriye dönük bir yaklaşım kullanır. Çoğu platformun aksine Beam, geliştirme dilini son yürütme motorundan çıkarır. Java, Python veya Go'da ardışık düzenler yazabilir ve ardından belirli ihtiyaçlarınızı karşılamak için çalışma zamanı motorlarını karıştırıp eşleştirebilirsiniz; örneğin, bellek içi işler için Apache Spark veya düşük gecikme performansı için Apache Flink kullanın.

Apache Beam yalnızca dağıtılmış ETL, gerçek zamanlı veri analizi ve makine öğrenimi ardışık düzenlerini işlemek için güvenilir bir motor sağlamakla kalmaz, aynı zamanda gelecekteki yatırımınızı kanıtlayarak bu hedefe de ulaşabilir.

--James R. Borck

8. Redis

Bu bir NoSQL veritabanıdır! Bu bellek önbelleğidir! Bu mesaj ara yazılımıdır! Redis yukarıdakilerin tümüdür ve daha fazla özellik sağlar. Redis, tek bir pakette birçok yararlı işlev sağlar. "Bellek veri yapısı depolamanın" modern web uygulama yığınının ana içeriği haline gelmesi şaşırtıcı değildir.Neredeyse tüm programlama dilleri kitaplıklar tarafından desteklenebilir.

Redis tarafından sağlanan çalışma yetenekleri, belirli bir iş için gereken karmaşıklık ve işlevsellikle sınırlıdır. Veri parçalarının yalnızca basit bir önbelleğine ihtiyacınız varsa, Redis'i kurabilir ve uygulamanızı dakikalar içinde kullanabilirsiniz. Disk destekli bir NoSQL sistemine eşdeğer, farklı bir veri yapısı ve seçtiğiniz önbellek boşaltma şemasına eşdeğer bir şey istiyorsanız, daha fazla çabaya ihtiyacınız olabilir.

Redis 5.0, Ekim 2018'de piyasaya sürüldü. En önemlisi yeni akış veri türü olan birçok güçlü yeni özelliği tanıttı. Bu günlük benzeri ek veri yapısı, Redis ile Apache Kafka'ya benzer bir mesajlaşma sistemi oluşturmayı mümkün kılar. Redis 5.0'daki diğer iyileştirmeler, ana metaforu olarak bellek depolamaya dayalı önemli performans geliştirmeleriyle birlikte daha iyi bellek yönetimi ve parçalanma denetimi içerir.

--Serdar Yegülalp

9. Visual Studio Kodu

Visual Studio Code'un avantajı, istediğiniz kadar çok veya az sahip olabilmesidir. Visual Studio Code, yalnızca ihtiyacınız olduğunda hızlı ve hafif bir düzenleyici olarak hizmet verecek veya bugün kullanılan hemen hemen tüm büyük diller veya çalışma zamanı eklentileri ve eklentileri sayesinde olgun bir geliştirme ortamı haline gelecektir. Python, Java, Kotlin, Go, Rust, JavaScript, TypeScript ve Node.js (Microsoft'un kendi .Net dilinden bahsetmiyorum bile) Markdown, HTML, reStructuredText ve LLVM IR gibi tamamlayıcı belge formatları gibi iyi desteklenmektedir. Böylece.

Visual Studio Code, kapsamlı desteğe ve yaygın benimsemeye ek olarak, ürün için aralıksız iyileştirmeler ve ekler sağlar. Hiçbir işlevsel alan göz ardı edilmez. Bu nedenle Git, Team Foundation Server, Docker, kod yazma, yeniden düzenleme, büyük dosyalar vb. İçin güçlü destek alacaksınız. Visual Studio Code'u kendi kendine yeten bir dizinde bile çalıştırabilirsiniz; Visual Studio Code'u yeniden paketlemenin kapısını açmak, imrenilen yeni hedefleri karşılayabilen bağımsız bir ortamdır.

- Serdar Yegülalp

10..Net Çekirdek

Bazı insanlar, bir yazılım projesini açık kaynağa dönüştürmenin en iyi ve muhtemelen en kötü şey olduğunu söylüyor. Microsoft'un .Net Framework'ü söz konusu olduğunda, .Net Core için açık kaynak kodu her zaman ayrı bir pozitif faktör olmuştur ve açık bir geliştirme süreci, platformlar arası bir öncelik kavramı ve uyumluluk ile daha hafif bir çalışma süresine yol açmıştır. İhtiyaç duyan uygulamaya köprü kuran ana .Net Framework.

Mayıs 2018'de yayınlanan Sürüm 2.1, bu büyük planı tamamlayan birçok özelliği tanıttı. Bunların en büyüğü: .Net Core Global Tools, .Net uygulamalarını yönetmek için komut satırı araçlarını dağıtmak ve genişletmek için yeni bir sistem; Windows yerel uygulamaları için .Net Framework'te kullanım sağlayan Windows uyumluluk paketleri 20.000 API'ye erişim; Windows uygulamalarını taşırken Windows API bağımlılıklarını tanımlamak için kullanılan API analiz araçları ve en son çalışma zamanı bağımsız .Net çekirdek uygulamalarını bir araya getiren bir mekanizma.

- Serdar Yegülalp

11. LLVM

İlk bakışta, LLVM, ödüllerimiz için ezoterik bir seçim gibi görünüyor. Bir programlama dili derleyicisi oluşturmak için araç seti? Ancak LLVM derleyici çerçevesinin gücü, birçok A-list projesinin özüdür: Clang, Rust, Swift, Julia ve programlama dillerinin gelişimini destekleyen diğer birçok yenilikçi proje.

LLVM, geliştiricilere, hedeflemek istedikleri her mimari ve platform değişikliğini anlamak zorunda kalmadan programlı olarak makine yerel kodu oluşturmanın bir yolunu sağlar. Açık kullanım durumu bir dil derleyicisidir, ancak LLVM ayrıca çeşitli diğer uygulamaları da mümkün kılar. Örneğin, PostgreSQL, SQL sorgularını hızlandırmak için dinamik olarak kod oluşturmak için LLVM kullanır. Benzer şekilde, Numba projesi, yüksek hızlı sayısal hesaplama uygulamaları için yavaş Python kodunu hızlı birleştirme diline dönüştürmek için LLVM kullanır.

2018'de LLVM'nin iki ana sürümü bir dizi iyileştirme sunmuştur: daha yeni Intel işlemciler için daha iyi destek, çok işlemcili çözümler, yaygın işlemci kusurlarının azaltılması, oluşturulan kodun belirli CPU mimarilerinde performansını değerlendirmeye yönelik araçlar ve LLVM bağlayıcı LLD'nin daha fazla çalışması, birden çok platformda LLVM'den bağımsız yürütülebilir dosyalar oluşturabilir.

- Serdar Yegülalp

12. TensorFlow

TensorFlow, sayısal hesaplamalar için veri akış grafiklerini kullanan açık kaynaklı bir yazılım kitaplığıdır. Grafik düğümleri matematiksel işlemleri temsil ederken, grafik kenarları aralarında akan çok boyutlu veri dizilerini (tensörler) temsil eder. Bu esnek mimari, kodu yeniden yazmadan masaüstü bilgisayarlarda, sunucularda veya mobil cihazlarda bir veya daha fazla CPU veya GPU'ya bilgi işlem dağıtabilir. TensorFlow ayrıca bir veri görselleştirme araç seti olan TensorBoard'u içerir.

1.12 sürümünde, TensorFlow açık ara en çok kullanılan ve en çok alıntı yapılan derin öğrenme çerçevesidir. Orijinal düşük seviyeli API'sini hala desteklese de, tercihli yüksek seviyeli API artık TensorFlow'a özgü geliştirmeler dahil olmak üzere TensorFlow'un Keras API standardının bir uygulaması olan tf.keras'tır.

TensorFlow hala bir veri akış grafiği oluşturmayı ve daha sonraki bir oturumda çalıştırmayı desteklese de, artık gerekli, çalıştırma arabirimi olan istekli yürütme modunu da tam olarak destekliyor. İstekli yürütme modu, tf.GradientTape API aracılığıyla otomatik farklılaştırmayı destekler. Tf.keras'ın bir iyileştirmesi, istekli yürütmeyi desteklemektir.

Hem Keras API hem de istekli yürütme modu TensorFlow 2.0'da gösterilecektir. Sürüm 2.0'da diğer bazı API'ler önerilmese de, uyumluluk kitaplıklarına ek olarak, mevcut kodlar için dönüştürme araçları da olacaktır.

Tahmin aracı, TensorFlow'un en ölçeklenebilir ve üretim odaklı model türüdür. Google tarafından sağlanan önceden hazırlanmış Tahmincileri kullanabilir veya kendi özel Tahmincilerinizi yazabilirsiniz. Tahmincinin kendisi tf.keras.layers üzerine kurulur ve özelleştirmeyi basitleştirir. Bir model oluşturmak için Tahmincileri kullanmak, genellikle düşük seviyeli TensorFlow API'sini kullanmaktan daha kolaydır. Önceden oluşturulmuş tahmin aracı, temel TensorFlow API'sinden daha yüksek bir kavramsal düzeyde çalışmanıza olanak tanır.

- Martin Heller

13. Keras

Keras, Python'da yazılmış, TensorFlow, CNTK veya Theano üzerinde çalışabilen üst düzey bir sinir ağı API'sidir. MXNet ve PlaidML gibi diğer üçüncü taraf arka uçları destekler.

Keras, bazı TensorFlow'a özgü geliştirmelerle TensorFlow, tf.keras'ta uygulanır. Keras, sinir ağı modelleri oluşturmak için basitleştirilmiş tek üst düzey API değildir, ancak TensorFlow'daki önemi, kalitesini ve önemini vurgular. TensorFlow'dan sonra Keras şu anda en çok alıntı yapılan ikinci sinir ağı API'sidir.

Keras, kullanıcı dostu, modüler, genişletmesi kolay ve Python ile kullanılmak üzere oluşturuldu. API'ler "makineler için değil, insanlar için tasarlanmıştır" ve "bilişsel yükü azaltmak için en iyi uygulamaları takip eder."

Sinirsel katman, maliyet işlevi, optimize edici, başlatma şeması, etkinleştirme işlevi ve düzenleme şeması, Keras'taki bağımsız modüllerdir ve yeni bir model oluşturmak için birleştirilebilirler. Yeni modüllerin yeni sınıflar ve işlevler olarak eklenmesi kolaydır. Model, ayrı bir model yapılandırma dosyası yerine Python kodunda tanımlanmıştır.

Keras'ı kullanmanın en büyük nedeni, esas olarak kullanıcı dostu ilkeler olmak üzere yol gösterici tasarım ilkelerinden kaynaklanmaktadır. Öğrenmesi kolay ve basitleştiren model oluşturmanın yanı sıra, Keras ayrıca geniş bir benimseme avantajına sahiptir, çok çeşitli üretim dağıtım seçeneklerini destekler, birden çok GPU ve dağıtılmış eğitim için güçlü destek sağlar ve Google, Microsoft, Amazon, Apple ve Nvidia tarafından desteklenir , Uber vb.

--Martin Heller

14. PyTorch

PyTorch, Python'da güçlü GPU hızlandırması ile tensörler ve dinamik sinir ağları oluşturmak için bir kitaplıktır. Şu anda TensorFlow ve Keras'tan sonra en çok alıntı yapılan üçüncü sinir ağı çerçevesidir. Dinamik sinir ağları, yinelemeden yinelemeye değişebilir, örneğin PyTorch modelinin, doğruluğunu ve çok yönlülüğünü geliştirmek için eğitim sırasında gizli katmanları eklemesine ve kaldırmasına izin verir. PyTorch, grafikleri her yineleme adımında anında yeniden oluşturur.

PyTorch, hızı en üst düzeye çıkarmak için Intel MKL, Nvidia cuDNN ve Nvidia NCCL gibi hızlandırma kitaplıklarını entegre eder. Çekirdek CPU ve GPU tensörü ve sinir ağı arka ucu-TH (Torch), THC (Torch Cuda), THNN (Torch Sinir Ağı) ve THCUNN (Torch Cuda Sinir Ağı) C99 API ile bağımsız kitaplıklar olarak yazılmıştır. Aynı zamanda, PyTorch, Python monolitik bir C ++ çerçevesine bağlı değildir - PyTorch'un amacı, Python ile derinlemesine entegre olmak ve diğer Python kitaplıklarının kullanımına izin vermektir.

PyTorch, değiştiğinde bir tensörün anlık görüntüsünü alabilir. Çerçeve, kaydedilen her tensörün gradyanını, o nokta ile önceki tensör arasındaki farka bakarak kestirir. "Otomatik yükseltme" olarak bilinen bu, renk geçişinin hesaplanmasını üç kata kadar hızlandırabilir. En dik iniş optimize edicinin eğime dayandığı göz önüne alındığında, tüm eğitim sürecini üç kat hızlandırabilir. TensorFlow aynı işleve sahiptir.

PyTorch esas olarak Facebook tarafından desteklenmektedir, ancak diğer sponsorlar ve katkıda bulunanlar arasında Twitter, Salesforce ve Microsoft bulunmaktadır. Microsoft, PyTorch'un Torch ve Caffe'den devraldığı işlevselliği artırmak için kendi CNTK çerçevesinden türetilen teknolojiye katkıda bulunmuştur.

--Martin Heller

15. Horovod

Horovod, Uber'de oluşturulan TensorFlow, Keras ve PyTorch için dağıtılmış bir eğitim çerçevesidir. Horovod'un amacı, dağıtılmış derin öğrenmeyi hızlı ve kullanımı kolay hale getirmektir. Horovod, Baidu'nun TensorFlow halkasını azaltma algoritması taslağını uygulamasına dayanmaktadır.

Uber, başlangıçta Dağıtılmış TensorFlow'u bir parametre sunucusuyla kullanmayı denedi. Mühendisler, MPI modelinin çok daha basit olduğunu ve daha az kod değişikliği gerektirdiğini keşfettiler. Uber, Horovod sisteminin yapay zeka modellerini TensorFlow'un geleneksel dağıtımından yaklaşık iki kat daha hızlı eğitebileceğini iddia ediyor.

Horovod, mesajları düğümler arasında iletmek için Açık MPI (veya diğer MPI uygulamasını) kullanırken, Nvidia NCCL yüksek düzeyde optimize edilmiş bir halka azaltma sürümü kullanıyor. Horovod, Inception-v3 ve ResNet-101'de% 90 genişletme verimliliği ve 512 adede kadar Nvidia Pascal GPU'da VGG-16 genişletme verimliliğinin% 68'i elde etti.

Aralık 2018'de Uber, Linux Foundation'ın LF Deep Learning Foundation'ın desteğiyle açık kaynaklı yapay zeka yazılımı için Horovod projesini açtığını duyurdu.

--Martin Heller

16, XGBoost

XGBoost (eXtreme Gradient Boosting), Python, R, Java, Julia ve diğer programlama dilleri için dağıtılmış gradyan artırmayı uygulayan açık kaynaklı bir makine öğrenimi kitaplığıdır. Temel proje kodu C ++ ile yazılmıştır.

XGBoost, birçok veri bilimi problemini hızlı ve doğru bir şekilde çözebilen paralel bir ağaç geliştirme algoritması sağlar. Aynı kod tek bir makinede ve dağıtılmış ortamda (Hadoop, MPI, Spark, vb.) Çalışır. Dağıtılmış sürüm, milyarlarca örnekten daha büyük sorunları çözmek için ölçeklendirilebilir.

XGBoost, bazı Kaggle yarışmalarını kazanarak veri bilimi dünyasında ünlü oldu. Washington Üniversitesi'ndeki bir araştırma projesinden kaynaklandı. Tianqi Chen ve Carlos Guestrin tarafından yazılan 2016 XGBoost makalesi, gradyan ağacı geliştirme algoritmasını ve önbelleğe duyarlı ön getirme ve seyreklik farkındalığı gibi XGBoost'a eklenen iyileştirmeleri açıklıyor. Bu makale ayrıca XGBoost'un performansını Scikit-learn ve R.gbm'de sınıflandırma için yaygın olarak kullanılan diğer iki tam açgözlü ağaçla karşılaştırır ve XGBoost'u pGBRT (Parallel Gradient Boosting Regression Tree) üzerinde sıralama problemlerini öğrenmek için test eder.

--Martin Heller

17. H2O Sürücüsüz AI

Ham verileri tahmine dayalı analize dönüştürürken, H2O Sürücüsüz Yapay Zeka, otomasyon basitliğiyle herkesi geride bırakır. En iyi uygulama korkulukları ve yol işaretleri, yapay zeka olmayan uzmanları, gizli kalıpları keşfetmek için denetimli ve denetimsiz makine öğrenimini kullanarak keşif yolunda yönlendirir.

Veri sağlar ve bağımlı değişkenleri izole edersiniz.H2O'nun yerel algoritması özellik mühendisliğini, model seçimini, eğitimi ve optimizasyonu tamamlayabilir.

Bu sihir değil, yine de veri setinizi ve çıktıyı yorumlama yeteneğini anlamak istiyorsunuz, ancak H2O'nun görselleştirme araçları ve net açıklamalar, iş ekipleri, BT ve veri bilimcileri arasındaki anlayışı anlamada uzun bir yol kat ediyor.

Veri bilimcileri ve geliştiricileri, Python ve R. Jupyter not defterlerini, model parametrelerini iyileştirmek ve işlevler oluşturmak için üretim için makine öğrenimi ardışık düzen kodlarını dışa aktarmak için kullanabilir. İster yerel ister bulutta olsun, H2O, HDFS, Amazon S3 veya Azure Data Lake'ten veri çıkarmak için mevcut büyük veri altyapınızla (Hadoop veya Spark gibi) kullanılabilir ve almak için Nvidia GPU işleme seçeneğine tıklayın. Daha yüksek hız.

H2O, 2018'de en önemlisi doğal dil işleme, zaman serisi tahmini ve gradyan artırma olmak üzere birkaç büyük güncelleme başlattı. Görsel karar ağacı artık, tahminin "nasıl" olduğunu anlamak için kullanıcıları adım adım grafiksel olarak yönlendiriyor - örneğin, bir sigorta talebinin neden dolandırıcılık olarak işaretlendiğini açıklığa kavuşturmak için. H2O, algoritmaları doğrudan Amazon ve Microsoft Cloud üzerinden sağlamaya bile başladı.

H2O sürücüsüz AI, veri mühendislerinin sokaklara çıkmasına veya her gelişmiş makine öğrenimi sorununu çözmesine izin vermez. Ancak, yapay zekayı sıfırdan oluşturmaya basitleştirilmiş bir alternatif sunarak şirketlerin daha tahmine dayalı ve reaktif hale gelmesi için gereken süreyi azaltır.

--James R. Borck

Orijinal adres:

https://www.infoworld.com/article/3336072/application-development/infoworlds-2019-technology-of-the-year-award-winners.html

Kadın bilim adamları 55 yıldır Nobel Fizik Ödülü'nü kazandılar! Three Kingdoms lazer fizikçileri bu yılki Nobel Ödülünü kazandı
önceki
Tmall Genie X1'in resmi lansmanından önce arkasındaki ses aktörleri hakkında bir hikaye getirdik.
Sonraki
Bu bulut bilişim şirketi SD-WAN, şirketler denizaşırı ülkelere gittiğinde beni korkutuyor mu? !
Geçtiğimiz 10 yılda Barselona, Valensiya'dan insanları satın almak için 144 milyon euro harcadı
Çağdaş Şiir · Yüzler (13) Zheng Chouyu (1933-)
Amerika Birleşik Devletleri ve Japonya'dan iki kanser immünoterapi bilimcisi, 2018 Nobel Fizyoloji veya Tıp Ödülü'nü kazandı
Liu Dawei'nin çevrimiçi alışveriş simülasyonu silah davası yeniden yargılamayı ve cezayı memnuniyetle karşılıyor.
Küçük bir ülke hayalinden bahsetmek Lüksemburg, uzayda konuşma hakkına hakim olmaya çalışan 3 uzay şirketini kendine çekiyor
Sichuan genç Liu Dawei, 24 simüle silahın çevrimiçi alışverişi nedeniyle süresiz olarak yeniden yargılanmaya mahkum edildi
Ant Financial, İngiliz ödeme şirketi Tencent'i satın alabilir ve Lenovo, "Smart Lenovo Browser" ı başlatmak için işbirliği yapar
Tencent, endüstriyel internete girerek bu sabah üçüncü stratejik yükseltmesini duyurdu
25 Aralık | Kapağı biliyorum
Huajia, süt otu buketlerini hemen geri çağırdı ve bir gecede satış bilgilerini sildi
Bin aramadan sonra dışarı çıkın! 12306 biletleri yayınlamaya hazır Chengya Demiryolunun bu Cuma resmi olarak açılması bekleniyor
To Top