4gophers

Стриминг и распознавание лиц через веб-камеру

Перевод статьи “Stream and recognise people from a webcam with Go and Facebox”. От видеонаблюдения для предотвращения вторжения до распознавания личности человека за дверью и автоматического открытия дверей. Все это можно сделать с помощью нескольких строк на pyton, Go и используя Facebox. Для начала нам нужно научиться получать видео с веб-камеры. Есть множество вариантов, как это можно сделать с Go. К сожалению, большинство из них тянут за собой CGO биндинги к OpenCV, при этом поддержка функциональности очень ограничена, а сами проекты довольно монструозны.

Анонимизация изображений с помощью Go

Перевод статьи “Anonymising images with Go and Machine Box“ В стандартной библиотеке Go есть достаточное количество мощных инструментов для работы с изображениями. Это пакеты image, image/* и draw. В этом руководстве мы будем использовать эти инструменты совместно с Machine Box Go SDK для цензурирования изображений. В рамках этой статьи мы напишем простую консольную утилиту. Но тот же самый код можно будет использовать, например, для написания веб-приложений. Запускаем Facebox Facebox это один из образов Machine Box который позволяет распознавать лица с помощью алгоритмов машинного обучения.

Сетевые протоколы: Ethernet и Go

Перевод статьи “Network Protocol Breakdown: Ethernet and Go”. Если вы читаете эту статью, то есть очень большая вероятность, что прямо сейчас вы пользуетесь Ethernet (IEEE 802.3) соединением где-то между вашими устройствами и хостингом, на котором размещен этот блог. Семейство Ethernet технологий - это строительные блоки для современных компьютерных сетей. Было бы не плохо разобраться как именно Ethernet работает на физическом уровне, но в этой статье я сфокусируюсь на фреймах Ethernet канального уровня (“Ethernet frames”).

Распределенный поиск Трампа

Перевод статьи “Building a distributed Trump finder”. В этой статье мы будем работать с инструментом для машинного обучения “Machine Box”. Это очень классная штука, и вам обязательно нужно ее попробовать. По своей сути, это набор заранее подготовленных docker контейнеров, готовых к использованию и предоставляющих интерфейс для различных операций связанных с машинным обучением. К примеру, вы можете воспользоваться контейнером “facebox” для распознавания лиц. После запуска этого контейнера, у вас появится доступ к JSON api, которое позволит обучить этот “facebox” на определенных изображениях лиц людей, распознать эти лица на различных изображениях и сохранить “состояние” обученной модели для дальнейшего использования.

Глубинное обучение с нуля в Go - Часть 1: графы

Перевод статьи “Deep Learning from Scratch in Go - Part 1: Equations Are Graphs“ Это первая статья из целого цикла про алгоритмы глубинного обучение. Я постараюсь начать с самых азов и постепенно двигаться к объяснению современных разработкам в этой области. Глубинное обучение, на самом деле, совсем не новомодное изобретение. Сама идея появилась еще в начале 1980х. Но в наше время компьютеры стали значительно мощнее. В этой статье мы начнем разбираться с этой темой, начиная со знакомых вещей, со временем вникая в принципы работы глубинного обучения.

go tool trace

Перевод статьи “go tool trace“ Знаете ли вы как на самом деле работает ваша Go программа? go tool trace может это показать. Этот инструмент при запуске вашей программы визуализирует все события рантайма в довольно удобной форме. Этот инструмент один из самых лучших помощников при поиске проблем с производительностью, параллелизмом и несогласованностью. К сожалению, документации по нему не так много. В своей прошлой статье я упомянул, что мы использовали go tool trace в Pusher для поиска долгих пауз GC.