对新传入数据使用哈希技巧
Using hashing trick for new incoming data
在训练和部署我的模型后,是否可以使用散列技巧?假设我有以下数据,并且按如下方式使用 Cat
功能:
from sklearn.feature_extraction import FeatureHasher
D = {"ID": [1,2,3,4,5,6,7,8,9,10], "Cat": ["A", "A", "B", "A", "A", "B", "A", "B", "B", "B"]}
df = pd.DataFrame(D)
fh = FeatureHasher(n_features=1, input_type='string')
hashed_features = fh.fit_transform(df['Cat'])
hashed_features.toarray()
如何使用泰瑟枪对传入的新数据进行哈希处理?我正在寻找类似的东西:
fh.predict('A')
我是否应该只在训练期间从散列过程构建字典,然后将新传入数据映射到构建字典?有没有更好的办法?
使用FeatureHasher.transform()
。例如,在您的代码中试试这个:
fh.transform(['A','B']).toarray()
# array([[ 1.], [-1.]])
在训练和部署我的模型后,是否可以使用散列技巧?假设我有以下数据,并且按如下方式使用 Cat
功能:
from sklearn.feature_extraction import FeatureHasher
D = {"ID": [1,2,3,4,5,6,7,8,9,10], "Cat": ["A", "A", "B", "A", "A", "B", "A", "B", "B", "B"]}
df = pd.DataFrame(D)
fh = FeatureHasher(n_features=1, input_type='string')
hashed_features = fh.fit_transform(df['Cat'])
hashed_features.toarray()
如何使用泰瑟枪对传入的新数据进行哈希处理?我正在寻找类似的东西:
fh.predict('A')
我是否应该只在训练期间从散列过程构建字典,然后将新传入数据映射到构建字典?有没有更好的办法?
使用FeatureHasher.transform()
。例如,在您的代码中试试这个:
fh.transform(['A','B']).toarray()
# array([[ 1.], [-1.]])