Собирателям и владельцам баз синонимов – скрипт SynAuditor

Удивительно
На сайте с 07.07.2009
Offline
215
5406

Что делает скрипт SynAuditor?

1. Удаляет пустые строки в базе синонимов. Также удаляет строки, в которых есть пустое слово или пустой синоним.

2. Удаляет дубли строк, слов и синонимов. Если в вашей базе есть несколько синонимов к одному слову в разных строках (или несколько слов приходится на один синоним в разных строках) – останется только одна строка, в которой слово или синоним встретились впервые.

3. Вычисляется и сравнивается морфологическая информация о слове и о синониме. Если морфологическая информация не совпадает – строка удаляется из базы. Это нужно, например, для того чтобы избежать некорректных сравнений вида мир|вселенная, где слово мир мужского рода, а синоним вселенная женского.

4. К каждому слову и синониму автоматически добавляются недостающие морфологические словоформы, что увеличивает количество строк в базе примерно до 10-300% (в зависимости от первоначального качества базы) и значительно улучшает качество базы синонимов. Например, в базе встретилась строка непрерывен|нескончаем. Скрипт автоматически добавит к базе недостающие словоформы:

непрерывна|нескончаема
непрерывная|нескончаемая
непрерывнее|нескончаемее
непрерывней|нескончаемей
непрерывно|нескончаемо
непрерывного|нескончаемого
непрерывное|нескончаемое
непрерывной|нескончаемой
непрерывном|нескончаемом
непрерывному|нескончаемому
непрерывною|нескончаемою
непрерывную|нескончаемую
непрерывны|нескончаемы
непрерывные|нескончаемые
непрерывный|нескончаемый
непрерывным|нескончаемым
непрерывными|нескончаемыми
непрерывных|нескончаемых

После добавления словоформ рекомендуется снова проверить базу на дубли.

5. Есть возможность сортировки базы в любом направлении, а также перемешивания в случайном порядке.

Как пользоваться скриптом?

Во-первых, скрипт работает только с базами в формате слово|синоним, то есть такими, в которых одно слово или словосочетание соответствует одному слову или словосочетанию. Если одному слову соответствует несколько синонимов – скрипт отработает неверно, так как он не предназначен для работы с такими базами. Даже не пытайтесь.

Во вторых, основная работа происходит над однословными позициями (теми, которые представлены одним словом и однословным синонимом). Двухсловные и более словосочетания, имеющиеся в базе, пропускаются и не обрабатываются, оставаясь в базе синонимов в неизменном виде.

Скрипт работает с базами синонимов в кодировке windows-1251. Используйте Notepad++ или другие утилиты для преобразования кодировок.

Для работы скрипта требуется Apache2 + PHP5 (Denwer и Vertrigo полностью удовлетворяют требованиям). Также скрипт можно использовать на Linux-серверах (для этого на папку со скриптом нужно установить права для записи).

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

Как купить SynAuditor?

Стоимость скрипта 24$. Купить его можно автоматически по этой ссылке.

Что еще?

При желании могу обработать скриптом одну базу одного любого форумчанина за конструктивный отзыв.

Качественная семантика недорого ( https://moab.tools/ )
vtomas
На сайте с 19.03.2007
Offline
102
#1

Печалит, что нет поддержки:

слово|синоним1,синоним2 :(

Прикрутите конвертер:

слово|синоним1,синоним2 в

слово|синоним1

слово|синоним2

Поскольку подходящих баз не имею, могу раскошелиться на пол цены :)

Хорошее стоит дорого, на плохое не стоит и тратиться. В поисках VPS захостился здесь (http://ipserver.su), а бэкапы храню здесь (http://billing.markovservers.com/backup/pl.php?65).
Удивительно
На сайте с 07.07.2009
Offline
215
#2
vtomas:

Прикрутите конвертер:
слово|синоним1,синоним2 в
слово|синоним1
слово|синоним2

Хорошая идея, прикрутим со временем.

Апдейты всем записавшимся покупателям бесплатно.

vtomas:
Поскольку подходящих баз не имею, могу раскошелиться на пол цены :)

Да вроде и так не дорого совсем ;)

vtomas
На сайте с 19.03.2007
Offline
102
#3
Удивительно:
Хорошая идея, прикрутим со временем.

Ну раз так полез в кошелек :)

P.S. Оплатил + Записался на обновление :)

vtomas добавил 14.09.2009 в 22:52

Что хотелось бы видеть в обновлении -

предварительная чистка базы:

- удаление 2-х и более -словных слов/синонимов;

- удаление слов без синонимов;

- удаление пробелов до и после разделителей;

- ну и что уже озвучивал выше.

Удивительно
На сайте с 07.07.2009
Offline
215
#4

Ваши пожелания приняты :)

Сделаем в ближайшее время.

[Удален]
#5

А можете уточнить насчёт

Во-первых, скрипт работает только с базами в формате слово|синоним, то есть такими, в которых одно слово или словосочетание соответствует одному слову или словосочетанию. Если одному слову соответствует несколько синонимов – скрипт отработает неверно, так как он не предназначен для работы с такими базами. Даже не пытайтесь.

Если к примеру в базе 90% строк: слово|синоним,

но есть 10% : слово|синоним|синоним2|синоним3

То скрипт отработает, пропустив эти 10% или вообще дров наломает?

Кстати можем попробовать, как вы и сказали, обработать одну базу за отзыв.

Удивительно
На сайте с 07.07.2009
Offline
215
#6
Fitless:
Если к примеру в базе 90% строк: слово|синоним,
но есть 10% : слово|синоним|синоним2|синоним3
То скрипт отработает, пропустив эти 10% или вообще дров наломает?

В этом конкретном случае наломает - разобъет вот такие строки (слово|синоним|синоним2|синоним3) на вот такие (слово|синоним) и обработает их. Т.е. вы лишитесь строк (слово|синоним|синоним2|синоним3), взамен получите (слово|синоним).

Fitless:
Кстати можем попробовать, как вы и сказали, обработать одну базу за отзыв.

Готов. Выложите базу куда-нибудь и ссылку в личку ;)

vtomas
На сайте с 19.03.2007
Offline
102
#7

Все таки наш МОГУЧИЙ язык не победить программными средствами, просклонял:

должен::обязан
должный::обязанный
должного::обязанного
должному::обязанному
должным::обязанным
должном::обязанном
должная::обязанная
должной::обязанной
должную::обязанную
должною::обязанною
должное::обязанное
должные::обязанные
должных::обязанных
должными::обязанными
должна::обязана
должно::обязано
должны::обязаны
должнее::обязаннее
должней::обязанней
подолжнее::пообязаннее
подолжней::пообязанней

напильник все таки необходим :)

Удивительно
На сайте с 07.07.2009
Offline
215
#8
vtomas:
напильник все таки необходим :)

В любом случае, это в 100 раз лучше, чем подбирать словоформы самостоятельно ;)

vtomas
На сайте с 19.03.2007
Offline
102
#9
Удивительно:
В любом случае, это в 100 раз лучше, чем подбирать словоформы самостоятельно

Согласен :)

С "трепетом" жду обновления :)

Удивительно
На сайте с 07.07.2009
Offline
215
#10

Итак, обработал скриптом присланную Fitless базу.

Результаты работы впечатлили даже меня самого :) Все цифры приведены без учета словосочетаний (они остались на своих местах, а значит база по факту стала еще больше). Конечно, небольшая доработка напильником базе наверняка понадобится, но качество базы должно вырасти довольно серьезно. Базу Fitless отправил, жду отзыв.

jpg Untitled-1.jpg

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий