У меня есть предложения, пришедшие из научных исследований, и там вручную извлечены словосочетания, которые являются ключевыми словами предложений, которые я хочу получить. Теперь, чтобы построить данные поезда для классификатора SVM, я хотел бы векторизовать предложения вместе с каждым ключевым словом. Смотреть код
Я думал о словаре и применении DictVectorizer из библиотеки sklearn.
Code:
sklearn.feature_extraction import DictVectorizer
v = DictVectorizer()
D = [{"sentence":"the laboratory information system was evaluated",
"keyword":"laboratory information system"},
{"sentence":"the electronic health record system was evaluated",
"keyword":"electronic health record system"}]
X = v.fit_transform(D)
print(X)
content = X.toarray()
print(content)
print(v.get_feature_names())
Results:
(0, 1) 1.0
(0, 3) 1.0
(1, 0) 1.0
(1, 2) 1.0
[[0. 1. 0. 1.]
[1. 0. 1. 0.]]
['keyword=electronic health record system', 'keyword=laboratory information system', 'sentence=the electronic health record system was evaluated', 'sentence=the laboratory information system was evaluated']
Правильно ли это методологически или как я могу объединить каждое предложение с соответствующим вручную извлеченным ключевым словом для векторизации, чтобы раскрыть данные обучения. Большое спасибо.