【问题标题】:Normalizing Vectors with Negative values用负值归一化向量
【发布时间】:2016-03-02 08:18:39
【问题描述】:

我想将系统中的每个基于文本的项目表示为向量空间模型中的向量。术语的值可以是负数或正数,它们反映了术语在正类或负类中的频率。零值表示中性 例如:

项目1 (-1,0,-5,4.5,2)

项目 2 (2,6,0,-4,0.5)

我的问题是:

1- 如何将我的向量标准化为 [0 到 1] 的范围,其中:

.5 表示归一化前为零

和.5>如果是肯定的

.5

我想知道是否有一个数学公式可以做这样的事情。

2- 归一化后相似性度量的选择会有所不同吗?例如,我可以使用余弦相似度吗?

3- 如果我在归一化之后进行降维会很困难吗??

提前致谢

【问题讨论】:

    标签: text vector normalization vsm


    【解决方案1】:

    一种解决方案可能是使用 MinMaxScaler 缩放 (0, 1) 范围之间的数字,然后将每一行除以行的总和。在使用 sklearn 的 python 中,您可以执行以下操作:

    from sklearn.preprocessing import MinMaxScaler, normalize
    scaler = MinMaxScaler()
    scaled_X = scaler.fit_transform(X)
    normalized_X = normalize(scaled_X, norm='l1', axis=1, copy=True)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-30
      • 2016-05-08
      • 1970-01-01
      • 2013-04-20
      • 2018-04-09
      • 2010-10-17
      相关资源
      最近更新 更多