Японец решил помочь своим родителям в сортировке огурцов, согласно принятым в Японии 9 классам (согласно форме, размеру и т.п.).
Для этого, он использовал Arduino Micro, Raspberry Pi 3 и open-source разработку от Google — TensorFlow.
Raspberry Pi, используется для работы с камерой и отсылки изображений в Google Cloud, где происходил анализ информации, а контроллер Arduino управляет выполнением сортировщики (при помощи сервоприводов).
Блок-схема сортировщика:
Для получения фотографий (более 7000 снимков) огурцов разных классов, которые сортировала его мать, японец потратил около трёх месяцев, но даже этого оказалось недостаточно: при тестировании точность распознавания составляла 95%, но при работе с реальными огурцами, точность уменьшилась до 70%.
Для тренировки нейронной сети используется обычный ПК с Windows, но даже при преобразовании полученных фотокамерами снимков в изображения с разрешением 80×80 пикселей — обучение системы занимает 2-3 дня.
TensorFlow — open-source библиотека для машинного обучения от компании Google. Была представлена 9 ноября 2015 года.
Код системы написан на языках С++ и Python и распространяется под лицензией Apache.
TensorFlow предоставляет библиотеку готовых алгоритмов численных вычислений, которые реализованы через графы потоков данных (data flow graphs), где:
узлы графа — реализуют математические операции или точки входа/вывода,
рёбра графа — представляют многомерные массивы данных (тензоры), передающиеся между узлами.
Причём, узлы могут быть закреплены за разными вычислительными устройствами и выполняться асинхронно, параллельно обрабатывая все приходящие тензоры.
далее: Программа с нейросетью для закрывания окон на компьютере при приближении начальника
Ссылки
How a Japanese cucumber farmer is using deep learning and TensorFlow
TensorFlow
TensorFlow
TensorFlow: машинное обучение от Google, теперь – умнее и для всех
Hello, TensorFlow. Библиотека машинного обучения от Google
https://github.com/tensorflow/tensorflow
http://playground.tensorflow.org
По теме
Нейронная сеть — введение
Принцип обучения многослойной нейронной сети с помощью алгоритма обратного распространения
Пример работы самоорганизующейся инкрементной нейронной сети SOINN
Сортировка мусора при помощи игры
Автоматизация выращивания грибов на базе Raspberry Pi
Arduino для автоматизации снекового автомата
Автоматический открыватель пивных бутылок на базе Arduino