## 3 Proposed Method
### Bilinear Interaction Layer  
The bilinear interaction [37] layer is utilized to compute second-order feature interactions. This layer offers several advantages for overall model performance. First, the bilinear function employed in the bilinear interaction layer enables the model to learn feature interactions in a fine-grained manner. By computing the vector-wise product of two feature vectors, the model can capture specific pairwise interactions between features. This fine-grained feature interaction learning enhances the network's ability to extract relevant steganalysis features, as it considers the subtle relationships between different pairs of features. Second, the bilinear interaction layer can extract more complex and informative interaction features. As the codeword features are crossed in pairs, the layer replaces the original codeword features with interaction features that are more intricate and informative. These interaction features are derived from the multiplicative combination of the original features, capturing higher-order relationships and patterns in the data. By incorporating these complex interaction features, the model gains the capacity to represent and understand more sophisticated feature dependencies and correlations, ultimately improving its discrimination ability. According to researchers [39], the inner product and Hadamard product are traditional techniques used for feature interactions in the interaction layer. However, the inner product and Hadamard product in the interaction layer are too simplistic to properly depict feature interactions. Therefore, we present a finer-grained strategy for learning feature interactions with more parameters, combining the inner product and Hadamard product. The details are shown in Figure 3. In this paper, we propose three types of bilinear functions. The first type is the codeword-all type. Specifically, using \(\mathbf{h_{m}}\) and \(\mathbf{h_{l}}\)\((1\leq m,l\leq k)\) in \(\mathbf{H}\) as examples, the result of the second-order interaction feature \(\mathbf{\alpha_{m,l}}\) can be determined as follows:  
\[ \begin{array}{ll}\beta_{m}=\mathbf{h_{m}}\mathbf{W},&[\beta_{m}]_{i}=\sum_{j}[\mathbf{ h_{m}}]_{j}\,W_{j,i}\\ \\ \mathbf{\alpha_{m,l}}=\beta_{m}\odot\mathbf{h_{l}},&[\mathbf{\alpha_{m,l}}]_{i}=[\beta_{m} ]_{i}\cdot[\mathbf{h_{l}}]_{i}\end{array}  \tag{12}\]  
where the first line defines the inner-product operation as the multiplication of \(\mathbf{h_{m}}\) and the weight matrix \(\mathbf{W}\). \(\beta_{m}\) is the output of the inner-product operation. The second line shows the Hadamard (element-wise) product of \(\beta_{m}\) and \(\mathbf{h_{l}}\). The dimension of \(\mathbf{W}\) is \((B,f,f)\). All codeword second-order interaction pairs share the same parameter. There are \(f\times f\) parameters in the bilinear interaction layer. This type is denoted as 'codeword-all'. The second type is the codeword-each type and is defined as follows:  
\[ \begin{split}\beta_{m}&=\mathbf{h}_{m}\mathbf{W}_{m},\qquad\quad [\beta_{m}]_{i}=\sum_{j}[\mathbf{h}_{m}]_{j}\,[\mathbf{W}_{m}]_{j,i}\\ \mathbf{\alpha}_{m,l}&=\beta_{m}\odot\mathbf{h}_{l},\qquad[ \mathbf{\alpha}_{m,l}]_{i}=[\beta_{m}]_{i}\cdot[\mathbf{h}_{l}]_{i}\end{split}  \tag{13}\]  
where the first line defines the inner-product operation as the multiplication of \(\mathbf{h}_{m}\) and the weight matrix \(\mathbf{W}_{m}\). \(\beta_{m}\) is the output of the inner-product operation. The second line shows the Hadamard (element-wise) product of \(\beta_{m}\) and \(\mathbf{h}_{l}\). The dimension of \(\mathbf{W}_{m}\) is (\(B\),\(f\), \(f\)), and \(\mathbf{W}_{m}\) denotes the corresponding parameter matrix of the \(m\)-th codeword \(x_{m}\). As each codeword has its own parameter matrix, the number of learning parameters in the bilinear interaction layer is \(k\times f\times f\). Based on this, this type is denoted as 'codeword-each'. The third type is the codeword-interaction type and is defined as follows:  
\[