Lsi: зачем и почему

[Удален]
#21

samimages, сама методика требует серьёзной доработки, тогда что-то можно выжать, но не для указанных целей, а скорее для прогноза попадания в топ, точнее вероятность соответствия проверяемого документа выдаче

samimages:
это "шестеренка" огромной статистической машины, которая даже в ПС не используется в силу ресурсозатратности.

объём данных можно серьёзно уменьшить, без серьёзной потери точности (проверял только на коммерческих супер вч вк 2-3 словниках)

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

T7
На сайте с 19.09.2018
Offline
52
#22
samimages:
timo-71, вы понимаете, что они вас не понимают? просто интересно... Вы, если, хотите разобраться конкретно с LSI, то не обращайте внимание на контент содержащий вместе слова LSI и копирайтинг. Получается разговор слепого с глухим.

Да, копирайтинг в данном контексте точно не рассматриваю. Задача возникла в результате разработки портала/доски/агрегатора/отраслевых новостей. Как задача автоматического определения ключевых фраз для товарного предложения/листинга и обвеса документа различным доп. контентом максимально раскрывающую тему документа.

Например, есть объявление (только в качестве примера). Используя данные (это не все):

$ /home/web/py/w2v/corpus
<class 'gensim.models.ldamodel.LdaModel'> num_topics=4
0.043*"битый" + 0.042*"renault" + 0.042*"привод" + 0.042*"состояние" + 0.042*"купить" + 0.042*"полный" + 0.041*"kaptur" + 0.024*"комплект" + 0.024*"проверка" + 0.024*"красить"
0.075*"тип" + 0.075*"двигатель" + 0.042*"внедорожник" + 0.042*"renault" + 0.042*"бензин" + 0.042*"кузов" + 0.042*"выпуск" + 0.042*"марка" + 0.041*"год" + 0.041*"объем"
0.055*"kaptur" + 0.051*"челябинский" + 0.051*"область" + 0.032*"renault" + 0.032*"купить" + 0.031*"комплектация" + 0.029*"avito" + 0.029*"салон" + 0.029*"перекуп" + 0.029*"торг"
0.039*"проверка" + 0.039*"запуск" + 0.039*"машина" + 0.039*"доступ" + 0.039*"система" + 0.039*"сигнализация" + 0.039*"готовый" + 0.039*"бесключевой" + 0.039*"авто" + 0.038*"руль"
<class 'gensim.models.lsimodel.LsiModel'> num_topics=4
0.365*"renault" + 0.365*"kaptur" + 0.343*"купить" + 0.238*"двигатель" + 0.235*"полный" + 0.235*"привод" + 0.233*"машина" + 0.222*"состояние" + 0.222*"год" + 0.222*"комплектация"
0.433*"проверка" + 0.261*"авто" + 0.261*"система" + 0.261*"запуск" + 0.261*"доступ" + 0.261*"готовый" + 0.261*"сигнализация" + 0.261*"бесключевой" + 0.259*"машина" + 0.194*"битый"
0.434*"челябинский" + 0.434*"область" + 0.256*"осмотр" + 0.256*"квартал" + 0.256*"машгородок" + 0.256*"место" + 0.256*"миасс" + 0.178*"avito" + 0.156*"renault" + 0.156*"kaptur"
-0.349*"битый" + -0.292*"кредит" + -0.292*"залог" + -0.292*"проходить" + -0.292*"резина" + -0.292*"комплект" + -0.292*"красить" + 0.205*"авто" + 0.205*"система" + 0.205*"запуск"

=summarize=word_count=20=
Renault Kaptur, 2018 купить. Renault Kaptur, 2018 купить в Челябинской области на Avito. Тип двигателя: бензин. Renault Kaptur в отличном состоянии, машина на гарантии.

=bigram=gensim.models.phrases.Phrases(dataset, min_count=1, threshold=1, delimiter=b' ')
['renault kaptur', 'купить']
['renault kaptur', 'купить', 'челябинский область', 'avito']
['марка', 'renault']
['модель', 'kaptur']
['поколение']
['модификация', 'mt']
['год', 'выпуск']
['пробег', 'км']
['состояние', 'битый']
['владелец', 'птс']
['тип', 'кузов', 'внедорожник']
['количество', 'дверь']
['тип', 'двигатель', 'бензин']
['коробка', 'передача', 'механика']
['привод', 'полный']
['руль', 'левый']
['цвет', 'серебряный']
['комплектация', 'drive']
['место', 'осмотр', 'челябинский область', 'миасс', 'квартал', 'машгородок']
['объем', 'двигатель']
['renault kaptur',
'отличный',
'состояние',
'машина',
'гарантия',
'купить',
'октябрь',
'год',
'комплектация',
'драйв',
'литровый',
'двигатель',
'полный',
'привод']
['битый', 'красить',
'кредит',
'залог',
'проверка',
'проходить',
'комплект',
'резина']
['сигнализация', 'авто',
'запуск',
'система',
'бесключевой',
'доступ',
'машина',
'готовый',
'проверка']
['салон', 'перекуп', 'беспокоить', 'торг']

+ свои данные. Например, несложно заметить биграммы определены по этому маленькому тексту только 'renault kaptur' и 'челябинский область'. Понятно почему. Но, если применить метод к большой коллекции биграмм будет больше.

Дальше, букварикс/мутаген АПИ и ключевики для объявления подобраны. Потом, на основе lda/lsi топа - дополнительные темы для полного раскрытия темы, на основе которых сделать обвес документа. Изначально идея была такой.

Но, хотелось услышать еще идей-направлений как можно это применить. А тут - задания для копирайтеров :(

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

samimages:

Кроме того, я вам намекал, что в методе сбора может быть ошибка, т.к. СЕРП не однороден по ранжированию и попытка

Я анализирую, больше всего "странных" слов дает 2гис, вк и т.п. Но, экспертного корпуса построенного на "диссертациях" по теме у меня нет:) Поэтому сделано допущение, что контент 20 (не суть, пробовал разные варианты) первых документов выдачи Я можно рассматривать как экспертный корпус по теме ключевика.

тем не менее, спасибо за конструктивную критику и направления куда еще можно посмотреть:)

SmileP
На сайте с 18.02.2010
Offline
372
#23

Хм, а Акварель-генератор. Документация. не похожее?

Хотя там скорее акцент на копирайтенге.

T7
На сайте с 19.09.2018
Offline
52
#24
SmileP:
Хм, а Акварель-генератор. Документация. не похожее?
Хотя там скорее акцент на копирайтенге.

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

Судя по

том случае 0.298

не делают

words = mystem.lemmatize(text)

#....
words = [t for t in words if t not in ru_stopwords]
[Удален]
#25
timo-71:
Как задача автоматического определения ключевых фраз для товарного предложения/листинга

попробуйте брать первые 10 наиболее значимых (лем/биграм...) с каждого документа из топа, в принципе должно быть достаточно для определения связанных запросов

T7
На сайте с 19.09.2018
Offline
52
#26
burunduk:
попробуйте брать первые 10 наиболее значимых (лем/биграм...) с каждого документа из топа, в принципе должно быть достаточно для определения связанных запросов

В том числе, для определения значимости и заморочился.

Если в лоб, по кол-ву вхождений, то для "renault kaptur купить", на корпусе - контент документов из 20:

[["chernyj tsvet", 191], ["bezopasnost' podushka", 181], ["zadnij zerkalo", 170], ["kaptur vnedorozhnik", 163], ["perednij zadnij", 149], ["kaptur renault", 148], ["djujmovyj legkosplavnyj", 142], ["bezopasnost' perednij", 140], ["perednij voditel'", 137], ["naruzhnyj zerkalo", 131], ["avto ostavat'sja", 114], ["vid zadnij", 103], ["hromirovannyj nakladka", 97], ["slonovyj tsvet", 94]...

Если по одному, то часто вообще непредсказуемо получается, типа как "avto ostavat'sja" несколько первых

* биграммы сортированы, в "kaptur renault" включен "renault kaptur".

Что касается, когда есть запрос и надо расширить, еще используется

[["kaptur renault", 125], ["disk renault", 4], ["renault vozduhovod", 4], ["diler ofitsial'nyj", 3], ["nakladka porog", 3], ["moskva ofitsial'nyj", 2], ["deflektor vozduhovod", 2], ["nizhnij novgorod", 2], ["porog renault", 1]]

...
0.220*"renault" + 0.220*"купить" + 0.220*"kaptur" + 0.027*"официальный" + 0.027*"самара" + 0.027*"дилер" + 0.027*"москва" + 0.014*"дон" + 0.014*"новгород" + 0.014*"ижевск"
...

анализ ключевиков в качестве данных для окончательной сборки запроса на поиск обвеса.

Devvver
На сайте с 02.07.2008
Offline
635
#27
timo-71:
несложно заметить биграммы определены по этому маленькому тексту только 'renault kaptur' и 'челябинский область'

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

https://www.youtube.com/watch?v=QkUmCnDe3xI&feature=youtu.be&t=1676

вообще полезно посмотреть.

Еще поиграйтесь для ваших запросов с https://serphunt.ru/cabinet/competitors/

Мой блог. Все о создании сайтов,Seo и СДЛ ( https://devvver.ru/ ) Мой телеграм канал https://t.me/seobloggers
yanus
На сайте с 21.01.2009
Offline
349
#28
Devvver:
Яндекс не использует биграммы, а триграммы.

В ролике буквенные триграммы, а ТС о биграммах слов.

И про словарные биграммы в ролике тоже есть )

samimages
На сайте с 31.05.2009
Offline
403
#29
timo-71:
Поэтому сделано допущение, что контент 20 (не суть, пробовал разные варианты) первых документов выдачи Я можно рассматривать как экспертный корпус по теме ключевика.

В Яндексе точно нет... там скорее начиная с ТОП 30... ну, ТОП 20, можно искать интенты, а первая 20-ка сглажена до среднего под ПФ, но если рассчитать корпуса самих представителей ТОП-10, например и сопоставить, то может получиться интересно, а если получится сохранить привязку к хосту, то еще и нужно.

Devvver:
Яндекс не использует биграммы

Использует, это прямо следует из слитой в паблик документации, по сути там с биграмм и начинается блок обработчиков, в том числе и на синонимы

Опыт как иммунитет — приобретается в муках! Хостинг: экономия до 1300 руб + домен в подарок ( https://clck.ru/XLscf ) / Аудит семантики от 15К [долго] - ЛС
T7
На сайте с 19.09.2018
Offline
52
#30
Devvver:
Яндекс не использует биграммы, а триграммы.
https://www.youtube.com/watch?v=QkUmCnDe3xI&feature=youtu.be&t=1676
вообще полезно посмотреть.
Еще поиграйтесь для ваших запросов с https://serphunt.ru/cabinet/competitors/

Вообще все н-граммы юзаются до 4

 [["disk_djujmovyj_legkosplavnyj_steppe", 97], ["bachok_bol'shoj_ob'em_omyvatel'", 84], ["kozyrek_solntsezaschitnyj_vstraivat'_zerkalo", 81], ["esp_kursovoj_sistema_stabilizatsija", 73] 

Другой вопрос, что в задаче надо

наиболее значимых

а тут

 ["kaptur_kupit'_renault", 20] 

а запрос повторю "renault kaptur купить"

Циферка кол - во найденных н-грамм. kaptur_kupit'_renault это все сочетания слов kaptur kupit' и renault

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