З використанням хмарних обчислень, великих даних і інструментів машинного навчання (ML), таких як Амазонка Афіна or Amazon SageMaker стали доступними та придатними для використання будь-ким без особливих зусиль у створенні та підтримці. Промислові компанії все більше звертають увагу на аналітику даних і прийняття рішень на основі даних, щоб підвищити ефективність використання ресурсів у всьому своєму портфоліо, від операцій до виконання прогнозного обслуговування або планування.
Через швидкість змін в ІТ клієнти в традиційних галузях стикаються з дилемою набору навичок. З одного боку, аналітики та експерти в області мають дуже глибокі знання про дані, про які йде мова, і їх інтерпретацію, але часто не мають доступу до інструментів науки про дані та мов програмування високого рівня, таких як Python. З іншого боку, фахівцям з обробки даних часто не вистачає досвіду, щоб інтерпретувати вміст машинних даних і фільтрувати їх за релевантністю. Ця дилема перешкоджає створенню ефективних моделей, які використовують дані для створення важливих для бізнесу ідей.
Canvas Amazon SageMaker вирішує цю дилему, надаючи експертам домену безкодовий інтерфейс для створення потужної аналітики та моделей машинного навчання, таких як прогнози, класифікація або регресійні моделі. Це також дозволяє розгортати та ділитися цими моделями зі спеціалістами з ML і MLOps після створення.
У цій публікації ми покажемо вам, як використовувати SageMaker Canvas для курування та вибору правильних функцій у ваших даних, а потім навчити модель прогнозування для виявлення аномалій, використовуючи функцію без коду SageMaker Canvas для налаштування моделі.
Виявлення аномалій для обробної промисловості
На момент написання статті SageMaker Canvas зосереджується на типових бізнес-випадках використання, таких як прогнозування, регресія та класифікація. У цій публікації ми демонструємо, як ці можливості також можуть допомогти виявити складні аномальні точки даних. Цей варіант використання доречний, наприклад, для визначення несправностей або незвичних операцій промислових машин.
Виявлення аномалій є важливим у галузевій сфері, оскільки машини (від поїздів до турбін) зазвичай дуже надійні, а час між відмовами охоплює роки. Більшість даних із цих машин, як-от показники датчика температури або повідомлення про стан, описують нормальну роботу та мають обмежене значення для прийняття рішень. Інженери шукають аномальні дані під час дослідження основних причин несправності або як індикатори попередження про майбутні несправності, а менеджери з продуктивності перевіряють ненормальні дані, щоб визначити потенційні покращення. Тому типовий перший крок у переході до прийняття рішень на основі даних залежить від пошуку відповідних (ненормальних) даних.
У цьому дописі ми використовуємо SageMaker Canvas, щоб курувати та вибирати правильні функції в даних, а потім навчаємо модель прогнозування для виявлення аномалій, використовуючи функцію без коду SageMaker Canvas для налаштування моделі. Потім ми розгортаємо модель як кінцеву точку SageMaker.
Огляд рішення
Для нашого випадку використання виявлення аномалій ми навчаємо модель прогнозування, щоб передбачати характерну характеристику нормальної роботи машини, таку як температура двигуна, що вказується в автомобілі, на основі впливаючих характеристик, таких як швидкість і останній крутний момент, застосований в автомобілі . Для виявлення аномалії на новій вибірці вимірювань ми порівнюємо прогнози моделі для характерної ознаки з наданими спостереженнями.
Для прикладу автомобільного двигуна експерт у галузі отримує вимірювання нормальної температури двигуна, останнього крутного моменту двигуна, температури навколишнього середовища та інших потенційних факторів впливу. Це дозволяє навчити модель передбачати температуру на основі інших функцій. Потім ми можемо використовувати модель для регулярного прогнозування температури двигуна. Коли прогнозована температура для цих даних подібна до спостережуваної температури в цих даних, двигун працює нормально; невідповідність вкаже на аномалію, наприклад, на несправність системи охолодження або дефект двигуна.
Наступна діаграма ілюструє архітектуру рішення.
Рішення складається з чотирьох ключових кроків:
- Експерт домену створює початкову модель, включаючи аналіз даних і коригування функцій за допомогою SageMaker Canvas.
- Експерт домену ділиться моделлю через Реєстр моделей Amazon SageMaker або розгортає його безпосередньо як кінцеву точку реального часу.
- Експерт MLOps створює інфраструктуру висновків і код, що перетворює вихідні дані моделі з прогнозу в індикатор аномалії. Цей код зазвичай виконується всередині AWS Lambda функції.
- Коли програма потребує виявлення аномалії, вона викликає функцію Lambda, яка використовує модель для висновку та надає відповідь (незалежно від того, чи є це аномалією).
Передумови
Щоб продовжити цю публікацію, ви повинні відповідати таким умовам:
Створіть модель за допомогою SageMaker
Процес створення моделі виконується за стандартними кроками для створення регресійної моделі в SageMaker Canvas. Для отримання додаткової інформації див Початок роботи з Amazon SageMaker Canvas.
По-перше, експерт домену завантажує відповідні дані в SageMaker Canvas, наприклад часові ряди вимірювань. Для цієї публікації ми використовуємо файл CSV, що містить (згенеровані штучно) вимірювання електродвигуна. Детальніше див Імпортуйте дані в Canvas. Використані зразки даних доступні для завантаження як a CSV.
Опрацюйте дані за допомогою SageMaker Canvas
Після завантаження даних експерт домену може використовувати SageMaker Canvas, щоб керувати даними, які використовуються в остаточній моделі. Для цього експерт вибирає ті стовпці, які містять характерні вимірювання для розглянутої проблеми. Точніше кажучи, експерт вибирає стовпці, які пов’язані один з одним, наприклад, фізичним співвідношенням, таким як крива тиску та температури, і де зміна цього співвідношення є відповідною аномалією для їхнього випадку використання. Модель виявлення аномалій вивчатиме нормальний зв’язок між вибраними стовпцями та вказуватиме, коли дані їм не відповідають, наприклад аномально висока температура двигуна з огляду на поточне навантаження на двигун.
На практиці експерт домену повинен вибрати набір відповідних вхідних стовпців і цільовий стовпець. Вхідні дані зазвичай являють собою набір величин (числових або категорійних), які визначають поведінку машини, від налаштувань попиту до навантаження, швидкості або температури навколишнього середовища. Вихідні дані, як правило, є числовою величиною, яка вказує на ефективність роботи машини, таку як розсіювання енергії для вимірювання температури або інший показник продуктивності, що змінюється, коли машина працює в неоптимальних умовах.
Щоб проілюструвати концепцію того, які величини вибрати для введення та виведення, розглянемо кілька прикладів:
- Для обертового обладнання, такого як модель, яку ми створюємо в цій публікації, типовими вхідними даними є швидкість обертання, крутний момент (поточний і попередній) і температура навколишнього середовища, а цільовими значеннями є результуюча температура підшипника або двигуна, що вказує на хороші робочі умови обертання.
- Для вітряної турбіни типовими вхідними даними є поточна та нещодавня історія швидкості вітру та налаштувань лопаті ротора, а цільовою величиною є вироблена потужність або швидкість обертання
- Для хімічного процесу типовими вхідними даними є відсоток різних інгредієнтів і температура навколишнього середовища, а цільовими показниками є виділене тепло або в’язкість кінцевого продукту.
- Для рухомого обладнання, такого як розсувні двері, типовими вхідними даними є вхідна потужність двигунів, а цільовим значенням є швидкість або час завершення руху
- Для системи HVAC типовими вхідними даними є досягнута різниця температур і налаштування навантаження, а цільовою величиною є виміряне споживання енергії
Зрештою, правильні вхідні дані та цілі для даного обладнання залежатимуть від варіанту використання та аномальної поведінки, яку потрібно виявити, і найкраще відомі фахівцеві в галузі, який знайомий із тонкощами конкретного набору даних.
У більшості випадків вибір відповідних вхідних і цільових кількостей означає вибір лише правих стовпців і позначення цільового стовпця (для цього прикладу, bearing_temperature
). Однак експерт із домену також може використовувати функції без коду SageMaker Canvas для трансформації стовпців і уточнення чи агрегування даних. Наприклад, ви можете витягнути або відфільтрувати конкретні дати чи позначки часу з даних, які не є актуальними. SageMaker Canvas підтримує цей процес, показуючи статистику вибраних кількостей, що дає змогу зрозуміти, чи кількість має викиди та розкид, який може вплинути на результати моделі.
Тренуйте, налаштовуйте та оцінюйте модель
Після того як експерт домену вибере відповідні стовпці в наборі даних, він може навчити модель вивчати зв’язок між вхідними та вихідними даними. Точніше, модель навчиться прогнозувати цільове значення, вибране з вхідних даних.
Зазвичай ви можете використовувати полотно SageMaker Попередній перегляд моделі варіант. Це забезпечує швидку індикацію очікуваної якості моделі та дозволяє досліджувати вплив різних вхідних даних на вихідну метрику. Наприклад, на наступному скріншоті модель найбільше постраждала від motor_speed
та ambient_temperature
метрики при прогнозуванні bearing_temperature
. Це розумно, оскільки ці температури тісно пов’язані. У той же час додаткове тертя або інші засоби втрати енергії можуть впливати на це.
Що стосується якості моделі, RMSE моделі є індикатором того, наскільки добре модель змогла вивчити нормальну поведінку в навчальних даних і відтворити зв’язки між вхідними та вихідними показниками. Наприклад, у наведеній нижче моделі модель повинна мати можливість передбачити правильне motor_bearing
температура в межах 3.67 градусів за Цельсієм, тому ми можемо розглядати відхилення реальної температури від прогнозу моделі, яке перевищує, наприклад, 7.4 градуса, як аномалію. Однак реальний поріг, який ви використовуватимете, залежатиме від чутливості, необхідної в сценарії розгортання.
Нарешті, після завершення оцінювання та налаштування моделі ви можете розпочати повне навчання моделі, яке створить модель для використання для висновків.
Розгортання моделі
Хоча SageMaker Canvas може використовувати модель для висновків, продуктивне розгортання для виявлення аномалій вимагає розгортання моделі за межами SageMaker Canvas. Точніше, нам потрібно розгорнути модель як кінцеву точку.
У цій публікації для простоти ми розгортаємо модель як кінцеву точку безпосередньо з SageMaker Canvas. Інструкції див Розгорніть свої моделі до кінцевої точки. Обов’язково запам’ятайте назву розгортання та врахуйте ціну типу інсталяції, на якій ви розгортаєте (для цієї публікації ми використовуємо ml.m5.large). Потім SageMaker Canvas створить кінцеву точку моделі, яку можна викликати для отримання прогнозів.
У промислових умовах модель має пройти ретельне тестування, перш ніж її можна буде розгорнути. Для цього експерт домену не розгортатиме її, а натомість надасть модель реєстру моделей SageMaker. Тут може взяти на себе експерт з операцій MLOps. Як правило, цей експерт перевірить кінцеву точку моделі, оцінить розмір обчислювального обладнання, необхідного для цільової програми, і визначить найбільш економічно ефективне розгортання, наприклад розгортання безсерверного висновку або пакетного висновку. Ці кроки зазвичай автоматизовані (наприклад, за допомогою Трубопроводи Amazon Sagemaker або Amazon SDK).
Використовуйте модель для виявлення аномалій
На попередньому кроці ми створили розгортання моделі в SageMaker Canvas під назвою canvas-sample-anomaly-model
. Ми можемо використовувати його для отримання прогнозів a bearing_temperature
значення на основі інших стовпців у наборі даних. Тепер ми хочемо використовувати цю кінцеву точку для виявлення аномалій.
Щоб виявити аномальні дані, наша модель використовуватиме кінцеву точку моделі прогнозування, щоб отримати очікуване значення цільової метрики, а потім порівняти прогнозоване значення з фактичним значенням у даних. Прогнозоване значення вказує на очікуване значення для нашої цільової метрики на основі даних навчання. Таким чином, різниця цього значення є показником ненормальності фактичних спостережуваних даних. Ми можемо використовувати такий код:
Попередній код виконує такі дії:
- Вхідні дані фільтруються до потрібних функцій (функція «
input_transformer
). - Кінцева точка моделі SageMaker викликається з відфільтрованими даними (функція "
do_inference
“), де ми обробляємо форматування введення та виведення відповідно до зразка коду, який надається під час відкриття сторінки деталей нашого розгортання в SageMaker Canvas. - Результат виклику приєднується до вихідних вхідних даних, а різниця зберігається в стовпці помилок (функція “
output_transform
).
Знайдіть аномалії та оцініть аномальні події
У типовій установці код для отримання аномалій виконується у функції Лямбда. Функцію Lambda можна викликати з програми або API -шлюз Amazon. Основна функція повертає оцінку аномалії для кожного рядка вхідних даних — у цьому випадку часовий ряд оцінки аномалії.
Для тестування ми також можемо запустити код у блокноті SageMaker. Наступні графіки показують вхідні та вихідні дані нашої моделі при використанні вибіркових даних. Піки у відхиленні між прогнозованими та фактичними значеннями (оцінка аномалії, показана на нижньому графіку) вказують на аномалії. Наприклад, на графіку ми можемо побачити три чіткі піки, де оцінка аномалії (різниця між очікуваною та реальною температурою) перевищує 7 градусів Цельсія: перший після тривалого простою, другий під час різкого зниження температури. bearing_temperature
, а останнє де bearing_temperature
висока порівняно з motor_speed
.
У багатьох випадках вже достатньо знати часові ряди оцінки аномалії; ви можете встановити порогове значення, коли потрібно попереджати про значну аномалію, виходячи з потреби в чутливості моделі. Тоді поточна оцінка вказує на те, що машина має ненормальний стан, який потребує дослідження. Наприклад, для нашої моделі абсолютне значення показника аномалії розподілено, як показано на наступному графіку. Це підтверджує, що більшість показників аномалії є нижчими (2xRMS=)8 градусів, знайдених під час навчання для моделі як типова помилка. Графік може допомогти вам вибрати порогове значення вручну, щоб потрібний відсоток оцінених зразків позначався як аномалії.
Якщо бажаним виходом є події аномалій, тоді оцінки аномалій, надані моделлю, потребують уточнення, щоб бути актуальними для використання в бізнесі. Для цього експерт з ML зазвичай додає постобробку, щоб усунути шум або великі піки на оцінці аномалії, наприклад додавання змінного середнього. Крім того, експерт зазвичай оцінює бал аномалії за логікою, подібною до підвищення Amazon CloudWatch тривога, наприклад моніторинг перевищення порогового значення протягом певного періоду. Додаткову інформацію про налаштування будильників див Використання будильників Amazon CloudWatch. Запуск цих оцінок у функції Lambda дозволяє надсилати попередження, наприклад, шляхом публікації попередження на Служба простих сповіщень Amazon (Amazon SNS) тема.
Прибирати
Після завершення використання цього рішення вам слід очистити, щоб уникнути непотрібних витрат:
- У SageMaker Canvas знайдіть розгортання кінцевої точки моделі та видаліть її.
- Вийдіть із SageMaker Canvas, щоб уникнути стягнення плати за його бездіяльну роботу.
Підсумки
У цій публікації ми показали, як експерт домену може оцінити вхідні дані та створити модель ML за допомогою SageMaker Canvas без необхідності писати код. Потім ми показали, як використовувати цю модель для виявлення аномалій у реальному часі за допомогою SageMaker і Lambda через простий робочий процес. Ця комбінація дає змогу експертам із домену використовувати свої знання для створення потужних моделей машинного навчання без додаткового навчання в галузі даних, а також дозволяє експертам MLOps використовувати ці моделі та робити їх доступними для висновків гнучко та ефективно.
Для SageMaker Canvas доступний 2-місячний безкоштовний рівень, після чого ви платите лише за те, що використовуєте. Почніть експериментувати сьогодні та додайте машинне навчання, щоб максимально використати свої дані.
Про автора
Хельге Ауфдерхайде є ентузіастом створення даних, придатних для використання в реальному світі, з великим акцентом на автоматизації, аналітиці та машинному навчанні в промислових додатках, таких як виробництво та мобільність.
- Розповсюдження контенту та PR на основі SEO. Отримайте посилення сьогодні.
- PlatoData.Network Vertical Generative Ai. Додайте собі сили. Доступ тут.
- PlatoAiStream. Web3 Intelligence. Розширення знань. Доступ тут.
- ПлатонЕСГ. вуглець, CleanTech, Енергія, Навколишнє середовище, Сонячна, Поводження з відходами. Доступ тут.
- PlatoHealth. Розвідка про біотехнології та клінічні випробування. Доступ тут.
- джерело: https://aws.amazon.com/blogs/machine-learning/detect-anomalies-in-manufacturing-data-using-amazon-sagemaker-canvas/
- : має
- :є
- : ні
- :де
- $UP
- 100
- 25
- 67
- 7
- a
- Здатний
- ненормальний
- ненормальність
- МЕНЮ
- абсолют
- Прийняти
- доступний
- За
- досягнутий
- через
- дії
- фактичний
- додавати
- додати
- доповнення
- Додатковий
- адреси
- впливати
- постраждалих
- після
- потім
- проти
- сукупність
- тривога
- дозволяти
- Дозволити
- дозволяє
- по
- вже
- Також
- Amazon
- Amazon SageMaker
- Canvas Amazon SageMaker
- Amazon Web Services
- Ambient
- an
- аналіз
- аналітики
- аналітика
- та
- аномалії
- виявлення аномалії
- Інший
- будь
- API
- додаток
- застосування
- прикладної
- архітектура
- ЕСТЬ
- AS
- At
- Автоматизований
- Автоматизація
- доступний
- уникнути
- AWS
- AWS Lambda
- Вісь
- заснований
- основа
- BE
- оскільки
- ставати
- перед тим
- поведінка
- нижче
- еталонний тест
- КРАЩЕ
- між
- Великий
- Великий даних
- BLADE
- тіло
- порушення
- будувати
- бізнес
- але
- button
- by
- званий
- Виклики
- CAN
- полотно
- можливості
- автомобіль
- випадок
- випадків
- Причини
- Цельсія
- зміна
- заміна
- характеристика
- вантажі
- хімічний
- Вибирати
- класифікація
- очистити
- тісно
- хмара
- хмарних обчислень
- код
- збір
- Колонка
- Колони
- поєднання
- Компанії
- порівняти
- порівняний
- повний
- завершення
- комплекс
- обчислення
- концепція
- Умови
- конфігурація
- Вважати
- складається
- споживання
- містити
- зміст
- охолоджувальна система
- виправити
- Коштувати
- створювати
- створений
- створює
- створення
- курити
- курація
- Поточний
- крива
- Клієнти
- дані
- аналіз даних
- Analytics даних
- точки даних
- наука про дані
- керовані даними
- Дати
- Прийняття рішень
- зменшується
- глибокий
- Попит
- демонструвати
- залежати
- розгортання
- розгорнути
- розгортання
- розгортає
- описує
- бажаний
- деталі
- виявляти
- Виявлення
- Визначати
- відхилення
- схема
- різниця
- різний
- безпосередньо
- невідповідність
- чіткий
- розподілений
- Ні
- домен
- Двері
- вниз
- скачати
- Падіння
- тривалість
- під час
- кожен
- ефект
- ефективність
- ефективний
- продуктивно
- зусилля
- повноваження
- дозволяє
- кінець
- Кінцева точка
- енергія
- Енергоспоживання
- Інженери
- ентузіаст
- Весь
- обладнання
- помилка
- оцінювати
- оцінюється
- оцінка
- оцінки
- Події
- досліджувати
- приклад
- Приклади
- очікувати
- очікуваний
- досвід
- експериментувати
- експерт
- experts
- експонування
- витяг
- облицювання
- фактори
- відсутності
- збої
- знайомий
- недоліки
- особливість
- риси
- кілька
- філе
- фільтрувати
- остаточний
- знайти
- виявлення
- Перший
- гнучко
- Сфокусувати
- фокусується
- стежити
- після
- слідує
- для
- Прогнози
- знайдений
- чотири
- Безкоштовна
- тертя
- від
- функція
- функціональність
- майбутнє
- породжувати
- генерується
- отримати
- даний
- добре
- графік
- графіки
- рука
- обробляти
- Обробка
- Мати
- допомога
- тут
- Високий
- на вищому рівні
- історія
- Як
- How To
- Однак
- HTML
- HTTP
- HTTPS
- ідентифікувати
- Idle
- if
- ілюструвати
- ілюструє
- зображення
- імпорт
- важливо
- поліпшення
- in
- У тому числі
- Augmenter
- все більше і більше
- індекс
- вказувати
- зазначений
- вказує
- вказуючи
- індикація
- індикатор
- індикатори
- промислові
- промисловості
- промисловість
- впливаючи
- інформація
- Інфраструктура
- початковий
- вхід
- витрати
- всередині
- розуміння
- екземпляр
- замість
- інструкції
- інтерфейс
- інтерпретація
- в
- тонкощі
- дослідити
- розслідування
- дослідження
- викликали
- IT
- ЙОГО
- приєднався
- JPG
- json
- ключ
- Знання
- знання
- відомий
- відсутність
- мови
- великий
- більше
- останній
- УЧИТЬСЯ
- вивчення
- як
- Ймовірно
- обмеженою
- лінійний
- ліній
- загрузка
- вантажі
- логіка
- Довго
- подивитися
- від
- знизити
- машина
- навчання за допомогою машини
- Машинки для перманенту
- головний
- обслуговування
- зробити
- Робить
- Менеджери
- вручну
- виробництво
- багато
- позначено
- маркування
- Може..
- значити
- засоби
- вимірювання
- заходи
- вимір
- Зустрічатися
- повідомлення
- метрика
- Метрика
- ML
- MLOps
- мобільність
- модель
- Моделі
- моніторинг
- більше
- найбільш
- двигун
- Двигуни
- переміщення
- багато
- повинен
- my
- ім'я
- Необхідність
- потреби
- Нові
- шум
- нормальний
- нормально
- увагу
- ноутбук
- сповіщення
- зараз
- отримувати
- отримує
- виникнення
- of
- часто
- on
- ONE
- тільки
- відкриття
- операція
- оперативний
- операції
- варіант
- or
- оригінал
- Інше
- наші
- з
- вихід
- виходи
- поза
- над
- огляд
- сторінка
- панди
- Платити
- відсоток
- Виконувати
- продуктивність
- виконанні
- виступає
- фізичний
- картина
- планування
- plato
- Інформація про дані Платона
- PlatoData
- точка
- точок
- портфель
- пошта
- потенціал
- влада
- потужний
- практика
- попередній
- точно
- передбачати
- передвіщений
- прогнозування
- прогноз
- Прогнози
- Готувати
- передумови
- попередній
- ціни без прихованих комісій
- Проблема
- процес
- Вироблений
- продуктивний
- Програмування
- мови програмування
- забезпечувати
- за умови
- забезпечує
- забезпечення
- Видавничий
- Python
- якість
- кількість
- питання
- Швидко
- залучення
- Читати
- реальний
- Реальний світ
- реального часу
- останній
- послатися
- удосконалювати
- реєстру
- регулярний
- пов'язаний
- відносини
- Відносини
- доречний
- надійний
- видаляти
- вимагати
- вимагається
- Вимагається
- ресурс
- відповідь
- результат
- в результаті
- результати
- повертати
- Умови повернення
- право
- рухомий
- корінь
- ROW
- прогін
- біг
- пробіжки
- мудрець
- то ж
- зразок
- сценарій
- наука
- рахунок
- другий
- побачити
- вибрати
- обраний
- вибирає
- послати
- Чутливість
- Серія
- Без сервера
- Послуги
- комплект
- установка
- налаштування
- установка
- Поділитись
- акції
- Повинен
- Показувати
- показав
- показ
- показаний
- Шоу
- значний
- аналогічний
- простий
- простота
- Розмір
- сукупність навичок
- ковзання
- So
- рішення
- деякі
- напруга
- Фахівці
- конкретний
- швидкість
- швидкість
- поширення
- standard
- старт
- почалася
- стан
- статистика
- Статус
- Крок
- заходи
- зберігати
- сильний
- неоптимальний
- такі
- достатній
- підходящий
- Опори
- Переконайтеся
- перевершує
- синтетично
- система
- Приймати
- Мета
- цілі
- тест
- Тестування
- ніж
- Що
- Команда
- Графік
- їх
- Їх
- потім
- отже
- Ці
- вони
- це
- ретельний
- ті
- три
- поріг
- через
- ярус
- час
- Часовий ряд
- times
- до
- сьогодні
- інструменти
- топ
- тема
- до
- традиційний
- поїзд
- Навчання
- поїзда
- Перетворення
- мелодія
- настройка
- два
- тип
- типовий
- типово
- при
- пройти
- розуміти
- непотрібний
- корисний
- використання
- використання випадку
- використовуваний
- використовує
- використання
- значення
- Цінності
- VeloCity
- дуже
- через
- хотіти
- попередження
- було
- we
- Web
- веб-сервіси
- ДОБРЕ
- Що
- Що таке
- коли
- Чи
- який
- ВООЗ
- волі
- вітер
- вікно
- з
- в
- без
- робочий
- робочий
- світ
- б
- запис
- написати код
- лист
- років
- ще
- Ти
- вашу
- зефірнет