Python 使用sklearn的OneHotEncoder时出现的问题
我试图一个字符一个字符地对一些文本进行热编码。我首先将文本映射为整数值Python 使用sklearn的OneHotEncoder时出现的问题,python,machine-learning,scikit-learn,Python,Machine Learning,Scikit Learn,我试图一个字符一个字符地对一些文本进行热编码。我首先将文本映射为整数值 with open('data/texts/anna.txt') as data: text = data.read() vocab = tuple(set(text)) int2char = dict(enumerate(vocab)) char2int = {i: char for char, i in int2char.items()} encoded = np.array([char2int[
with open('data/texts/anna.txt') as data:
text = data.read()
vocab = tuple(set(text))
int2char = dict(enumerate(vocab))
char2int = {i: char for char, i in int2char.items()}
encoded = np.array([char2int[i] for i in text]).reshape(1, -1)
categories = np.array([char2int[i] for i in vocab])
# encoder = OneHotEncoder(categories)
encoder = OneHotEncoder()
encoder.fit(encoded)
test = encoder.transform(encoded[:10])
两件事:
感谢您的帮助 我建议您使用
CountVectorizer
,因为它是专门为一个热编码词汇设计的
from sklearn.feature_extraction.text import CountVectorizer
sample = 'this is a sample'
vectorizer = CountVectorizer()
vectorizer.fit(sample.split())
print(vectorizer.transform(['this']).toarray())
哦,太酷了!很高兴知道!然而,我仍然有一个疑问,那就是句子中的一个字符是否应该被视为变量或样本,其背后的直觉是什么?我正在学习RNN,所以我的问题更多的是概念性的,而不是技术性的。