首页 > 其他分享 >AttentionFreeTransformer 核心结构图(GraphViz 重绘)

AttentionFreeTransformer 核心结构图(GraphViz 重绘)

时间:2024-01-10 13:12:41浏览次数:48  
标签:box AttentionFreeTransformer atten SeqLen ProjSize label shape GraphViz 重绘

AFTFull

请添加图片描述

digraph AFTFull {
	rankdir=BT
    node [
		style=filled, 
		color=Black
		fontcolor=White, 
		fillcolor="#30638e", 
		fontname="SimHei",
		fontsize=32,
		width=5, height=2,
	]

    inp [label="输入\n[BatchSize,\n SeqLen,\n HidSize]", shape="Mrecord"]
    llq [label="LinearQ\n[HidSize, ProjSize]", shape="box"]
    llk [label="LinearK\n[HidSize, ProjSize]", shape="box"]
    llv [label="LinearV\n[HidSize, ProjSize]", shape="box"]
	w [label="W:Param\n[SeqLen, SeqLen]", shape="Mrecord"]
    q [label="Q\n[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    k [label="K\n[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    v [label="V\n[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    σ [label="Sigmoid", shape="box", width=3]
    atten_op [label="exp(W) @ (exp(K) * V)\n/ exp(W) * exp(K)", shape="box"]
    atten [label="[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    mul [label="*", shape="box", width=3]
    llo [label="LinearO\n[ProjSize, HidSize]", shape="box"]
    oup [label="输出\n[BatchSize,\n SeqLen,\n HidSize]", shape="Mrecord"]
    
	inp -> llq
	inp -> llk
	inp -> llv
	llq -> q
	llk -> k
	llv -> v
	q -> σ
	w -> atten_op
	k -> atten_op
	v -> atten_op
	atten_op -> atten
	σ -> mul
	atten -> mul
	mul -> llo
	llo -> oup
}

AFTSimple

请添加图片描述

digraph AFTSimple {
	rankdir=BT
    node [
		style=filled, 
		color=Black
		fontcolor=White, 
		fillcolor="#30638e", 
		fontname="SimHei",
		fontsize=32,
		width=5, height=2,
	]

    inp [label="输入\n[BatchSize,\n SeqLen,\n HidSize]", shape="Mrecord"]
    llq [label="LinearQ\n[HidSize, ProjSize]", shape="box"]
    llk [label="LinearK\n[HidSize, ProjSize]", shape="box"]
    llv [label="LinearV\n[HidSize, ProjSize]", shape="box"]
    q [label="Q\n[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    k [label="K\n[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    v [label="V\n[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    σ [label="Sigmoid", shape="box", width=3]
    atten_op [label="sum(softmax(K, 1) * V, 1)", shape="box"]
    atten [label="[BatchSize, 1, ProjSize]", shape="Mrecord"]
    mul [label="*", shape="box", width=3]
    llo [label="LinearO\n[ProjSize, HidSize]", shape="box"]
    oup [label="输出\n[BatchSize,\n SeqLen,\n HidSize]", shape="Mrecord"]
    
	inp -> llq
	inp -> llk
	inp -> llv
	llq -> q
	llk -> k
	llv -> v
	q -> σ
	k -> atten_op
	v -> atten_op
	atten_op -> atten
	σ -> mul
	atten -> mul
	mul -> llo
	llo -> oup
}

AFTLocal

请添加图片描述

digraph AFTLocal {
	rankdir=BT
    node [
		style=filled, 
		color=Black
		fontcolor=White, 
		fillcolor="#30638e", 
		fontname="SimHei",
		fontsize=32,
		width=5, height=2,
	]

    inp [label="输入\n[BatchSize,\n SeqLen,\n HidSize]", shape="Mrecord"]
    llq [label="LinearQ\n[HidSize, ProjSize]", shape="box"]
    llk [label="LinearK\n[HidSize, ProjSize]", shape="box"]
    llv [label="LinearV\n[HidSize, ProjSize]", shape="box"]
	w [label="W:Param\n[SeqLen, SeqLen]", shape="Mrecord"]
	mask [label="mask\n[SeqLen, SeqLen]\nabs(i - j) < S? 1: 0", shape="box"]
    q [label="Q\n[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    k [label="K\n[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    v [label="V\n[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    σ [label="Sigmoid", shape="box", width=3]
    atten_op [label="exp(W) @ (exp(K) * V)\n/ exp(W) * exp(K)", shape="box"]
    atten [label="[BatchSize,\n SeqLen,\n ProjSize]", shape="Mrecord"]
    mul [label="*", shape="box", width=3]
    llo [label="LinearO\n[ProjSize, HidSize]", shape="box"]
    oup [label="输出\n[BatchSize,\n SeqLen,\n HidSize]", shape="Mrecord"]
    
	inp -> llq
	inp -> llk
	inp -> llv
	llq -> q
	llk -> k
	llv -> v
	q -> σ
	w -> mask
	mask -> atten_op
	k -> atten_op
	v -> atten_op
	atten_op -> atten
	σ -> mul
	atten -> mul
	mul -> llo
	llo -> oup
}

标签:box,AttentionFreeTransformer,atten,SeqLen,ProjSize,label,shape,GraphViz,重绘
From: https://www.cnblogs.com/apachecn/p/17956268

相关文章

  • 【graphviz笔记】用graphviz画UML类图
    digraphUMLClassDiagram{//指定节点类型,这样节点才会变成UML的类图矩形node[shape=record,fontname="Arial"];//定义节点数据//其中“|”会渲染成横线;//\l表示向左对齐,同时换行//\n表示居中对齐,同时换行class1[label="{ Class1 | +attribute1:type\l +me......
  • 【graphviz笔记】
    入门新建sample.dot文件,打开编辑为:digraphg{xy}在命令行中输入dotsample.dot-Tpng-osample.png-T后接要生成的图片格式,可以是pdf、svg格式等。-o指明生成文件名指定节点属性digraphg{ 1[label="x",color=orange,style=filled] 2[label="y",col......
  • css--重绘和回流
    重绘(paint) :当rendertree中的一些元素需要更新属性,而这些属性只是影响元素的外观,风格,而不影响布局的,比如background-color,则称为重绘。回流(layout):当rendertree中的一部分(或全部)因为元素的规模尺寸,布局,隐藏等改变而需要重新构建。这就称为回流(reflow)。当页面布局和几何属......
  • 决策树库Graphviz的环境安装和软件安装
    1、Graphviz软件的下载Download|Graphviz 2、下载后下一步安装即可 3、安装好后查看环境变量是否已经自动配置,没有的话,自己手动配置如下 4.安装这些之前确认已经安装了python环境,即Anaconda和jupter5、window+r,cmd,打开窗口输入dot-version,查看是否配置完成, 6......
  • 自定义重绘TabControl的各个标签
    设置DrawItem事件privatevoidtabControl1_DrawItem(objectsender,DrawItemEventArgse)//绘制tabcontrol控件的标签颜色和字体大小{SolidBrushback;SolidBrushwhite;SolidBrushblack=newSolidBrush(Color.Black);//字体的颜色if(e.Index==tabControl1.SelectedI......
  • Galaxy Studio星河工作室于8月26日正式使用Canva可画网页版对室徽进行重绘!还开放了名
    GalaxyStudio星河工作室于8月26日正式使用Canva可画网页版对室徽进行重绘!还开放了名片模板?据了解,GalaxyStudio星河工作室室长于8月26日对使用Canva可画网页版室徽正式重绘!新室徽到底怎么样呢?让大家都来看看吧!怎么样?不错吧!对了!还有一个名片模板,想要使用的成员可以找QQ2789617......
  • Anaconda配置pydot库、graphviz库的方法
      本文介绍在Anaconda环境中,安装Python语言pydot与graphviz两个模块的方法。  最近进行随机森林(RF)的树的可视化操作,需要用到pydot与graphviz模块;因此记录一下二者具体的安装方法。  相关环境的版本信息:AnacondaNavigator:1.10.0;Python3.8.5。  话不多说,我们开始下载与......
  • 图形化工具 Graphviz 介绍
    GraphVisualization图形可视化是一种将结构信息表示为抽象图形和网络的图表的方法。自动绘图在软件工程、数据库和网页设计、网络以及许多其他领域的可视化界面中有许多重要的应用。Graphviz是开源图形可视化软件。它有几个主要的图形布局程序。有关一些示例布局,请参阅图库。它......
  • 回流与重绘
    回流(reflow)回流(reflow):当render树(渲染树)中的一部分或者全部因为大小边距等引起结构变化而需要重建的过程叫做回流重绘(repaint)重绘(repaint):当render树中的一些元素需要更新属性,而这些属性只是影响元素的外观,风格,而不会影响布局的,比如background-color。则就叫称为重绘每个页面至......
  • wx.grid表格样式重绘(超链接样式)
    首先声明,这里达不到超链接的效果,仅仅是显示出来像超链接的样式而已!!!如果需要实现超链接,就尝试绑定一下单元格点击事件。 重绘表格类构建classBlueUnderlineRenderer(wx.grid.PyGridCellRenderer):def__init__(self):gridlib.GridCellRenderer.__init__(self)......