上传文件至 /

This commit is contained in:
2026-04-23 15:54:23 +08:00
parent 1fc91a72db
commit 9cbaed59bf

36
ljh.py Normal file
View File

@@ -0,0 +1,36 @@
from sklearn.feature_extraction.text import CountVectorizer
docs = [
"Python 是 编程 语言",
"Java 是 编程 语言",
"Python Python Python"
]
vectorizer = CountVectorizer()
X = vectorizer.fit_transform(docs)
print("词表Vocabulary")
print(vectorizer.get_feature_names_out())
print("\n每个文档的BoW向量")
for i, doc_vec in enumerate(X.toarray()):
print(f"Doc{i+1}: {doc_vec}")
# 6.BoW模型的缺点及场景问题
# 1. 忽略词序与上下文语义
# - 问题BoW仅统计词频不考虑词语顺序
# 例如"我喜欢Python"和"Python喜欢我"的BoW向量完全相同但语义相反
# 在情感分析、语义理解任务中会导致错误。
#
# 2. 无法处理一词多义/多词一义
# - 问题BoW将每个词视为独立符号无法识别"苹果"(水果/公司)的不同含义,
# 也无法识别"电脑"和"计算机"的同义关系,在语义检索、文本分类中会降低精度。
#
# 3. 向量稀疏且维度爆炸
# - 问题当语料库词汇量很大时向量维度会极高且大部分元素为0
# 增加计算开销,在大规模文本处理中效率低下。