ღრმა სწავლის ჩარჩო შედგება ინტერფეისების, ბიბლიოთეკებისა და ხელსაწყოების კომბინაციისგან, რათა განისაზღვროს და მოამზადოს მანქანათმცოდნეობის მოდელები სწრაფად და ზუსტად.
იმის გამო, რომ ღრმა სწავლება იყენებს დიდი რაოდენობით არასტრუქტურირებულ, არატექსტუალურ მონაცემებს, თქვენ გჭირდებათ ჩარჩო, რომელიც აკონტროლებს ურთიერთქმედებას „ფენებს“ შორის და აჩქარებს მოდელის განვითარებას შეყვანის მონაცემებიდან სწავლით და ავტონომიური გადაწყვეტილებების მიღების გზით.
თუ გაინტერესებთ ღრმა სწავლის შესახებ სწავლა 2021 წელს, განიხილეთ ქვემოთ მითითებული ერთ-ერთი ჩარჩოს გამოყენება. არ დაგავიწყდეთ აირჩიოთ ის, რომელიც დაგეხმარებათ თქვენი მიზნებისა და ხედვის მიღწევაში.
1. TensorFlow
ღრმა სწავლაზე საუბრისას, TensorFlow ხშირად ნახსენები პირველი ჩარჩოა. ძალიან პოპულარულია, ამ ჩარჩოს იყენებს არა მხოლოდ Google - კომპანია, რომელიც პასუხისმგებელია მის შექმნაზე, არამედ სხვა კომპანიები, როგორიცაა Dropbox, eBay, Airbnb, Nvidia და მრავალი სხვა.
TensorFlow შეიძლება გამოყენებულ იქნას მაღალი და დაბალი დონის API-ების შესაქმნელად, რაც საშუალებას გაძლევთ გაუშვათ აპლიკაციები თითქმის ნებისმიერ მოწყობილობაზე. მიუხედავად იმისა, რომ პითონი მისი ძირითადი ენაა, Tensoflow-ის ინტერფეისის წვდომა და კონტროლი შესაძლებელია სხვა პროგრამირების ენების გამოყენებით, როგორიცაა C++, Java, Julia და JavaScript.
როგორც ღია წყარო, TensorFlow გაძლევთ საშუალებას განახორციელოთ რამდენიმე ინტეგრაცია სხვა API-ებთან და მიიღოთ სწრაფი მხარდაჭერა და განახლებები საზოგადოებისგან. მისი დამოკიდებულება გამოთვლებისთვის „სტატიკური გრაფიკებზე“ საშუალებას გაძლევთ გააკეთოთ დაუყოვნებელი გამოთვლები ან შეინახოთ ოპერაციები სხვა დროს წვდომისთვის. ეს მიზეზები, რომლებიც დაემატა შესაძლებლობას, რომ თქვენ შეგიძლიათ „უყუროთ“ თქვენი ნერვული ქსელის განვითარებას TensorBoard-ის მეშვეობით, აქცევს TensorFlow-ს ყველაზე პოპულარულ ჩარჩოდ ღრმა სწავლისთვის.
ძირითადი თვისებები
- ღია
- მოქნილობა
- სწრაფი გამართვა
2. პიტორჩი
PyTorch არის ფეისბუქის მიერ შემუშავებული ჩარჩო მისი სერვისების მუშაობის მხარდასაჭერად. მას შემდეგ, რაც გახდა ღია წყარო, ამ ფრეიმორს იყენებენ სხვა კომპანიები, გარდა Facebook-ისა, როგორიცაა Salesforce და Udacity.
ეს ჩარჩო მუშაობს დინამიურად განახლებულ გრაფიკებზე, რაც საშუალებას გაძლევთ შეცვალოთ თქვენი მონაცემთა ნაკრების არქიტექტურაში მისი დამუშავებისას. PyTorch-ით უფრო მარტივია ნერვული ქსელის შემუშავება და მომზადება, ღრმა სწავლის გამოცდილების გარეშეც კი.
როგორც ღია წყარო და დაფუძნებულია Python-ზე, შეგიძლიათ გააკეთოთ მარტივი და სწრაფი ინტეგრაცია PyTorch-ში. ეს ასევე მარტივი ჩარჩოა სწავლის, გამოყენებისა და გამართვისთვის. თუ თქვენ გაქვთ შეკითხვები, შეგიძლიათ დაეყრდნოთ დიდ მხარდაჭერას და განახლებებს ორივე საზოგადოებისგან - Python საზოგადოებისა და PyTorch საზოგადოებისგან.
ძირითადი თვისებები
- ადვილად სწავლობენ
- მხარს უჭერს GPU და CPU
- API-ების მდიდარი ნაკრები ბიბლიოთეკების გაფართოებისთვის
3. Apache MX Net
მაღალი მასშტაბურობის, მაღალი წარმადობის, პრობლემების სწრაფი მოგვარებისა და GPU გაფართოებული მხარდაჭერის გამო, ეს ჩარჩო შეიქმნა Apache-ს მიერ მსხვილ ინდუსტრიულ პროექტებში გამოსაყენებლად.
MXNet მოიცავს Gluon ინტერფეისს, რომელიც საშუალებას აძლევს ყველა დონის დეველოპერებს დაიწყეთ ღრმა სწავლით ღრუბელზე, ზღვრულ მოწყობილობებზე და მობილურ აპებზე. Gluon კოდის მხოლოდ რამდენიმე სტრიქონში შეგიძლიათ შექმნათ ხაზოვანი რეგრესია, კონვოლუციური ქსელები და განმეორებადი LSTM-ები ობიექტის გამოვლენა, მეტყველების ამოცნობა, რეკომენდაცია და პერსონალიზაცია.
MXNet შეიძლება გამოყენებულ იქნას სხვადასხვა მოწყობილობებზე და მხარდაჭერილია რამდენიმე პროგრამირების ენები როგორიცაა Java, R, JavaScript, Scala და Go. მიუხედავად იმისა, რომ მის საზოგადოებაში მომხმარებლებისა და წევრების რაოდენობა დაბალია, MXNet-ს აქვს კარგად დაწერილი დოკუმენტაცია და ზრდის დიდი პოტენციალი, განსაკუთრებით ახლა, როდესაც ამაზონმა აირჩია ეს ჩარჩო, როგორც პირველადი ინსტრუმენტი AWS-ზე მანქანური სწავლისთვის.
ძირითადი თვისებები
- 8 ენობრივი საკინძები
- განაწილებული ტრენინგი, მრავალ CPU და მრავალ GPU სისტემების მხარდაჭერა
- ჰიბრიდული წინა ნაწილი, რომელიც საშუალებას გაძლევთ გადახვიდეთ იმპერატიულ და სიმბოლურ რეჟიმებს შორის
4. Microsoft შემეცნებითი ინსტრუმენტარიუმი
თუ თქვენ ფიქრობთ აპლიკაციების ან სერვისების შემუშავებაზე, რომლებიც მუშაობს Azure-ზე (Microsoft ღრუბლოვანი სერვისები), Microsoft Cognitive Toolkit არის ჩარჩო, რომელიც უნდა აირჩიოთ თქვენი ღრმა სწავლის პროექტებისთვის. ეს არის ღია წყარო და მხარს უჭერს პროგრამირების ენებს, როგორიცაა Python, C++, C#, Java და სხვა. ეს ჩარჩო შექმნილია იმისთვის, რომ „ადამიანის ტვინივით იფიქროს“, ასე რომ, მას შეუძლია დიდი რაოდენობით არასტრუქტურირებული მონაცემების დამუშავება, სწრაფ ტრენინგს და ინტუიციურ არქიტექტურას.
ამ ჩარჩოს არჩევით - იგივე Skype-ის, Xbox-ისა და Cortana-ს მიღმა - თქვენ მიიღებთ კარგ შესრულებას თქვენი აპლიკაციებიდან, მასშტაბურობასა და მარტივ ინტეგრაციას Azure-თან. თუმცა, როდესაც შევადარებთ TensorFlow-ს ან PyTorch-ს, მის საზოგადოებაში წევრების რაოდენობა და მხარდაჭერა მცირდება.
შემდეგი ვიდეო გთავაზობთ სრულ შესავალს და განაცხადის მაგალითებს:
ძირითადი თვისებები
- დოკუმენტაციის გარკვევა
- Microsoft-ის გუნდის მხარდაჭერა
- გრაფიკის პირდაპირი ვიზუალიზაცია
5. კერას
PyTorch-ის მსგავსად, Keras არის პითონზე დაფუძნებული ბიბლიოთეკა მონაცემთა ინტენსიური პროექტებისთვის. keras API მუშაობს მაღალ დონეზე და საშუალებას აძლევს ინტეგრირებას დაბალი დონის API-ებთან, როგორიცაა TensorFlow, Theano და Microsoft Cognitive Toolkit.
კერას გამოყენების ზოგიერთი უპირატესობა არის მისი სწავლის სიმარტივე - ეს არის რეკომენდირებული ჩარჩო ღრმა სწავლის დამწყებთათვის; მისი განლაგების სიჩქარე; აქვს დიდი მხარდაჭერა პითონის საზოგადოებისა და სხვა ფრეიმორმების თემებიდან, რომლებთანაც ის ინტეგრირებულია.
Keras შეიცავს სხვადასხვა დანერგვას ნერვული ქსელების სამშენებლო ბლოკები როგორიცაა შრეები, ობიექტური ფუნქციები, აქტივაციის ფუნქციები და მათემატიკური ოპტიმიზატორები. მისი კოდი მასპინძლობს GitHub-ზე და არის ფორუმები და Slack მხარდაჭერის არხი. სტანდარტის მხარდაჭერის გარდა ნეირონული ქსელები, Keras გთავაზობთ მხარდაჭერას კონვოლუციური ნერვული ქსელებისა და განმეორებადი ნერვული ქსელებისთვის.
კერასი იძლევა საშუალებას ღრმა სწავლის მოდელები გენერირებული სმარტფონებზე iOS-ზე და Android-ზე, Java ვირტუალურ მანქანაზე ან ვებზე. ის ასევე იძლევა ღრმა სწავლების მოდელების განაწილებული ტრენინგის გამოყენების საშუალებას გრაფიკული დამუშავების ერთეულების (GPU) და ტენზორული დამუშავების ერთეულების (TPU) კლასტერებზე.
ძირითადი თვისებები
- წინასწარ მომზადებული მოდელები
- მრავალი backend მხარდაჭერა
- მოსახერხებელი და დიდი საზოგადოების მხარდაჭერა
6. Apple Core ML
Core ML შეიქმნა Apple-ის მიერ მისი ეკოსისტემის მხარდასაჭერად - IOS, Mac OS და iPad OS. მისი API მუშაობს დაბალ დონეზე, კარგად იყენებს CPU-ს და GPU-ს რესურსებს, რაც საშუალებას აძლევს შექმნილ მოდელებსა და აპლიკაციებს გააგრძელონ მუშაობა ინტერნეტის გარეშეც კი, რაც ამცირებს მოწყობილობის "მეხსიერების კვალს" და ენერგიის მოხმარებას.
Core ML ამას აკეთებს ზუსტად არ არის კიდევ ერთი მანქანათმცოდნეობის ბიბლიოთეკის შექმნით, რომელიც ოპტიმიზირებულია iphone/ipad-ებზე გასაშვებად. ამის ნაცვლად, Core ML უფრო ჰგავს შემდგენელს, რომელიც იღებს მოდელის სპეციფიკაციებს და გაწვრთნილ პარამეტრებს, რომლებიც გამოხატულია სხვა მანქანათმცოდნეობის პროგრამული უზრუნველყოფით და გარდაქმნის მას ფაილად, რომელიც გახდება რესურსი iOS აპისთვის. ეს კონვერტაცია Core ML მოდელზე ხდება აპლიკაციის შემუშავების დროს და არა რეალურ დროში, როგორც აპლიკაცია გამოიყენება, და ხელს უწყობს coremltools python ბიბლიოთეკას.
Core ML უზრუნველყოფს სწრაფ შესრულებას მარტივი ინტეგრაციით მანქანა სწავლის მოდელები აპლიკაციებში. იგი მხარს უჭერს ღრმა სწავლებას 30-ზე მეტი ტიპის ფენით, ასევე გადაწყვეტილების ხეებით, მხარდაჭერის ვექტორულ მანქანებთან და ხაზოვანი რეგრესიის მეთოდებთან, ეს ყველაფერი აგებულია დაბალი დონის ტექნოლოგიებზე, როგორიცაა Metal და Accelerate.
ძირითადი თვისებები
- მარტივი ინტეგრირება აპებში
- ადგილობრივი რესურსების ოპტიმალური გამოყენება, რომელიც არ საჭიროებს ინტერნეტს
- კონფიდენციალურობა: მონაცემები არ უნდა დატოვოს მოწყობილობა
7. ONNX
ბოლო ჩარჩო ჩვენს სიაში არის ONNX. ეს ჩარჩო წარმოიშვა Microsoft-ისა და Facebook-ის თანამშრომლობის შედეგად, რომლის მიზანი იყო მოდელების გადაცემისა და აშენების პროცესის გამარტივება სხვადასხვა ჩარჩოებს, ხელსაწყოებს, გაშვების დროებსა და შემდგენელებს შორის.
ONNX განსაზღვრავს ფაილის საერთო ტიპს, რომელიც შეიძლება იმუშაოს მრავალ პლატფორმაზე, ხოლო იყენებს დაბალი დონის API-ების უპირატესობებს, როგორიცაა Microsoft Cognitive Toolkit, MXNet, Caffe და (კონვერტორების გამოყენებით) Tensorflow და Core ML. ONNX-ის პრინციპი არის მოდელის მომზადება სტეკზე და მისი განხორციელება სხვა დასკვნებისა და პროგნოზების გამოყენებით.
LF AI Foundation, Linux Foundation-ის ქვეორგანიზაცია, არის ორგანიზაცია, რომელიც ეძღვნება ეკოსისტემის შექმნას მხარდასაჭერად. ღია ინოვაცია ხელოვნურ ინტელექტში (AI), მანქანათმცოდნეობაში (ML) და ღრმა სწავლაში (DL). მან დაამატა ONNX, როგორც სამაგისტრო დონის პროექტი 14 წლის 2019 ნოემბერს. ONNX-ის ეს ნაბიჯი LF AI Foundation-ის ქოლგის ქვეშ განიხილებოდა, როგორც მნიშვნელოვანი ეტაპი ONNX-ის, როგორც გამყიდველისთვის ნეიტრალური ღია ფორმატის სტანდარტის ჩამოყალიბებაში.
ONNX Model Zoo არის წინასწარ გაწვრთნილი მოდელების კოლექცია ღრმა სწავლაში, რომელიც ხელმისაწვდომია ONNX ფორმატში. თითოეული მოდელისთვის არის იუპიტერის ნოუთბუქები მოდელის მომზადებისთვის და მომზადებული მოდელით დასკვნის შესასრულებლად. ნოუთბუქები დაწერილია პითონში და შეიცავს ბმულებს სასწავლო მონაცემთა ნაკრები და მითითებები ორიგინალურ სამეცნიერო დოკუმენტზე, რომელიც აღწერს მოდელის არქიტექტურას.
ძირითადი თვისებები
- ჩარჩო თავსებადობა
- აპარატურის ოპტიმიზაცია
დასკვნა
ეს არის საუკეთესო ჩარჩოების შეჯამება ღრმა სწავლება. ამ მიზნით არსებობს რამდენიმე ჩარჩო, უფასო ან ფასიანი. იმისათვის, რომ აირჩიოთ საუკეთესო თქვენი პროექტისთვის, ჯერ იცოდეთ, რომელ პლატფორმაზე განავითარებთ თქვენს აპლიკაციას.
ზოგადი ჩარჩოები, როგორიცაა TensorFlow და Keras, საუკეთესო ვარიანტია დასაწყებად. მაგრამ თუ გჭირდებათ OS ან მოწყობილობის სპეციფიკური უპირატესობების გამოყენება, Core ML და Microsoft Cognitive Toolkit შეიძლება იყოს საუკეთესო ვარიანტები.
არსებობს სხვა ჩარჩოები, რომლებიც მიზნად ისახავს Android მოწყობილობებს, სხვა მანქანებს და კონკრეტულ მიზნებს, რომლებიც არ არის ნახსენები ამ სიაში. თუ ეს უკანასკნელი ჯგუფი გაინტერესებთ, გირჩევთ მოიძიოთ მათი ინფორმაცია Google-ში ან მანქანური სწავლების სხვა საიტებზე.
დატოვე პასუხი