krinkin / geology_deeplearning_osll

0 stars 0 forks source link

Составить ревью инструментов обучения НС для задач классификации #1

Closed owlengineer closed 4 years ago

owlengineer commented 4 years ago

Каждый из нас пишет к этому issue комментарий в котором форматированным markdown-ом делает список фреймворков для обучения нейронных сетей, которые лучше всего подходят под решение задач классификации изображений.

Все помним, что лучше качество, поэтому не стоит сюда указывать изначально не очень подходящие фреймворки. Делаем выборку из лучших найденных

ВЫБРАН PYTORCH

Формат ревью примерно такой:

...

owlengineer commented 4 years ago

Составить ревью библиотек и инструментов обучения НС для задач классификации

SuperSolik commented 4 years ago

Pytorch - современная библиотека машинного обучения для языка Python с открытым исходным кодом, созданная на базе Torch. Используется для решения различных задач: компьютерное зрение, обработка естественного языка. Сайт - https://pytorch.org/ Обзорная статься на хабре Примеры:

Оценка: современный, удобный, не самый низкоуровневый, что повышает порог вхождения. Есть как предобученные модели, так и возможность самостоятельно конструировать архитектуру сети в виде класса, что довольно удобно. Популярный - в сети куча примеров, готовых кусков кода, статей по решению тех или иных задач. Синтаксис простой, довольно понятный и удобный.

NikulinNikitaDev commented 4 years ago

ThensorFlow – открытая программная библиотека для машинного обучения. Основной API реализован на Python.

Keras – высокоуровневая среда разработки нейронных сетей, написанная на Python. Работает поверх TensorFlow, CNTK и Theano. Была разработана для проведения быстрых экспериментов и исследований, нацелена на оперативную работу с нейросетями.

PyTorch – библиотека машинного обучения на языке Python, использует для вычислений возможности графического процессора.

didges commented 4 years ago

Keras - является надстройкой над TensorFlow, а в последних версиях и вовсе стал ее частью. Значимым плюсом Keras'а является простота создания моделей, из-за чего предоставляется возможность попробовать различные инструменты для решения задачи. Примеры:

Оценка: Keras не подойдет в тех задачах, если вам нужны какие-то сложные вещи, вроде нестандартного слоя или распараллеливания кода на несколько GPU, тогда лучше использовать TenserFlow.

owlengineer commented 4 years ago

Keras - python надстройка над TensorFlow для обучения глубоких нейронных сетей. Часто используют как для прототипирования моделей, так и для state-of-the-art исследований и промышленных задач.

PyTorch - python фреймворк для машинного обучения. Универсальная библиотека, для классификации изображений в том числе.

Примечание: хотел включить сюда Caffe, это фреймворк специализирующися именно на классификации изображений, который работает для этой задачи лучше чем PyTorch и Keras. Однако у него довольно сложный и специфический API и малое community.