提示:这里可以添加本文要记录的大概内容:
例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。
提示:以下是本篇文章正文内容,下面案例可供参考
attention机制在目前的NLP领域大放异彩,通盘理解其本质可谓必要之至。有一场重要的面试第一道题就是:“请high-level的讲下Attention”。
Bahdanau attention 论文原文
写下最核心的几个公式:
给定原文 x x x,翻译产出一段文字 y 1 , y 2 , . . . y T y {y_1,y_2, ...y_{T_y}} y1,y2,...yTy的条件概率为
∏ i = 1 T y p ( y i ∣ y 1 , y 2 , . . , y i − 1 , x ) \prod_{i=1}^{T_y} p(y_i|y_1,y_2,..,y_{i-1}, x) i=1∏Typ(yi∣y1,y2,..,yi−1,x)
Decoder阶段 i i i时间步的单词为 y i y_i yi的条件概率为 p ( y i ∣ y 1 , y 2 , . . , y i − 1 , x ) = g ( y i − 1 , s i , c i ) p(y_i|y_1,y_2,..,y_{i-1},x) = g(y_{i-1}, s_i,c_i) p(yi∣y1,y2,..,yi−1,x)=g(yi−1,si,ci).
其中 s i s_i si 是Decoder在 i i i 时间步的hidden_state, s i = f ( s i − 1 , y i − 1 , c i ) s_i = f(s_{i-1},y_{i-1},c_i) si=f(si−1,yi−1,ci).
而 c i c_i ci 是上下文向量,是encoder阶段每一个时间步 h j {h_j} hj的加权平均值,
c i = ∑ j = 0 N α i j h j c_i = \sum_{j=0}^{N} \alpha_{ij} h_j ci=j=0∑Nαijhj
α i j \alpha_{ij} αij 是每个 h j h_j hj的 在 Decoder的 i i i时间步时的权重。
α i j = e x p ( e i j ) ∑ k = 1 T x e x p ( e i k ) \alpha_{ij} = \frac{exp(e_{ij})}{\sum_{k=1}^{T_x} exp(e_{ik})} αij=∑k=1Txexp(eik)exp(eij)
其中 e i j e_{ij} eij代表第 i i i步和第 j j j步的对齐程度,
e i j = a ( s i − 1 , h j ) e_{ij} = a(s_{i-1}, h_j) eij=a(si−1,hj)
a ( ) a() a() 是对齐函数,这里可以定义为:
a ( u , v ) = t a n h ( W 1 u + W 2 v + b ) a(u, v) = tanh(W_1u+ W_2v+b) a(u,v)=tanh(W1u+W2v+b)
总结,Bahdanau attention 基于encoder-decoder提出的attention机制,属于soft attention。
Luong_attention 论文原文
示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。
代码如下(示例):
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as sns
import warnings
warnings.filterwarnings('ignore')
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
代码如下(示例):
data = pd.read_csv(
'https://labfile.oss.aliyuncs.com/courses/1283/adult.data.csv')
print(data.head())
该处使用的url网络请求的数据。
提示:这里对文章进行总结:
例如:以上就是今天要讲的内容,本文仅仅简单介绍了pandas的使用,而pandas提供了大量能使我们快速便捷地处理数据的函数和方法。