В моей роли главного специалиста по данным в Spiral Data Group мы работаем с массивными наборами данных временных рядов, которые используются для идентификации, исправления и инноваций в рамках определенного варианта использования. Прекрасным примером являются схемы обнаружения переходных процессов в обширной водопроводной сети предприятия водоснабжения. В этом проекте мы имеем дело с большим количеством датчиков, каждый из которых генерирует более 4 миллиардов записей в год.

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

Сначала наша команда создала предварительную модель данных, которая хорошо работала в одних ситуациях, но не работала в других из-за расширения области действия для включения других переменных (таких как географические и социально отличные регионы), переходные характеристики которых сильно различаются.

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

Чтобы ускорить и автоматизировать поиск улучшений этой модели, я обратился к ChatGPT Plus и его набору плагинов, особенно к Notable, который может взаимодействовать с ChatGPT через автономного агента. Может ли его крупная мультимодальная модель быстрее приблизить меня к решению?

Ключом к успеху в этом процессе был метод подсказки. По сути, вы тренируете ChatGPT, чтобы стать экспертом в конкретной области, в которой вы работаете, создавая уровни разговора и интеллекта в потоке ИИ. Вот несколько примеров подсказок для ChatGPT:

  1. Предоставить сквозные примеры для расчета частот для сложных ступенчатых функций с использованием быстрых преобразований Фурье. Используйте проект ChatGPT по умолчанию в подключаемом модуле Noteable для запуска кода, но предоставьте графики и данные здесь, в этом чате, поскольку я не могу легко получить доступ к Notable.
  2. Хорошо, теперь повторите анализ, где входные входные комплексные ступенчатые функции имеют разные частоты и амплитуду в течение временного интервала, повторите анализ и сообщите о результатах здесь

Из-за конфиденциального характера клиентских данных я использовал синтетические данные для моделирования последовательностей точек данных, которые мы наблюдали в расширенной области сбора данных. Я предложил ChatGPT генерировать большие объемы данных временных рядов с определенными характеристиками, готовыми к тестированию.

Затем ChatGPT подключается к Notable App, чтобы создать необходимую среду Python, сгенерировать соответствующие данные и код и выполнить код для создания соответствующих выходных данных. Код и выходные данные, сгенерированные для первого приглашения, представлены выше на рисунке. 1.

Простые ошибки исправляются автоматически. Более сложные ошибки возвращают вас к подсказкам ИИ, и именно этот цикл тестирования быстро привел меня к успешной функции машинного обучения. Использование плагинов для выполнения кода и запуска тестов дает мне мгновенную обратную связь от ChatGPT — тест будет или не будет (нет никаких серых областей, вызванных деятельностью человека, с которыми нужно иметь дело!) Дает ожидаемый результат.

Процесс подсказки, сборки и тестирования ChatGPT значительно сокращает время проверки ваших идей, поскольку вы больше не полагаетесь на собственные возможности индивидуально тестируйте, исправляйте и продвигайтесь по каждой части вашей функции машинного обучения.

То, что должно было занять несколько дней, чтобы успешно построить и внедрить, теперь занимает несколько часов. Это означает сокращение времени, затрачиваемого на тестирование функций машинного обучения, как минимум на 50 %, что при масштабировании сложного проекта приводит к значительному повышению производительности.

Еще одна интересная вещь — это повторяемость, поскольку теперь у меня есть кодовая база, которую я могу постоянно улучшать. Благодаря добавлению контроля версий и автоматическому сохранению кода в BitBucket (или Github для менее важных проектов) у нашей команды данных теперь есть основа для добавления дополнительных функций.

Хотя я рассматриваю ChatGPT как еще один инструмент для обработки данных, ключевое отличие заключается в том, что он помогает вам выполнять первоначальные (хотя и необходимые) 80% рутинных задач на скорости с высокой степенью контроля. Как правило, это «черная работа» в любом заданном проекте функции машинного обучения, которую, как мы все знаем, необходимо выполнить, прежде чем достичь порога инноваций. Последние 20% — это то, где могут сыграть роль ваши собственные специфические деловые и технические возможности.

Я сравниваю это с наличием дополнительного члена команды — например, стажера или помощника по обработке данных, который быстро повысил свою квалификацию в области знаний — который благодаря своим результатам и темпу выводит вас на нишу 20% разработки функций машинного обучения. «Собственная инициатива» ChatGPT означает, что он также получает различные параметры тестирования для добавления в нашу среду тестирования, расширяя возможности для надежного функционального тестирования.

Далее я планирую реализовать этот процесс с помощью API в облачной среде AWS, чтобы устранить любой риск раскрытия конфиденциальных данных. Это изменит правила игры для наших специалистов по данным, поскольку мы сможем сохранить закрытую среду для обработки зашифрованных клиентских данных, а также сможем внедрять инновации на этапе разработки функций машинного обучения.

Много энергии было потрачено на предупредительную сторону генеративного ИИ, что типично для любого крупного технологического скачка вперед. Человеку свойственно смотреть на худший сценарий! Однако легко упустить из виду повседневные, обыденные, трудоемкие задачи, которые может выполнить автоматизация с помощью такого инструмента, как ChatGPT Plus. О необходимых 80% я писал ранее.

Для меня, специалистов по обработке и анализу данных Spiral Data Group, а также наших клиентов, генеративный ИИ необходим именно здесь.

Рам Балачандран — главный специалист по данным в Spiral Data Group.

Для получения дополнительной информации об операциях машинного обучения, реальных решениях и оптимизации подпишитесь на нашу рассылку LinkedIn.