Розумні двері не пустили додому кота з здобиччю

Американський програміст розробив і встановив у своєму будинку невеликі двері для кота, яка не пускає того, якщо він прийшов з здобиччю в зубах. Вона працює на основі камери і алгоритму, навченого розпізнавати кота з здобиччю, розповів автор на конференції Ignite Seattle.


Методи та алгоритми машинного навчання отримали великий розвиток в останні роки і цей прогрес помітний не тільки в передових технологіях, таких як безпілотні автомобілі або виявлення онкологічних захворювань на ранніх стадіях. Це також дозволило інженерам-любителям використовувати потужні алгоритми у своїх прикладних проектах. Крім самих алгоритмів доступніше стало і апаратне забезпечення. Наприклад, Google у 2017 році випустила недорогу картонну камеру з чіпом для апаратного прискорення нейромережевих алгоритмів.


Американський інженер (Ben Hamm) використовував нейромережеві алгоритми, щоб захистити себе від кота, який приносить здобич у будинок. Він скористався камерою Amazon DeepLens і хмарним сервісом SceMaker для навчання алгоритмів. Крім того, він використовував плату Arduino і підключений до неї замок, що замикає невеликі двері для кота. Вся система влаштована досить просто - якщо камера розпізнає видобуток в зубах кота, вона не пускає його додому, замикаючи двері на 15 хвилин. Крім того, в цьому випадку система відправляє невелику пожертву в Національне Одюбонівське товариство, що займається в тому числі захистом птахів, які страждають від домашніх тварин.

Оскільки публічно доступних датасетів для такого завдання не існує, інженеру довелося створити датасет самому. Він залишив камеру включеною і зібрав майже 23 тисячі кадрів. Їх довелося розмітити вручну, розбивши на чотири класи: кадр без кота, кадр з тими, хто йде до дверей або від неї котом, а також кадр з котом з здобиччю в зубах. Відповідно, робота трьох навчених моделей відбувається в кілька стадій: спочатку камера визначає саму наявність кота перед нею, потім визначає, чи йде він до дверей, а тільки після цього вирішує, чи замикати двері.

Варто відзначити, що в абсолютній більшості випадків кіт з'являвся перед камерою без видобутку, і в датасет потрапили лише 260 кадрів з здобиччю. Для порівняння, кожному з трьох інших класів у датасеті відповідають понад шість тисяч знімків. Такий дисбаланс у навчальній вибірці та малий розмір вибірки для визначення видобутку ускладнює навчання алгоритмів. Проте за п'ять тижнів роботи системи вона лише раз не пустила кота, коли той був без видобутку в зубах, а також коректно розпізнала видобуток в чотирьох з п'яти випадків.

Цікаво, що схожий проект був реалізований в 2002 році за допомогою набагато більш простого обладнання і без нейросетевих алгоритмів. Інженер використовував метод, при якому кішка підсвічується ліхтарем і простий алгоритм аналізує форму тіні на кадрах з цифрової камери.

Нейросетеві алгоритми використовували і для інших застосувань, пов'язаних з котами. Наприклад, у 2016 році американський програміст навчив нейромережу розпізнавати котів на ділянці і активувати систему поливу, що відлякує тварину.

COM_SPPAGEBUILDER_NO_ITEMS_FOUND