Поиск нейронной архитектуры
Часть серии о |
Машинное обучение и интеллектуальный анализ данных |
---|
Поиск нейронной архитектуры ( NAS ) [1] [2] — это метод автоматизации проектирования искусственных нейронных сетей (ИНС), широко используемой модели в области машинного обучения . NAS использовался для проектирования сетей, которые не уступают по производительности архитектурам, созданным вручную, или превосходят их по производительности. [3] [4] Методы для NAS можно разделить на категории в зависимости от используемого пространства поиска, стратегии поиска и стратегии оценки производительности: [1]
- Пространство поиска определяет тип(ы) ИНС, которые можно спроектировать и оптимизировать.
- Стратегия поиска определяет подход, используемый для исследования пространства поиска.
- Стратегия оценки производительности оценивает производительность возможной ИНС на этапе ее проектирования (без ее построения и обучения).
NAS тесно связан с оптимизацией гиперпараметров. [5] и метаобучение [6] и является подразделом автоматизированного машинного обучения (AutoML). [7]
Обучение с подкреплением
[ редактировать ]Обучение с подкреплением (RL) может лежать в основе стратегии поиска NAS. Баррет Зоф и Куок Вьет Ле [3] применил NAS с RL, ориентированным на набор данных CIFAR-10 , и получил сетевую архитектуру, которая по точности конкурирует с лучшей архитектурой, спроектированной вручную, с коэффициентом ошибок 3,65, что на 0,09 процента лучше и в 1,05 раза быстрее, чем у соответствующей модели, разработанной вручную. В наборе данных Penn Treebank эта модель составила рекуррентную ячейку, которая превосходит LSTM , достигая недоумения тестового набора 62,4, что на 3,6 лучше, чем у предыдущей ведущей системы. В задаче моделирования языка символов PTB удалось достичь числа битов на символ 1,214. [3]
Изучение архитектуры модели непосредственно на большом наборе данных может оказаться длительным процессом. НАСНет [4] [8] решил эту проблему, перенеся строительный блок, предназначенный для небольшого набора данных, в более крупный набор данных. Проект был ограничен использованием двух типов сверточных ячеек для возврата карт объектов, которые выполняют две основные функции при свертке входной карты объектов: нормальные ячейки , которые возвращают карты одинакового размера (высоты и ширины), и ячейки сокращения , в которых возвращается возвращенная карта объектов. высота и ширина уменьшаются в два раза. Для ячейки сокращения первоначальная операция, применяемая к входным данным ячейки, использует шаг, равный двум (чтобы уменьшить высоту и ширину). [4] Изученный аспект проектирования включал в себя такие элементы, как то, какой нижний слой(и) каждый более высокий уровень использовал в качестве входных данных, преобразования, применяемые на этом уровне, и объединение нескольких выходных данных на каждом уровне. В изученном примере лучший сверточный слой (или «ячейка») был разработан для набора данных CIFAR-10, а затем применен к набору данных ImageNet путем складывания копий этой ячейки, каждая со своими собственными параметрами. Этот подход дал точность 82,7% для топ-1 и 96,2% для топ-5. Это превысило лучшие архитектуры, изобретенные человеком, при стоимости на 9 миллиардов FLOPS меньше — сокращение на 28%. Система продолжала превосходить альтернативу, разработанную вручную, на разных уровнях вычислений. Характеристики изображения, полученные в результате классификации изображений, можно перенести на другие задачи компьютерного зрения. Например, при обнаружении объектов обученные ячейки, интегрированные с платформой Faster-RCNN, улучшили производительность на 4,0% в наборе данных COCO . [4]
В так называемом эффективном поиске нейронной архитектуры (ENAS) контроллер обнаруживает архитектуры, обучаясь поиску оптимального подграфа в большом графе. Контроллер обучается с помощью градиента политики выбирать подграф, который максимизирует ожидаемое вознаграждение набора проверки. Модель, соответствующая подграфу, обучается минимизировать потери канонической перекрестной энтропии . Несколько дочерних моделей имеют общие параметры, ENAS требует меньше часов графического процессора, чем другие подходы, и в 1000 раз меньше, чем «стандартный» NAS. На CIFAR-10 конструкция ENAS достигла погрешности тестирования 2,89%, что сопоставимо с NASNet. На Penn Treebank конструкция ENAS достигла тестовой запутанности 55,8. [9]
Эволюция
[ редактировать ]Альтернативный подход к NAS основан на эволюционных алгоритмах , которые использовались несколькими группами. [10] [11] [12] [13] [14] [15] [16] Эволюционный алгоритм поиска нейронной архитектуры обычно выполняет следующую процедуру. [17] Сначала инициализируется пул, состоящий из различных архитектур-кандидатов, а также их оценок валидации (пригодности). На каждом этапе архитектуры в пуле кандидатов изменяются (например: свертка 3х3 вместо свертки 5х5). Затем новые архитектуры обучаются с нуля в течение нескольких эпох и получаются их оценки валидации. За этим следует замена архитектур с наименьшим количеством баллов в пуле кандидатов на более качественные и новые архитектуры. Эта процедура повторяется несколько раз, и, таким образом, пул кандидатов со временем уточняется. Мутации в контексте развития ИНС — это такие операции, как добавление или удаление слоя, которые включают изменение типа слоя (например, от свертки к объединению), изменение гиперпараметров слоя или изменение обучающих гиперпараметров. На CIFAR-10 и ImageNet эволюции и RL работали примерно одинаково, хотя оба немного превосходили случайный поиск . [13] [12]
Байесовская оптимизация
[ редактировать ]Байесовская оптимизация (BO), которая зарекомендовала себя как эффективный метод оптимизации гиперпараметров, также может быть применена к NAS. В этом контексте целевая функция сопоставляет архитектуру с ошибкой ее проверки после обучения в течение нескольких эпох. На каждой итерации BO использует суррогат для моделирования этой целевой функции на основе ранее полученных архитектур и ошибок их проверки. Затем выбирают следующую архитектуру для оценки путем максимизации функции приобретения, например ожидаемого улучшения, которая обеспечивает баланс между исследованием и эксплуатацией. Максимизация функции сбора данных и оценка целевой функции часто требуют больших вычислительных затрат для NAS и усложняют применение BO в этом контексте. Недавно БАНАНЫ [18] добился многообещающих результатов в этом направлении, представив высокопроизводительную реализацию BO, связанную с нейронным предсказателем.
Восхождение на холм
[ редактировать ]Другая группа использовала процедуру восхождения на холм , в которой применяются морфизмы сети, с последующими короткими прогонами оптимизации косинусного отжига. Этот подход дал конкурентоспособные результаты, потребовав ресурсов того же порядка, что и для обучения одной сети. Например, в CIFAR-10 метод спроектировал и обучил сеть с уровнем ошибок ниже 5% за 12 часов на одном графическом процессоре. [19]
Многоцелевой поиск
[ редактировать ]Хотя большинство подходов направлены исключительно на поиск архитектуры с максимальной производительностью прогнозирования, для большинства практических приложений актуальны другие цели, такие как потребление памяти, размер модели или время вывода (т. е. время, необходимое для получения прогноза). Из-за этого исследователи создали многокритериальный поиск. [16] [20]
ЛИМОНАД [16] — это эволюционный алгоритм, в котором принят ламаркизм для эффективной оптимизации множества целей. В каждом поколении создаются дочерние сети для улучшения границы Парето по отношению к текущей популяции ИНС.
Нейронный архитектор [20] заявлено как многоцелевое NAS на базе RL с учетом ресурсов и возможностью прогнозирования производительности. Встраивание сети кодирует существующую сеть в обучаемый вектор внедрения. На основе внедрения сеть контроллера генерирует преобразования целевой сети. Многоцелевая функция вознаграждения учитывает точность сети, вычислительные ресурсы и время обучения. Награда прогнозируется с помощью нескольких сетей моделирования производительности, которые предварительно обучаются или обучаются совместно с сетью контроллера. Сеть контроллера обучается с помощью градиента политики. После модификации полученная сеть-кандидат оценивается как сетью точности, так и сетью времени обучения. Результаты объединяются механизмом вознаграждения, который передает выходные данные обратно в сеть контроллера.
Одноразовые модели
[ редактировать ]RL или NAS на основе эволюции требуют тысяч графо-дней поиска/обучения для достижения самых современных результатов компьютерного зрения, как описано в документах NASNet, mNASNet и MobileNetV3. [4] [21] [22]
Чтобы снизить вычислительные затраты, многие современные методы NAS основаны на идее распределения веса. [23] [24] В этом подходе определяется одна сверхпараметризованная суперсеть (также известная как одноразовая модель). Суперсеть — это очень большой направленный ациклический граф (DAG), подграфы которого представляют собой различные нейронные сети-кандидаты. Таким образом, в суперсети веса распределяются между большим количеством различных подархитектур, имеющих общие ребра, каждое из которых рассматривается как путь внутри суперсети. Основная идея состоит в том, чтобы обучить одну суперсеть, охватывающую множество вариантов окончательного проекта, а не создавать и обучать тысячи сетей независимо. В дополнение к изученным параметрам изучается набор параметров архитектуры, отражающий предпочтение одного модуля перед другим. Такие методы сокращают необходимые вычислительные ресурсы до нескольких дней использования графического процессора.
Более поздние работы еще больше сочетают эту парадигму распределения веса с постоянным расслаблением пространства поиска. [25] [26] [27] [28] что позволяет использовать методы оптимизации на основе градиента. Эти подходы обычно называют дифференцируемыми NAS, и они оказались очень эффективными при исследовании пространства поиска нейронных архитектур. Одним из самых популярных алгоритмов среди градиентных методов для NAS является DARTS. [27] Однако DARTS сталкивается с такими проблемами, как падение производительности из-за неизбежного скопления пропущенных соединений и плохой генерализации, которые были решены во многих будущих алгоритмах. [29] [30] [31] [32] Такие методы, как [30] [31] Целью является усиление DARTS и повышение точности проверки путем введения регуляризации на основе нормы Гессе и случайного сглаживания/состязательной атаки соответственно. Причина ухудшения производительности позже анализируется с точки зрения выбора архитектуры. [33]
Дифференцируемая NAS показала, что дает конкурентоспособные результаты, используя часть времени поиска, требуемого методами поиска на основе RL. Например, FBNet (сокращение от Facebook Berkeley Network) продемонстрировала, что поиск на основе суперсетей создает сети, которые превосходят кривую компромисса между скоростью и точностью mNASNet и MobileNetV2 в наборе данных классификации изображений ImageNet. FBNet достигает этого, используя более чем в 400 раз меньше времени поиска, чем было использовано для mNASNet. [34] [35] [36] Кроме того, SqueezeNAS продемонстрировал, что NAS на основе суперсети создает нейронные сети, которые превосходят кривую компромисса скорости и точности MobileNetV3 в наборе данных семантической сегментации Cityscapes, а SqueezeNAS использует более чем в 100 раз меньше времени поиска, чем было использовано в поиске на основе RL авторов MobileNetV3. [37] [38]
Тесты поиска нейронной архитектуры
[ редактировать ]Поиск нейронной архитектуры часто требует больших вычислительных ресурсов из-за дорогостоящих этапов обучения и оценки. Это также приводит к большому углеродному следу, необходимому для оценки этих методов. Чтобы преодолеть это ограничение, тесты NAS [39] [40] [41] [42] были введены, с помощью которых можно запрашивать или прогнозировать конечную производительность нейронных архитектур за считанные секунды. Тест NAS определяется как набор данных с фиксированным разделением поезд-тест, пространством поиска и фиксированным конвейером обучения (гиперпараметрами). В основном существует два типа тестов NAS: суррогатный тест NAS и табличный тест NAS. Суррогатный тест использует суррогатную модель (например, нейронную сеть) для прогнозирования производительности архитектуры на основе пространства поиска. С другой стороны, табличный тест оценивает фактическую производительность архитектуры, подготовленной к конвергенции. Оба этих теста доступны для запроса и могут использоваться для эффективного моделирования многих алгоритмов NAS, используя только ЦП для запроса теста вместо обучения архитектуры с нуля.
См. также
[ редактировать ]Дальнейшее чтение
[ редактировать ]Обзорные статьи.
- Вистуба, Мартин; Рават, Амбриш; Педапати, Теджасвини (04 мая 2019 г.). «Опрос по поиску нейронной архитектуры». arXiv : 1905.01392 [ cs.LG ].
- Элскен, Томас; Метцен, Ян Хендрик; Хаттер, Фрэнк (8 августа 2019 г.). «Поиск нейронной архитектуры: опрос» . Журнал исследований машинного обучения . 20 (55): 1–21. arXiv : 1808.05377 .
- Лю, Юцяо; Сунь, Янан; Сюэ, Бин; Чжан, Мэнцзе; Йен, Гэри Дж; Тан, Кей Чен (2021). «Опрос по поиску эволюционной нейронной архитектуры». Транзакции IEEE в нейронных сетях и системах обучения . 34 (2): 1–21. arXiv : 2008.10937 . дои : 10.1109/TNNLS.2021.3100554 . ПМИД 34357870 . S2CID 221293236 .
- Уайт, Колин; Сафари, Махмуд; Суктанкер, Рея; Ру, Биньсинь; Элскен, Томас; Зела, Арбер; Дей, Дебадепта; Хаттер, Фрэнк (25 января 2023 г.). «Поиск нейронной архитектуры: выводы из 1000 статей». arXiv : 2301.08727 [ cs.LG ].
Ссылки
[ редактировать ]- ^ Jump up to: а б Элскен, Томас; Метцен, Ян Хендрик; Хаттер, Фрэнк (8 августа 2019 г.). «Поиск нейронной архитектуры: опрос» . Журнал исследований машинного обучения . 20 (55): 1–21. arXiv : 1808.05377 .
- ^ Вистуба, Мартин; Рават, Амбриш; Педапати, Теджасвини (04 мая 2019 г.). «Опрос по поиску нейронной архитектуры». arXiv : 1905.01392 [ cs.LG ].
- ^ Jump up to: а б с Зоф, Баррет; Ле, Куок В. (04 ноября 2016 г.). «Поиск нейронной архитектуры с обучением с подкреплением». arXiv : 1611.01578 [ cs.LG ].
- ^ Jump up to: а б с д и Зоф, Баррет; Васудеван, Виджай; Шленс, Джонатон; Ле, Куок В. (21 июля 2017 г.). «Изучение переносимых архитектур для масштабируемого распознавания изображений». arXiv : 1707.07012 [ cs.CV ].
- ^ Маттиас Фойрер и Фрэнк Хаттер. Оптимизация гиперпараметров . В: AutoML: методы, системы, проблемы , страницы 3–38.
- ^ Ваншорен, Хоакин (2019). «Метаобучение» . Автоматизированное машинное обучение . Серия Springer о проблемах машинного обучения. стр. 35–61. дои : 10.1007/978-3-030-05318-5_2 . ISBN 978-3-030-05317-8 . S2CID 239362577 .
- ^ Салехин, Имрус; Ислам, м-р Шамиул; Саха, Притом; Номан, С.М.; Туни, Азра; Хасан, доктор медицины Мехеди; Батен, штат Мэриленд Абу (1 января 2024 г.). «AutoML: систематический обзор автоматизированного машинного обучения с поиском по нейронной архитектуре» . Журнал информации и разведки . 2 (1): 52–81. дои : 10.1016/j.jiixd.2023.10.002 . ISSN 2949-7159 .
- ^ Зоф, Баррет; Васудеван, Виджай; Шленс, Джонатон; Ле, Куок В. (2 ноября 2017 г.). «AutoML для крупномасштабной классификации изображений и обнаружения объектов» . Исследовательский блог . Проверено 20 февраля 2018 г.
- ^ Фам, Хьеу; Гуань, Мелоди Ю.; Зоф, Баррет; Ле, Куок В.; Дин, Джефф (9 февраля 2018 г.). «Эффективный поиск нейронной архитектуры посредством совместного использования параметров». arXiv : 1802.03268 [ cs.LG ].
- ^ Реал, Эстебан; Мур, Шерри; Селле, Эндрю; Саксена, Саураб; Суэмацу, Ютака Леон; Тан, Цзе; Ле, Куок; Куракин, Алекс (03.03.2017). «Крупномасштабная эволюция классификаторов изображений». arXiv : 1703.01041 [ cs.NE ].
- ^ Суганума, Масанори; Сиракава, Шиничи; Нагао, Томохару (3 апреля 2017 г.). «Подход к генетическому программированию к проектированию архитектур сверточных нейронных сетей». arXiv : 1704.00764v2 [ cs.NE ].
- ^ Jump up to: а б Лю, Ханьсяо; Симонян, Карен; Виньялс, Ориол; Фернандо, Крисанта; Кавукчуоглу, Корай (01 ноября 2017 г.). «Иерархические представления для эффективного поиска архитектуры». arXiv : 1711.00436v2 [ cs.LG ].
- ^ Jump up to: а б Реал, Эстебан; Аггарвал, Алок; Хуан, Яньпин; Ле, Куок В. (05 февраля 2018 г.). «Регуляризованная эволюция поиска архитектуры классификаторов изображений». arXiv : 1802.01548 [ cs.NE ].
- ^ Мииккулайнен, Ристо; Лян, Джейсон; Мейерсон, Эллиот; Равал, Адитья; Финк, Дэн; Франкон, Оливье; Раджу, Бала; Шахрзад, Хормоз; Наврузян, Аршак; Даффи, Найджел; Ходжат, Бабак (04 марта 2017 г.). «Развитие глубоких нейронных сетей». arXiv : 1703.00548 [ cs.NE ].
- ^ Се, Линси; Юлль, Алан (2017). «Генетический CNN» . Международная конференция IEEE по компьютерному зрению (ICCV) , 2017 г. стр. 1388–1397. arXiv : 1703.01513 . дои : 10.1109/ICCV.2017.154 . ISBN 978-1-5386-1032-9 . S2CID 206770867 .
- ^ Jump up to: а б с Элскен, Томас; Метцен, Ян Хендрик; Хаттер, Фрэнк (24 апреля 2018 г.). «Эффективный многокритериальный поиск нейронной архитектуры посредством эволюции Ламарка». arXiv : 1804.09081 [ stat.ML ].
- ^ Лю, Юцяо; Сунь, Янан; Сюэ, Бин; Чжан, Мэнцзе; Йен, Гэри Дж; Тан, Кей Чен (2021). «Опрос по поиску эволюционной нейронной архитектуры». Транзакции IEEE в нейронных сетях и системах обучения . 34 (2): 1–21. arXiv : 2008.10937 . дои : 10.1109/TNNLS.2021.3100554 . ПМИД 34357870 . S2CID 221293236 .
- ^ Уайт, Колин; Нейсвангер, Вилли; Савани, Яш (02 ноября 2020 г.). «БАНАНЫ: байесовская оптимизация с использованием нейронных архитектур для поиска нейронной архитектуры». arXiv : 1910.11858 [ cs.LG ].
- ^ Томас, Эльскен; Ян Хендрик, Метцен; Фрэнк, Хаттер (13 ноября 2017 г.). «Простой и эффективный поиск архитектуры для сверточных нейронных сетей». arXiv : 1711.04528 [ stat.ML ].
- ^ Jump up to: а б Чжоу, Яньци; Диамос, Грегори. «Нейронный архитектор: многоцелевой поиск нейронной архитектуры с прогнозированием производительности» (PDF) . Байду. Архивировано из оригинала (PDF) 27 сентября 2019 г. Проверено 27 сентября 2019 г.
- ^ Тан, Минсин; Чен, Бо; Панг, Руомин; Васудеван, Виджай; Сэндлер, Марк; Ховард, Эндрю; Ле, Куок В. (2018). «MnasNet: поиск нейронной архитектуры с учетом платформы для мобильных устройств». arXiv : 1807.11626 [ cs.CV ].
- ^ Ховард, Эндрю, Чу, Грейс, Лян-Че, Тан, Вэйцзюнь; Панг, Руомин, Ле, Куок В.; Хартвиг (06 мая 2019 г.) «Поиск MobileNetV3». arXiv : 1905.02244 [ cs.CV ].
- ^ Фам, Хьеу; Гуань, Мелоди Ю.; Зоф, Баррет; Ле, Куок В.; Дин, Джефф (2018). «Эффективный поиск нейронной архитектуры посредством совместного использования параметров». arXiv : 1802.03268 [ cs.LG ].
- ^ Ли, Лиам; Талвалкар, Амит (2019). «Случайный поиск и воспроизводимость поиска нейронной архитектуры». arXiv : 1902.07638 [ cs.LG ].
- ^ Цай, Хан; Чжу, Лигэн; Хан, Сун (2018). «ProxylessNAS: прямой поиск нейронной архитектуры по целевой задаче и оборудованию». arXiv : 1812.00332 [ cs.LG ].
- ^ Донг, Сюаньи; Ян, Йи (2019). «В поисках надежной нейронной архитектуры за четыре часа работы графического процессора». arXiv : 1910.04465 [ cs.CV ].
- ^ Jump up to: а б Лю, Ханьсяо; Симонян, Карен; Ян, Имин (2018). «ДАРТС: Поиск дифференцируемой архитектуры». arXiv : 1806.09055 [ cs.LG ].
- ^ Се, Сируи; Чжэн, Хэхуэй; Лю, Чуньсяо; Линь, Лян (2018). «SNAS: поиск стохастической нейронной архитектуры». arXiv : 1812.09926 [ cs.LG ].
- ^ Чу, Сянсян; Чжоу, Тяньбао; Чжан, Бо; Ли, Цзисян (2019). «Честный дартс: устранение несправедливых преимуществ при поиске дифференцируемой архитектуры». arXiv : 1911.12126 [ cs.LG ].
- ^ Jump up to: а б Зела, Арбер; Элскен, Томас; Сайкиа, Тонмой; Марракчи, Ясин; Брокс, Томас; Хаттер, Фрэнк (2019). «Понимание и усиление поиска дифференцируемой архитектуры». arXiv : 1909.09656 [ cs.LG ].
- ^ Jump up to: а б Чен, Сяннин; Се, Чо-Джуй (2020). «Стабилизация поиска дифференцируемой архитектуры посредством регуляризации на основе возмущений». arXiv : 2002.05283 [ cs.LG ].
- ^ Синь; Ци, Тянь, Ци Сюй, Юхуэй; Чжан, Сяопэн , : 1907,05737 [ cs.CV ].
- ^ Ван, Руочен; Ченг, Минхао; Чен, Сяннин; Тан, Сяочэн; Се, Чо-Джуй (2021). «Переосмысление выбора архитектуры в дифференцируемом NAS». arXiv : 2108.04392 [ cs.LG ].
- ^ Ву, Бичэн; Чжан, Пейчжао; Ван, Фэй; Тянь, Юаньдун; Цзя, Койцин, Курт (24 мая 2019 г.). Эффективное проектирование ConvNet с учетом аппаратного обеспечения посредством поиска дифференцируемой нейронной архитектуры». arXiv : 1812.03443 [ cs.CV ].
- ^ Сэндлер, Марк; Ховард, Эндрю; Чжу, Мэнлун; Жмогинов Андрей; Чен, Лян-Че (2018). «MobileNetV2: инвертированные остатки и линейные узкие места». arXiv : 1801.04381 [ cs.CV ].
- ^ Кейцер, Курт (22 мая 2019 г.). «Совместное проектирование DNN и NN-ускорителей» (PDF) . ИИЭЭ . Проверено 26 сентября 2019 г.
- ^ Шоу, Альберт; Хантер, Дэниел; Яндола, Форрест; Сидху, Сэмми (2019). «SqueezeNAS: быстрый поиск нейронной архитектуры для более быстрой семантической сегментации». arXiv : 1908.01748 [ cs.CV ].
- ^ Ёсида, Джунко (25 августа 2019 г.). «Есть ли у вашего ИИ-чипа собственный DNN?» . ЭЭ Таймс . Проверено 26 сентября 2019 г.
- ^ Инь, Крис; Кляйн, Аарон; Реал, Эстебан; Кристиансен, Эрик; Мерфи, Кевин; Хаттер, Фрэнк (2019). «NAS-Bench-101: На пути к поиску воспроизводимой нейронной архитектуры». arXiv : 1902.09635 [ cs.LG ].
- ^ Зела, Арбер; Симс, Жюльен; Хаттер, Фрэнк (2020). «NAS-Bench-1Shot1: Сравнительный анализ и анализ однократного поиска нейронной архитектуры». arXiv : 2001.10422 [ cs.LG ].
- ^ Донг, Сюаньи; Ян, Йи (2020). «NAS-Bench-201: Расширение возможностей поиска воспроизводимой нейронной архитектуры». arXiv : 2001.00326 [ cs.CV ].
- ^ Зела, Арбер; Симс, Жюльен; Циммер, Лукас; Лукасик, Йовита; Кейпер, Маргрет; Хаттер, Фрэнк (2020). «Суррогатные тесты NAS: выход за пределы ограниченного пространства поиска табличных тестов NAS». arXiv : 2008.09777 [ cs.LG ].