Раньше я занимался классификацией текста на sklearn. Тем не менее, я должен сделать это, используя керасы, поэтому я следовал этой инструкции для кодирования меток и так далее, так как у меня мало опыта с NN: https://www.opencodez.com/python/text-classification-using-keras.htm. Однако я обнаружил, что мне нужно указать входные размеры для первого слоя. Я запутался, как я могу определить размер текста в качестве входного? это зависит от того, что я сделал? как я предварительно обработал текст следующим образом:
corpus=[]
for i in range(0,len(dataset)):
review=re.sub('[^a-zA-Z]',' ',dataset['cleaned_text'][i])
review.lower()
review=review.split()
ps=PorterStemmer()
review=[ps.stem(word) for word in review if not word in set(stopwords.words('english'))]
review=' '.join(review)
corpus.append(review)
#the bag of word
from sklearn.feature_extraction.text import CountVectorizer
cv=CountVectorizer(max_features=1500).fit(corpus)
X=cv.fit_transform(corpus).toarray()
y=dataset['sentiment']
Кроме того, в обучении он определил его на основе размера вокаба. насколько я понимаю, я думаю, что входные измерения должны быть максимальным количеством токенов во всем предложении. правильно? Кроме того, я попытался получить encoder.vocab_size, так как этот учебный курс сделал https://www.tensorflow.org/tutorials/text/text_classification_rnn. однако я получил эту ошибку AttributeError: 'LabelBinarizer' object has no attribute 'vocab_size'