ЖАНРЫ

Охота на электроовец. Большая книга искусственного интеллекта
Шрифт:

В «классическом» машинном обучении (предназначенном для работы с данными сравнительно небольшой размерности) возможность автоматического подбора параметров модели встроена во многие популярные программные библиотеки: auto-sklearn [3255] , AutoWEKA [3256] , AutoGluon [3257] , H2O [3258] , [3259] , TPOT [3260] , FLO [3261] , CatBoost [3262] — эти названия обычно хорошо знакомы тем, кто работает с «неглубокими» моделями машинного обучения. Семь лет назад мы с коллегами также разработали одну из таких библиотек, получившую название Est1mator. Однако «классические» модели обладают существенно меньшим числом параметров, чем «глубокие» модели, да и вычислительные затраты на один эксперимент по обучению модели в случае «неглубоких» моделей обычно заметно скромнее. Долгое время возможность применения методов AutoML к глубокому обучению рассматривалась специалистами как перспектива сравнительно отдалённого будущего. Однако начиная с 2016 г. исследователи Google и DeepMind опубликовали сразу несколько серьёзных работ [3263] , [3264] , [3265] , [3266] , [3267] , [3268] , [3269] , [3270] , посвящённых этому направлению. Сегодня исследованиями в области NAS занимаются исследователи и других технологических компаний, таких как Samsung [3271] , [3272] , Microsoft [3273] , Facebook [3274] , [3275] и Bosch [3276] . Не отстают и университетские [3277] учёные, особенно исследователи из Китая [3278] , [3279] , [3280] . Собственным инструментом для поиска нейросетевых архитектур обзавелась и одна из популярных библиотек для глубокого обучения — Keras. Этот инструмент, как несложно догадаться, получил наименование Auto-Keras [3281] .

3255

Feurer M., Eggensperger K., Falkner S., Lindauer M., Hutter F. (2020). Auto-Sklearn 2.0: The Next Generation // https://arxiv.org/abs/2007.04074

3256

Kotthoff L., Thornton C., Hoos H. H., Hutter F., Leyton-Brown K. (2016). Auto-WEKA 2.0: Automatic model selection and hyperparameter optimization in WEKA / Journal of Machine Learning Research, Vol. 17 (2016) // http://www.cs.ubc.ca/labs/beta/Projects/autoweka/papers/16-599.pdf

3257

Erickson N., Mueller J., Shirkov A., Zhang H., Larroy P., Li M., Smola A. (2020). AutoGluon-Tabular: Robust and Accurate AutoML for Structured Data // https://arxiv.org/abs/2003.06505

3258

Arora A., Candel A., Lanford J., LeDell E., Parmar V. (Oct. 2016). Deep Learning with H2O / http://docs.h2o.ai/h2o/latest-stable/h2o-docs/booklets/DeepLearningBooklet.pdf

3259

Click C., Lanford J., Malohlava M., Parmar V., Roark H. (Oct. 2016). Gradient Boosted Models with H2O / http://docs.h2o.ai/h2o/latest-stable/h2o-docs/booklets/GBMBooklet.pdf

3260

Le T. T., Fu W., Moore J. H. (2020). Scaling tree-based automated machine learning to biomedical big data with a feature set selector / Bioinformatics, Vol. 36 (1), pp. 250—256 // https://doi.org/10.1093/bioinformatics/btz470

3261

Wang C., Wu Q. (2019). FLO: Fast and Lightweight Hyperparameter Optimization for AutoML // https://arxiv.org/abs/1911.04706

3262

Prokhorenkova L., Gusev G., Vorobev A., Dorogush A. V., Gulin A. (2017). CatBoost: unbiased boosting with categorical features // https://arxiv.org/abs/1706.09516

3263

Zoph B., Le Q. V. (2016). Neural Architecture Search with Reinforcement Learning // https://arxiv.org/abs/1611.01578

3264

Real E., Moore S., Selle A., Saxena S., Suematsu Y. L., Tan J., Le Q., Kurakin A. (2017). Large-Scale Evolution of Image Classifiers // https://arxiv.org/abs/1703.01041

3265

Kaiser L., Gomez A. N., Shazeer N., Vaswani A., Parmar N., Jones L., Uszkoreit J. (2017). One Model To Learn Them All // https://arxiv.org/abs/1706.05137

3266

Zoph B., Vasudevan V., Shlens J., Le Q. V. (2017). Learning Transferable Architectures for Scalable Image Recognition // https://arxiv.org/abs/1707.07012

3267

Chen L.-C., Collins M. D., Zhu Y., Papandreou G., Zoph B., Schroff F., Adam H., Shlens J. (2018). Searching for Efficient Multi-Scale Architectures for Dense Image Prediction // https://arxiv.org/abs/1809.04184

3268

Liu H., Simonyan K., Yang Y. (2018). DARTS: Differentiable Architecture Search // https://arxiv.org/abs/1806.09055

3269

Howard A., Sandler M., Chu G., Chen L.-C., Chen B., Tan M., Wang W., Zhu Y., Pang R., Vasudevan V., Le Q. V., Adam H. (2019). Searching for MobileNetV3 // https://arxiv.org/abs/1905.02244v5

3270

Xiong Y., Liu H., Gupta S., Akin B., Bender G., Kindermans P.-J., Tan M., Singh V., Chen B. (2020). MobileDets: Searching for Object Detection Architectures for Mobile Accelerators // https://arxiv.org/abs/2004.14525v2

3271

Abdelfattah M. S., Mehrotra A., Dudziak L., Lane N. D. (2021). Zero-Cost Proxies for Lightweight NAS // https://arxiv.org/abs/2101.08134

3272

Dudziak L., Chau T., Abdelfattah M. S., Lee R., Kim H., Lane N. D. (2020). BRP-NAS: Prediction-based NAS using GCNs // https://arxiv.org/abs/2007.08668

3273

Zhang Y., Zhang Q., Yang Y. (2020). How Does Supernet Help in Neural Architecture Search? // https://arxiv.org/abs/2010.08219

3274

Dai X., Zhang P., Wu B., Yin H., Sun F., Wang Y., Dukhan M., Hu Y., Wu Y., Jia Y., Vajda P., Uyttendaele M., Jha N. K. (2018). ChamNet: Towards Efficient Network Design through Platform-Aware Model Adaptation // https://arxiv.org/abs/1812.08934

3275

Wan A., Dai X., Zhang P., He Z., Tian Y., Xie S., Wu B., Yu M., Xu T., Chen K., Vajda P., Gonzalez J. E. (2020). FBNetV2: Differentiable Neural Architecture Search for Spatial and Channel Dimensions // https://arxiv.org/abs/2004.05565

3276

Awad N., Mallik N., Hutter F. (2020). Differential Evolution for Neural Architecture Search // https://arxiv.org/abs/2012.06400

3277

Jie R., Gao J. (2021). Differentiable Neural Architecture Search with Morphism-based Transformable Backbone Architectures // https://arxiv.org/abs/2106.07211

3278

Tian Y., Shen L., Shen L., Su G., Li Z., Liu W. (2020). AlphaGAN: Fully Differentiable Architecture Search for Generative Adversarial Networks // https://arxiv.org/abs/2006.09134

3279

Ding M., Lian X., Yang L., Wang P., Jin X., Lu Z., Luo P. (2021). HR-NAS: Searching Efficient High-Resolution Neural Architectures with Lightweight Transformers // https://arxiv.org/abs/2106.06560

3280

Yang Y., You S., Li H., Wang F., Qian C., Lin Z. (2021). Towards Improving the Consistency, Efficiency, and Flexibility of Differentiable Neural Architecture Search // https://arxiv.org/abs/2101.11342

3281

Jin H., Song Q., Hu X. (2018). Auto-Keras: An Efficient Neural Architecture Search System // https://arxiv.org/abs/1806.10282

За последние годы было создано несколько специальных наборов тестов для оценки возможностей систем поиска эффективных нейросетевых архитектур и гиперпараметров их обучения, например: NAS-bench-101 [3282] , [3283] , NAS-Bench-201 [3284] , NAS-Bench-360 [3285] , NAS-Bench-x11 [3286] , HW-NAS-Bench [3287] , NAS-Bench-ASR [3288] , NATS-Bench [3289] , NAS-HPO-Bench [3290] и NAS-HPO-Bench-II [3291] . Наверное, самым большим триумфом этого подхода на сегодняшний день стало создание [3292] , [3293] семейства свёрточных нейросетевых архитектур EfficientNet, которые позволили достичь большей точности и эффективности, чем предыдущие свёрточные архитектуры. В частности, в 2019 г. архитектура EfficientNet-B7 позволила при классификации изображений ImageNet достичь [3294] точности top-1 в 84,3% и точности top-5 в 97,0%, будучи в 8,4 раза меньше и в 6,1 раза быстрее при выполнении, чем лучшая из предшествовавших архитектур (AmoebaNet, обученная с применением библиотеки GPipe) [3295] . В том же году исследователям из Google Brain при помощи более хитрой процедуры обучения, задействующей две нейросети («ученика» и «учителя»), удалось «выжать» из архитектуры EfficientNet-L2 при классификации изображений ImageNet значения точности top-1 и top-5, равные 90,2 и 98,8% соответственно [3296] .

3282

Ying C., Klein A., Real E., Christiansen E., Murphy K., Hutter F. (2019). NAS-Bench-101: Towards Reproducible Neural Architecture Search // https://arxiv.org/abs/1902.09635

3283

Zela A., Siems J., Hutter F. (2020). NAS-Bench-1Shot1: Benchmarking and Dissecting One-shot Neural Architecture Search // https://arxiv.org/abs/2001.10422

3284

Dong X., Yang Y. (2020). NAS-Bench-201: Extending the Scope of Reproducible Neural Architecture Search // https://arxiv.org/abs/2001.00326

3285

Tu R., Khodak M., Roberts N., Talwalkar A. (2021). NAS-Bench-360: Benchmarking Diverse Tasks for Neural Architecture Search // https://arxiv.org/abs/2110.05668

3286

Yan S., White C., Savani Y., Hutter F. (2021). NAS-Bench-x11 and the Power of Learning Curves // https://arxiv.org/abs/2111.03602

3287

Li C., Yu Z., Fu Y., Zhang Y., Zhao Y., You H., Yu Q., Wang Y., Lin Y. (2021). HW-NAS-Bench: Hardware-Aware Neural Architecture Search Benchmark // https://arxiv.org/abs/2103.10584

3288

Mehrotra A., Ramos A. G. C. P., Bhattacharya S., Dudziak L., Vipperla R., Chau T., Abdelfattah M. S., Ishtiaq S., Lane N. D. (2020). NAS-Bench-ASR: Reproducible Neural Architecture Search for Speech Recognition // https://openreview.net/forum?id=CU0APx9LMaL

3289

Dong X., Liu L., Musial K., Gabrys B. (2020). NATS-Bench: Benchmarking NAS Algorithms for Architecture Topology and Size // https://arxiv.org/abs/2009.00437

3290

Klein A., Hutter F. (2019). Tabular Benchmarks for Joint Architecture and Hyperparameter Optimization // https://arxiv.org/abs/1905.04970

3291

Hirose Y., Yoshinari N., Shirakawa S. (2021). NAS-HPO-Bench-II: A Benchmark Dataset on Joint Optimization of Convolutional Neural Network Architecture and Training Hyperparameters // https://arxiv.org/abs/2110.10165

3292

Tan M., Le Q. V. (2019). EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks // https://arxiv.org/abs/1905.11946

3293

Arora A. (2020). EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks // https://amaarora.github.io/2020/08/13/efficientnet.html

3294

Tan M., Le Q. V. (2019). EfficientNet: Rethinking Model Scaling for Convolutional Neural Networks // https://arxiv.org/abs/1905.11946

3295

Huang Y., Cheng Y., Bapna A., Firat O., Chen M. X., Chen D., Lee H. J., Ngiam J., Le Q. V., Wu Y., Chen Z. (2018). GPipe: Efficient Training of Giant Neural Networks using Pipeline Parallelism // https://arxiv.org/abs/1811.06965

3296

Pham H., Dai Z., Xie Q., Luong M.-T., Le Q. V. (2020). Meta Pseudo Labels // https://arxiv.org/abs/2003.10580

Однако, несмотря на столь внушительные успехи, в области поиска нейросетевых архитектур существует ещё множество открытых вопросов. Как сделать процесс поиска наиболее вычислительно эффективным? Эксперименты в этой области пока что требуют значительных вычислительных ресурсов. Можно ли повторить успехи NAS в других областях, не связанных с обработкой изображений, и какие алгоритмы позволят добиться наибольшей эффективности в этом направлении? И наконец, нельзя ли создать универсальные методы, позволяющие осуществлять эффективный поиск нейросетевых архитектур для решения произвольных задач?

Все эти проблемы изучаются в рамках области машинного обучения, получившей название «метаобучение» [meta-learning]. Основная цель метаобучения — улучшение производительности существующих методов машинного обучения; по сути, перед метаобучением стоит задача «научиться учиться» [learn to learn].

Другое важное направление исследований — перенос обучения (знаний) [transfer learning] (мы коротко затрагивали эту тему, рассуждая о возможностях импульсных нейронных сетей). Эта область занимается поиском методов, позволяющих использовать знания, полученные при решении одной задачи, для решения других, сходных с ней. Например, модель, обученная различать различных животных на изображениях, может быть использована для распознавания пород собак. Одной из разновидностей переноса знаний является дообучение, или тонкая настройка [fine-tuning], модели с применением сравнительно небольших датасетов, содержащих примеры решения целевых задач. В некотором роде триумфом переноса обучения стало появление предобученных моделей для обработки естественного языка, основанных на трансформерных архитектурах, — мы подробно обсуждали этот вопрос в ходе рассказа о моделях семейства GPT. Проклятием переноса обучения является проблема «катастрофического забывания» [catastrophic forgetting] [3297] , которая заключается в том, что в процессе доучивания модель быстро теряет полученные ранее знания. Чтобы не допустить этого, доучивание обычно ограничивают небольшим количеством эпох обучения, а также используют низкие значения скорости обучения. Однако это делает сам процесс доучивания вычислительно более дорогим, менее эффективным и менее стабильным. Для борьбы с катастрофическим забыванием предложен ряд весьма остроумных техник, таких как, например, «эластическая консолидация весов» [elastic weights consolidation] [3298] , [3299] или «ослабление скоростей весов» [weight velocity attenuation] [3300] , однако они нередко связаны с существенными дополнительными затратами (вычислительными или в виде использования дополнительного объёма памяти).

3297

Wang Z., Yang E., Shen L., Huang H. (2023). A Comprehensive Survey of Forgetting in Deep Learning Beyond Continual Learning // https://arxiv.org/abs/2307.09218

3298

Kirkpatrick J., Pascanu R., Rabinowitz N., Veness J., Desjardins G., Rusu A. A., Milan K., Quan J., Ramalho T., Grabska-Barwinska A., Hassabis D., Clopath C., Kumaran D., Hadsell R. (2017). Overcoming catastrophic forgetting in neural nets / Proceedings of the National Academy of Sciences of the United States of America, Vol. 114 (13), pp. 3521—3526 // https://doi.org/10.1073/pnas.1611835114

3299

Kutalev A., Lapina A. (2021). Stabilizing Elastic Weight Consolidation method in practical ML tasks and using weight importances for neural network pruning // https://arxiv.org/abs/2109.10021

3300

Kutalev A. (2020). Natural Way to Overcome the Catastrophic Forgetting in Neural Networks // https://arxiv.org/abs/2005.07107

Хотя в наши дни нейросетевые модели обычно обучают при помощи различных методов градиентного спуска, исследователи задумываются над тем, чтобы использовать более «умные» алгоритмы для подстройки весов нейронных сетей. Теоретически, «изучив» множество сессий обучения, некоторая модель может научиться более эффективно модифицировать веса нейронной сети, чтобы достигать меньшего значения ошибки за меньшее число шагов обучения. Решением этой задачи по «воспитанию воспитателя» в настоящее время занимается ряд исследователей, и уже получены первые обнадёживающие результаты [3301] в этой области. Не исключено, что развитие именно этого направления позволит совершить очередной прорыв в области машинного обучения в ближайшем будущем.

3301

Metz L., Maheswaranathan N., Freeman C. D., Poole B., Sohl-Dickstein J. (2020). Tasks, stability, architecture, and compute: Training more effective learned optimizers, and using them to train themselves // https://arxiv.org/abs/2009.11243

Возможно, новые исследования позволят найти замену даже такому, казалось бы, фундаментальному элементу нейросетевых технологий, как метод обратного распространения ошибки. Авторы статьи «Градиенты без обратного распространения ошибки» (Gradients without Backpropagation) [3302] , вышедшей в свет в начале 2022 г., показывают в своём исследовании, что градиенты весов нейронной сети можно рассчитывать при помощи более быстрого алгоритма, который авторы назвали «прямым градиентом» [forward gradient].

3302

Baydin A. G., Pearlmutter B. A., Syme D., Wood F., Torr P. (2022). Gradients without Backpropagation // https://arxiv.org/abs/2202.08587

Рост интереса к большим языковым моделям вслед за громким успехом таких проектов, как GPT-3 и ChatGPT, привёл к расширению исследований в этой и смежных областях — мы говорили в разделах 6.6.5 и 6.6.6 о многих актуальных вызовах, стоящих перед создателями будущих LLM. Одной из наиболее амбициозных стратегических целей здесь является выстраивание «мостика» от современных LLM и MLLM к будущим системам общего искусственного интеллекта. Развитие моделей, способных строить цепочки и деревья рассуждений, ставит вопрос о возможности применения продвинутых языковых моделей к задачам стратегического планирования. Ни для кого не секрет, что теория игр, и в частности деревья (и графы) возможных решений, активно использовалась в стратегическом планировании ещё в годы холодной войны (Первой холодной войны?).

Рис. 178. Пример дерева возможных альтернатив для принятия стратегического решения

В наши дни важным инструментом для создания и анализа таких деревьев могут стать большие языковые модели. Поскольку они в некоторой мере уже сегодня являются пусть и упрощёнными, но моделями мира, их можно использовать как для генерации возможных альтернатив, так и для оценки всей совокупности совершённых акторами действий в терминальных узлах дерева. Таким образом, деревья стратегических решений могут стать куда более сложными и разветвлёнными. Все эти идеи наводят на мысль о возможности создания обобщающей теории применения фундаментальных моделей в решении сложных интеллектуальных задач. Например, на роль такой теории может претендовать концепция программ на базе больших языковых моделей [Large Language Model Programs] [3303] , [3304] . Скорее всего, в ближайшие годы в этой области появится множество новых проектов и стартапов.

3303

Schlag I., Sukhbaatar S., Celikyilmaz A., Yih W.-t., Weston J., Schmidhuber J., Li X. (2023). Large Language Model Programs // https://arxiv.org/abs/2305.05364

3304

Sapunov G. (2023). Large Language Model Programs. A useful conceptualization for a wide set of practices for working with LLMs // https://gonzoml.substack.com/p/large-language-model-programs

В 2022 г. своим видением на развитие ИИ в ближайшее десятилетие поделился Ян Лекун [3305] . По его мнению, сейчас перед отраслью стоят три основных вызова:

системы ИИ должны научиться представлять мир;

системы ИИ должны научиться строить умозаключения и планы путями, совместимыми с обучением на основе градиентных методов оптимизации;

системы ИИ должны научиться строить иерархии планов действий.

3305

Schreiner M. (2022). Meta’s AI chief: Three major challenges of artificial intelligence / MIXED, Jan 29 2022 // https://mixed-news.com/en/metas-ai-chief-three-major-challenges-of-artificial-intelligence/

Лекун видит решение первой проблемы в развитии методов самообучения [self-supervised learning]. Их успешное применение будет означать, что системы ИИ способны создавать сложные модели мира. При этом, по мнению Лекуна, роль данных для обучения для следующего поколения систем машинного обучения уготована уже не языку и не изображениям, а видео. В настоящее время Meta (бывшая Facebook) прилагает много усилий для сбора видеоданных от первого лица. Впрочем, по словам Лекуна, видео с YouTube также являются подходящим учебным материалом.

Лекун считает, что системы искусственного интеллекта смогут из таких видеороликов узнать о физических основах нашего мира. А эти знания, в свою очередь, станут основой для развития способностей ИИ, связанных с реальным миром (например, хватание предметов или вождение автомобиля). Вообще весьма интересным является вопрос о том, можно ли создать универсальный искусственный интеллект путём машинного обучения, опирающегося только на имеющийся цифровой след человечества, или же для этого необходимо активное взаимодействие с окружающим миром при помощи физических аватаров (или хотя бы программных агентов, взаимодействующих с человеческим обществом при помощи Всемирной сети).

Поделиться с друзьями: