Здравствуйте. У меня вопрос по сохраняемым и загружаемым таблицам квантования. Правильно

ли я понимаю, что в файл csv сохраняются бордеры (разделители), которые являются по сути центройдами, т.е. 1/2 между расчетными границами (отсчётами), получаемыми при квантовании?
И ещё, может кто помочь на словах описать алгоритмы квантования, используемые в CatBoost?

20 ответов

23 просмотра

здравствуйте! нет, то именно границы между бинами вот тут есть пояснения про алгоритмы вычисления границ https://catboost.ai/en/docs/concepts/quantization

Serezha-K Автор вопроса

Конечно я ознакомился со всей доступной информацией. И изучив предмет, задаю вопросы. Может кто предметно по ним подсказать?

Serezha K
Конечно я ознакомился со всей доступной информацие...

Так а что еще подсказать? Евгений ответил что границы и сохраняются.

Serezha-K Автор вопроса

Формулы слишком абстрактны. К примеру MaxLogSum и GreedyLogSum имеют вообще одинаковые формулы и описание. В формулах идёт речь о весах, но не ясно, как они были получены. Поэтому и хотелось алгоритм по пунктам. Метод Median - воспроизводим - обычное квантование по сути, а вот с остальными не разобрался.

Serezha K
Формулы слишком абстрактны. К примеру MaxLogSum и ...

Выше вы задали вопрос о том что сохраняется в файл, а не про алгоритмы расчета границ. > К примеру MaxLogSum и GreedyLogSum имеют вообще одинаковые формулы и описание. Нет. Читайте внимательнее. В MaxLogSum: > Maximise the value of the following expression inside each bucket: В GreedyLogSum > Maximize the greedy approximation of the following expression inside every bucket: > В формулах идёт речь о весах, но не ясно, как они были получены. Почему неясно если в документации явно написано что имеется ввиду под weight ?

Serezha K
Формулы слишком абстрактны. К примеру MaxLogSum и ...

weight — это кратность попадания значения в бин n — число разных значений

Serezha-K Автор вопроса
Евгений Петров
weight — это кратность попадания значения в бин n ...

Что такое "бин"? n - число разных значений чисел? Я думал, что n - число разделителей, которых меньше на один, относительно входных настроек, которыми задаётся число интервалов.

Serezha K
Что такое "бин"? n - число разных значений чисел? ...

> Что такое "бин"? От англ. “Bin” - “корзина”. Границы как бы делят числовую прямую на эти самые “корзины” (только по краям границы будут односторонними). > n - число разных значений чисел? n - это число объектов/семплов из исходной выборки для которых значение рассматриваемого признака попало в эту “корзину”.

Serezha-K Автор вопроса
Andrei Kh
> Что такое "бин"? От англ. “Bin” - “корзина”. Гр...

Хорошо, корзина так корзина, но как установить предварительно границы для подсчета попаданий?

Serezha K
Хорошо, корзина так корзина, но как установить пре...

Вообще в большинстве случаев лучше положиться на автоматический расчет, но если вам очень нужно, можно их задать и вручную с помощью параметра input_borders - https://catboost.ai/en/docs/references/training-parameters/#input_borders

Serezha-K Автор вопроса
Andrei Kh
Вообще в большинстве случаев лучше положиться на а...

Конечно я знаю про эти параметры. Мне интересен алгоритм расчета.

Serezha K
Конечно я знаю про эти параметры. Мне интересен ал...

Алгоритмы расчета описаны тут - https://catboost.ai/en/docs/concepts/quantization

Serezha-K Автор вопроса
Andrei Kh
Алгоритмы расчета описаны тут - https://catboost.a...

Там нет алгоритма - посмотрите внимательно - с этого и начали.

Serezha K
Там нет алгоритма - посмотрите внимательно - с это...

Ну там описаны принципы как подбираются границы в зависимости от режима. Совсем технические подробности можно почитать в исходном коде: https://github.com/catboost/catboost/tree/29361d80376a4b233b5bc786ff4e9af9e09fed75/library/cpp/grid_creator

Serezha-K Автор вопроса
Andrei Kh
Ну там описаны принципы как подбираются границы в ...

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

Serezha K
В исходном коде накручено ООП, так что сходу ничег...

если на пальцах, то там решаются задачки дискретной оптимизации, описанные в доке по ссылке, которую присылали мы с Андреем где-то динамика, где-то жадный метод, где-то по определению

Serezha-K Автор вопроса
Евгений Петров
если на пальцах, то там решаются задачки дискретно...

Если это оптимизационные задачи, то какая метрика используется для оценки качества?

Serezha K
Если это оптимизационные задачи, то какая метрика ...

см. доку по ссылке ) формулки с сигмами — вот это оно

Serezha-K Автор вопроса
Евгений Петров
см. доку по ссылке ) формулки с сигмами — вот это ...

С этого и начинал - прочтите, что писалось ранее.

Serezha K
С этого и начинал - прочтите, что писалось ранее.

кто-то в одном шаге от медали по душности

Похожие вопросы

Обсуждают сегодня

Только сейчас дошли руки до Orange pi 5. Это нормально что на нем YOLOv5s выдает 1 кадр раз в 2-3 секунды на CPU? Это без оптимизаций и прочих настроек, просто голый запуск че...
Denis
10
Доброе утро. Подскажите, если если 4 корутины, внутри которых VideoCapture, то будут ли они работать асинхронно? Т.к. нагуглил, что Videocapture в моменте может быть открыт то...
Alexander👨‍💻
19
Всем привет! подскажите пожалуйста как можно увеличить качество фото?
Evgeniy
19
https://github.com/cluangar/YOLOv5-RK3588-Python/tree/singlethread Есть вот этот репозиторий, внизу видео на ютюбе где на выходе 15 FPS. Попробовал этот код и модель с адапта...
Denis
1
Всем привет! Подскажите пожалуйста С помощью OpenCVSharp работаю с rtsp потоком Но почему-то через +- 2 минуты поток зависает без всяких ошибок В какую сторону копать? С ...
Evgeniy
4
Я пожалуй ещё раз брошу клич: кто-нибудь хочет в рабство в ОЭЗ Алабугу на позицию инженера CV? Работы много, задачи сложные, ЗП высокая. Я передам контакт напрямую в HR.
Maxim 👀 Osminin #Slowpoke3D
13
Кто работал с NPU на Рокчипе, можете подсказать, инициализирую модель (см. скрин 1), запускаю и на "init_runtime" выдает ошибку "undefined symbol: rknn_set_core_mask" (см. скр...
Denis
1
А вы в атоме работаете да?
Alexander x*❄️❅❆
11
I have this grayscale image in opencv I want to change gray quadrilaterals to black like others It means i want to change gray color of specific color to black How can i do th...
@. .@
7
Could you upvote please? https://www.kaggle.com/code/mehmetisik/sentiment-analysis-twitter-nlp-machine-learning https://www.kaggle.com/code/mehmetisik/user-based-collaborati...
MHT Mht
1
Карта сайта