-
Обработка естественного языка (NLP) с помощью Python:
- Метод: используйте библиотеку, например NLTK (Natural Language Toolkit) или spaCy, для токенизации текста, маркировки частей речи и распознавания именованных объектов.
-
Пример кода (с использованием NLTK):
-
TF-IDF (частота документа, обратная частоте терминов):
- Метод: вычислить оценки слов в тексте по TF-IDF и извлечь наиболее важные ключевые слова на основе их оценок.
-
Пример кода (с использованием scikit-learn):
from sklearn.feature_extraction.text import TfidfVectorizer def extract_keywords(text): vectorizer = TfidfVectorizer() tfidf_matrix = vectorizer.fit_transform([text]) feature_names = vectorizer.get_feature_names_out() # Extract keywords based on TF-IDF scores top_keywords = [feature_names[idx] for idx in tfidf_matrix.indices if tfidf_matrix.data[idx] > 0.2] return top_keywords text = "The author of Namesake is Jhumpa Lahiri." keywords = extract_keywords(text) print(keywords) # Output: ['namesake', 'jhumpa', 'lahiri', 'author']
-
Извлечение ключевых слов на основе правил:
- Метод: Определите набор правил или шаблонов для извлечения ключевых слов на основе определенных шаблонов или структур текста.
-
Пример кода (с использованием регулярных выражений в Python):
import re def extract_keywords(text): # Define patterns for keyword extraction patterns = [r"author of (\w+)", r"(\w+) Namesake"] keywords = [] for pattern in patterns: matches = re.findall(pattern, text, re.IGNORECASE) keywords.extend(matches) return keywords text = "The author of Namesake is Jhumpa Lahiri." keywords = extract_keywords(text) print(keywords) # Output: ['author', 'Jhumpa']