Pull to refresh
146
0
Алексей Борисов @Imp5

Программный инженер

Send message
Только из подробной статистики стало видно, на сколько мало я уделил внимания отсеиванию простых моделей.
82.11% (5745fc8163905b3a11d97be3)
Tested 10000 of 10000 blocks

   Total       W      NW   NW[0]   NW[1]   NW[2]   NW[3]   NW[4]   NW[5]   NW[6]   NW[7]   NW[8]
   1000k  500672  499328   92206   69134   74631   78793   75506   56814   30604   14427    7213

 Correct      F-      F+   F+[0]   F+[1]   F+[2]   F+[3]   F+[4]   F+[5]   F+[6]   F+[7]   F+[8] ms/100w

    D:\projects\english_words\solution\
  82.11%   2.36%  33.47%   4.58%  29.99%  39.08%  40.47%  41.37%  43.59%  46.77%  49.64%  50.02%      42

Надо будет feldgendler-у капчу показать, ИИ может писать с его аккаунта, так, чисто мера предосторожности.
Похоже, отражение в переднем стекле + коллиматор.
Вот тут моё решение могло бы спасти всех с участников с «чистыми» решениями.
У него скорость ~50 слов в секунду, плюс обещание тестировать решения на одинаковых блоках :)
Сейчас немного жалею, что не отправил решение со скоростью 10 слов в секунду и +0.1%.
83% — это на другой выборке, не на которой проводилось обучение?
Вообще надо было заменять группы окончаний и суффиксов на отдельные символы, а не просто отрезать их. Но идея пришла слишком поздно.
Расскажу тут в комментариях про 82.05%

* от слов отрезаются самые частые окончания 's, s, ing; слова с апострофом считаются ложными
* основной алгоритм похож на фильтр Блума:
для каждого слова считается хеш-функция, по получившемуся индексу в чанке устанавливается единичный бит;
размер чанка подобран так, что после прохода по словарю остаётся приблизительно 15 нулевых битов;
позиции этих нулевых битов сохраняются в файл;
дальше происходит заполнение нового чанка с новой хеш-функцией, всего таких хеш-фунций около 3000;
при тестировании слова происходит проверка, не попала ли хеш-функция слова на один из этих нулевых битов

* дополнительно используются эвристики для отсечения ложноположительных срабатываний, подсчёт подряд идущих согласных и т.п. (+4% правильных ответов)
* стоит уделить внимание изменяемой хеш-функции, небольшие изменение в мутаторе хеш-функции дали прирост +3%
* для улучшения сжатия файла (~+7% к степени сжатия), сохраняются только расстояния между нулевыми битами, старшие байты, которые имеют схожие значения рядом с нулём, перенесены в отдельную часть файла (сделано с расчётом на gzip, для других архиваторов такая предварительная обработка может навредить)
А в итоге — вытягивания словаря из входных данных :)
Будет забавно, если лучшее решение окажется ещё и самым маленьким.
Ну вот и я оказался в потенциальной яме.
На одном миллионе тестовых слов 82.05% на другом 82.1%
Все последние изменения, которые я пробовал сделать, приводили к увеличению максимум на +0.01%. Это очень мало, буквально в пределах погрешности. Т.к. я выбрал медленный алгоритм, то ожидание генерации файла и проверка на миллионе слов превратились в пытку :)
Осталось доказать корректность алгоритмов.
Скрипт не поможет, если, например, случайно отправить не тот файл.
Не пугайте так, я сначала подумал, что слева шкала до 1.00 :)
feldgendler, моё решение в этом тестовом скрипте проверяется со скоростью ~50 слов в секунду (против 4000 в секунду моим скриптом), я так полагаю, это из-за виртуальной машины.
Это 5 часов на 1 000 000 слов.
Такая скорость проверки считается разумной? Или мне надо что-то исправить?
мовитоном
Так значит, вот кто сейчас имеет отношение к написанию сценариев.
Зато смотрите, сколько комментариев набирают такие жареные новости!
Помогают раскрепостить людей, вот, например, не может человек ничего написать по основной теме ресурса, а тут заходит в пост и сразу про «Чебурнет» пишет — эксперт! :)
Это на какой по размеру выборке?

Information

Rating
Does not participate
Registered
Activity