1

Мне нужна искусственная библиотека нейронной сети (желательно на python) для одной (простой) задачи. Я хочу обучить его так, чтобы он мог сказать, вещь есть на картинке. Я бы тренировать его, кормя его много картин и сказать, что она содержит Wether вещь я ищу или нет:Нейронная сетевая библиотека для распознавания изображений с истинным ложным основанием

Эти изображения содержат эту вещь, возвращающие (или вероятность его содержащую вещь)

Эти изображения не содержат эту вещь, возвращаем False (или вероятность его содержащий вещь)

Есть ли такая библиотека уже существует? Я довольно новичок в ANN и распознавании изображений; хотя я понимаю, как они работают в принципе, мне сложно найти адекватную библиотеку для этой задачи, и даже исследования в этой области оказались своего рода разочарованием - любые советы в правильном направлении очень ценятся.

+0

https://www.tensorflow.org/versions/r0.10/tutorials/index.html –

ответ

2

В Python существует несколько хороших подходов к нейронной сети, включая TensorFlow, Caffe, Lasagne и sknn (Sci-kit Neural Network). sknn обеспечивает легкое, готовое решение, хотя, на мой взгляд, его сложнее настраивать и может замедляться на больших наборах данных.

Следует учитывать, хотите ли вы использовать CNN (свернутую нейронную сеть) или стандартный ANN. С помощью ANN вам, скорее всего, придется «развернуть» ваши изображения в вектор, тогда как с CNN он ожидает, что изображение будет кубом (если в цвете, квадрат в противном случае).

Вот good resource на CNNs в Python.

Однако, поскольку вы не выполняете классификацию многоклассовых изображений (для которых CNN являются текущим золотым стандартом) и делая больше одного распознавания объектов, вы можете рассмотреть подход с преобразованным изображением, например, с использованием Histogram of Oriented Gradients (HOG) ,

В любом случае, точность подхода нейронной сети, особенно при использовании CNN, сильно зависит от успешной настройки гиперпараметра. К сожалению, пока нет какой-либо общей теории о том, какие гиперпараметрические значения (количество и размер слоев, скорость обучения, правило обновления, процент отсева, размер партии и т. Д.) Являются оптимальными в данной ситуации. Поэтому будьте готовы к тому, чтобы установить хорошую настройку обучения, проверки и тестирования, чтобы соответствовать надежной модели.

-1

Я не знаю ни одной библиотеки, которая может это сделать для вас. Я использую много Caffe и могу дать вам решение, пока вы не найдете одну библиотеку, которая может сделать это за вас.

Надеюсь, вы знаете о ImageNet и что у Caffe есть trained model на основе ImageNet.

Вот идея:

  • Определить, что the object есть. Скажите object = "laptop".
  • Используйте подготовленную модель ImageNet Caffe, измените код, чтобы отобразить требуемый результат, который вы хотите (вы упомянули TRUE или FALSE), когда object находится в output labels.

Вот ссылка на ImageNet tutorial, которую я написал.

Вот что вы можете попробовать:

  • Посмотрите here. Это урезанная версия программы ImageNet, которую я использовал в движке прогнозирования.
  • В строке 80 вы получите верхнюю 1 прогнозируемую метку вывода. В строке 86 вы получите топ-5 прогнозируемых ярлыков. Напишите строку кода, чтобы проверить, находится ли object в output_label и возвращает TRUE или FALSE в соответствии с ним.

Я понимаю, что вы ищете конкретную библиотеку, я буду искать ее, но это то, что я хотел бы попробовать в начале.

 Смежные вопросы

  • Нет связанных вопросов^_^