Close

Keras для работы с нейронными сетями

Keras – это библиотека, позволяющая на более высоком уровне работать с нейросетями. Она упрощает множество задач, используется в быстрых экспериментах и сильно уменьшает количество однообразного кода. В качестве бекендной библиотеки для вычислений keras может использовать theano и tenzorfow.

Theano и tensorflow отличаются в своей реализации и в скорости расчета весов нейросетей. Для разных задач каждая библиотека имеет свое преимущество. На таблице ниже показана разница в скорости расчета на СPU 2.2 GHz Intel Core i7. Задачи для сравнения взяты отсюда (https://github.com/fchollet/keras/tree/master/examples).
tbl_1
В следующей таблице показаны эти же задачи, но на GPU GeForce GTX 960.

tbl_2

Как видно, в первом случае tenzorflow быстрее считает сверточную сеть на центральном процессоре. А во втором, наоборот, theano со сверточной сетью справляется быстрее.
По умолчанию Keras устанавливается с пакетом нейросетей Theano. Но можно установить в качестве бекенда для него пакет Tenzorflow. Для этого необходимо отредактировать файл с настройками:

Содержимое его по умолчанию выглядит:

Нужно заменить последнюю строку на «backend»: «tensorflow» .

Чтобы убедиться в успешной смене бекенда, достаточно выполнить импорт библиотеки keras в python – файле или интерактивном интерпретаторе:

И увидеть сообщение:
Using TensorFlow backend.

Поделиться: