Извлечение технических ключевых слов из текстового документа
Переписан:
У меня есть корпус связанных с информатикой документов. Я хочу извлечь ключевые слова для конкретного домена. например, JAVA, C#, HTML, OOP, UML, Unity и т. д. Я искал источник, похожий на Оксфордский словарь для вычислений, однако их API еще не запущен. Я также пробовал использовать Webopedia для терминов в области информатики, но они не настолько инклюзивны и не обновлены (например, в мои документы не входят некоторые слова, такие как F#) или в случае Википедии все термины не перечислены все вместе. Существует ли более инклюзивный источник или подходящий подход для извлечения этих ключевых слов? Я использую Python с NLTK . Например, tf-idf не помог, потому что некоторые специфичные для домена слова встречаются почти во всех документах, поэтому эти слова не получают высокую оценку. Я думаю, что было бы полезно, если бы я мог использовать POS-теги, но я не уверен, какой вариант будет лучшим для моего приложения. Возьмите строку ниже в качестве примера:
"Возможности экспертного уровня в JavaScript, JSON и AJAX, а также глубокие знания JavaScript-фреймворков, таких как JQuery". Здесь я хочу извлечь следующие слова: ['JavaScript', 'JSON', 'AJAX', 'Frameworks', 'JQuery '] но когда я ищу существительные, используя POS-тегирование NLTK, я получаю "уровень", "способность", "знание"… также. Спасибо за вашу помощь.
1 ответ
Почему бы вам не загрузить дампы данных Stackru и не написать программу для фильтрации тегов?
Они только что были выпущены на archive.org, смотрите здесь
Конечно, это не будет включать все термины и будут некоторые ложные срабатывания, но я предполагаю, что это примерно так близко, как вы получите.