Вопрос

Я очень новичок в науке о данных в целом, и мне было поручено с большой проблемой.

У моей организации есть много документов, которые сортируются по типу документа (не двоичный формат, а субъективно назначенный тип, основанный на содержании, например, «Контракт», «квитанция», «Заявление» и т. Д.).

Вообще говоря, назначение этих типов выполняется при получении документов и не является проблемой, хотя мы хотели бы удалить человеческий элемент этой категоризации. Точно так же бывают случаи, когда есть особые атрибуты, которые мы хотели бы идентифицировать, например, «оператор, показывающий использование». До сих пор это полностью сделано вмешательством человека.

Я программист Python и рассматривал инструменты для извлечения текста из этих документов (все PDF, все OCR'ed и доступны для поиска) и анализ. Исследования заставили меня взглянуть на стандартные библиотеки, такие как NLTK, Scikit-Learn и Gensim. Но я изо всех сил пытаюсь определить, что будет лучшей методологией для классификации недавно полученных документов.

Мое исследование привело меня к нескольким путям ... один создает векторную модель TF-IDF, основанную на выборке текущей корпорации, а затем создает модель для корпуса входящего документа и проведения наивного анализа байеса против существующих моделей, чтобы понять, какие Категория Входящий документ относится на основе наивысшей вероятности. Вопрос 1: Это верно? Если да, вопрос 2 становится правильной программной методологией для этого?

Причина, по которой я вообще это выдвинула, заключается в том, что большинство учебных пособий, которые я считаю, кажется, склоняются к бинарной проницательности Text Corpa (положительный и негативный, спам против HAM). Я видел, как у Scikit-Learn есть информация о многопользовательской классификации, но я не уверен, что иду с ней по правильной дороге. Слово «классификация», кажется, имеет иной смысл в анализе документов, чем то, что я хотел бы означать.

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

Это было полезно?

Решение

За исключением части OCR, правый пакет будет pandas а также sklearn.

Вы можете проверить это Ipython Notebook который использует TFIDFVectorizer и SVC -классификатор.

Этот классификатор может сделать One-VS-One или One-VS-The-Rest многоклассные прогнозы, и если вы используете predict_proba Метод вместо predict, у вас будет уровень уверенности в каждой категории.

Если вы ищете выступления и вам не нужны уровни достоверности прогнозирования, вам следует использовать LinearSVC что намного быстрее.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с datascience.stackexchange
scroll top