В мире принятия решений на основе данных прогнозирование временных рядов является ключевым фактором, позволяющим предприятиям использовать закономерности исторических данных для прогнозирования будущих результатов. Независимо от того, работаете ли вы в сфере управления рисками активов, торговли, прогнозирования погоды, прогнозирования спроса на энергию, мониторинга жизненно важных показателей или анализа дорожного движения, способность точного прогнозирования имеет решающее значение для успеха.
В этих приложениях данные временных рядов могут иметь тяжелохвостый распределения, где фрак представляют крайние значения. Точный прогноз в этих регионах важен для определения вероятности экстремального явления и необходимости поднимать тревогу. Однако эти выбросы существенно влияют на оценку базового распределения, что затрудняет надежное прогнозирование. Финансовые учреждения полагаются на надежные модели для прогнозирования аномальных явлений, таких как обвалы рынков. В секторах энергетики, погоды и здравоохранения точные прогнозы нечастых, но серьезных событий, таких как стихийные бедствия и пандемии, позволяют эффективно планировать и распределять ресурсы. Пренебрежение хвостовым поведением может привести к потерям, упущенным возможностям и снижению безопасности. Приоритет точности в хвосте помогает создавать надежные и действенные прогнозы. В этом посте мы обучаем надежную модель прогнозирования временных рядов, способную фиксировать такие экстремальные события, используя Создатель мудреца Амазонки.
Чтобы эффективно обучать эту модель, мы создаем инфраструктуру MLOps для оптимизации процесса разработки модели за счет автоматизации предварительной обработки данных, разработки функций, настройки гиперпараметров и выбора модели. Такая автоматизация уменьшает человеческие ошибки, улучшает воспроизводимость и ускоряет цикл разработки модели. Благодаря конвейеру обучения компании могут эффективно включать новые данные и адаптировать свои модели к меняющимся условиям, что помогает гарантировать надежность и актуальность прогнозов.
После обучения модели прогнозирования временных рядов ее развертывание в конечной точке предоставляет возможности прогнозирования в реальном времени. Это дает вам возможность принимать обоснованные и оперативные решения на основе самых последних данных. Кроме того, развертывание модели в конечной точке обеспечивает масштабируемость, поскольку несколько пользователей и приложений могут одновременно получать доступ к модели и использовать ее. Следуя этим шагам, компании смогут использовать возможности надежного прогнозирования временных рядов для принятия обоснованных решений и оставаться впереди в быстро меняющейся среде.
Обзор решения
Это решение демонстрирует обучение модели прогнозирования временных рядов, специально разработанной для обработки выбросов и изменчивости данных с использованием Временная сверточная сеть (TCN) со сращенным распределением Парето (SBP). Дополнительную информацию о мультимодальной версии этого решения см. Наука, лежащая в основе нового показателя пасов NFL Next Gen Stats. Чтобы дополнительно проиллюстрировать эффективность распределения SBP, мы сравниваем его с той же моделью TCN, но вместо этого используем распределение Гаусса.
Этот процесс значительно выигрывает от Возможности МЛОпс SageMaker, которые оптимизируют рабочий процесс обработки данных за счет использования мощной облачной инфраструктуры AWS. В нашем решении мы используем Автоматическая настройка моделей Amazon SageMaker для поиска гиперпараметров, Эксперименты с Amazon SageMaker для управления экспериментами, Реестр моделей Amazon SageMaker управлять версиями модели и Конвейеры Amazon SageMaker чтобы организовать процесс. Затем мы развертываем нашу модель на конечной точке SageMaker для получения прогнозов в реальном времени.
На следующей диаграмме показана архитектура конвейера обучения.
На следующей диаграмме показан конвейер вывода.
Вы можете найти полный код в Репо GitHub. Чтобы реализовать решение, запустите ячейки в SBP_main.ipynb
.
Нажмите здесь, чтобы открыть консоль AWS и следовать инструкциям.
Конвейер SageMaker
SageMaker Pipelines предлагает удобный для пользователя SDK Python для создания интегрированных рабочих процессов машинного обучения (ML). Эти рабочие процессы, представленные как направленные ациклические графы (DAG), состоят из шагов различных типов и зависимостей. С помощью SageMaker Pipelines вы можете оптимизировать сквозной процесс обучения и оценки моделей, повышая эффективность и воспроизводимость рабочих процессов машинного обучения.
Конвейер обучения начинается с создания синтетического набора данных, который разделяется на обучающий, проверочный и тестовый наборы. Обучающий набор используется для обучения двух моделей TCN, одна из которых использует Сплайсированное распределение Биннеда-Парето а другой использует распределение Гаусса. Обе модели проходят настройку гиперпараметров с использованием набора проверки для оптимизации каждой модели. После этого проводится оценка тестового набора для определения модели с наименьшей среднеквадратической ошибкой (RMSE). Модель с лучшим показателем точности загружается в реестр моделей.
На следующей диаграмме показаны этапы конвейера.
Обсудим шаги более подробно.
Генерация данных
На первом этапе нашего конвейера генерируется синтетический набор данных, который характеризуется синусоидальной формой сигнала и асимметричным шумом с тяжелым хвостом. Данные были созданы с использованием ряда параметров, таких как степени свободы, множитель шума и параметр масштаба. Эти элементы влияют на форму распределения данных, модулируют случайную изменчивость наших данных и корректируют разброс распределения наших данных соответственно.
Эта работа по обработке данных выполняется с помощью PyTorchПроцессор, который запускает код PyTorch (генерировать_данные.py) внутри контейнера, управляемого SageMaker. Данные и другие артефакты, необходимые для отладки, расположены в папке по умолчанию. Простой сервис хранения Amazon (Amazon S3), связанный с учетной записью SageMaker. Журналы каждого шага конвейера можно найти в Amazon CloudWatch.
На следующем рисунке показан пример данных, сгенерированных конвейером.
Вы можете заменить входные данные самыми разными данными временных рядов, такими как симметричное, асимметричное, легкое, тяжелое или мультимодальное распределение. Надежность модели позволяет ее применять к широкому кругу проблем временных рядов при условии наличия достаточного количества наблюдений.
Модельное обучение
После генерации данных мы обучаем два TCN: один с использованием распределения SBP, а другой с использованием распределения Гаусса. Распределение SBP использует дискретное распределение в качестве основы для прогнозирования, где действительная ось разделена на дискретные элементы, и модель прогнозирует вероятность попадания наблюдения в каждый интервал. Эта методология позволяет фиксировать асимметрии и несколько режимов, поскольку вероятность каждого интервала независима. Пример распределенного распределения показан на следующем рисунке.
Прогнозируемое распределение слева устойчиво к экстремальным событиям, поскольку логарифмическое правдоподобие не зависит от расстояния между прогнозируемым средним значением и наблюдаемой точкой, в отличие от параметрических распределений, таких как гауссово распределение или t Стьюдента. Следовательно, экстремальное событие, представленное красной точкой, не будет искажать полученное среднее значение распределения. Однако экстремальное событие будет иметь нулевую вероятность. Чтобы уловить экстремальные события, мы формируем распределение САД, определяя нижний хвост в 5-м квантиле и верхний хвост в 95-м квантиле, заменяя оба хвоста взвешенными обобщенными распределениями Парето (GPD), которые могут количественно оценить вероятность события. TCN выведет параметры для распределенной базы распределения и хвостов GPD.
Поиск гиперпараметров
Для оптимального результата мы используем автоматическая настройка модели найти лучшую версию модели через настройка гиперпараметра. Этот шаг интегрирован в SageMaker Pipelines и позволяет параллельно запускать несколько заданий обучения, используя различные методы и предопределенные диапазоны гиперпараметров. Результатом является выбор лучшей модели на основе заданной метрики модели, которой является RMSE. В нашем конвейере мы специально настраиваем скорость обучения и количество эпох обучения, чтобы оптимизировать производительность нашей модели. Благодаря возможности настройки гиперпараметров в SageMaker мы повышаем вероятность того, что наша модель достигнет оптимальной точности и обобщения для данной задачи.
Из-за синтетического характера наших данных мы сохраняем длину контекста и время выполнения в качестве статических параметров. Длина контекста относится к количеству исторических временных шагов, введенных в модель, а время выполнения представляет собой количество временных шагов в нашем горизонте прогноза. В примере кода мы настраиваем только скорость обучения и количество эпох, чтобы сэкономить время и деньги.
Параметры, специфичные для SBP, остаются постоянными на основе обширного тестирования авторов оригинальной статьи на различных наборах данных:
- Количество бункеров (100) – Этот параметр определяет количество интервалов, используемых для моделирования базы распределения. Он сохраняется на уровне 100, что оказалось наиболее эффективным во многих отраслях.
- Хвост процентиля (0.05) – Это обозначает размер обобщенного распределения Парето в хвосте. Как и предыдущий параметр, он был тщательно протестирован и признан наиболее эффективным.
Эксперименты
Процесс гиперпараметрирования интегрирован с SageMaker эксперименты, который помогает организовывать, анализировать и сравнивать итеративные эксперименты ML, предоставляя ценную информацию и облегчая отслеживание наиболее эффективных моделей. Машинное обучение — это итеративный процесс, включающий многочисленные эксперименты, включающие изменения данных, выбор алгоритмов и настройку гиперпараметров. Эти эксперименты служат для постепенного повышения точности модели. Однако большое количество обучающих прогонов и итераций модели может затруднить выявление наиболее эффективных моделей и проведение значимого сравнения между текущими и прошлыми экспериментами. SageMaker Experiments решает эту проблему, автоматически отслеживая задания по настройке гиперпараметров и позволяя нам получить дополнительную информацию и понимание процесса настройки, как показано на следующем снимке экрана.
Оценка модели
Модели проходят обучение и настройку гиперпараметров, а затем оцениваются с помощью оценить.py сценарий. На этом этапе используется тестовый набор, отличный от этапа настройки гиперпараметров, для оценки реальной точности модели. RMSE используется для оценки точности прогнозов.
Для сравнения распределений мы используем график «вероятность-вероятность» (PP), который оценивает соответствие между фактическим и прогнозируемым распределениями. Близость точек к диагонали указывает на идеальное соответствие. Наше сравнение прогнозируемых распределений SBP и Гаусса с фактическим распределением показывает, что прогнозы SBP более точно соответствуют фактическим данным.
Как мы видим, SBP имеет более низкую RMSE в основании, нижнем хвосте и верхнем хвосте. Распределение SBP улучшило точность распределения Гаусса на 61% в базовом режиме, на 56% в нижнем хвосте и на 30% в верхнем хвосте. В целом распределение SBP дает значительно лучшие результаты.
Выбор модели
Мы используем шаг условия в SageMaker Pipelines для анализа отчетов об оценке модели, выбирая модель с наименьшим RMSE для повышения точности распределения. Выбранная модель преобразуется в объект модели SageMaker, подготавливая его к развертыванию. Это предполагает создание пакета модели с важнейшими параметрами и его упаковку в файл. Шаг модели.
Реестр моделей
Выбранная модель затем загружается в Реестр моделей SageMaker, который играет решающую роль в управлении моделями, готовыми к производству. Он хранит модели, систематизирует версии моделей, фиксирует важные метаданные и артефакты, такие как образы контейнеров, а также управляет статусом утверждения каждой модели. Используя реестр, мы можем эффективно развертывать модели в доступных средах SageMaker и создавать основу для конвейеров непрерывной интеграции и непрерывного развертывания (CI/CD).
вывод
После завершения процесса обучения наша модель развертывается с использованием Услуги хостинга SageMaker, что позволяет создавать конечную точку вывода для прогнозов в реальном времени. Эта конечная точка обеспечивает плавную интеграцию с приложениями и системами, обеспечивая доступ по требованию к прогнозным возможностям модели через безопасный интерфейс HTTPS. Прогнозы в реальном времени можно использовать в таких сценариях, как прогноз цен на акции и спроса на энергию. Наша конечная точка предоставляет одноэтапный прогноз для предоставленных данных временных рядов, представленных в виде процентилей и медианы, как показано на следующем рисунке и в таблице.
1st процентилю | 5th процентилю | медиана | 95th процентилю | 99th процентилю |
1.12 | 3.16 | 4.70 | 7.40 | 9.41 |
Убирать
После запуска этого решения обязательно очистите все ненужные ресурсы AWS, чтобы избежать непредвиденных расходов. Вы можете очистить эти ресурсы с помощью SageMaker Python SDK, который можно найти в конце блокнота. Удалив эти ресурсы, вы предотвратите дальнейшую оплату за ресурсы, которые вы больше не используете.
Заключение
Наличие точного прогноза может сильно повлиять на будущее планирование бизнеса, а также может помочь решить множество проблем в различных отраслях. Наше исследование надежного прогнозирования временных рядов с помощью MLOps в SageMaker продемонстрировало метод получения точного прогноза и эффективность оптимизированного конвейера обучения.
Наша модель, основанная на временной сверточной сети со сращенным бинированным распределением Парето, продемонстрировала точность и адаптируемость к выбросам, улучшив RMSE на 61 % в базовом диапазоне, на 56 % в нижнем хвосте и на 30 % в верхнем хвосте по сравнению с тем же TCN с распределением Гаусса. Эти цифры делают его надежным решением для реальных потребностей прогнозирования.
Этот конвейер демонстрирует ценность автоматизации функций MLOps. Это может сократить ручные усилия человека, обеспечить воспроизводимость и ускорить развертывание модели. Это возможно благодаря таким функциям SageMaker, как конвейеры SageMaker, автоматическая настройка модели, эксперименты SageMaker, реестр моделей SageMaker и конечные точки.
В нашем решении используется миниатюрная TCN, оптимизирующая всего несколько гиперпараметров с ограниченным количеством слоев, которых достаточно для эффективного выявления производительности модели. В более сложных случаях использования рассмотрите возможность использования PyTorch или других библиотек на основе PyTorch, чтобы создать более настраиваемую TCN, соответствующую вашим конкретным потребностям. Кроме того, было бы полезно изучить другие Возможности SageMaker для дальнейшего улучшения функциональности вашего конвейера. Чтобы полностью автоматизировать процесс развертывания, вы можете использовать Комплект для разработки облачных сервисов AWS (AWS CDK) или AWS CloudFormation.
Для получения дополнительной информации о прогнозировании временных рядов на AWS см. следующее:
Не стесняйтесь оставлять комментарии с любыми мыслями или вопросами!
Об авторах
Ник Бисо — инженер по машинному обучению в AWS Professional Services. Он решает сложные организационные и технические задачи, используя науку о данных и инженерию. Кроме того, он создает и развертывает модели AI/ML в облаке AWS. Его страсть распространяется на его склонность к путешествиям и разнообразному культурному опыту.
Алстон Чан — инженер по разработке программного обеспечения в Amazon Ads. Он создает конвейеры машинного обучения и системы рекомендаций для рекомендаций по продуктам на странице сведений. Помимо работы, он увлекается разработкой игр и скалолазанием.
Мария Масуд специализируется на создании конвейеров данных и визуализации данных на платформе AWS Commerce. Она обладает опытом в области машинного обучения, включая обработку естественного языка, компьютерное зрение и анализ временных рядов. Будучи в глубине души энтузиастом устойчивого развития, Мария любит заниматься садоводством и играть со своей собакой во время простоя.
- SEO-контент и PR-распределение. Получите усиление сегодня.
- PlatoData.Network Вертикальный генеративный ИИ. Расширьте возможности себя. Доступ здесь.
- ПлатонАйСтрим. Интеллект Web3. Расширение знаний. Доступ здесь.
- ПлатонЭСГ. Углерод, чистые технологии, Энергия, Окружающая среда, Солнечная, Управление отходами. Доступ здесь.
- ПлатонЗдоровье. Биотехнологии и клинические исследования. Доступ здесь.
- Источник: https://aws.amazon.com/blogs/machine-learning/robust-time-series-forecasting-with-mlops-on-amazon-sagemaker/
- :имеет
- :является
- :нет
- :куда
- $UP
- 100
- 5
- 7
- a
- способность
- О нас
- ускорять
- ускоряет
- доступ
- доступной
- выполнено
- Учетная запись
- точность
- точный
- точно
- Достигает
- через
- фактического соединения
- ациклический
- приспосабливать
- дополнение
- Дополнительно
- адреса
- объявления
- против
- впереди
- AI / ML
- Часы работы
- алгоритм
- выравнивать
- Выравнивает
- распределение
- Позволяющий
- позволяет
- вдоль
- причислены
- Amazon
- Создатель мудреца Амазонки
- Amazon Web Services
- an
- анализ
- анализировать
- и
- предвидеть
- любой
- отношение
- Приложения
- утверждение
- архитектура
- МЫ
- AS
- оценить
- оценивает
- активы
- связанный
- At
- Авторы
- автоматизировать
- Автоматический
- автоматически
- Автоматизация
- автоматизация
- доступен
- избежать
- AWS
- Профессиональные услуги AWS
- Ось
- Использование темпера с изогнутым основанием
- основанный
- BE
- , так как:
- было
- поведение
- за
- полезный
- Преимущества
- ЛУЧШЕЕ
- Лучшая
- между
- смещение
- BIN
- изоферменты печени
- широкий
- Строительство
- строит
- бизнес
- но
- кнопка
- by
- CAN
- возможности
- возможности
- способный
- захватить
- перехватывает
- Захват
- случаев
- Клетки
- проблемы
- сложные
- изменения
- отличающийся
- расходы
- выбор
- нажмите на
- Восхождение
- тесно
- облако
- облачная инфраструктура
- код
- комментарий
- Commerce
- сравнить
- сравнение
- полный
- завершение
- комплекс
- Ослабленный
- компьютер
- Компьютерное зрение
- состояние
- Условия
- проводятся
- Рассматривать
- Консоли
- постоянная
- строить
- Container
- контекст
- (CIJ)
- переделанный
- Цена
- Расходы
- покрытие
- Создайте
- создали
- Создающий
- создание
- критической
- решающее значение
- культурный
- Текущий
- подгонянный
- цикл
- данным
- обработка данных
- наука о данных
- управляемых данными
- Наборы данных
- Время
- Принятие решений
- решения
- По умолчанию
- определяющий
- Спрос
- Прогнозирование спроса
- убивают
- демонстрирует
- обозначает
- Зависимости
- зависимый
- развертывание
- развернуть
- развертывание
- развертывание
- развертывает
- предназначенный
- подробность
- подробнее
- Определять
- определяет
- определения
- Развитие
- различный
- Отличаясь
- направленный
- бедствия
- обсуждать
- расстояние
- отчетливый
- распределение
- распределения
- Разное
- Разделенный
- Собака
- DOT
- время простоя
- в течение
- каждый
- Эффективный
- фактически
- эффективность
- затрат
- эффективный
- эффективно
- усилие
- элементы
- используя
- работает
- Наделяет
- включить
- позволяет
- позволяет
- охватывая
- конец
- впритык
- Конечная точка
- энергетика
- инженер
- Проект и
- повышать
- повышение
- обеспечивать
- энтузиаст
- Окружающая среда
- средах
- эпохи
- ошибка
- существенный
- установить
- оценивается
- оценки
- оценка
- События
- События
- развивается
- пример
- Впечатления
- Эксперименты
- опыта
- исследование
- Больше
- продолжается
- обширный
- экстремальный
- облегчающий
- Падение
- Особенность
- Особенности
- несколько
- фигура
- цифры
- финансовый
- Финансовые институты
- Найдите
- Во-первых,
- соответствовать
- следовать
- после
- Что касается
- Прогноз
- Прогнозы
- форма
- найденный
- Год основания
- Бесплатно
- Freedom
- от
- полностью
- функциональность
- далее
- Более того
- будущее
- Gain
- игра
- игра-разработка
- калибр
- Gen
- генерируется
- генерирует
- порождающий
- поколение
- данный
- Go
- Управляет
- GPD
- гранты
- Графики
- обрабатывать
- упряжь
- Освоение
- Есть
- he
- здравоохранение
- Сердце
- помогает
- ее
- здесь
- выделив
- очень
- его
- исторический
- горизонт
- хостинг
- Как
- Однако
- HTML
- HTTPS
- человек
- Настройка гиперпараметра
- определения
- иллюстрирует
- изображений
- Влияние
- осуществлять
- важную
- улучшенный
- улучшается
- улучшение
- in
- включать
- Увеличение
- независимые
- указывает
- промышленности
- повлиять
- информация
- сообщил
- Инфраструктура
- вход
- понимание
- размышления
- вместо
- учреждения
- интегрированный
- интеграции.
- Интерфейс
- в
- с участием
- IT
- итерации
- ЕГО
- работа
- Джобс
- JPG
- всего
- хранение
- хранится
- Основные
- язык
- большой
- слоев
- вести
- узнали
- изучение
- Оставлять
- оставил
- Длина
- библиотеки
- такое как
- вероятность
- Вероятно
- Ограниченный
- расположенный
- дольше
- потери
- ниже
- низший
- машина
- обучение с помощью машины
- сделать
- Создание
- управлять
- управляемого
- управление
- управления
- руководство
- maria
- рынок
- крах рынка
- значить
- значимым
- Метаданные
- метод
- Методология
- методы
- метрический
- пропущенный
- ML
- млн операций в секунду
- модель
- Модели
- Режимы
- Мониторинг
- БОЛЕЕ
- самых
- с разными
- натуральный
- Обработка естественного языка
- природа
- потребности
- пренебрегающий
- сеть
- Новые
- следующий
- следующего поколения
- NFL
- нет
- Шум
- ноутбук
- номер
- многочисленный
- объект
- наблюдать
- получать
- of
- Предложения
- on
- On-Demand
- ONE
- только
- открытый
- Возможности
- оптимальный
- Оптимизировать
- оптимизирующий
- or
- организационной
- организует
- оригинал
- Другое
- наши
- Результаты
- выходной
- внешнюю
- за
- общий
- пакет
- коробок
- страница
- Пандемия
- бумага & картон
- Параллельные
- параметр
- параметры
- Парето
- Прохождение
- страсть
- мимо
- паттеранами
- ИДЕАЛЬНОЕ
- производительность
- трубопровод
- планирование
- Платформа
- Платон
- Платон Интеллектуальные данные
- ПлатонДанные
- игры
- играет
- Точка
- пунктов
- возможное
- После
- мощностью
- Питание
- мощный
- предсказывать
- предсказанный
- прогноз
- Predictions
- предсказывает
- представлены
- предотвращать
- предыдущий
- цена
- приоритезация
- проблемам
- процесс
- обработка
- Продукт
- Производство
- профессиональный
- доказанный
- обеспечивать
- при условии
- приводит
- обеспечение
- Питон
- pytorch
- повышение
- случайный
- ассортимент
- быстро
- Обменный курс
- готовый
- Готовится
- реальные
- реальный мир
- реального времени
- последний
- Рекомендация
- рекомендаций
- Red
- уменьшить
- снижает
- относиться
- понимается
- совершенствовать
- районы
- реестра
- соответствующие
- складская
- полагаться
- оставаться
- замещать
- Отчеты
- представлять
- представленный
- представляет
- ресурс
- Полезные ресурсы
- соответственно
- отзывчивый
- результат
- Итоги
- Снижение
- управление рисками
- надежный
- прочность
- Рок
- Роли
- корень
- Run
- работает
- Сохранность
- sagemaker
- Конвейеры SageMaker
- то же
- Сохранить
- Масштабируемость
- Шкала
- Сценарии
- Наука
- скрипт
- SDK
- бесшовные
- Поиск
- Сектора юридического права
- безопасный
- выбранный
- выбор
- Серии
- служить
- Услуги
- набор
- Наборы
- Форма
- она
- показывать
- показанный
- подпись
- существенно
- просто
- одновременно
- Размер
- Software
- разработка программного обеспечения
- Решение
- Решения
- Решает
- специализируется
- конкретный
- конкретно
- указанный
- раскол
- распространение
- В квадрате
- Этап
- Статус:
- оставаться
- Шаг
- Шаги
- акции
- диск
- магазины
- упорядочить
- обтекаемый
- впоследствии
- успех
- такие
- достаточный
- Убедитесь
- Стабильность
- синтетический
- системы
- ТАБЛИЦЫ
- Сложность задачи
- Технический
- тестXNUMX
- проверенный
- Тестирование
- который
- Ассоциация
- мир
- их
- тогда
- следовательно
- Эти
- этой
- Через
- время
- Временные ряды
- в
- Отслеживание
- Торговля
- трафик
- Train
- специалистов
- Обучение
- путешествовать
- два
- Типы
- претерпевать
- Неожиданный
- ненужный
- загружено
- us
- использование
- используемый
- удобно
- пользователей
- через
- использовать
- использует
- Использующий
- Проверка
- ценностное
- Наши ценности
- разнообразие
- различный
- версия
- версии
- с помощью
- видение
- жизненный
- vs
- законопроект
- we
- Погода
- Web
- веб-сервисы
- будь то
- , которые
- широкий
- будете
- в
- Работа
- рабочий
- Рабочие процессы
- работает
- Мир
- бы
- Ты
- ВАШЕ
- зефирнет
- нуль