Машинное обучение и Go (Golang): от основ до production
Практическое руководство по созданию ML-моделей на Go
Краткое содержимое:
Эта книга — первое на русском языке практическое руководство по созданию систем машинного обучения на языке Go. Если вы Go-разработчик, который хочет внедрить ML в свои проекты, или data scientist, заинтересованный в производительном и надёжном языке для production, — эта книга для вас.
О чём книга
Книга охватывает полный цикл работы с машинным обучением на Go: от сбора и предобработки данных, построения моделей (линейная регрессия, деревья решений, нейронные сети) до их развёртывания в микросервисной архитектуре. Особое внимание уделяется:
- Библиотекам и фреймворкам: golearn, Gorgonia, gonum, tfgo (TensorFlow для Go);
- Обработке больших объёмов данных с помощью каналов (channels) и горутин;
- Интеграции с внешними ML-сервисами (TensorFlow Serving, ONNX Runtime);
- Созданию REST/gRPC API для моделей;
- Тестированию, мониторингу и A/B-тестированию ML-систем.
Для кого эта книга
- Go-разработчики, которые хотят добавить машинное обучение в свой стек;
- Data scientists, желающие перейти с Python на более производительный Go;
- DevOps-инженеры, отвечающие за развёртывание ML-моделей;
- Студенты и преподаватели курсов по машинному обучению.
Что вы узнаете
- Как выбрать подходящий инструмент для конкретной ML-задачи на Go;
- Как построить и обучить модель регрессии, классификации и кластеризации;
- Как оптимизировать модель под highload и низкую задержку;
- Как интегрировать модель в существующий Go-сервис (например, на фреймворке Gin или Echo);
- Как использовать ONNX для переноса моделей между Python и Go;
- Как писать unit-тесты для ML-компонентов и управлять версиями моделей (DVC, Git LFS).
Почему Go для ML?
Go сочетает производительность C/C++ с простотой Python. Он идеален для продакшена: статическая типизация, быстрая компиляция, встроенная поддержка параллелизма. В книге показано, как эти преимущества помогают строить масштабируемые и надёжные ML-системы.
Пример из книги
В главе 5 вы реализуете сервис рекомендаций на основе коллаборативной фильтрации — от загрузки данных из CSV до развёртывания в Docker с Kubernetes. Полный код и тесты доступны в репозитории.
Книга рассчитана на читателей с базовым знанием Go (синтаксис, структуры, интерфейсы) и основ машинного обучения (что такое признаки, метрики, переобучение).