用于情感分析的 LSTM
LSTM for sentiment analysis
我看到了这个tensorflow模型,它是用来判断文本是正负的,我不是很理解。我知道 LSTM 会保存单词并根据前面的单词预测下一个单词,但这如何帮助网络区分文本的情绪?
def tensorflow_based_model():
inputs = Input(name='inputs',shape=[max_len])
layer = Embedding(2000,50,input_length=max_len)(inputs)
layer = LSTM(64)(layer)
layer = Dense(256,name='FC1')(layer)
layer = Activation('relu')(layer)
layer = Dropout(0.5)(layer)
layer = Dense(1,name='out_layer')(layer)
layer = Activation('sigmoid')(layer)
model = Model(inputs=inputs,outputs=layer)
return model
虽然 LSTM 可以用于文本生成,但 LSTM(或任何递归神经网络层)的主要用途是理解序列。您可以在这篇博文中找到更多信息:
The Unreasonable Effectiveness of Recurrent Neural Networks
在情感分析的情况下,LSTM 不是帮助生成新词,而是帮助我们理解所说的内容。它基本上读取字符串并保留一些关于前面所说的单词的重要信息。
我看到了这个tensorflow模型,它是用来判断文本是正负的,我不是很理解。我知道 LSTM 会保存单词并根据前面的单词预测下一个单词,但这如何帮助网络区分文本的情绪?
def tensorflow_based_model():
inputs = Input(name='inputs',shape=[max_len])
layer = Embedding(2000,50,input_length=max_len)(inputs)
layer = LSTM(64)(layer)
layer = Dense(256,name='FC1')(layer)
layer = Activation('relu')(layer)
layer = Dropout(0.5)(layer)
layer = Dense(1,name='out_layer')(layer)
layer = Activation('sigmoid')(layer)
model = Model(inputs=inputs,outputs=layer)
return model
虽然 LSTM 可以用于文本生成,但 LSTM(或任何递归神经网络层)的主要用途是理解序列。您可以在这篇博文中找到更多信息:
The Unreasonable Effectiveness of Recurrent Neural Networks
在情感分析的情况下,LSTM 不是帮助生成新词,而是帮助我们理解所说的内容。它基本上读取字符串并保留一些关于前面所说的单词的重要信息。