keras實(shí)現(xiàn)Attention機(jī)制

attention層的定義:(思路參考https://github.com/philipperemy/keras-attention-mechanism

# Attention GRU network       
class AttLayer(Layer):
    def __init__(self, **kwargs):
        self.init = initializations.get('normal')
        #self.input_spec = [InputSpec(ndim=3)]
        super(AttLayer, self).__init__(**kwargs)

    def build(self, input_shape):
        assert len(input_shape)==3
        #self.W = self.init((input_shape[-1],1))
        self.W = self.init((input_shape[-1],))
        #self.input_spec = [InputSpec(shape=input_shape)]
        self.trainable_weights = [self.W]
        super(AttLayer, self).build(input_shape)  # be sure you call this somewhere!

    def call(self, x, mask=None):
        eij = K.tanh(K.dot(x, self.W))
        
        ai = K.exp(eij)
        weights = ai/K.sum(ai, axis=1).dimshuffle(0,'x')
        
        weighted_input = x*weights.dimshuffle(0,1,'x')
        return weighted_input.sum(axis=1)

    def get_output_shape_for(self, input_shape):
        return (input_shape[0], input_shape[-1])

具體的用法:

input = Input(shape=(MAX_SEQUENCE_LENGTH,), dtype='int32')
embedded_sequences = embedding_layer(input)
l_lstm = Bidirectional(LSTM(100, return_sequences=True))(embedded_sequences)
l_att = AttLayer()(l_lstm)
preds = Dense(2, activation='softmax')(l_att)
model = Model(sequence_input, preds)
model.compile(loss='categorical_crossentropy',
             optimizer='rmsprop',
             metrics=['acc'])

print("model fitting - attention GRU network")
model.summary()
model.fit(x_train, y_train, validation_data=(x_val, y_val),
         nb_epoch=10, batch_size=50)
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市抒和,隨后出現(xiàn)的幾起案子轻黑,更是在濱河造成了極大的恐慌,老刑警劉巖寸士,帶你破解...
    沈念sama閱讀 221,273評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件权悟,死亡現(xiàn)場離奇詭異锌订,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)急膀,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,349評論 3 398
  • 文/潘曉璐 我一進(jìn)店門沮协,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人卓嫂,你說我怎么就攤上這事慷暂。” “怎么了晨雳?”我有些...
    開封第一講書人閱讀 167,709評論 0 360
  • 文/不壞的土叔 我叫張陵呜呐,是天一觀的道長。 經(jīng)常有香客問我悍募,道長蘑辑,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,520評論 1 296
  • 正文 為了忘掉前任坠宴,我火速辦了婚禮洋魂,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘喜鼓。我一直安慰自己副砍,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,515評論 6 397
  • 文/花漫 我一把揭開白布庄岖。 她就那樣靜靜地躺著豁翎,像睡著了一般。 火紅的嫁衣襯著肌膚如雪隅忿。 梳的紋絲不亂的頭發(fā)上心剥,一...
    開封第一講書人閱讀 52,158評論 1 308
  • 那天,我揣著相機(jī)與錄音背桐,去河邊找鬼优烧。 笑死,一個胖子當(dāng)著我的面吹牛链峭,可吹牛的內(nèi)容都是我干的畦娄。 我是一名探鬼主播,決...
    沈念sama閱讀 40,755評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼熙卡!你這毒婦竟也來了杖刷?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,660評論 0 276
  • 序言:老撾萬榮一對情侶失蹤驳癌,失蹤者是張志新(化名)和其女友劉穎挺勿,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體喂柒,經(jīng)...
    沈念sama閱讀 46,203評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,287評論 3 340
  • 正文 我和宋清朗相戀三年禾嫉,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了灾杰。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,427評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡熙参,死狀恐怖艳吠,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情孽椰,我是刑警寧澤昭娩,帶...
    沈念sama閱讀 36,122評論 5 349
  • 正文 年R本政府宣布,位于F島的核電站黍匾,受9級特大地震影響栏渺,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜锐涯,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,801評論 3 333
  • 文/蒙蒙 一磕诊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧纹腌,春花似錦霎终、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,272評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至涎劈,卻和暖如春广凸,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背蛛枚。 一陣腳步聲響...
    開封第一講書人閱讀 33,393評論 1 272
  • 我被黑心中介騙來泰國打工炮障, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人坤候。 一個月前我還...
    沈念sama閱讀 48,808評論 3 376
  • 正文 我出身青樓胁赢,卻偏偏與公主長得像,于是被迫代替她去往敵國和親白筹。 傳聞我的和親對象是個殘疾皇子智末,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,440評論 2 359

推薦閱讀更多精彩內(nèi)容

  • afinalAfinal是一個android的ioc谅摄,orm框架 https://github.com/yangf...
    wgl0419閱讀 6,288評論 1 9
  • afinalAfinal是一個android的ioc,orm框架 https://github.com/yangf...
    passiontim閱讀 15,435評論 2 45
  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 172,264評論 25 707
  • 大千世界里系馆, 總會有人看不慣你送漠, 茫茫人海中, 總會有自己的晴空由蘑。 不管這個社會變化多快闽寡, 不管周圍的人心有多復(fù)雜...
    飛揚(yáng)的柳絮閱讀 350評論 0 0
  • 你愛我嗎爷狈? 愛。 為什么愛裳擎? 沒有理由涎永。 我脾氣大,愛耍小性子鹿响,經(jīng)常沖你發(fā)脾氣羡微,也不會做家務(wù),長得也不好看…… 好...
    寶菇?jīng)鱿壬?/span>閱讀 366評論 0 0