Это очень хорошо украсит это резюме.

Одна из замечательных особенностей подключения вашей среды R и/или Python к BigQuery заключается в том, что вы больше не просто имеете доступ к огромному количеству общедоступных данных и возможность обрабатывать их в массовом масштабе за копейки за ГБ, но вы также унаследовали возможность выполнять машинное обучение прямо из того же интерфейса.

Какие? Вы имеете в виду, что можете использовать платформу хранилища данных петабайтного масштаба и строить модели машинного обучения прямо поверх нее, используя SQL? Это как… это как…

Введите BigQuery ML.

С помощью BigQuery ML вы можете использовать огромные объемы данных и создавать как простые, так и сложные модели машинного обучения — линейную регрессию, логистическую регрессию, глубокие нейронные сети, временные ряды и многое другое. Я предполагаю, что я столкнусь с некоторыми из них в рамках моей программы магистра наук о данных в области здравоохранения, но на этом этапе я хочу выделить возможность взаимодействия с таблицами AutoML.

С помощью Таблиц AutoML в BigQuery ML вы можете создавать удивительно мощные модели машинного обучения, не особо разбираясь в том, что вы делаете. Не для упрощения, а для разработки функций, разделения данных на обучение, тестирование и проверку, а также выяснения, какой алгоритм машинного обучения лучше всего подходит для решения вашей проблемы? Вы отстали от времени, как…

Ладно, если отбросить Странного Эла Янковича, AutoML действительно крут. Мне объяснили, что это искусственный интеллект, который использует искусственный интеллект для создания искусственного интеллекта, и расширение его в BigQuery открыло целые вселенные для тех из вас, кто только что достиг того же, что и я, в моем путешествии по R и Python. Чтобы использовать его, вы создаете оператор SQL, который включает данные, которые вы хотите проанализировать, с помощью простого оператора SELECT. Допустим, вы скопировали данные Нью-Йорк Таймс о случаях и смертях от COVID по округам в свой собственный проект и набор данных. Базовый запрос может выглядеть примерно так:

Затем вы просто добавляете к этому оператору SQL информацию, которую AutoML должен знать — как вы хотите назвать свою новую блестящую модель? Из столбцов, которые вы вводите, по какому из них вы пытаетесь предсказать? Это классификация или регрессия? И как долго вы хотите, чтобы AutoML продолжал пытаться оптимизировать результат? Окончательный код выглядит примерно так:

Это очень просто, поэтому я думаю, что все эти востребованные специалисты по данным, вероятно, должны пойти учиться, как качать газ или что-то полезное прямо сейчас, верно? Уууууууу….. Не все так просто. Оказывается, такие вещи, как знание того, какие данные вводить в вашу модель, могут иметь довольно сильное влияние на общую точность. Например, я был очень удивлен тем, насколько хорошими были результаты, когда AutoML просто передавал базовые данные о местоположении и количестве случаев с течением времени, однако, когда я соединил эту таблицу с другой таблицей, содержащей данные опроса по округам об использовании масок, AutoML смог добиться значительно лучших результатов и за меньшее время. Я подозреваю, что чем больше я узнаю о том, как создавать модели, тем лучше я буду следить за тем, чтобы данные, которые я загружаю в AutoML, давали постоянно улучшающиеся результаты. Тем не менее, тот факт, что я — будучи здесь полным новичком — смог в нескольких строках кода SQL сгенерировать что-то, в первую очередь напоминающее прогнозную модель машинного обучения, — это не что иное, как удивительно, если вы спросите меня. И если вы читаете это, вы неявно спросили меня. Если вам это не нравится, вы можете винить только себя.

Примечание о затратах. AutoML потребляет много ресурсов. По сути, вы получаете доступ к кластеру из более чем 90 серверов, чтобы обработать как можно больше возможных перестановок моделей за отведенное вам время, и стоимость этого на момент написания этой статьи составляла чуть более 19 долларов в час (давайте округлим это до 20 долларов, чтобы упростить предстоящую математику.) Вы можете создать модель всего за один час (по моему опыту, не очень хорошая модель, но, тем не менее, модель), или вы можете настроить ее на работу до 72 часов. часы. Если AutoML завершит все возможные тесты до истечения этого времени, вы не будете платить за все 72 часа, но если у вас есть сложный и достаточно большой набор данных, вы можете получить полный счет в размере 1440 долларов США. Если вы запустите несколько итераций моделей для сравнения производительности и не будете осторожны, вы можете довольно быстро заработать несколько дополнительных десятков тысяч долларов в своем счете GCP за месяц. Возможно, вы захотите рассмотреть возможность A) узнать, что вы делаете, прежде чем приступить к работе с массивным кластером оборудования, и B) выполнить несколько непродолжительных тестов на разных данных. наборы и посмотреть, какие комбинации работают лучше по сравнению друг с другом, а затем выбрать лучшие комбинации для работы в течение более длительных периодов времени. Опять же, по сравнению с тем, сколько вам будет стоить повторить это в необлачной среде, деньги, о которых мы здесь говорим, довольно незначительны. Но если вы следите за своими копейками, не увлекайтесь. То, что вы **можете** что-то сделать, не означает, что вы **должны** это делать.

Вот и все — простые модели машинного обучения, сгенерированные из кода SQL и общедоступных данных, не требующие от вас вообще особых знаний о машинном обучении. Добро пожаловать в будущее!