Python: класифікуйте текст за категоріями

У мене є частина навчального набору

це зв’язок між url та категорією. А також у мене є набір тестів, і мені потрібно отримати категорію до кожної url.

Не знаю, який алгоритм мені слід використовувати для розв’язання цього завдання. Мені потрібен найкращий спосіб отримати максимальну точність. І я думаю, що це проблема, що у мене є кілька категорій.

Я намагаюся спочатку проаналізувати заголовок тегу html, тому що я думаю, що я можу визначити категорію лише за допомогою url .

текст

1 відповідь 1

В основному ви класифікуєте рядки за категоріями. Тому ви будете використовувати класифікатор. Але ви будете не просто використовувати один класифікатор, а скоріше протестувати кілька і вибрати найбільш точний.

Проте спочатку вам доведеться подумати про особливості кожної URL-адреси. Я сподіваюся, що ви не досягнете великої точності, якщо просто подаєте URL-адресу як рядок і як єдину функцію.

Швидше ви будете попередньо обробляти кожну URL-адресу для вилучення функцій. Вибір відповідних/корисних функцій сильно залежить від домену. Особливістю може бути:

перше слово до крапки, наприклад: facebook для "facebook.com"

довжина цілої струни

уявіть, ви визначаєте ключові слова для кожного кластера, наприклад, для кластера "Інтернет-покупки", який ви визначаєте [промо, купувати, купувати, продавати, ціну], тоді ви можете обчислити кількість ключових слів, які зустрічаються в рядку для кожного кластера, особливість

Тому вам доведеться продовжувати спочатку з функціональна інженерія по-друге, порівнянням показників класифікатора.

EDIT: Приклад

більше рішень звідси Ейріу фон Кауйф

Проте всі ці приклади - це дуже прості функції, які не охоплюють семантичного змісту URL-адреси. Залежно від глибини/витонченості ваших цільових змінних (кластерів), можливо, вам доведеться використовувати функції на основі n-грамів, такі як тут