【Matlab使用Transformer一维序列分类源程序】
Matlab使用Transformer对一维数据分类源程序。
程序工作如下:
1、加载数据,数据为400条一维序列,200正常200异常,序列长度为500。调整每条1x500的序列为10x50,即维度10,序列长度50。由此一来,可以将1x500的序列看作是10个单词,每个单词的长度时50。这是为了满足Transformer的输入,这一步非常非常关键。
2、构建Transformer网络。因为是分类,所以只使用了Encoder,没用Decoder。设置好头的数量和维度即可。使用了Embedding。可参考Transformer网络图一一对应到本程序的网络结构中。
3、训练、测试、画图。
注:①为方便学习,代码用是最简洁的方式写的,没有累赘,注释详细,方便替换数据改为多分类。②需要Matlab2023b及以上版本(以前的版本好像没有self-attention层)。③原程序运行出问题可远程帮助调通。④可有偿帮助替换数据。⑤工作较忙仅解答简单问题。
程序为本人手写原创,价格低廉29元,唯一渠道为闲鱼售卖。近来发现有许多用户盗卖本人程序- -联系后还拒不承认。现已与平台申请了资质认证,并于2024.9.20在淘天知识产权保护平台备案了此程序,发现盗版将进行举报和追究。
【闲鱼链接】:https://m.tb.cn/h.grdEtF0?tk=M0Xu3i14cST CZ3460
如果链接失效,可在闲鱼搜索:耐心的等待5283,然后点“用户”即可找到个人主页下的程序。