Pull to refresh

Comments 6

А я таки пару «мужчина прыгает с мячом» и «женщина тренируется с мячом» отнёс тоже к «похожим». Вот только тут абстракция — и тот, и другая занимаются спортом.
Да, действительно, спасибо. Не обратил внимания и постольку этот [на самом деле очень важный] аспект примера не упоминается в посте. Сам же аспект «абстракции» учитывается логикой алгоритма. Что упомянуто как итерация нового уровня, когда будет выявлено, что мужчина, женщина, ребенок — люди. В принципе, можно сказать, что даже на итерации первого уровня мы имеем дело с абстракцией, обращаясь к категории «детеныш».

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

Вероятно, здесь будет ситуация похожая на прочтение «мужчина прыгает с мячом» как «мужчина играет с мячом» [упомянутое в конце поста].

То есть «мужчина» и «женщина» обнаружат свою связь на первом уровне итераций в ключевых словах как «человек». При этом корреляция между словами «прыгать» — «тренироваться» и «играть» — «резвиться» будет меньше. Однако она безусловно будет. И в результирующих цифрах будет видна эта связь между «мужчина прыгает с мячом» и «женщина тренируется с мячом».

Модуль 2 и 3 названного алгоритма направлен на более полноценное выявление категорий анализируемого текста. В них, помимо прочего, итерации модуля 1 применяются в значительном большем количестве, по возрастающей. Что, осуществляемое по определенным правилам (вся информация по логике их работе размещена на сайте проекта), как представляется, и позволяет выявлять используемые категории на достаточном уровне точности. И, соответственно, их общность или различность.

Иначе говоря, в результате их работы можно будет выявлять не просто процентную степень близости текстов, но и видеть ее категориальное содержание. То есть, можно будет получить результат: они похожи, потому что «спорт» — объединяющая их категория.
*разумеется «резвящегося ребенка» и «играющего котенка»
Весьма любопытно. Пара замечаний.

1. лучше не делать стемминг, а полноценную лемматизацию со снятием омнимии. Благо доступные синтаксические анализаторы позволяют это делать (Томито парсер, к примеру)
2. Если взять выборку текстов на двух языках, но с одинаковым смыслом — например — художественные произведения оригиналы и переводы, и прогнать их Word2Vec, то слова, обладающие близким смыслом в разных языках, будут иметь близкие расстояния в метрике Word2Vec.

А в целом, мне интересно узнать о проекте подробнее. где почитать?
Спасибо за предметные замечания.

1) С одной стороны, да, можно сперва убирать омонимию [по поводу лемматизации — да, как раз это имеется в виду под «нормализацей», но как более контекстный процесс приведения слов к словарной форме]. Но не очевидно — нужно ли это делать? С точки зрения производительности — вероятно. Но с точки зрения результата?

Так, если мы не сниманием омонимию, то для омонима будет делаться выборка для каждого возможного значения слова. То есть вместо пула (дерева) связанных слов слова «коса» в каком-то одном значении [после снятии омонимии] мы получим несколько пулов для этого слова. И все они примут участие в сравнении (выявлении совпадающий слов).

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

С другой стороны, если в выборках будут участвовать все возможные смыслы слова, тогда может всплыть неконтролируемая погрешность. Пересечения будут, но будут носить «случайный» характер. Подобный шуму при передаче сигнала.

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

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

2) Да, очень интересный инструмент. Не исключено, что его можно [и может быть нужно] встроить в логику модуля 2 или 3 как дополнительный (параллельный) фактор анализа.

Информация о проекте размещена на сайте www.cybercortex.org Но Вы вероятно уже и так увидели это в конце поста.)

Sign up to leave a comment.

Articles