Введение.
Традиционным образом (то есть, в самые последние сутки дедлайна) я поучаствовал
в конкурсе, организованном ребятами из конторы
Hola.
Задание было придумано очень крутое. "Очень крутое" -- это, в моём понимании, такое задание, которое:
- Имеет практическую ценность.
- Не подразумевает одного единственного верного решения, до которого
( Read more... )
Comments 12
Reply
Reply
Reply
Просто в случае с равномерным распределением всё это достаточно очевидно и прямолинейно.
Reply
А известен лучший результат?
Reply
Согласно комментам участников, это должны быть числа порядка ~85%.
Там ещё есть статистические варианты решения, основанные на том, что с ростом объёма тестовых данных "слова" начинают встречаться чаще, чем "не слова", потому что первые берутся из конечного словаря, а вторые генерятся на лету. Этот подход может показать сильно больше 90%, но результат зависит от того, сколько конкретно тестов прогонят организаторы. На низких объёмах он не сильно лучше подбрасывания монетки :)
Reply
Навскидку мне приходит в голову несложная модификация фильтра Блума, в которой на этапе обучения единичные значения хэш-функций не приводят к однозначной установке единиц в битовом массиве. Насколько я понимаю, проблемой оригинального алгоритма является то, что при большом словаре весь массив попросту забивается единицами. Если же на этапе обучения вычислить количество эпизодов установки заданного бита в единицу, получим математическое ожидание каждого бита. На этапе тестирования вероятность истины оценивается по количеству совпавших битов. Такое уже кто-нибудь делал?
Reply
Я, честно говоря, такого решения не припомню. Можешь попробовать полистать комменты здесь, здесь, здесь, или здесь :)
Reply
Reply
Reply
Leave a comment