ПредишенСледващото

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

Qualifier - алгоритъм на съотнасяне на някои данни от един или повече класове. Тези класове трябва да се определят предварително, за разлика от клъстерни алгоритми.

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

те са навсякъде

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

На класирането на проблеми

Модерен търговски система, способна успешно спам филтър с точност по-голяма от 99% 1. Друг доста типичен пример за това е автоматична класификация на предмети дефиниция на текст. Някои новини aggreratory използват подобен подход към групата новини области: икономика, политика, социален живот и т.н.

Често, класирането е основата, върху която да се изгради алгоритми за решаване на по-сложни проблеми. Например, класификацията се използва при създаването на Recommender системи и по-специално в изпълнението на съвместни филтриране.

На класирането на проблеми

Safari Reader Mode е още един пример, където алгоритми за класификация се използват за постигане на крайната цел. Същността на този режим на браузъра е, че тя ви позволява автоматично да се премахнат всички кори от страницата не се отнася до същността на съдържанието на страницата 2.

На класирането на проблеми

Същата класификация се използва в проблеми на лицето и да се изправи detection'a recognition'a.

На класирането на проблеми

Класификацията се използва като инструмент за решаване на много други проблеми:

  • пояснение в обработката на естествен език;
  • в търсачките - за да ограничите търсенето до подобряване на точността (вертикално търсене);
  • автоматично разпознаване на езика, на който е написан текста;
  • анализ тон (дефиниция на емоционален цвят на текста).

Списъкът продължава за дълго време. Така например, в областта на медицината, алгоритми за класификация се използват за възстановяване на 3D модел на мозъка MRI серия от снимки 3 и за диагностициране на пациенти, страдащи от болестта на Алцхаймер 4.

традиционните подходи

Основана на правила класификация

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

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

  • За да изберете подходящи за класификация на думи, които трябва да имат познания и опит в съответната област. Имате ли някакви такива опасения за ключовите думи, които са добре разграничени документи, посветени на финансови теми от икономически инструменти? Имам много неясно;
  • Не винаги наличието или отсъствието на една дума е решаващ фактор в решението.

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

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

Тегло на базата класификация

Можем да отидем в другата посока. Можем да изберем за всяка дума с определено тегло, което би означавало, каква е вероятността това съобщение с думата спам (0 - никога не спам, 1 - винаги спам).

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

Ние приемаме всяка дума и да определи общото тегло на документа отделно за клас "спам" и клас "не е спам". Общото тегло се определя като продукт на теглата на всички добре познати думи на документа. Думи, за които ние не разполагат с теглото ни липсват в класирането. Което се оказа общото тегло на повече от един клас и победи.

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

метод за машинно обучение

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

За да бъдем по-точни, по метода, описан от мен е ембриона на наивен Бейс класификатор. Но не позволявайте на името да ви заблуди, NBC (наивни Бейс Класификатор), ако не най-много, една от най-често използваните класификатори. Има редица причини:

  • това е просто в изпълнение и тестване;
  • процеса на обучение е доста ефективен в сравнение с други по-сложни класификатори;
  • в малки пакети от документи разлика между NBC и други много по-сложни алгоритми за класификация често са маловажни, а понякога и NBC може да се окаже по-точно 5.

В следващите статии ще се опише по-подробно въпросите, свързани със създаването и тестването на такъв класификатор. Абонамент за RSS.

Сродни връзки

Свързани статии

Подкрепете проекта - споделете линка, благодаря!