Keras + TensorFlow +Colaboratory = Программирование глубоких нейронных сетей на Python
Для машинного обучения нашего робота игре в хоккей, нам необходимо научить его распознавать хоккейную шайбу, ворота противника, игроков своих и чужих, разметку и пределы поля, определять расстояние до этих объектов, свое местоположение, и, на основании этой информации, принимать решения по выбору направления перемещения по хоккейному полю и манипуляций хоккейной шайбой с помощью хоккейной клюшки.
Решать, выше приведенные задачи, мы будем с помощью нейронных сетей. Для моделирования и обучения нейронных сетей нам потребуется модный компьютер, то есть крутой i7 c мощной игровой видеокартой от NVIDIA или современным графическим ускорителем. Но можно и без модного компьютера обойтись. Мы будем использовать вычислительные мощности Google, а именно Colaboratory, инструмент, позволяющий запускать ноутбуки Jupyter в облаке Google.
Кроме вычислительных мощностей Colaboratory от Google, для ускорения нашей работы, мы будем использовать уже готовые пакеты программ для создания глубоких нейронных сетей, такие как фреймворк (инструментарий) Keras и библиотеку TensorFlow для языка Python.
Colaboratory
Заводим почту на Google, у кого она уже есть, то есть и учетная запись Google, которая необходима для работы в Colaboratory. Запускаем Colaboratory, и видим окно где будут отображаться наши действия и виртуальные ноутбуки, нажимаем справа внизу окна NEW PYTHON 3 NOTEBOOK:
Видим одинокую строчку интерпретатора (cell - ячейка) языка Python, которая по мере заполнения превратится в окно:
Набираем классическое print ("Hello World!") жмем на стрелку-треугольник слева окна строки интерпретатора и видим результат:
Нажимаем в верхнем меню File ->Download py появиться окно с папками Вашего компьютера, вводим имя файла и помещаем в свою папку с программами для Python, и в дальнейшем можем редактировать этот файл в любом любимом редакторе.
Также мы можем сохранять и загружать файлы на Google Disk а сам Google Disk (как создать Google Disk) привязать к локальной файловой системе Вашего компьютера.
Удаляем наш пример в ячейке ноутбука Calabolabory, жмём на три вертикальных точки в конце ячейки -> Delete cell:
Заводим новую ячейку на ноутбуке Colaboratory:
Пишем программку на Python в две строки для проверки наличия библиотеки методов для обработки тензоров (Tensor) и графов(Flow)-TnsorFlow, а также подключен ли графический процессор - ускоритель (GPU) нашего ноутбука Colaboratory:
#импортируем в нашу программку библиотеку TnsorFlow с сокращением имени до tf : import tensorflow as tf # запускаем из библиотеки tf в экземпляре класса test метод gpu_device_name() тестируя присутствие устройства gpu (GPU): tf.test.gpu_device_name()
Если ошибок не обнаруживается то библиотека TnsorFlow присутствует, но в результатах выполнения программы обнаруживаются две точки, что говорит нам об отсутствии подключения GPU
Заходим в главное меню Colaboratory: Runtime -> Change runtime type :
Появиться окошко Notebook setting, жмем на полочке GPU стрелочку вниз -> выбираем GPU -> жмем SAVE(сохранить):
Запускаем вновь нашу программку в две строки и обнаруживаем, что наша программка обнаружила графический процессор GPU c номером 0:
Поменяем имя Untitled0.ipynb присвоенное по умолчанию нашему ноутбуку Colaboratory, например на MirRobo.ipynb, войдя в поле имени простым щелчком мыши:
Продолжение следует!!!
Пока смотрим и изучаем курс "Программирование глубоких нейронных сетей на Python" от Андрея Созыкина
Сверточные нейронные сети в Python с Keras здесь . . .