TF-IDF (Term Frequency-Inverse Document Frequency) е числено представяне, използвано при обработка на естествен език. Това е техника за извличане на информация за оценка на важността на дума в документ в колекция от документи. Той подчертава думи, които имат висока честота в рамките на даден документ, като същевременно отчита тяхната уникалност или рядкост в цялата колекция. TF-IDF често се използва за задачи като класифициране на текст, извличане на информация и препоръчване на съдържание.
Събиране на документи:
- Съберете колекция от документи, които искате да анализирате или обработите.
Предварителна обработка на текст:
- Почистете и обработете предварително текста, като премахнете препинателни знаци, специални знаци и неуместна информация.
- Токенизирайте текста, за да го разделите на отделни думи (токени).
- Преобразувайте целия текст в малки букви, за да осигурите обработка без разлика на главни и малки букви.
Чанта с думи:
- Съставете списък с уникални думи от всички документи. Този речник ще се използва за създаване на размерите на TF-IDF векторите.
Изчисляване на честотата на термините (TF):
- За всеки документ в колекцията изчислете честотата на термина за всяка дума. Честотата на термина е съотношението на броя пъти, в които една дума се появява в документ, към общия брой думи в този документ.
Изчисляване на обратната честота на документа (IDF):
- За всяка дума в речника изчислете обратната честота на документа. IDF измерва колко рядка или често срещана е дадена дума в цялата колекция.
Изчисляване на резултати от TF-IDF:
- Умножете честотата на термините (TF) на всяка дума в документ по съответната обратна честота на документа (IDF), за да получите резултата TF-IDF.
- TF-IDF = TF * IDF
Създаване на TF-IDF вектори:
- За всеки документ създайте TF-IDF вектор, където всяко измерение представлява дума от речника, а стойността във всяко измерение е изчисленият TF-IDF резултат за тази дума в документа.
Анализ и приложения:
- Получените TF-IDF вектори могат да се използват за различни задачи за обработка на естествен език, като класификация на текст, извличане на информация, групиране, системи за препоръки и други.
Интегриране на машинно обучение:
- Използвайте TF-IDF векторите като входни характеристики за алгоритми за машинно обучение, за да изградите модели за задачи като класификация на текст или групиране.
Еднократното кодиране е техника, използвана за представяне на категорични данни, като думи в текст, като двоични вектори. В един горещо кодиран вектор всяко измерение съответства на уникална категория (в този случай дума) и само едно измерение е „горещо“ (настроено на 1), докато всички останали са „студени“ (настроено на 0), за да покажат наличие или отсъствие на тази категория.
Нека се научим, като вземем пример:
D1 → Андрю е високо момче.
D2 → Шаджи е умно момче. Zubia също е умна.
Тук D1(Документ 1) и D2(Документ 2) са нашите два документа. Сега ще ги кодираме еднократно.
Сега създаваме хистограма. Хистограмата е сборът от всички еднократни представяния на всички думи. Изображението по-долу е за D1.
По същия начин го правим и за D2.
Таблицата, представена по-горе, илюстрира разпределението на стойностите на TF-IDF, показвайки, че определени думи притежават нулева стойност, докато други имат ненулеви стойности. Това несъответствие произтича от тяхното появяване в документа, както и във всички документи.
Въпреки това е важно да се отбележи, че TF-IDF не се използва за улавяне на контекстуалното значение на думите, тъй като разчита единствено на изчисления, базирани на честота.