გამრავლების გაზრდისა და სხვების უფლებამოსილების გაძლიერების მიზნით გამოქვეყნებული სამუშაოს შექმნის მიზნით, ჩვენ წარმოგიდგენთ ML კოდის სისრულის სიას ML კოდების სისრულის ჩამონათვალი აფასებს კოდების მაღაზიას მასში მოცემული სკრიპტებისა და არტეფაქტების საფუძველზე.
შესავალი
გასულ წელს, ჯოელ პინომ გამოაქვეყნა რეპროდუქციულობის ჩამონათვალი, რათა ხელი შეუწყოს რეპროდუქციული კვლევის ჩატარებას OA– ს მთავარ კონფერენციებზე (NeurIPS, ICML,). საკონტროლო სიაში განთავსებული ნივთების უმეტესობა ფოკუსირებულია ნაშრომის კომპონენტებზე. ამ ჩამონათვალის ერთ-ერთი პუნქტია "მიუთითოთ წყარო კოდის ბმული", მაგრამ გარდა ამისა, გაკეთდა რამდენიმე რეკომენდაცია.
საუკეთესო პრაქტიკა შეჯამებულია ML კოდექსის სისრულის სიაში, რომელიც ახლა ოფიციალური NeurIPS 2020 კოდის გაგზავნის პროცესის ნაწილია და რეცენზენტებისთვის გამოსაყენებლად ხელმისაწვდომი იქნება.
ML სისრულის ჩამონათვალი
M კოდების სისრულის ჩამონათვალი ამოწმებს კოდების მაღაზიას:
- დამოკიდებულებები - აქვს საცავში დამოკიდებულების ინფორმაცია ან ინსტრუქციები, თუ როგორ უნდა მოვაწყოთ გარემო?
- ტრენინგის სცენარები - შეიცავს საცავში დოკუმენტში აღწერილი მოდელების მომზადების / მორგების ხერხს?
- შეფასების სცენარები - შეიცავს საცავში სკრიპტს გაწვრთნილი მოდელის (მოდელების) მუშაობის გამოსათვლელად ან ექსპერიმენტების ჩატარებაზე?
- წინასწარი მომზადებული მოდელები - უზრუნველყოფს საცავი უფასო წვდომას წინასწარ მომზადებული მოდელის წონებზე?
- შედეგები - შეიცავს საცავი ძირითადი შედეგების ცხრილს / გრაფიკს და სკრიპტს ამ შედეგების რეპროდუცირებისთვის?
თითოეულ საცავის მიღება შეუძლია 0 – დან (არ აქვს) 5 – დან (აქვს ყველა) ტკიპა. დამატებითი ინფორმაცია თითოეული ნივთის კრიტერიუმების შესახებ შეგიძლიათ იხილოთ Github- ის საცავში.
რა მტკიცებულებაა იმისა, რომ საკონტროლო სიის ერთეულები ხელს უწყობენ უფრო სასარგებლო საცავებს?
საზოგადოება ზოგადად იყენებს GitHub ვარსკვლავებს, როგორც საცავის სარგებლობის მარიონეტს. ამიტომ, ML– ს სისრულის სიაში უფრო მაღალი ქულის მქონე რეპოზე, სავარაუდოდ, GitHub– ის მეტი ვარსკვლავიც იქნება. ამ ჰიპოთეზის შესამოწმებლად, NeurIPS 2019 დოკუმენტებში ოფიციალური განსახორციელებლად წარდგენილი იყო 884 GitHub რეპო. ამ 884 რეპოს 25% ქვეგანყოფილება შემთხვევით იქნა შერჩეული და ხელით შემოწმდა ML– ს სისრულის სიაში. მათ დააჯგუფეს ეს ნიმუში NeurIPS 2019 GitHub რეპოს, ML კოდის სისრულის ჩამონათვალში არსებული ტკიპის რაოდენობის მიხედვით და თითოეულ ჯგუფში მონიშნეს GitHub საშუალო ვარსკვლავები. შედეგი ქვემოთ მოცემულია:
NeurIPS 2019 რეპოს 0 ველით ჰქონდა 1.5 ვარსკვლავიანი ვარსკვლავი GitHub- ზე. ამის საპირისპიროდ, რეპოზების 5 ველიანი მედიანა 196.5 GitHub ვარსკვლავის იყო. რეპოების მხოლოდ 9% -ს ჰქონდა 5 ტკიპა, ხოლო რეპოების უმეტესობას (70%) ჰქონდა 3 ან ნაკლები. ჩატარდა Wilcoxon რანგის ჯამური ტესტი და აღმოჩნდა, რომ 5 ტკიპის კლასში ვარსკვლავების რაოდენობა მნიშვნელოვნად (p.value <1e-4) უფრო მაღალია, ვიდრე ყველა სხვა კლასში, გარდა 5-ისა 4-ის (სადაც p.value არის საზღვარი). 0,015 საათზე). ამ ფიგურის მონაცემები და კოდი შეგიძლიათ ნახოთ Github- ის საცავში.
იმის გასამოწმებლად, არის თუ არა ეს ურთიერთობა უფრო ფართო მასშტაბით, შეიქმნა სკრიპტი README საცავისა და მასთან დაკავშირებული კოდის სიიდან გამოთვლის ავტომატიზირებისთვის. შემდეგ ჩვენ გადავაანალიზეთ 884 NeurIPS 2019 საცავების მთელი კომპლექტი, ისევე როგორც 8926 კოდის საცავების უფრო ფართო ნაკრები 2019 წელს გამოქვეყნებული ყველა ML სტატიისთვის. ორივე შემთხვევაში, სპეციალისტებმა მიიღეს თვისებრივად იდენტური შედეგი, როდესაც საშუალო ვარსკვლავები მონოტონურად იზრდებიან ტკიპებიდან სტატისტიკურად მნიშვნელოვანი გზით (p.value <1e-4). დაბოლოს, ძლიერი წრფივი რეგრესიის გამოყენებით, ჩვენ აღმოვაჩინეთ, რომ წინასწარ მომზადებულმა მოდელებმა და შედეგებმა უდიდესი დადებითი გავლენა მოახდინეს GitHub ვარსკვლავებზე.
ანალიტიკოსების მიერ ეს მიიჩნევა სასარგებლო მტკიცებულებად, რომ მკვლევარების წახალისება, რომ შეიტანონ ML სისრულის ჩამონათვალით გათვალისწინებული ყველა კომპონენტი, გამოიწვევს უფრო სასარგებლო საცავებს, ხოლო საკონტროლო სიაში მიღებული ქულა მიუთითებს უკეთესი ხარისხის წარდგენებზე.
ამჟამად, ექსპერტები არ ამტკიცებენ, რომ შემოთავაზებული 5 ჩამონათვალი არის ერთადერთი ან თუნდაც ყველაზე მნიშვნელოვანი ფაქტორი საცავის პოპულარობისთვის. სხვა ფაქტორებმა შეიძლება გავლენა მოახდინოს პოპულარობაზე, როგორიცაა: სამეცნიერო წვლილის ზომა, მარკეტინგი (მაგ. ბლოგის შეტყობინებები და Twitter შეტყობინებები), დოკუმენტაცია (ყოვლისმომცველი README, გაკვეთილები და API დოკუმენტაცია), კოდის ხარისხი და წინა ნამუშევრები.
NeurIPS 2019 საცავების რამდენიმე მაგალითი 5 ველით:
ექსპერტები აცნობიერებენ, რომ მიუხედავად იმისა, რომ ისინი შეეცადნენ ჩამონათვალი მაქსიმალურად ზოგადი გახადონ, ის შეიძლება სრულად არ იქნას გამოყენებული ყველა ტიპის დოკუმენტებზე, მაგალითად, თეორიული ან დოკუმენტების ნაკრებზე. ამასთან, მაშინაც კი, თუ სტატიის ძირითადი მიზანი მონაცემთა ნაკრების წარმოდგენაა, მას მაინც შეუძლია ისარგებლოს საბაზისო მოდელების, ტრენინგის სცენარების, შეფასების სცენარების და შედეგების გამოქვეყნებით.
დაიწყეთ გამოყენება
იმისათვის, რომ მიმომხილველებმა და მომხმარებლებმა უფრო ადვილად გაიგონ რა არის საცავში და ექსპერტებმა სწორად შეაფასონ იგი, მოცემულია საუკეთესო პრაქტიკის კრებული README.md ფაილების წერის, დამოკიდებულებების განსაზღვრისა და წინასწარ მომზადებული მოდელების, მონაცემთა ნაკრებისა და შედეგების გამოსაცემად. გირჩევთ, მკაფიოდ განსაზღვროთ ეს 5 ელემენტი თქვენს საცავში და დააკავშიროთ ისინი ნებისმიერ გარე რესურსთან, როგორიცაა დოკუმენტები და ლიდერბორდები, თქვენი მომხმარებლებისთვის მეტი კონტექსტისა და სიწმინდის უზრუნველსაყოფად. ეს არის ოფიციალური სახელმძღვანელო მითითებები NeurIPS 2020- ზე კოდის წარსადგენად.