ML-прогноз улова: океанографические данные, VMS, CPUE

Промысел зависит от океана, а не от интуиции: мы разрабатываем под ключ системы прогнозирования улова, которые сводят океанографические данные, судовые отчёты и промысловую статистику в одну рабочую модель. Заказчик получает прогноз по районам и срокам, а не набор разрозненных таблиц.
Часто задаваемые вопросы

Почему прогнозирование улова срывается на неполных данных

Прогнозирование улова срывается не на алгоритме, а на входе. Три потока данных об одном промысле — судовые отчёты, спутниковый мониторинг и океанографические слои — расходятся по частоте, точности и задержке. Пока их не свели в общую шкалу, модель видит не океан, а мозаику из неполных промысловых данных.

Промысловые отчёты заполняют вручную, часто по возвращении в порт, а не в момент лова. Улов, прилов и время траления восстанавливают по памяти и судовому журналу, поэтому пропуски в судовых отчётах — норма, а не сбой: часть рейсов приходит с задержкой на недели, часть — с координатами, округлёнными до целого градуса.

Спутниковый мониторинг даёт положение и скорость судна каждые несколько часов, но про улов молчит: по треку видно, где работал флот, и не видно, сколько он взял. Океанографические слои — температура поверхности, хлорофилл, течения — приходят отдельными наборами с собственным шагом по времени и по пространственной сетке, и состыковать их с треками нечем.

Отсюда рассинхрон источников: часовые треки, суточные отчёты и декадные поля живут в разных временных осях. Модель на такой выборке в местах пропусков подставляет среднее по району, и ошибка прогнозирования улова растёт именно там, где решение дороже всего — на границе промысловых скоплений. Флот уходит в квадраты, где «должно клевать», сжигает топливо и теряет дни.

Разбираем, как это закрывается: приведением потоков к общим координатно-временным ячейкам, восстановлением пропусков по косвенным признакам и честной оценкой неопределённости — чтобы прогноз показывал не только где искать, но и насколько ему можно верить.

Что меняется на промысле после внедрения модели

До модели решение о постановке держалось на опыте капитана и переписке с соседними судами. Океанографическая картина приходила с задержкой в сутки, позиции флота разбирали уже после рейса, а CPUE считался по факту вылова и в моменте ни на что не влиял. Цена такой схемы — холостые переходы по 6–10 часов и разброс результативных постановок между судами одной группы в разы.

Модель сводит океанографию из Copernicus, позиции судов из судового мониторинга и накопленный CPUE в одну шкалу времени и даёт оценку по каждому квадрату на ближайшие сутки. Доля результативных постановок в целевых квадратах поднимается с 40–45% до 65–70%, холостые переходы сокращаются примерно на треть: судно реже идёт «на всякий случай» туда, где фронт уже сместился.

На мостике это одна сводка по району, которая обновляется по расписанию и после каждой постановки. Время от сводки до решения капитана измеряется минутами — не нужно сверять три источника и обзванивать соседей, а порядок обхода квадратов виден сразу.

Отдельно закрывается класс отказов «прогноз есть, данных под ним нет»: перед выдачей оценка проходит проверку полноты входных полей и свежести спутникового среза. Если покрытие дырявое, квадрат честно помечается непрогнозируемым вместо цифры с низкой достоверностью. За счёт этого точность прогноза промысла не проседает на переходах между сезонами, а простой флота сокращается — меньше часов на переходы без постановки.

Сравнение подходов: статистика, физическая модель, обучение

Подход выбирают не по степени современности, а по доступным данным и устойчивости промысла. Пока суда работают в привычных квадратах, статистические модели улова на отчётности прошлых сезонов держат приемлемую точность. Их ограничение — непереносимость на сместившийся запас: ряд отстаёт на сезон-два.

Океанографические данные — температура поверхности, течения, высота уровня — описывают среду, но не распределение рыбы. Поэтому обучение на объединённых слоях связывает среду с выловом и промысловым усилием, а спутниковые ряды Copernicus закрывают пропуски там, где своих наблюдений мало.

Подход Когда подходит Ограничения
Отчётность по прошлым сезонам Стабильный район, длинные ряды, ровное промысловое усилие Не переносится в новые квадраты, отстаёт от смещения запаса
Физическая модель переноса вод Мало промысловых наблюдений, нужна механика течений и переноса Требует калибровки, промысловый прогноз напрямую не даёт
Машинное обучение на объединённых слоях Есть и океанографические ряды, и данные судового мониторинга Чувствительно к пропускам и утечкам между обучающей и проверочной выборками
Гибридная схема Нужен прогноз там, где запас смещается Дороже в поддержке: нужны обе компетенции и регулярная перекалибровка

Чистых вариантов почти не бывает: физика задаёт границы возможного, статистика и обучение уточняют внутри них. Дальше — как проверяется, что модель держит точность на новом сезоне.

Порядок работ: аудит данных, схема, настройка, проверка

Начинаем не с модели, а с данных: без разбора источников любая точность на демонстрации не переживёт первый реальный сезон. Ниже — шесть этапов, которые проходят от аудита промысловых данных до передачи регламентов сопровождения.

  1. Аудит промысловых данных. Сводим судовые журналы, CPUE по видам, треки VMS и океанографические поля, проверяем полноту по сезонам и промысловым квадратам.
  2. Схема данных. Единое хранилище с гранулярностью «судно — сутки — квадрат», привязкой координат и явно помеченными пропусками, чтобы интерполяция не выдавала себя за факт.
  3. Сборка признаков. Термические фронты, сезонные сдвиги, история по конкретному судну и району — только то, что действительно связано с уловом.
  4. Настройка модели. Обучение на промысловых сезонах с разделением выборки по времени, а не случайным: иначе точность окажется завышенной, а на новых данных просядет.
  5. Валидация прогноза. Проверка на сезонах, которых модель не видела: сверка с фактом по CPUE, ошибка отдельно по районам и по редким видам.
  6. Передача. Схема, конфигурации, регламент дообучения и метрики мониторинга — обновлять прогноз команда сможет своими силами.

Каждый этап заканчивается артефактом, который можно проверить: перечень источников с оценкой полноты, схема хранения, отчёт по ошибке на прошедших сезонах.

Что заказчик получает на руки: модели, схемы, регламенты

Модель прогноза улова ценна вместе с обвязкой: без описания допущений, схемы потоков и регламента обновления её нельзя ни сопровождать, ни защитить перед регулятором. Поэтому проект передаём комплектом артефактов — от параметров обученной модели до порядка разбора расхождений с фактическим выловом.

  • Обученная модель с карточкой: целевая переменная (CPUE по промысловым зонам), горизонт прогноза, допущения, границы применимости и поведение на редких сценариях.
  • Схема потоков данных: источники океанографических полей и судовых позиций (VMS), частота поступления, окна агрегации, точки контроля качества и правила восстановления пропусков.
  • Правила доступа: роли для флота, аналитиков и диспетчеров, разграничение по зонам и судам, журнал обращений к прогнозам.
  • Регламент обновления: периодичность переобучения, триггеры по деградации точности и порог, после которого версия выводится из эксплуатации.
  • Инструкции по эксплуатации: запуск расчёта, проверка свежести данных, действия при недоступности источника, откат на предыдущую версию.
  • Порядок разбора расхождений: как фиксируется фактический вылов, как считается ошибка, кто и в какой срок разбирает систематическое отклонение.
  • Протокол приёмки: контрольные периоды, на которых заказчик воспроизводит метрики своими силами, без нашей помощи.

Документация модели живёт в контуре заказчика и обновляется вместе с кодом — при смене подрядчика или состава команды решение остаётся работоспособным.

Кейс промысла: точность и простои до и после внедрения

Два промысловых сезона одной и той же группы судов — база для сравнения. В первом прогноз строили на исторических судовых журналах и сводках капитанов: скопления искали «по опыту», переходы занимали до половины промыслового времени, а расхождение прогноза с фактическим выловом разбирали уже на берегу.

До настройки модели

Доля результативных суток держалась около 40%: в остальные дни флот работал по слабым скоплениям или возвращался на проверенные квадраты. Средний переход к точке промысла — 45 морских миль, часть рейсов уходила на поиск вслепую. Каждая четвёртая сводка оспаривалась: у судна и у берега были разные данные по одним и тем же квадратам.

После внедрения

Модель сводит океанографические поля из Copernicus Marine, позиции судов по системе мониторинга и улов на усилие в одну картину и обновляет прогноз по скоплениям на несколько суток вперёд. Доля результативных суток выросла с 40% до 68%, средняя длина перехода сократилась до 25 миль — высвободившееся время ушло в промысел. Спорных сводок стало втрое меньше: расхождение видно заранее, а не постфактум.

Прогноз переобучается на данных каждого рейса: свежие уловы возвращаются в выборку, поэтому сезонные сдвиги по температуре и кормовой базе не «старят» модель. Капитаны получают одну сводку вместо нескольких противоречивых, а спорные квадраты отмечены прямо на карте.

Чем прогнозирование улова отличается от отчётов по усилию

Отчёт по усилию описывает прошлое: вылов на единицу промыслового усилия (CPUE) в квадрате за период. Метрика корректна задним числом, но несёт встроенное смещение — усилие распределяется туда, где рыбу уже находили.

Квадраты, куда суда не заходили, в данных просто отсутствуют. Это не значит, что там пусто: туда не шли. Модель, обученная на таком материале, воспроизводит маршруты флота, а не распределение ресурса, и на новых участках ведёт себя неуверенно.

Прогноз формулируется иначе. Целевая переменная — оценка плотности в каждой точке акватории, включая незадействованные участки. Предикторы — океанографические поля: температура поверхности и по глубине, солёность, градиенты, положение фронтов и вихрей. Они измеряются независимо от того, работал ли там флот.

Отсюда и граница методик. Учёт оценивает работу флота и зависит от его поведения. Прогноз оценивает среду и её пригодность для вида, поэтому переносится на районы без промысла. Спутниковый мониторинг позиций судов (VMS) и данные об усилии остаются в системе, но как контекст и контроль качества, а не как источник ответа.

Проверяем это на временных окнах: обучение на прошлых периодах, проверка на будущих, а не на случайной выборке строк — соседние по времени наблюдения почти всегда коррелируют. Отдельно следим, чтобы признак не собирался из сведений о походах судов: такая утечка из целевой переменной даёт красивую, но бесполезную метрику.

На выходе — карта вероятности с горизонтом, по которой планируют район промысла. Разница не в точности цифр: учёт отвечает про прошлое, прогноз — про место, где судна ещё не было.

Технические сомнения: данные, точность, обновление модели

Сомнения инженеров обычно касаются не самой модели, а входа: чем её кормить, если журналы ведутся вручную, а часть данных приходит с задержкой. Ниже — возражения, которые всплывают на каждом разборе, и то, как они закрываются.

У нас всё в бумажных журналах и вразнобой

Ручной журнал промысла — не помеха: он остаётся контрольным источником, а прогноз строится на связке «улов на усилие (CPUE) + океанография». Расхождения журнала с судовым мониторингом не замалчиваем — они сами становятся признаком (пропуск в треке, ошибка записи), и по ним видно, каким строкам доверять.

Сезон сменится — модель устареет

Прогноз обучается не на среднем по году, а на скользящем окне внутри сезона и района промысла: при смене путины или смещении границы района работает свой сегмент, а не экстраполяция. Пересборка идёт по расписанию и по сигналу — расхождение факта с прогнозом выше порога запускает её вне графика.

У нас уже развёрнут судовой мониторинг

Судовой мониторинг (VMS) подключаем отдельным потоком, не переписывая существующий: важны частота позиций и доступ к историческим выгрузкам. На борту канал связи рвётся — расчёт уходит на берег и подтягивается после восстановления, экипаж без выдачи не остаётся. Открытые океанографические источники идут с явной датой снимка: если данные отстают, это видно прямо в карточке прогноза.

Обсудим задачу: состав данных и план работ

Оценка по такой задаче держится на двух вещах: полноте исторических данных и горизонте прогноза. Чем меньше пропусков в судовых отчётах и чем регулярнее приходят координаты мониторинга, тем устойчивее признаки для модели. Для обсуждения задачи достаточно перечисленного ниже — предварительная чистка не нужна, разберёмся сами.

  • Выгрузка судовых отчётов за два-три сезона: время постановки и выборки орудия, координаты, вид, масса улова — CSV, как отдаёт учётная система.
  • Доступ к данным мониторинга судов: координаты с интервалом опроса и идентификаторы судов — файлом или выгрузкой по запросу.
  • Океанографические слои за тот же период: температура поверхности, течения, содержание хлорофилла, глубины по нужным районам.
  • Список промысловых районов и сезонов, по которым строится прогноз, с границами в координатах.
  • Ожидаемый горизонт прогноза: сутки, неделя или декада — от него зависят набор признаков и допустимая задержка данных.
  • Метрика качества, которой вы доверяете: CPUE на усилие, попадание в район либо факт «промысел / не промысел».
  • Кто на вашей стороне принимает результат — человек, подтверждающий состав полей и приёмку модели.

По этим данным соберём план работ: какие признаки считаем из океанографии, какие из мониторинга, где ставим заглушки на пропуски и как проверяем модель на удержанных сезонах. Опишите задачу — вернёмся с оценкой и планом.

Направления AI-разработки

Последние работы

  • Разработка сайта компании B2B ADVANCE
    Разработка сайта компании B2B ADVANCE
    1542
  • Разработка веб-приложения для компании FEEDME
    Разработка веб-приложения для компании FEEDME
    1393
  • Разработка веб-сайта для компании БЕЛФИНГРУПП
    Разработка веб-сайта для компании БЕЛФИНГРУПП
    1081
  • Разработка интернет магазина для компании FURNORO
    Разработка интернет магазина для компании FURNORO
    1368
  • Разработка логотипа компании B2B Advance
    Разработка логотипа компании B2B Advance
    815
  • Разработка веб-приложения для компании Enviok
    Разработка веб-приложения для компании Enviok
    1139