gpt4 book ai didi

python-2.7 - 使用 TruncatedSVD 时如何避免负值错误?

转载 作者:行者123 更新时间:2023-11-30 09:38:17 25 4
gpt4 key购买 nike

我遇到了一个只有 2 个类的文档分类问题,并且在 CountVectorizer/TfidfVectorizer 变为 (40,845 X 218,904) (unigram) 后我的训练数据集矩阵大小。我想使用 TruncatedSVD;但是,CountVectorizer/TfidfVectorizer 似乎会产生负值。我想知道为什么以及如何避免负值。

    tsvd = TruncatedSVD(10000, algorithm="randomized")

features = [
dict(name="count_ng1",
feat=CountVectorizer(tokenizer=tokenizer, ngram_range=(1,1))),
dict(name="tfidf_ng1",
feat=TfidfVectorizer(tokenizer=tokenizer, ngram_range=(1,1))),
]
for data in datas:
(D_train, y_train, d_test, y_test) = g.get_train_test(**data['params'])

for feat in features:
x_train = feat['feat'].fit_transform(d_train)
x_test = feat['feat'].transform(d_test)
X_trainSVD = tsvd.fit_transform(x_train)
X_testSVD = tsvd.transform(x_test)

最佳答案

TruncatedSVD 处理负值应该没有问题。

CountVectorizer/TfidfVectorizer 不应产生负值。如果这样做,则可能是一个错误。

如果您将问题更新为:

,我会更新我的答案:
  • 为我们提供有效的复制脚本,如果可能的话,最好是在独立数据上(例如,将 d_train/d_test 定义为 Python 字符串的小列表,以便可以在无法访问您的真实数据的情况下重现问题),
  • 修复缩进,以便可以复制并粘贴代码片段并运行它,
  • 提供您收到的错误消息以及完整的回溯。

关于python-2.7 - 使用 TruncatedSVD 时如何避免负值错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20488912/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com