0

我正在尝试编写一个将 python FeatureHasher 复制到 Java 替代方案中的 java 方法。

https://scikit-learn.org/stable/modules/generated/sklearn.feature_extraction.FeatureHasher.html

下面是python代码。

>>> from sklearn.feature_extraction import FeatureHasher
>>> h = FeatureHasher(n_features=10)
>>> D = [{'dog': 1, 'cat':2, 'elephant':4},{'dog': 2, 'run': 5}]
>>> f = h.transform(D)
>>> f.toarray()
array([[ 0.,  0., -4., -1.,  0.,  0.,  0.,  0.,  0.,  2.],
       [ 0.,  0.,  0., -2., -5.,  0.,  0.,  0.,  0.,  0.]])

我正在使用 guava 库 (guava:29.0-jre) 使用下面的代码来模拟上述转换,但是在使用 murmurhash3 之后,java 代码返回一个字节数组。我的要求是创建一个稀疏指标,如上面的 python 代码结果。

这是java代码:

byte[] bytes = Hashing.murmur3_128(16384).hashString("com.xyz.ad.demo", UTF_8).asBytes();

如何使用这个 guava 库生成稀疏指标?

4

0 回答 0