Panel | ||||||
---|---|---|---|---|---|---|
| ||||||
Пожалуйста, ознакомьтесь с Правилами использования материалов на данном ресурсе |
Warning |
---|
Это архивная статья, больше не актуальна. Для создания собственных модулей воспользуйтесь сервисом CapMonster Cloud. Подробную инструкцию можно найти по этой ссылке - Создание пользовательского модуля |
После обучения модуля необходимо провести его тестирование.
...
Настройки можно изменять и провести тесты несколько раз, изменение параметров может менять процент распознавания. При этом ядро переучивать не нужно, можно будет просто сохранить модуль.
Количество потоков для тестирования.
Значения фильтра Thresold.
Минимальная дистанция между символами - очень важный параметр! Можно попробовать слегка увеличить или уменьшить. Актуально, если у Вас в ответах много лишних букв (увеличить) или много букв пропущено (уменьшить).
Тип сравнения: полное совпадение = полное соответствие реальному ответу на каптчу, совпадение подстроки и частичное = настройка, которой следует пользоваться, если сайт принимает успешно частичный ответ на каптчу, а не полное соответствие. Тогда Вы можете заставить модуль считать правильными ответы, которые на самом деле только частично верные.
Значение диапазона, если используете подстроку как тип сравнения. Количество верно отгаданных символов подряд, которые мы считаем как успешный ответ на каптчу.
Можно попробовать включить/отключить быстрое распознавание, это тоже может повлиять на процент распознавания.
Вспомним ещё раз типы ошибок распознавания символа
Прежде чем перейти к ошибкам распознавания каптч, давайте вспомним, какие бывают ошибки распознавания символов:
Неправильное распознавание - это когда символ, действительно есть, но распознаётся он не правильно. Например, мы показываем модулю символ «а», а он находит там символ «с».
Пропуск символа - это когда символ есть, но модуль вообще не видит никакого символа, т.е. мы показываем ему символ «а», а модуль выдаёт, что тут ничего нет.
Ложное срабатывание - это когда символа нет, например, между двумя символами, но модуль там что-то находит.
Улучшение распознавания
По сути, вся работа по улучшению процента распознавания у Вашего модуля сводится к балансу этих трёх видов ошибок распознавания символа. Т.е. в идеале Ваш модуль должен при неправильном распознавании иногда:
Заменять правильный символ
...
, неправильным. Например, вместо «captcha» выдавать «cagtcha».
Не видеть тот символ, что есть. Например, вместо «captcha» выдавать «cptcha».
Выдавать лишний символ в тексте каптчи. Например, вместо «captcha» выдавать «camptcha».
И каждая из этих ошибок должна встречаться примерно одинаковое количество раз.
...
Возможно, Вы установили параметр Минимальное расстояние между символами слишком большим. В таком случае, редкие распознанные символы будут правильными. Т.е. вместо текста «amcaptchatext» модуль будет выдавать что-то типа «aathet».
Возможно, Вы что-то напутали в фильтрах или с центрами масс. У Вас получается, что модуль хорошо обучился на символы, но на самой каптче он эти символы либо не встречает, либо встречает не в том виде, на который обучен. Самый простой случай - в фильтрах Вы сделали изменение размера каптчи, а к символам эти фильтры применить забыли. В итоге модуль учится на меленькие маленькие символы, а на каптче ему показывают большие.
Возможно, центры масс определяются не там, где Вы определяли центры символов при их сборе. Если так, то Вы это увидите в тесте центров масс, кликая по каптче в местах найденных центров масс. Там отклика у модуля не будет, но он будет где-нибудь ниже или выше найденных центров масс. Это можно попытаться исправить без переобучения - увеличить разброс центра масс и количество дополнительных точек так, чтобы они начали попадать на те места, где модуль распознаёт символ. Либо переобучить модуль с увеличенным разбросом центра символа вместо (вместе с) увеличения разброса у центра масс.
...
Количество букв, вполне подходит, но они все (или большинство) не правильныенеправильные:
Если при этом обучение прошло хорошо, то, возможно, это проявление ошибки распознавания символов номер (3) - ложное срабатывание. Если так, то в тесте центров масс, кликая в центры символов Вы будете получать правильный ответ модуля, но кликая в центры масс, которые лежат рядом, не в центре символа, модуль будет выдавать кучу других символов, которых там нет.
...
Букв очень много и они все не правильныенеправильные. Некоторые буквы могут повторяться по нескольку раз подряд:
...
Внутри выданного модулем текста виден правильный текст, но он прорежен неправильными символами:
Параметр Минимальная дистанция между символами слишком мал.
Слишком много ошибок распознавания символов (3). В разделе обучения написано как уменьшить количество этих ошибок.
Слишком низкий порог принятия символа.
Комбинации 1, 2 и 3.