Избор на най-добрата рамка за AutoML

Сравняване на главата на четири автоматични рамки за машинно обучение на 87 набора от данни.

Адитя Баладжи и Александър Алън

Въведение

Автоматичното машинно обучение (AutoML) може да доведе AI до обсега на много по-голяма аудитория. Той предоставя набор от инструменти, които да помогнат на екипите за научни данни с различни нива на опит да ускорят процеса на научна информация. Ето защо AutoML се представя като решение за демократизиране на ИИ. Дори и с опитен екип може да можете да използвате AutoML, за да извлечете максимума от ограничените ресурси. Въпреки че съществуват собствени решения, които предоставят машинно обучение като услуга, струва си да разгледаме текущите решения с отворен код, които отговарят на тази нужда.

В предишното ни парче изследвахме пейзажа на AutoML и подчертахме някои пакети, които могат да работят за екипи за научни данни. В това парче ще разгледаме споменатите четири „full pipeline“ решения: auto_ml, auto-sklearn, TPOT и AutoML решение на H2O.

Силните и слабите страни на всеки пакет са подробно описани в нашия пълен документ „Бенчмаркинг на автоматичните рамки за машинно обучение“. Документът съдържа и допълнителна информация за методологията и някои допълнителни резултати.

методология

За да се осигури точна и справедлива оценка, от OpenML, онлайн хранилище на стандартни набори от данни за машинно обучение, изложени чрез REST API по последователен начин, са избрани подбор от 87 отворени набора от данни, 30 регресия и 57 класификация. Разделянето на наборите от данни осигурява широка извадка от таблични набори от данни, които могат да бъдат намерени при проблем с бизнес машинно обучение. Много внимание беше обърнато на избора на набори от данни, за да се предотврати замърсяването на групите за валидиране. Например, auto-sklearn използва топъл старт, който вече е обучен на набор от OpenML набори от данни. Набори от данни като тези бяха избегнати.

Всяка от четирите рамки, auto_ml, auto-sklearn, TPOT и H2O бяха тествани с техните предложени параметри, в 10 случайни семена на набора от данни. F1 оценка (претеглена) и средна квадратна грешка бяха избрани като критерии за оценка съответно за класификация и регресия.

Използва се ограничение от 3 часа, за да се ограничи всеки метод на AutoML до период от време, който отразява първоначалното проучвателно търсене, извършено от много екипи за научни данни. Това води до приблизително изчислено време на изчисление от 10 440 часа. В резултат на това решихме да оценим моделите, използвайки пакетната услуга на AWS, за да се справим с паралелизацията на тази задача, използвайки C4 изчислени оптимизирани EC2 случаи, разпределяйки 2 vCPU и 4 GB памет на цикъл.

Използвахме най-добрите усилия, за да гарантираме, че всички тестове са завършени и че всички тестове имаха най-малко 3 шанса да успеят в рамките на 3-часовия срок. В някои случаи изчислителните среди на AWS Batch и управлението на ресурси, базирани на докер, доведоха до непредсказуемо поведение. За да преодолеем това, ние разработихме персонализиран „гол метал“ подход за репликиране на AWS Batch на EC2 случаи с по-фин контрол върху управлението на процесовата памет. По-конкретно, мениджърът на памет на докер изпращаше сигнал за убийство към процеса на сравнителен анализ, ако количеството памет, използвано от процеса, надвишава количеството, определено от Batch. Този твърд лимит не може да бъде променен без значително увеличаване на размера на екземпляра на изпълнение. Използвайки същите изчислителни ограничения, ние тествахме тиражите, които не успяха при тези много специфични условия, в нашата персонализирана „гола метал“ реализация.

Също така по време на процеса на изпълнение на тези тестове, ние отстранихме няколко грешки в рамките с отворен код, които са описани в нашата пълна книга. След тези корекции, нито един от наборите от данни не се е провалил. Тези откази обикновено се скриват от ежедневната употреба, но се проявяват по време на мащаба на провежданото тестване.

Резултати

Фигура 1 описва многообразието от избраните ни набори от данни. Можете да видите, че класификацията обикновено е двоична и броя на регресионните редове е сравнително еднакъв, докато броя на редовете на класификация е наклонен към наборите от данни около 1000 реда. Броят на характеристиките както за регресионните, така и за класификационните центрове около 10 характеристики с класификация, наклонена леко към 100. Ние вярваме, че тази група данни е представителна извадка от общи проблеми в областта на научните данни, с които биха се сблъскали много учени с данни.

Фигура 1: Характеристиките на суровия набор от данни се разделят между класификационните и регресионните проблеми

На някои рамки се изчерпа времето за конкретни семена и рамки. Отпаднаха общо 29 комбинации от стартиране (набор от данни и семена). Тези комбинации от пускане бяха пуснати във всички рамки, за да се поддържа сравнимостта на отделните рамки. Този процес доведе до отпадане на общо 132 точки от данни (29 * 4), което е около ~ 3% (116/3480 работи).

Фигура 2: Средна производителност на рамката за класификационни набори от данни

Фигура 3: Средна производителност на рамката от регресионни набори от данни

Всяка рамка беше оценена както на регресията, така и на класификационните набори от данни, споменати по-горе. Тяхната ефективност беше изчислена чрез сумиране на претеглената F1 оценка и MSE резултати в наборите от данни по рамки. Всеки показател е стандартизиран на база данни за всеки набор от данни и е мащабиран от 0 до 1. В случая на MSE тези стойности са обърнати, което означава, че по-високите стойности представляват по-добри резултати, така че графиките да останат последователни между класификацията и регресионните визуализации. Средната стойност за 10-те оценени семена представлява ефективността на рамката в конкретен набор от данни. На фигури 2 и 3 по-тъмните нюанси показват по-големи разлики в производителността.

Фигура 4: Изпълнение на рамката във всички набори от данни за класификация

Фигура 5: Изпълнение на рамката във всички регресионни набори от данни

Използвахме boxplots, за да демонстрираме представяне на рамката тук на фигури 4 и 5. Прорезите в диаграмите на кутиите представляват интервал на доверие на медианите. Средните и стандартните отклонения в таблица 1 показват точните разлики.

Таблица 1: Прецизни резултати на рамката

Заключение и тълкуване

Като цяло всяка визуализация и интерпретация представя една и съща картина. Auto-sklearn изпълнява най-доброто от класификационните набори от данни, а TPOT представя най-доброто за регресионните набори от данни. Важно е да се отбележи, че количествените резултати от този експеримент имат изключително големи разлики и като такъв е по-важно да се мисли за състоянието на кодовата база, продължаващото развитие, набора от функции и целите на тези индивидуални рамки, а не на самостоятелно изпълнение. Препоръчваме както TPOT, така и автосклеарн поради тези фактори и поради взаимодействието ни с всяка от техните общности през времето, в което работихме върху този анализ.

Всеки от пакетите (Auto-sklearn, TPOT, H2O, Auto_ml), пълната хартия и прилагането на сравнителния анализ са свързани тук.