векторен модел

Материал от MachineLearning.

Съдържание

Основната идея зад векторния пространствен модел (VSM) е да представи всеки документ в колекция като точка в многомерно пространство (вектор във векторно пространство). Близките точки една до друга съответстват на семантично подобни документи. В търсачките тази идея се реализира по следния начин. Заявката на потребителя се третира като вектор (като псевдодокумент). След това документите се сортират по ред на увеличаване на разстоянието до псевдодокумента и се предоставят на потребителя.

Векторният модел се основава на хипотезата за статистическата семантика: статистическите зависимости на употребата на думи от дадено лице могат да се използват за намиране на значението, присъщо на тях.

Сходство на документи: Матрица термин-документ

При наличие на голяма колекция от документи и следователно голям брой вектори, съответстващи на тях, е удобно последните да се групират в матрица. Всеки ред дефинира отделен термин, а всяка колона отговаря на определен документ.

Нека има документ, който съдържа някакъв набор от термини (редът им в набора не е важен). След това съответства на вектора, където първият елемент съответства на броя на срещанията на термина в документа, вторият - , третият - .

Извличането на информация с помощта на матрицата термин-документ се основава на следната хипотеза: оценяването на уместността на даден документ към заявка може да се извърши чрез представяне на документа и заявката като торба с думи. С други думи, по честотата на срещане на думите в даден документ можем да преценим неговата релевантност към заявката.

Нека е матрица термин-документ. Да предположим, че колекцията се състои от документи иуникални условия. Матрицата ще има редове и колони. Означава се с – -ти термин в речника, – -ти документ в сборника. Тогава всеки елемент от матрицата е броят на срещанията на термина в документа.

Обикновено повечето стойности на матрични елементи са 0 (матрицата е рядка). Това се дължи на факта, че документите съдържат само малка част от термините от целия речник.

Сходство на думи: Матрица на думата-контекст

Матрицата термин-документ се използва за намиране на прилики между отделни документи. Понякога задачата може да бъде да се вземе предвид близостта на определени думи в рамките не на целия документ, а на някои негови части. Матрицата дума-контекст отразява честотата на срещане на термини в определена фраза, изречение, параграф или глава.

Споредхипотезата за разпределениев лингвистиката думите, открити в подобен контекст, обикновено имат подобни значения. Тази хипотеза оправдава използването на векторен модел за определяне на сходството на думите.

Една дума може да бъде представена като вектор, чиито елементи съответстват на броя на срещанията в някакъв контекст. Близостта на векторите определя семантичното сходство.

Връзки на подобие: матрица на двойка модел

В матрицата двойка-модел всеки ред описва конкретна двойка думи (като зидар:камък или дърводелец:дърво), а всяка колона съответства на модел, който определя връзката между двойки думи (като работи с).

Важно място тук заемахипотезата за разширено разпределение, според която отношенията, които се срещат заедно с подобни двойки думи, обикновено имат подобни значения. Например връзката „решено (какво?)“ и „решено (от кого?)“ обикновено се използва с подобни двойки. Поради това,може да се предположи, че горните отношения имат подобен смисъл.

Според хипотезата за скритите връзки, двойки думи, които се срещат в подобни модели, са склонни да имат тясна семантична зависимост [1]. Близостта на редовете-вектори на парамоделната матрица определя степента на сходство на връзките между думите.

Матриците на модела на двойки са подходящи за измерване на сходството на семантичните връзки между двойки думи. В този случай говорим за релационно сходство. От друга страна, матриците дума-контекст се използват за измерване на приписващото сходство.

Сходството на атрибутите между две думи и , , зависи от степента на съвпадение на свойствата и . Колкото по-голямо е съответствието, толкова по-голямо е атрибутивното сходство. Релационното сходство между две двойки думи и , зависи от степента на съответствие между отношенията и . Колкото по-високо е то, толкова по-силно е релационното сходство.

Помислете за пример. Има относително висока степен на атрибутивно сходство между думитекучеивълк, докато има релационно сходство между двойките думикуче:лаеикотка:мяу.

Други векторни модели

Традиционните векторни модели са доразвити. Например, можете да създадете матрица с троен модел, която установява връзката между връзките на тройка от думи (вместо двойка, както в матрицата на парамодела).

Обобщавайки матричните подходи, се преминава към компилиране натензори, катотермин-документ-езикза многоезично извличане на информация илиглагол-субект-обектза изучаване на предпочитанията за съпоставяне на думи с глаголи.

Езикова обработка за векторен модел

Например предварителна обработка на текст за векторен модел с помощта на матрица дума-контекст,може да бъде представен като разлагане в три стъпки: маркиране, анализ на повърхността и извличане на синтактични атрибути.

Маркиране на текст

Маркирането на текст изглежда доста проста задача на пръв поглед. В действителност това не винаги е така.

Програмата за маркиране трябва да знае как да използва пунктуация, сричкопренасяне и разпознаване на сложни термини (напр.стабилно филтриранеилимашинно обучение). В същото време можем да пренебрегнемстоп думите- това са думи с висока степен на срещане в текста, но с малко информационно съдържание, като съюзи и предлози.

Нормализация на текста

Мотивацията за нормализиране на текста произтича от факта, че различни редове често могат да изразяват едно и също значение. В тази връзка е оправдано свеждането на думите до една форма.

Първо, трябва да конвертирате всички знаци в един регистър. Това обаче трябва да се прави с повишено внимание, защото понякога промяната на регистъра може да промени и значението на думата. Например, разгледайте съкращениетоRAS. Ако всички знаци са изписани с главни букви, тогава думата означава Българска академия на науките. С малка буква се получава думатаran(генитив отran). Примерът показва, че неуспешната промяна на падежа може да промени и значението на думата.

От морфологична гледна точка една и съща дума може да приема различни форми. Например българските глаголи могат да се променят по време и число (а в минало време и по род). Стимулирането (стематизиране) е процесът на търсене на дума във всичките й морфологични форми, последван от избор на основата (или корена). Поради факта, че на английски афиксите са сравнително прости и постоянни, произтичащи алгоритми, базирани на евристикаработят доста добре.

Ваглутинативния език(японски, монголски и др.) словообразуването става чрез добавяне на различни форманти към корена и всеки от тях предава само едно значение. Много по-трудно е да се извърши процедурата за произтичане с такива думи. Една дума от аглутинативен език може да отговаря на няколко от българския.

Ефективността на системата за търсене на информация се измерва с точност и пълнота. Точността е оценка на условната вероятност даден документ, върнат от системата, действително да има отношение към заявката. Пълнотата е оценка на условната вероятност даден документ, свързан със заявка, да бъде върнат от системата на потребителя.

Нормализирането помага да се увеличи пълнотата на търсенето и в същото време да се намали неговата точност. Когато думите се редуцират до една форма, за системата е по-лесно да разпознае тяхната прилика, поради което се намират по-голям брой подобни документи и се увеличава пълнотата. Това обаче също допринася за факта, че когато се опрости, думата може да промени първоначалното си предназначение, което намалява точността на извличане на информация.

Ако колекцията от документи е малка, тогава достатъчно "активната" нормализация на текста ще увеличи пълнотата. В големите колекции често е по-важно да се намерят документи с висока точност и следователно нормализирането на текста се извършва с по-малко "сурови" методи.

Коментиране

Коментирането е полезно и за измерване на семантичното сходство на думи и понятия (за модели, базирани на матрицата дума-контекст). В [2] е представен алгоритъм, който открива близкото значение на думите чрез групиране на вектори редове на матрицата дума-контекст.

Математическа обработка за векторен модел

Изграждане на честотна матрица

Всеки елемент от честотната матрица съответства на определено събитие: дадена дума (термин или двойка думи) се среща в определен документ (контекст, модел) определен брой пъти. Теоретично изграждането на матрица се свежда до просто преброяване на броя на срещанията на дума в текст. На практика могат да възникнат трудности, ако наборът от документи е голям.

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

Елементи за претегляне

Идеята е, че колкото по-неочаквано е едно събитие, толкова по-интересно е то. Най-популярният метод за претегляне за модел термин-документ е tf-idf (честота на термина - обратна честота на документ). Според този подход даден термин има висока тежест, ако се среща често в даден документ и рядко в други. Теглото се изчислява по следната формула:

където е броят на срещанията на -тия термин в -тия документ, е броят на срещанията на -тия термин във всички документи, е броят на документите в колекцията.

Алтернативен начин за присвояване на тегла е методът PMI (Pointwise Mutual Information), който работи добре както за матрици дума-контекст, така и термин-документ. Положителният PMI е един вариант на PMI, при който всички отрицателни тегла се заменят с нула. Методът PPMI е подходящ и за парамоделни матрици.

Нека е честотната матрица на думата-контекст с – редове и – колони. Редът е векторът, съответстващ на думата, а колоната на същата матрица е векторът, дефиниран от контекста. Матрицата е резултат от метода PPMI с матрицата. Забележи това .Изчисляването на елементите на получената матрица е както следва:

В този случай е очакваната вероятност думата да се появи в контекста, е очакваната вероятност на думата и е вероятността за възникване на контекста. Ако и са статистически независими, тогава , и след това изчезва. От друга страна, ако има силна семантична връзка между определен контекст и дума, тогава трябва да се очаква, че вероятността ще бъде по-висока, отколкото в този случай коефициентът ще приеме положителна стойност. Това следва от хипотезата за разпределение по-горе. Ако дадена дума е напълно несвързана с контекста, тогава тя ще се окаже отрицателна. В метода PPMI интересните семантични връзки се отразяват с висока стойност на елемента, в противен случай се получава нулева стойност.

Най-известният недостатък на метода PMI е, че той има тенденция да придава високи тежести на редки събития. Освен това, ако определена дума се среща само в определен контекст, тогава . Лесно е да се провери, че с намаляването на вероятността за срещане на дадена дума стойността се увеличава. Едно решение на този проблем е да се въведе някакъв наказателен фактор:

Изглаждане на матрицата

Най-простият начин за подобряване на производителността при извличане на информация е да се ограничи броят на векторните компоненти. Избрани са само думите, които се срещат най-често в контекста. Трябва да се отбележи, че преди да приложите този метод, е необходимо да изчистите текста от стоп думи, които носят малко полезна информация.

Намирането на прилики между двойки от всички вектори е изчислителна трудна задача. Следователно остават най-важните фактори.

Да разгледаме метод, базиран на разлагане на сингулярна стойност, което ни позволява да представим като продукт на матрици . Нека и (където ) е диагоналътматрицата, образувана от първите сингулярни числа, и са матриците, образувани от съответните колони и . След това е ранговата матрица, която най-добре приближава оригиналната матрица. Това означава, че изразът за матрицата е минимизиран, където е нормата на Фробениус.

Този метод може да се използва за търсене на скрит смисъл. Да предположим, че това е матрица дума-контекст. е линейно картографиране между думи и контексти с по-нисък ранг от . Когато рангът на матрицата се понижи, остават само „най-силните“ съвпадения.

Такава трансформация също води до намаляване на нивото на шума, степента на разпръснатост на матрицата.

Векторно сравнение

Най-популярният начин за измерване на сходството на два вектора на честотната матрица е да се намери косинусът на ъгъла между тях. Нека и са два вектора на измерение .

Друг метод за сравнение се основава на намиране на разстоянието между векторите. Тогава сходството на векторите е равно на:

Понякога приликите се откриват с помощта на следната формула:

Идеята е, че колкото по-голямо е разстоянието между векторите, толкова по-малко си приличат един с друг. Често като стойност се използва или евклидовото разстояние, или разстоянието Манхатън.

Машинно обучение

За решаване на проблеми с класификация или групиране с помощта на векторен модел на семантика се използва машинно обучение. Така че косинусът на ъгъла между векторите може също да се използва като функция за разстояние в алгоритъма за най-близък съсед. В същото време има много алгоритми за обучение, които могат да работят директно с векторите на VSM модела.

Въпреки това, преди да използвате повечето алгоритми за машинно обучение, е необходимо да извършите както лингвистична, така и математическа обработка на текста.

Освен обучение с учител и обучение безвекторният модел на учителя може да се използва и за задачи, решавани по метода на частичното обучение [3, 4].