Veri bilimi ve yapay zeka için önerilen geliştirme kitaplıkları: Python için 7 ve R için 7

Leifeng.com AI teknolojisi inceleme basını: Bu makalenin yazarı Favio Vázquez, bir veri bilimci, fizikçi ve bilgisayar mühendisi. 2018'in başından beri "Data Science and Artificial Intelligence Weekly Digest: Python and R" makaleleri yazıyor ve yayınlıyor. Bu, veri bilimcilere bir giriş niteliğindedir ve gerçekten yardımcı olabilir Çeşitli görevleri daha iyi gerçekleştirmek için en iyi geliştirme kitaplıklarına, açık kaynak projelerine, kurulum paketlerine ve araçlara sahiptirler. Yılın sonunda Favio Vázquez, okuyucuların ihtiyaçlarına yanıt olarak 7 büyük Python / R dil geliştirme kitaplığını da listeledi. Leifeng.com AI Technology Review aşağıdaki gibi derlenmiştir.

Önsöz

Beni takip ediyorsanız, bu yıl "Weekly Digest for Data Science and AI: Python and R" serisini yazmaya başladığımı bileceksiniz. Veri bilimcilerimizin çeşitli görevleri daha iyi tamamlamasına yardımcı olabilecek en iyi geliştirme kitaplıklarını, açık kaynak projelerini, kurulum paketlerini ve araçları listeledim.

Heartbeat'teki (https://heartbeat.fritz.ai/) çok sayıda kullanıcı bu özetleri destekledi ve ayrıca bu yıl çalışma şeklimizi gerçekten değiştiren veya iyileştiren gelişmeleri bu özetler arasından seçmemi önerdiler. Kitaplık "en iyi" geliştirme kitaplıklarının bir listesini oluşturmak için.

Önceki özeti okumak isterseniz aşağıdaki adrese gidebilirsiniz:

https://www.getrevue.co/profile/favio

Sorumluluk Reddi: Bu liste, kişisel makalemde incelediğim geliştirme kitaplıkları ve kurulum paketlerine dayanmaktadır.Bir dereceye kadar programcılar, veri bilimcileri ve yapay zeka meraklıları için geçerlidir. Bazıları 2018'den önce oluşturulmuştur, ancak Hala trendlerse, kullanım için de düşünülebilirler.

R dili için TOP 7 geliştirme kütüphanesi

7. AdaNet öğrenme güvencesi sağlayan hızlı ve esnek bir AutoML

Açık kaynak adresi: https://github.com/tensorflow/adanet

AdaNet, AdaNet algoritmasını (ilgili belgeleri görüntülemek için tıklayın: AdaNet: Yapay Sinir Ağlarının Uyarlanabilir Yapısal Öğrenimi, https://arxiv.org/abs/1607.01097) ve eğitmek için kullanabilen hafif ve ölçeklenebilir bir TensorFlow AutoML çerçevesidir. Kendi kendine uygulanabilir bir sinir ağı kurun. AdaNet, etkili sinir ağları tasarlamanın doğasında olan karmaşıklığı azaltmak için birden çok öğrenme alt ağını entegre eder.

Bu kurulum paketi, optimum sinir ağı mimarisini seçmenize, kendi kendine uygulanabilir algoritmaları uygulamanıza ve alt ağların bir entegrasyonu olarak sinir mimarisini öğrenmenize yardımcı olabilir.

Bu paketi kullanmadan önce, TensorFlow'u anlamanız gerekir, çünkü TensorFlow Estimator arayüzünü uygular. Daha sonra eğitim, değerlendirme, tahmin ve hizmet dışa aktarımını kapsayarak makine öğrenimi programlamasını basitleştirmeye yardımcı olabilir.

Bir sinir ağları topluluğu oluşturabilir ve ardından bu geliştirme kitaplığı eğitim hedeflerinizi optimize etmenize yardımcı olabilir - bu topluluk modelinin eğitim seti ve görünmeyen verilere genelleme yeteneği arasında performans göstermesine izin verin. Bir denge kurun.

6. TPOT Makine öğrenimi iş akışlarını optimize etmek için genetik programlamayı kullanan otomatik Python makine öğrenimi aracı

Açık kaynak adresi: https://github.com/EpistasisLab/tpot

Önceki bir özette (https://heartbeat.fritz.ai/weekly-digest-for-data-science-and-ai-python-and-r-volume-6-830ed997cf07), Python hakkında konuştum Auto-Keras alanında otomatik makine öğrenimi için iyi bir geliştirme kütüphanesi. Şimdi otomatik makine öğrenimi için çok ilginç başka bir araçtan bahsetmek istiyorum.

Bu araca Ağaç Tabanlı Ardışık Düzen Optimizasyon Aracı (TPOT) denir ve harika bir geliştirme kitaplığıdır. Temelde, makine öğrenimi iş akışını optimize etmek için genetik programlamayı kullanan bir Python otomatik makine öğrenimi aracıdır.

TPOT, özellik seçimi, model seçimi ve özellik oluşturma gibi çok sayıda görevi otomatikleştirebilir. Neyse ki, bir Python makine öğrencisiyseniz, TPOT tarafından üretilen tüm kod size aşinadır - çünkü Scikit-öğrenme üzerine kurulmuştur.

Yaptığı şey, binlerce olası iş akışını akıllıca keşfederek veriler için en iyisini bulmak ve böylece makine öğreniminin en sıkıcı kısmını otomatik hale getirmektir ve bunun için en iyi iş akışını bulacaktır. Python kodu oluşturun ve ardından iş akışını düzeltebilirsiniz.

Aşağıdaki gibi çalışır:

TPOT hakkında daha fazla ayrıntı için, diğer yazarlar tarafından yazılan bu makale serisini okuyabilirsiniz:

  • Matthew Mayo, https://www.kdnuggets.com/2018/01/managing-machine-learning-workflows-scikit-learn-pipelines-part-4.html

  • Randy Olson, https://www.kdnuggets.com/2016/05/tpot-python-automating-data-science.html

5. SHAP - makine öğrenimi modellerinin çıktılarını yorumlamak için birleşik bir yöntem

Açık kaynak adresi: https://github.com/slundberg/shap

Makine öğrenimi modellerini yorumlamak genellikle kolay değildir, ancak bir dizi iş uygulaması için çok önemlidir. Neyse ki, makine öğrenimi modellerini açıklamaya yardımcı olabilecek bazı iyi geliştirme kitaplıkları var. Birçok uygulamada, modelde girdi değişkenlerinin nasıl kullanılacağını ve girdi değişkenlerinin son model tahminlerini nasıl etkilediğini anlamamız, anlamamız veya doğrulamamız gerekir.

SHAP (SHapley Additive Explanations), makine öğrenimi modellerinin çıktısını yorumlamak için birleşik bir yöntemdir. Oyun teorisi ile yerel yorumu birleştirir, önceki yöntemlerden bazılarını birleştirir ve ardından yoruma dayalı olarak mümkün olan tek tutarlı ve yerel olarak doğru olanı temsil eder Toplamsal karakteristik özellik yöntemi.

Aşağıdaki adresten SHAP hakkında daha fazla bilgi edinebilirsiniz:

https://github.com/slundberg/shap#sample-notebooks

4. Optimus - Python ve Spark kullanılarak kolayca üretilebilen çevik bir veri bilimi iş akışı

Açık kaynak adresi: https://github.com/ironmussa/Optimus

Açıkçası, geliştirme kütüphanesi Optimus benim kendi çocuğum gibi. Şimdiye kadar bu kütüphaneyi geliştirmek için uzun zaman harcadım ve size Optimus'un ikinci versiyonunu göstermekten çok mutluyum.

Optimus V2, veri temizlemeyi basitleştirmek için özel olarak geliştirilmiştir.API tasarımı acemiler için çok basittir ve daha önce pandaları kullanan geliştiriciler buna aşina olacaktır. Optimus, .rows ve .cols nitelikleri ekleyerek Spark DataFrame'in işlevselliğini genişletir.

Optimus'un arka ucu Spark, TensorFlow ve Keras'ı kullanabildiğinden, Optimus'u verileri temizlemek, hazırlamak ve analiz etmek, yapılandırma dosyaları ve grafikler oluşturmak ve makine öğrenimi ve derin öğrenmeyi çalıştırmak için kullanabilirsiniz. .

Bizim için Optimus'un kullanımı çok kolay. Keras ve Spark tarafından bazı dplyr özellikleriyle birbirine bağlanan pandaların gelişmiş bir versiyonu gibidir. Optimus ile oluşturduğunuz kod yerel makinenizde çalışabilir ve yalnızca komutu değiştirdiğiniz sürece kod yerel kümede veya bulutta çalışabilir.

Veri bilimi döngüsünün her adımına yardımcı olmak için Optimus için pek çok ilginç özellik geliştirdim.

Veri bilimi çevik yöntemleri için destekleyici bir geliştirme kitaplığı olarak Optimus'un mükemmel olduğu söylenebilir, çünkü veri işleme sürecindeki hemen hemen her adım için yardım sağlayabilir ve diğer geliştirme kitaplıkları ve araçlarıyla kolayca bağlanabilir.

Agile yöntemleri hakkında daha fazla bilgi edinmek isterseniz aşağıdaki adrese gidebilirsiniz:

https://www.business-science.io/business/2018/08/21/agile-business-science-problem-framework.html

3. spaCy - Python ve Cython ile birlikte kullanılan endüstriyel düzeyde bir doğal dil işleme geliştirme kitaplığı

Proje adresi: https://spacy.io/

spaCy, geliştiricilerin gerçek ürün geliştirme, gerçek fikir toplama ve diğer pratik çalışmaları tamamlamalarına yardımcı olmak için tasarlanmıştır ve zamandan büyük ölçüde tasarruf etmenize yardımcı olacaktır. Geliştirme kitaplığının kurulumu kolaydır ve API'si çok basit ve etkilidir. SpaCy'yi doğal dil işleme yolundaki "Ruby" ile karşılaştırmayı seviyoruz.

spaCy, derin öğrenmeye metin hazırlamanın en iyi yoludur. Python'un iyi AI ekosistemindeki TensorFlow, PyTorch, Scikit-learn, Gensim ve diğer geliştirme kitaplıkları ile sorunsuz bir şekilde birlikte çalışabilir. SpaCy'yi, çeşitli NLP problemleri için dil açısından karmaşık istatistiksel modelleri kolayca oluşturmak için kullanabilirsiniz.

2. jupytext-Jupyter not defterleri Markdown belgeleri, Julia, Python veya R komut dosyalarına eşdeğerdir

Açık kaynak adresi: https://github.com/mwouts/jupytext

Benim için jupytext, yılın en iyi kurulum paketlerinden biri ve veri bilimcilerimizin çalışmaları için çok önemli. Temel olarak, hepimiz Jupyter gibi dizüstü bilgisayarlar üzerinde çalışıyoruz, ancak projenin daha temel bölümlerini tamamlamak için PyCharm gibi IDE'leri de kullanıyoruz.

Şimdi iyi haber şu ki, jupytext kullanırken, favori IDE'nizde taslak oluşturmanıza ve test etmenize izin veren sıradan komut dosyalarının bir bakışta Jupyter not defterleri formatında açılacak olmasıdır. Not defterini Jupyter'de çalıştırın, çıktı üretebilir, .ipynb gösterimi ile birleştirebilir ve araştırma çalışmanızı normal bir komut dosyası veya geleneksel bir Jupyter not defterinin çıktı biçiminde kaydedebilir ve paylaşabilirsiniz.

Aşağıdaki animasyon, bu paketle yapılabilecek çeşitli şeylerin iş akışını gösterir:

1.Charify - veri bilimcilerinin grafikler oluşturmasını kolaylaştıran bir Python geliştirme kitaplığı

Açık kaynak adresi: https://github.com/chartify/chartify

Benim için Chartify, bu yıl Python odaklı geliştirme kütüphaneleri arasında bir numaralı geliştirme kütüphanesi. Python ile ilgili bir işle uğraşıyorsanız, uygun grafikler oluşturmaya çalışmak için çok zaman harcamanız gerekebilir. Neyse ki, Seaborn gibi işimizi kolaylaştırabilecek geliştirme kitaplıklarımız var, ancak problemleri, çizelgelerinin dinamik olmaması. Ondan sonra, Bokeh gibi harika bir geliştirme kitaplığımız vardı, ancak onunla etkileşimli grafikler oluşturmak zahmetli bir şeydi. Veri bilimi için Bokeh ve etkileşimli grafikler hakkında daha fazla bilgi edinmek istiyorsanız, William Koehrsen'in şu mükemmel makalelerini okuyabilirsiniz:

  • https://towardsdatascience.com/data-visualization-with-bokeh-in-python-part-one-getting-started-a11655a467d4

  • https://towardsdatascience.com/data-visualization-with-bokeh-in-python-part-ii-interactions-a4cf994e2512

  • https://towardsdatascience.com/data-visualization-with-bokeh-in-python-part-ii-interactions-a4cf994e2512

Chartify, Bokeh'in üstünde oluşturuldu, ancak etkileşimli grafikler oluşturmak için Bokeh kullanmaktan çok daha basit. Chartify yazarının kendi girişinden:

Neden Chartify kullanmalı?

  • Tutarlı giriş veri formatı: Grafikteki verileri işlemeye başlamak için veri formatını dönüştürmek daha az zaman alır Tüm grafik fonksiyonları tutarlı ve organize bir giriş veri formatı kullanır.

  • Akıllı varsayılan stil: Birkaç kullanıcı tanımlı işlemle güzel grafikler oluşturabilirsiniz.

  • Basit API: API'yi olabildiğince sezgisel ve öğrenmesi kolay hale getirmeye çalıştık.

  • Esneklik: Chartify, Bokeh'in üstünde oluşturulur, bu nedenle daha fazla kontrol işlemine ihtiyacınız varsa, Bokeh'in API'sine güvenebilirsiniz.

R dili için TOP 7 geliştirme kütüphanesi

7.infer Dostça düzenli istatistiksel çıkarımlar için R dili kurulum paketi

Açık kaynak adresi: https://github.com/tidymodels/infer

Çıkarım veya istatistiksel çıkarım, potansiyel olasılık dağılımlarının doğasını anlamak için veri analizini kullanma sürecidir. Çıkarım yükleme paketinin amacı, düzenli tasarım çerçevesiyle tutarlı ifade istatistikleri sözdizimini kullanarak istatistiksel çıkarımlar yapmaktır.

Çıkarım hakkında daha fazla bilgi edinmek isterseniz aşağıdaki adrese gidebilirsiniz:

https://infer.netlify.com/index.html

6. kapıcı - R dilinde veri temizleme için basit bir araç

Açık kaynak adresi: https://github.com/sfirke/janitor

Veri temizliği benimle yakından ilgili bir alan. Uzun süredir Iron-AI'da (https://iron-ai.com/) ekibimle Python dili Optimus için bir araç geliştirmek üzere çalışıyorum, buraya tıklayabilirsiniz (https: // hioptimus. com.tr /) Optimus hakkında daha fazla bilgi edinin.

Ancak, şimdi size gösterdiğim araç, basit işlevlerle veri temizliği için çok güçlü bir araçtır-kapıcı.

Üç ana işlevi vardır:

  • Data.frame'in sütun adlarını mükemmel şekilde biçimlendirin

  • Optimize edilmiş bir tablo gibi bir, iki veya üç değişkenli bir frekans tablosu oluşturun ve biçimlendirin; ve

  • Bazı yinelenen kayıtları izole edin

Aynı zamanda, tidyverse için bir kurulum paketidir (https://github.com/tidyverse/tidyverse/blob/master/vignettes/manifesto.Rmd). Özellikle% ile ilgilidir > % Ardışık düzen birlikte yürütüldüğünde iyi performans gösterir ve readr (https://github.com/tidyverse/readr) ve readxl (https://github.com/tidyverse/readxl) olmak üzere iki paket aracılığıyla sunulan verileri temizler Optimize edildi.

5. ggplot2 kullanarak grafikler oluşturmak için Esquisse-RStudio eklentisi

Açık kaynak adresi: https://github.com/dreamRs/esquisse

Bu eklenti, ggplot2 kurulum paketini kullanarak verileri görselleştirerek verileri etkileşimli olarak aramanıza olanak tanır. Çubuk grafikler, eğriler, dağılım grafikleri ve histogramlar çizmenize ve ardından grafiği çıkarmanıza veya grafiği oluşturmak için kodu almanıza olanak tanır.

4.DataExplorer - Otomatik veri alma ve işleme aracı

Açık kaynak adresi: https://github.com/boxuancui/DataExplorer

Keşifsel Veri Analizi (EDA, https://en.wikipedia.org/wiki/Exploratory_data_analysis), veri analizi / tahmin modelleri oluşturmada önemli bir aşamadır. Bu süreçte, analist / modelci önce verilere göz atacak, ardından ilgili bazı varsayımlarda bulunacak ve bir sonraki adıma karar verecektir. Bununla birlikte, EDA süreci bazen zahmetli olabilir. R dili yükleme paketi olan DataExplorer, çoğu veri işleme ve görselleştirmeyi otomatikleştirmeyi hedefler, böylece kullanıcılar verileri araştırmaya ve fikirlerini ayıklamaya odaklanabilir.

DataExplorer hakkında daha fazla bilgi edinmek isterseniz, görüntülemek için aşağıdaki adrese gidebilirsiniz:

https://boxuancui.github.io/DataExplorer/articles/dataexplorer-intro.html

3. Apache Spark için Sparklyr-R arayüzü

Açık kaynak adresi: https://github.com/rstudio/sparklyr

Sparklyr aşağıdaki işlevlere sahiptir:

  • R ve Spark arasındaki bağlantıyı anlayın ( Sparklyr kurulum paketi, eksiksiz bir dplyr (https://github.com/tidyverse/dplyr) arka ucu sağlar.

  • Spark veri kümelerini filtreleyin ve toplayın ve ardından bunları analiz ve görselleştirme için R'ye getirin.

  • R'de dağıtılmış makine öğrenimi algoritmalarını yürütmek için Spark'ın MLlib makine öğrenimi geliştirme kitaplığını ( kullanın.

  • Spark API'yi çağırmak için bir uzantı ( oluşturun ve Spark kurulum paketi için bir arayüz sağlayın.

Sparklyr hakkında daha fazla bilgi edinmek isterseniz aşağıdaki adrese gidebilirsiniz:

https://spark.rstudio.com/mlib/

2. Yeniden üretilebilir ve yüksek performanslı bilgi işlem için Drake-R dil merkezli iş akışı araç seti

Açık kaynak adresi: https://github.com/ropensci/drake

Drake programlama projesi

Ekli metin: (Drake nasıl bir programcıdır: Gerçek programlamayı sevmiyorum, ancak başkalarıyla bu değişkenin adı hakkında tartışarak 30 dakika geçirebilirim)

Şaka yapıyorum ama bu kurulum paketinin adı gerçekten Drake!

Drake harika bir paket. Daha sonra ayrıntılı bir makale yayınlayacağım, bizi izlemeye devam edin!

Drake, veri odaklı görevlerde kullanılan genel bir iş akışı yönetim aracıdır. Ara veri hedeflerinin bağımlılıkları değiştiğinde bu ara veri hedeflerini yeniden oluşturabilir, aynı zamanda sonuçlar açıklandığında bu işi atlayacaktır.

Ek olarak, her eksiksiz çalışma veri yakalama ile başlamaz ve tam bir iş akışı aslında bunların yeniden üretilebilir olduğunu gösterebilir.

Diğer görevleri ve analizleri kolayca tespit etmek için yeniden üretilebilirlik, iyi yönetim ve izleme deneyleri gereklidir. Veri bilimi alanında Drake çok önemlidir.Aşağıdaki adresten araç seti hakkında daha fazla bilgi edinebilirsiniz:

Zach Scott:

  • https://towardsdatascience.com/data-sciences-reproducibility-crisis-b87792d88513

  • https://towardsdatascience.com/toward-reproducibility-balancing-privacy-and-publication-77fee2366eee

Ve yazdığım bir makale:

https://towardsdatascience.com/manage-your-machine-learning-lifecycle-with-mlflow-part-1-a7252c859f72

Drake size otomatik olarak yardımcı olabilir:

1. Önceden değiştirilen parçaları işlemeye başlayın;

2. Kalan işi atlayın.

1. DALEX - Tanımlayıcı mAchine Öğrenme Açıklamaları

Açık kaynak adresi: https://github.com/pbiecek/DALEX

Makine öğrenimi modellerini yorumlamak genellikle kolay değildir, ancak bir dizi iş uygulaması için çok önemlidir. Neyse ki, makine öğrenimi modellerini açıklamaya yardımcı olabilecek bazı iyi geliştirme kitaplıkları var.

https://github.com/thomasp85/lime

(Bu arada, bazen ggplot kullanarak basit görselleştirme, modeli daha iyi açıklamanıza yardımcı olabilir. Matthew Mayo makalesinde iyi bir giriş yaptı: https: //www.kdnuggets. com / 2017/11 / yorumlama-makine-öğrenimi-modelleri-genel bakış.html)

Birçok uygulamada, modelde girdi değişkenlerinin nasıl kullanılacağını ve girdi değişkenlerinin son model tahminlerini nasıl etkilediğini anlamamız, anlamamız veya doğrulamamız gerekir. DALEX, karmaşık modellerin nasıl çalıştığını açıklamaya yardımcı olan bir dizi araçtır.

aracılığıyla: https://heartbeat.fritz.ai/top-7-libraries-and-packages-of-the-year-for-data-science-and-ai-python-r-6b7cca2bf000?gi=27d5c4b5f4ef, Lei Feng.com AI teknolojisi inceleme derlemesi.

Tüm dünyada bahar çiçekleri, bu eserler olmadan nasıl seyahat edebilirsiniz
önceki
"Adalet Ligi" her zaman bir şeylerin eksik olduğunu hisseder!
Sonraki
Yeni nesil BMW X3'ün analizi, yerli üretimi bekliyor / varoluş hissini yeniden kazanıyor
Sinsi yeni bir yaratım daha yaptı, çünkü Kai'Sa ezilmişti ve kadın gangsterinin adı garanti değil mi?
Böyle her filmin doğuşu sosyal ilerlemenin bir işaretidir!
İlk olarak Riccardo Tisci x Nike ortak isimlerinin yeni dalgasına bakın, başlangıç listenize hangi modeller girecek?
Çiçeklerin tadını çıkarma zamanıBaskı kutusunun baharı "uçan kar" ve dağlardaki erik çiçekleri sevecen
Savaş tanrıçasının güzel bir fotoğrafı var ve Nan Bo'er bir sözle Yushuang'ı rahatsız ediyor ve karalanmış mı?
"Çılgın Canavar": "Kurdu Öldürmek" ekibi hala standartların üzerinde
Adidas altın nadir NMD R1 maruz kaldı mı? ! Böylesine kızgın bir floresan hissine katlanabilir misin?
Çin'deki bu yepyeni araba markaları, sizi sayanı biliyorsunuz!
UZI spor yıldızı sosyal etki listesine girerek üçüncü sırada yer aldı, netizenler güldü ve banyo ustasını mı çağırdı?
Lenovo Z5 Pro oyun, kamera değerlendirmesi
"Doğu Ekspresinde Cinayet" in yeni ve eski versiyonları arasında 10 karşılaştırma!
To Top