記事「取引におけるニューラルネットワーク:Segment Attentionを備えたパラメータ効率重視Transformer (PSformer)」についてのディスカッション

 

新しい記事「取引におけるニューラルネットワーク:Segment Attentionを備えたパラメータ効率重視Transformer (PSformer)」はパブリッシュされました:

この記事では、新しいPSformerフレームワークを紹介します。これは、従来のTransformerアーキテクチャを多変量時系列予測の問題に適応させたものです。本フレームワークは、パラメータ共有(PS)機構とSegment Attention機構(SegAtt)の2つの主要な革新に基づいています。

PSformer:Parameter-efficient Transformer with Segment Attention for Time Series Forecasting」の著者らは、多変量時系列予測向けの革新的なTransformerベースモデルを提案し、パラメータ共有の原則を組み込んでいます。

このモデルでは、2レベルのセグメントベースAttention機構を備えたTransformerエンコーダを導入しています。各エンコーダ層には共有パラメータブロックが含まれており、このブロックには残差接続を持つ3つの全結合層があり、全体のパラメータ数を抑えながらモデル内部の情報交換を維持しています。セグメント内でAttentionを集中させるために、変数ごとの系列を個別のパッチに分割するパッチング手法を適用します。同じ位置にあるパッチを異なる変数でグループ化し、各グループをセグメントとして扱います。これにより、多変量時系列を複数のセグメントに効果的に分割します。

各セグメント内では、Attention機構が局所的な時空間関係を強化し、セグメント間の情報統合が全体の予測精度を向上させます。さらに、過学習を抑制しつつ学習性能を損なわないSAM最適化手法も組み込まれています。長期時系列予測データセットでの大規模実験により、PSformerは高い性能を示し、8つの主要予測ベンチマークのうち6つで最先端モデルを上回る結果を達成しました。


作者: Dmitriy Gizlyk

 

CNeuronBaseOCLのfeedForwardメソッドには2つのパラメータがあり、内部的に1つのパラメータのバージョンを呼び出すため、2つ目のパラメータ「SecondInput」が使用されていないことを確認しました。これはバグでしょうか?

class CNeuronBaseOCL : public CObject

{

...

virtual bool feedForward(CNeuronBaseOCL *NeuronOCL);

virtual bool feedForward(CNeuronBaseOCL *NeuronOCL, CBufferFloat *SecondInput) { return feedForward(NeuronOCL); } .

..

}

Actor.feedForward((CBufferFloat*)GetPointer(bAccount), 1, false, GetPointer(Encoder),LatentLayer);?

エンコーダ.feedForward((CBufferFloat*)GetPointer(bState), 1, false, GetPointer(bAccount));?