НОВИНИ

Ноу-хау: нейронні мережі в фермерському господарстві

09.09.2016 08:46


Приблизно рік тому японець на ім’я Макото Койке вирішив допомогти своїм батькам, які займаються вирощуванням огірків. В Японії великі і прямі огірки вважаються товаром екстра-класу, тому всі фермери прагнуть вирощувати ці овочі саме такої форми.

Зробити це важко, і Койке в цьому переконався. «Кожен огірок відрізняється від інших – усі вони бувають різної форми, якості і свіжості», – пояснює інженер. Для того, щоб кінцевий продукт потрапив в магазини, овочі необхідно сортувати. В Японії налічується дев’ять класів огірків. Класифікація проводиться згідно з формою, розміром і низкою інших властивостей. Чим вище клас, тим дорожче огірок.

Класи огірків згідно японським стандартам

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

Койке взяв за основу свого огірково-сортувального алгоритму open-source-розробку Google, технологію TensorFlow. У 2015 році компанія відкрила вихідний код цього продукту для всіх. TensorFlow дозволяє розробнику використовувати готовий код і можливості нейронних мереж, а не створювати все з нуля. Для створення власного проекту необхідно завантажити код, прочитати інструкцію – і можна починати роботу.

Крім коду, потрібно ще й апаратне забезпечення. Японець використовував Arduino Micro і Raspberry Pi 3. Електроніка використовувалася в якості основного контролера для роботи з камерою і відсилання зображень в Google Cloud, де відбувався аналіз інформації. Також плати управляють сервоприводами сортувальника.


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

Після цього Койке розробив конвеєр і сортувальну систему. Камера фотографувала, як проходять по конвеєру огірки, нейронна мережа класифікувала їх. Залишалося лише розподіляти огірки по шухлядах, виходячи з класу. Для цього Койке створив роботизовану руку.

Для того, щоб отримати фотографії огірків різних класів, відсортованих його матір’ю, японець витратив близько трьох місяців. Йому довелося зробити і завантажити в систему більше 7000 знімків огірків. І цього виявилося недостатньо. Коли проводився тест лише з зображеннями, система працювала з точністю в 95%. Але коли справа дійшла до фотографування реальних огірків, точність впала до 70%. Як виявилося, проблема полягала в тому, що бази з кількох тисяч фотографій недостатньо для якісного навчання системи.

Друга проблема – в тому, що система споживає багато ресурсів, часу і енергії. Поточний сортувальник – це звичайний комп’ютер на базі Windows, який використовується для тренування нейронної мережі. І хоча комп’ютер перетворює отримані фотокамерами знімки в зображення з роздільною здатністю 80х80 пікселів, навчання системи на їх основі займає 2-3 дні.

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

Свою проблему японець планує вирішити за допомогою ще одного сервісу Google. Cейчас корпорація пропонує за низькою ціною хмарну платформу Cloud Machine Learning (Cloud ML). Тут задіяні тисячі серверів. Вони обробляють інформацію і допомагають навчати нейронну систему на основі TensorFlow.

Зараз Макото Койке планує використовувати Google ML в своїх цілях. «Я можу використовувати сервіс для створення системи навчання на основі набагато більш якісних знімків. Також я можу використовувати різні конфігурації, параметри і алгоритми нейронної системи, що може допомогти знайти варіант, при якому система буде найточніше ».

Поки результати роботи Койке з Google ML недоступні, він продовжує експерименти.

За матеріалами: vc.ru


Читай нас також у Viber та Telegram, поширюй новину на своїй сторінці:
Поширити: