Андрей продолжай пожалуйста свои такие бесплатные видео! Ты единственный нормальный человек в этой теме! СПАСИБО ТЕБЕ ОГРОМНОЕ!
@AndreySozykin6 жыл бұрын
Пожалуйста!
@romanzakharov63446 жыл бұрын
Спасибо за очередной замечательный урок!)
@voronov_ad6 жыл бұрын
Спасибо! Я как раз пишу исследование LSTM модели и мне не хватает GPU. Огромное спасибо!
@voronov_ad6 жыл бұрын
Вопрос, как много данных можно загрузить в runtime блокнот?
@AndreySozykin6 жыл бұрын
GPU на Colaboratory тоже есть :-)
@AndreySozykin6 жыл бұрын
Вот, что выдала команда !df -h: Filesystem Size Used Avail Use% Mounted on overlay 40G 7.6G 30G 21% / tmpfs 6.4G 0 6.4G 0% /dev tmpfs 6.4G 0 6.4G 0% /sys/fs/cgroup tmpfs 6.4G 4.0K 6.4G 1% /var/colab /dev/sda1 46G 9.0G 37G 20% /etc/hosts shm 64M 0 64M 0% /dev/shm tmpfs 6.4G 0 6.4G 0% /sys/firmware Скорее всего, можно загрузить примерно 30ГБ.
@voronov_ad6 жыл бұрын
@@AndreySozykin спасибо, этого должно хватить, думаю самое логичное будет разместить данные на Гугл диске и через АПИ их выгрузить в runtime. Ещё вопрос, а будут ли ещё видео про NLP или рекуррентные сети?
@AndreySozykin6 жыл бұрын
Про NLP будет примерно через месяц. Там будет про LSTM и одномерные сверточные сети.
@MrVeskin4 жыл бұрын
Андрей, большое спасибо за интересный материал! На colab в данный момент по умолчанию устанавливается tf версии 2.2.0. Запуск из Вашего ноутбука приводит к выводу сообщений об ошибках. Я исправил часть скрипта по созданию модели и запуску обучения на следующие: # Модель: tpu = tf.distribute.cluster_resolver.TPUClusterResolver() print('Running on TPU ', tpu.cluster_spec().as_dict()['worker']) tf.config.experimental_connect_to_cluster(tpu) tf.tpu.experimental.initialize_tpu_system(tpu) strategy = tf.distribute.experimental.TPUStrategy(tpu) print("REPLICAS: ", strategy.num_replicas_in_sync) with strategy.scope(): tpu_model = create_model() tpu_model.compile( optimizer=tf.keras.optimizers.Adam(1e-3), loss=tf.keras.losses.sparse_categorical_crossentropy, metrics=[tf.keras.metrics.sparse_categorical_accuracy]) # Обучение history = tpu_model.fit(x_train.astype(np.float32), y_train.astype(np.float32), batch_size=256*8, epochs=50, verbose=2) # Проверка качества обучения scores = tpu_model.evaluate(x_test.astype(np.float32), y_test.astype(np.float32), verbose=0, batch_size=256 * 8) Сейчас одна эпоха обучения, при использовании указанных выше кусков кода, длится меньше 1 секунды. Сеть распознает картинки с точностью 82%.
@ruslansergeev40613 жыл бұрын
Классный обзор, спасибо большое )
@MrRONE777 Жыл бұрын
Я пока нуб, хочу узнать - современные dnn, как тот те же Midjorney также работает - у него подобная логика алгоритма?
@tato_good5 жыл бұрын
Молодец! Тебя смотрят в Нью Йорке программисты из Уолл Стрит! Спасибо большое!
@AndreySozykin5 жыл бұрын
Спасибо за приятный отзыв!
@Dalavir6 жыл бұрын
Красота
@AndreySozykin6 жыл бұрын
Спасибо!
@НиколайКоротков-ъ7с6 жыл бұрын
Отличное видео. Спасибо!!! Есть вопрос: возможно ли на тензорном процессоре google получить модель Хаара в формате CPU для распознавания в OpenCV?
@AndreySozykin6 жыл бұрын
Модель Хаара вроде бы на CPU достаточно быстро обучается. Вряд ли такой моделью получится полностью загрузить TPU.
@НиколайКоротков-ъ7с6 жыл бұрын
@@AndreySozykin Как сказать, 4 ядра работали 4 часа для обучения по выборке в 1500 хороших изображений и 1000 плохих.
@voronov_ad6 жыл бұрын
@@НиколайКоротков-ъ7с попробуй скомпелировать tensorflow, через cmake, чтобы активировать дополнительные инструкции процессора. На офф сайте сайте есть документация по установке из исходников.
@НиколайКоротков-ъ7с6 жыл бұрын
@@voronov_ad, я делаю не через tensorflow а через opencv_traincascade. Но если использовать каскад LBP то он в разы быстрее создаётся, где-то 30 минут. Вопрос всё же остался: можно ли получить каскад HAAR или LPB через TPU и при этом использовать результат на CPU в OpenCV?
@AndreySozykin6 жыл бұрын
Я не знаю, как запустить на TPU что-нибудь не через TensorFlow.
@evgenyzavarygin36906 жыл бұрын
"Копия обучается на 1/8 части данных от мини-выборки." Как в итоге происходит усреднение этих 8 копий? Правильно я понимаю, что результат обучения сети на одной мини-выборке будет немного разным при запуске на TPU и CPU/GPU из-за этого разделения мини-выборки на 8 частей в TPU?
@AndreySozykin6 жыл бұрын
Да, как и при любом распараллеливании.
@evgenyzavarygin36906 жыл бұрын
@@AndreySozykin Спасибо за ответ. Вот нашёл про усреднение, вдруг кому будет интересно: cloud.google.com/tpu/docs/troubleshooting#data-parallelism
Да, этот набор данных слишком маленький, чтобы полностью загрузить TPU.
@MrShrrgn6 жыл бұрын
@@AndreySozykin Я не совсем понимаю, что вы хотите этим сказать. Можете объяснить?
@sergeynovikov96076 жыл бұрын
Правильно я понимаю, что в Colaboratory можно использовать только предустановленные библиотеки, а установить новые нет возможности. Например DLIB (для одного из Ваших предыдущих примеров)?
@AndreySozykin6 жыл бұрын
Дополнительные библиотеки можно устанавливать с помощью команд операционной системы, перед которыми нужно писать знак восклицания. Например: !pip install kaggle-api
@me2beats3136 жыл бұрын
Все замечательно устанавливается, клонируется с гитхаба, копируется с Гугл драйв и тд. У меня комп был в ремонте, так я Гугл колаб с планшета юзаю и все нормально
@EastonAVK4 жыл бұрын
Вот лайк, просто за то, что говоря на русском, вы произности английские слова в русской фонетической артикуляционной системе, это граммотно. И приятно на слух. ЛАЙК.
@me2beats3136 жыл бұрын
Отличное видео, стало гораздо более понятно про tpu в Google colab. Можете подсказать, как исправить ошибку? import tensorflow as tf from layers import (_causal_linear, _output_linear, conv1d, dilated_conv1d) Пишет нет модуля layers. Запускаю Google colab в пустом проекте, python3 GPU
@AndreySozykin6 жыл бұрын
Модуль layers из TensorFlow? Тогда нужно импортировать from tf.layers
@me2beats3136 жыл бұрын
@@AndreySozykin тогда пишет нет модуля tf
@me2beats3136 жыл бұрын
@@AndreySozykin если написать from tensorflow.layers import (_causal_linear, _output_linear, conv1d, dilated_conv1d) То пишет cannot import name '_causal_linear' Вот источник кода raw.githubusercontent.com/tomlepaine/fast-wavenet/master/wavenet/models.py (3-я и 4-я строки)
@me2beats3136 жыл бұрын
А вот сам репозиторий github.com/tomlepaine/fast-wavenet/ в issues никто не писал об этой проблеме, может конфликт версий tensorflow? У репозитория 1000 с лишним звезд, думаю столько не поставили бы, если бы код был нерабочий По идее эта нейросеть должна генерировать аудио звуки)
@me2beats3136 жыл бұрын
@@AndreySozykin нашел решение! этот модуль layers имеется в репозитории. Не знаю почему сначала не обратил на него внимание. код будет работать, если после клонирования репозитория перейти в папку wavenet А дальше делать всё как в демо ipynb файле, но в путях удалять "wavenet/"
@kuqmua7556 жыл бұрын
а где можно посмотреть по-подробнее про архитектуру TPU?
@AndreySozykin6 жыл бұрын
Например, здесь - m.habr.com/post/422317/
@kuqmua7556 жыл бұрын
@@AndreySozykin спасибо
@welaury6 жыл бұрын
Гугл не продает их, только предоставляет мощности?
@AndreySozykin6 жыл бұрын
Насколько я понимаю, да. Но глубоко не разбирался.
@voronov_ad6 жыл бұрын
Они ещё развивают технологию TPU, для них это как бесплатное открытое тестирование. Ещё важно заметить, что collaborate предупреждает, при закрытии страницы с runtime, что все данные, что загружены, будут стёрты. А это значит, что у них довольно высокая оптимизация и выделено только определенное кол-во ресурсов. Так что надо пользоваться, пока дают)
@AndreySozykin6 жыл бұрын
На самом деле данные стираются не при закрытии ноутбука, а при простое виртуальной машины. Можно закрыть ноутбук и сразу же открыть снова, тогда данные будут на месте.