如何从句子提取关键词

23 天前
 miaoblyat

需求是从句子中提取指定关键词或者关键词近似的词语;目前用 jieba 提取效果不是很理想.可能我用法不对;有人做过类似的关键词提取吗

1336 次点击
所在节点    程序员
15 条回复
miaoblyat
23 天前
# 提取句子中的关键词及其近似词
def extract_keywords_and_similars(sentence, custom_keywords, similarity_threshold=0.5):
words = jieba.lcut(sentence)
result = {}

for keyword in custom_keywords:
extracted_words = [word for word in words if is_similar(keyword, word, similarity_threshold) or keyword == word]
if extracted_words:
result[keyword] = extracted_words

return result
MelodYi
23 天前
先用大模型试试?
murmur
23 天前
少量的句子连人都看不懂怎么提取关键字
BiChengfei
23 天前
前提:你要有一个关键字字典
指定关键词:使用上面的字典,构建字典树,进行语句提取,或者循环比较
相似关键字:循环字典,求相似度
miaoblyat
23 天前
现在用了 Chinese-word- vector 作关键词字典
miaoblyat
23 天前
@BiChengfei sentence: 这里发生车辆碰撞,有人受伤
keyword: {'车祸': ['受伤']}--0.5
sentence: 这里有条狗被撞了,无人受伤
keyword: {'车祸': ['撞', '受伤']}--0.5
sentence: 高速上塞车了,不知道什么原因
keyword: {}--0.5
miaoblyat
23 天前
@miaoblyat 感觉近似词不是很准,就想着怎么能更精准
BiChengfei
23 天前
{'车祸': ['受伤']}--0.5
{'车祸': ['撞', '受伤']}--0.5
你这不能使用相似度算法了,需要根据语义,进行文本分类吧(这个我不懂,等有缘人解惑吧)
BiChengfei
23 天前
miaoblyat
23 天前
好的感谢🙏
meshell
23 天前
czfy
23 天前
你应该把最原始的需求/最终的目的说出来,而不是这个经过解读后的需求

中文 NLP 过去绝大部分的做法,在大语言模型出来之后基本上都失去了意义,还用老套路来做只是缘木求鱼
rabbbit
23 天前
同有这个需求,也许可以解决模型知识库命中率低的问题。
macaodoll
22 天前
我们也有文本提取的需求,之前 NLP 错的太多了,这些文本提取类的交给大模型很舒服的
miaoblyat
22 天前
@macadoll 用了哪个大模型,方便说吗;目前我用了 bert-Chinese 感觉还是差点意思

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1046357

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX