Tam metin 2754 kelime ve beklenen öğrenme süresi 11 dakikadır
Kaynak: unsplash
Tıpkı Michelin yemekleri yapmak gibi, düzenli bir mutfağa sahip olmak önemlidir, ancak köklü makine öğrenimi (ML) uygulamaları gibi çok fazla seçeneğe sahip olmak gerçekten can sıkıcıdır.
Bu nedenle, editör profesyonel projeler sunmak, fikirleri ve alternatifleri paylaşmak ve hızlı bir anket yapmak için kullanılabilecek bazı araçları tanıtmaya odaklanacaktır. Araçlarla ilgili herhangi bir tartışma her zaman sonsuz seçenekler sağlayabilir, ancak aşağıdakiler en kullanışlı ve basit olacaktır.
Elbette, daha iyi seçenekleriniz varsa, yorum alanında Xiaoxin'e söylemekten memnuniyet duyarız.
(Sorumluluk reddi: Bu gönderi imzalanmamış ve sponsorlu değildir. Editör, veri bilimi ve makine öğrenimi terimlerini birbirinin yerine kullanır.)
"Mükemmel makine öğrenimi uygulamaları nasıl oluşturulur?"
Veri bilimcileri, dönüşüm arayan profesyoneller ve ekip yöneticileri ile iletişim sürecinde bu sorun birçok kez çeşitli şekillerde ortaya çıkmıştır.
Profesyonel bir veri bilimi projesi sunmak pek çok yönü içerir.Aslında mutfakta yemek pişirmeye çok benzer: hammaddeler (veriler), tarifler (tasarım), pişirme süreci (benzersiz yöntem) ve son olarak gerçek mutfak (araçlar).
Bu makale, tam yığın makine öğrenimi uygulamalarının tasarımında, geliştirilmesinde ve dağıtımında en yararlı araçlara odaklanarak editörün "mutfağını" aşmaktadır - bu çözümler sistemle entegre edilebilir veya bir üretim ortamında kullanıcılara hizmet edebilir.
Bu en iyi zaman. Google'da "makine öğrenimi araçları" veya danışmanları ararsanız, aşağıdaki bilgileri alabilirsiniz:
2019 verileri yapay zeka panoraması | Kaynak: GIPHY
Çok fazla alet edinebilirsiniz ve kombinasyon olasılıkları sonsuzdur Bu durdurulamaz ama aynı zamanda kafa karıştırıcıdır. Onu daraltmanız gerekiyor. Ancak, mükemmel kurulumun hala mevcut olmadığı ve kullanıcının ihtiyaçlarına ve kısıtlamalarına bağlı olduğu unutulmamalıdır. Kısacası, en uygun olan en iyisidir.
Editörün öncelik listesi aşağıdaki gibidir (belirli bir sıra olmadan):
· Bedava
· Mühendislik araştırmadan daha önemlidir
· Öğrenmesi ve yüklemesi kolay
· İş tamamlanabildiği sürece
· İyi test edilmiş (uygulama düzeyinde araç olgunluğu)
· Startup'larda veya büyük işletmelerde büyük veya küçük projelerde kullanılır
Not: Python% 99 oranında kullanıyorum. Bu nedenle, bu makalede önerilen araçlar ya mükemmel bir şekilde Python'a uyarlanmıştır ya da yerel olarak Python'a sahiptir. Bunları diğer programlama dillerinde (R veya Java gibi) test etmedim.
Kaynak: unsplash
PostgreSQL
Bu, ölçeklenebilirlik ve teknik standart uyumluluğu ile ücretsiz ve açık kaynaklı bir ilişkisel veritabanı yönetim sistemidir (RDBMS). Tek bir makine, bir veri ambarı veya birden çok eşzamanlı kullanıcısı olan bir web hizmeti dahil olmak üzere çeşitli iş yüklerini işlemek için tasarlanmıştır.
Resim kaynağı: medium.com
Alternatifler: MySQL, SAS, IBM, DB2, Oracle, MongoDB, Cloudera, GCP, AWS, Azure
Ardışık düzen araçları, geliştirme hızı ve kalitesi için kritik öneme sahiptir. Bu aracın amacı, minimum insan müdahalesiyle hızla yineleme yapmaktır. Düzenleyicinin iyi çalışan bir kurulum öğreticisi var. Daha fazla ayrıntı için lütfen makaleme bakın - 12 Saatlik Makine Öğrenimi Yarışması. "Tembel" olmak istiyorsanız, mümkün olan en kısa sürede denemelisiniz ~
(Https://towardsdatascience.com/build-full-stack-ml-12-hours-50c310fedd51)
Xiaobian'ın işi: 12 saatlik makine öğrenimi mücadelesi
Pytest
Mimari, küçük testler yazmayı kolaylaştırır, ancak uygulamalar ve kitaplıklar için karmaşık işlevsel testleri desteklemek için genişletilmesi gerekir. Manuel test için çok zaman kazandırır.Kodu her değiştirdiğinizde bir şeyi test etmeniz gerekirse, Pytest'in otomasyonu size yardımcı olacaktır.
Alternatif: Unittest
GitHub
Git'in dağıtılmış sürüm kontrolü ve kaynak kodu yönetimi (SCM) işlevlerini sağlar ve elbette kendi işlevlerini de içerir. Özellik istekleri, hata izleme, görev yönetimi ve wiki'ler gibi her proje için erişim kontrolü ve çoklu işbirliği işlevleri sağlar.
Alternatifler: BitBucket, GitLab, DVC
PyCharm Community Edition
Bu, özellikle Python dili için bilgisayar programlamada kullanılan entegre bir geliştirme ortamıdır (IDE). Çek şirketi JetBrains tarafından geliştirilmiştir ve kod analizi, grafik hata ayıklayıcı, entegre birim test cihazı ve sürüm kontrol sistemi (VCS) entegrasyonu sağlar ve web geliştirme için Django ve veri bilimi araştırma ve geliştirme için Anaconda kullanımını destekler.
Alternatifler: Atom, Sublime
Heroku (yalnızca kullanıcının web barındırmaya ihtiyacı varsa)
Kaynak: heroku.com
Hizmet olarak platform (PaaS), geliştiricilerin bulutta uygulamaları tamamen oluşturmasına, çalıştırmasına ve çalıştırmasına olanak tanır. Otomatik dağıtım, CircleCI ve Github ile entegrasyondan sonra da etkinleştirilebilir.
Alternatifler: Google App Engine, AWS Elastic Compute Cloud, diğerleri
Streamlit (yalnızca kullanıcının etkileşimli bir UI'ye ihtiyacı olduğunda)
Streamlit, makine öğrenimi ve veri bilimi ekipleri için açık kaynaklı bir uygulama çerçevesidir. Son yıllarda en sevdiğim araçlardan biridir. Editörün 12 saatlik makine yarışmasında, onu nasıl kullanacağınızı ve bu bölümdeki diğer araçları film ve simülasyon uygulamaları oluşturmak için görebilirsiniz.
Alternatifler: Flask, Django, Tableau
CircleCi
CircleCI, sürekli bir entegrasyon ve dağıtım aracıdır. Projenizi Github'a gönderdiğinizde, bu araç otomatik bir test iş akışı oluşturmak için uzak docker kullanabilir. PyTest aracılığıyla test senaryoları oluşturmadan gönderilen tüm projeler, Circle CI tarafından reddedilecektir. Bu, özellikle büyük ekiplerle çalışırken önemli olan kod kalitesini sağlayabilir.
Alternatifler: Travis CI, Jenkins, Github Action
Streamlit (Tekrar tanışın ~)
Artık Jupyter Defterini kaçırmayın!
Eskiden editörler için tercih edilen araç olan Jupyter, farklı veri ve modelleme süreçleriyle veri keşfi, analizi ve denemesi için kullanılabilir. Ancak aşağıdaki sinir bozucu durumun kaç kez olduğunu hatırlayamıyorum:
· Hata ayıklamak için elimden geleni yaptım, ancak sonunda kodu sıfırdan çalıştırmayı unuttuğumu fark ettim; Streamlit bu sorunu çözebilir.
· Veri hattını yeniden çalıştırmak her zaman biraz zaman alır; Steamlit önbelleği bu sorunu çözebilir.
· Kodun yeniden yazılması veya Jupyter'den çalıştırılabilir bir dosyaya dönüştürülmesi gerekir ve yeniden test için zaman harcanır; Streamlit, sorunu çözmek için hızlı bir yol sağlar.
Bu nedenle, erken keşif için Streamlit'e geçmek ve son ön uca hizmet etmek benim için doğal. Aşağıda, düzenleyici tarafından yaygın olarak kullanılan ekran ayarları verilmiştir. Solda PyCharmIDE ve sağda sonuç görselleştirmesi var.
IDE + Streamlit gerçek zamanlı güncelleme | Kaynak: rewardsdatascience
Alternatifler: Jupyter Notebook, Anaconda, Spyder, Microsoft Excel (ciddi yüz!)
Genel amaçlı bıçaklar ve özel bıçaklar gibi yemek ve kesme yöntemine göre uygun bıçakları seçmelisiniz.
Dikkat et! Suşi için özel bıçak daha güzel olsa da özel bıçakla suşiyi parçalara ayırmak uzun zaman alacaktır. İşi yapmak için doğru aracı seçin.
Sklearn (yaygın makine öğrenimi kullanım örnekleri)
Python'da genel makine öğrenimi için tercih edilen çerçeve bu, yeterli.
Resim kaynağı: scikit-learn.org
Alternatifler: yok, nokta.
Open AI Gym (Reinforcement Learning Use Case)
Bu, pekiştirmeli öğrenme algoritmalarını geliştirmek ve karşılaştırmak için bir araç takımıdır ve bir API ve görsel bir ortam sağlar. Birçok topluluk, bu alan için araçlar oluşturmak için çabalıyor, ancak pek çok eksiksiz kurulum paketi mevcut değil.
Alternatif: Birçok küçük proje, ancak bakım çalışmalarının çoğu Gym kadar iyi değil.
PyTorch (Derin Öğrenme Kullanım Durumu)
Bu, Torch kitaplığına dayalı açık kaynaklı bir makine öğrenimi kitaplığıdır. Derin öğrenme, bu kütüphanenin odak noktasıdır ve esas olarak bilgisayarla görme ve doğal dil işleme gibi uygulamalarda kullanılır. Torch, esas olarak Facebook'un Yapay Zeka Araştırma Laboratuvarı (FAIR) tarafından geliştirilmiştir. Son zamanlarda, Open AI gibi birçok tanınmış yapay zeka araştırma kurumu, standart araçları olarak PyTorch'u kullandı.
Alternatifler: Tensorflow, Keras, Fast.ai
Atlas
Bu, veri bilimcilerinin bazı özetleri denemelerine ve sonuçları web tabanlı bir panoda görüntülemelerine olanak tanıyan ücretsiz bir araçtır.
Atlas programı | Kaynak: atlas.dessa.com
(Sorumluluk reddi: Editör, Altas'ı kuran Dessa için çalışıyor.)
Alternatifler: ML Flow, Ağırlıklar ve Önyargılar, Veri Robotu, SageMaker, Comet, Domino
Küçük bir anket: Doğru aracı ararken sizi en çok ne rahatsız ediyor? Yorum bölümüne gidin ve görüşleriniz hakkında konuşun ~
Mükemmel bir kurulum yok, her şey ihtiyaçlarınıza ve kısıtlamalarınıza bağlı. Aşağıdaki resim, hangi araçların mevcut olduğu ve birlikte nasıl çalıştıkları hakkında başka bir fikir göstermektedir.
Sergey Karayev'in 2019 tam yığın derin öğrenmedeki konuşması
Mini meydan okuma
Kaynak: unsplash
Bu araçlar hakkında bilgi edinmenin en iyi yolu, bir proje bulmak ve çalışmaya başlamaktır. Bu araçları mevcut projenize dahil edebilir veya 12 saatlik bir makine öğrenimi yarışmasına katılabilirsiniz.
Senin hakkında iyimserim ~
Yorum Beğen Takip Et
Yapay zeka öğrenme ve geliştirmenin kuru mallarını paylaşalım
Yeniden yazdırıyorsanız, lütfen arka planda bir mesaj bırakın ve yeniden yazdırma şartnamelerine uyun