<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.1 20151215//EN" "http://jats.nlm.nih.gov/publishing/1.1/JATS-journalpublishing1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xml:lang="en" article-type="research-article" dtd-version="1.1">
<front>
<journal-meta>
<journal-id journal-id-type="pmc">EE</journal-id>
<journal-id journal-id-type="nlm-ta">EE</journal-id>
<journal-id journal-id-type="publisher-id">EE</journal-id>
<journal-title-group>
<journal-title>Energy Engineering</journal-title>
</journal-title-group>
<issn pub-type="epub">1546-0118</issn>
<issn pub-type="ppub">0199-8595</issn>
<publisher>
<publisher-name>Tech Science Press</publisher-name>
<publisher-loc>USA</publisher-loc>
</publisher>
</journal-meta>
<article-meta>
<article-id pub-id-type="publisher-id">73012</article-id>
<article-id pub-id-type="doi">10.32604/ee.2025.073012</article-id>
<article-categories>
<subj-group subj-group-type="heading">
<subject>Article</subject>
</subj-group>
</article-categories>
<title-group>
<article-title>Research on Ultra-Short-Term Photovoltaic Power Forecasting Based on Parallel Architecture TCN-BiLSTM with Temporal-Spatial Attention Mechanism</article-title>
<alt-title alt-title-type="left-running-head">Research on Ultra-Short-Term Photovoltaic Power Forecasting Based on Parallel Architecture TCN-BiLSTM with Temporal-Spatial Attention Mechanism</alt-title>
<alt-title alt-title-type="right-running-head">Research on Ultra-Short-Term Photovoltaic Power Forecasting Based on Parallel Architecture TCN-BiLSTM with Temporal-Spatial Attention Mechanism</alt-title>
</title-group>
<contrib-group>
<contrib id="author-1" contrib-type="author">
<name name-style="western"><surname>Sun</surname><given-names>Hongbo</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-2" contrib-type="author" corresp="yes">
<name name-style="western"><surname>Jiang</surname><given-names>Xingyu</given-names></name><xref ref-type="aff" rid="aff-1">1</xref><xref rid="cor1" ref-type="corresp">&#x002A;</xref><email>jiangxingyu0711@163.com</email></contrib>
<contrib id="author-3" contrib-type="author">
<name name-style="western"><surname>Sun</surname><given-names>Wenyao</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-4" contrib-type="author">
<name name-style="western"><surname>Zhao</surname><given-names>Yi</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-5" contrib-type="author">
<name name-style="western"><surname>Cheng</surname><given-names>Jifeng</given-names></name><xref ref-type="aff" rid="aff-2">2</xref></contrib>
<contrib id="author-6" contrib-type="author">
<name name-style="western"><surname>Qian</surname><given-names>Xiaoyi</given-names></name><xref ref-type="aff" rid="aff-1">1</xref></contrib>
<contrib id="author-7" contrib-type="author">
<name name-style="western"><surname>Wang</surname><given-names>Guo</given-names></name><xref ref-type="aff" rid="aff-3">3</xref></contrib>
<aff id="aff-1"><label>1</label><institution>School of Electrical Engineering, Shenyang Institute of Engineering</institution>, <addr-line>Shenyang, 110136</addr-line>, <country>China</country></aff>
<aff id="aff-2"><label>2</label><institution>State Grid Liaoning Electric Power Co., Ltd</institution>., <institution>Electric Power Research Institute</institution>, <addr-line>Shenyang, 110006</addr-line>, <country>China</country></aff>
<aff id="aff-3"><label>3</label><institution>School of Automation and Electrical Engineering, Lanzhou Jiaotong University</institution>, <addr-line>Lanzhou, 730070</addr-line>, <country>China</country></aff>
</contrib-group>
<author-notes>
<corresp id="cor1"><label>&#x002A;</label>Corresponding Author: Xingyu Jiang. Email: <email>jiangxingyu0711@163.com</email></corresp>
</author-notes>
<pub-date date-type="collection" publication-format="electronic">
<year>2026</year>
</pub-date>
<pub-date date-type="pub" publication-format="electronic">
<day>27</day><month>3</month><year>2026</year>
</pub-date>
<volume>123</volume>
<issue>4</issue>
<elocation-id>13</elocation-id>
<history>
<date date-type="received">
<day>09</day>
<month>09</month>
<year>2025</year>
</date>
<date date-type="accepted">
<day>06</day>
<month>11</month>
<year>2025</year>
</date>
</history>
<permissions>
<copyright-statement>&#x00A9; 2026 The Authors. Published by Tech Science Press.</copyright-statement>
<copyright-year>2026</copyright-year>
<copyright-holder>The Authors</copyright-holder>
<license xlink:href="https://creativecommons.org/licenses/by/4.0/">
<license-p>This work is licensed under a <ext-link ext-link-type="uri" xlink:type="simple" xlink:href="https://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</ext-link>, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
</license>
</permissions>
<self-uri content-type="pdf" xlink:href="TSP_EE_73012.pdf"></self-uri>
<abstract>
<p>The accuracy of photovoltaic (PV) power prediction is significantly influenced by meteorological and environmental factors. To enhance ultra-short-term forecasting precision, this paper proposes an interpretable feedback prediction method based on a parallel dual-stream Temporal Convolutional Network-Bidirectional Long Short-Term Memory (TCN-BiLSTM) architecture incorporating a spatiotemporal attention mechanism. Firstly, during data preprocessing, the optimal historical time window is determined through autocorrelation analysis while highly correlated features are selected as model inputs using Pearson correlation coefficients. Subsequently, a parallel dual-stream TCN-BiLSTM model is constructed where the TCN branch extracts localized transient features and the BiLSTM branch captures long-term periodic patterns, with spatiotemporal attention dynamically weighting spatiotemporal dependencies. Finally, Shapley Additive explanations (SHAP) additive analysis quantifies feature contribution rates and provides optimization feedback to the model. Validation using operational data from a PV power station in Northeast China demonstrates that compared to conventional deep learning models, the proposed method achieves a 17.6% reduction in root mean square error (RMSE), a 5.4% decrease in training time consumption, and a 4.78% improvement in continuous ranked probability score (CRPS), exhibiting significant advantages in both prediction accuracy and generalization capability. This approach enhances the application effectiveness of ultra-short-term PV power forecasting while simultaneously improving prediction accuracy and computational efficiency.</p>
</abstract>
<kwd-group kwd-group-type="author">
<kwd>Ultra-short-term forecasting</kwd>
<kwd>temporal convolutional network</kwd>
<kwd>bidirectional long short-term memory</kwd>
<kwd>parallel dual-stream architecture</kwd>
<kwd>temporal-spatial attention</kwd>
<kwd>SHAP contribution analysis</kwd>
</kwd-group>
<funding-group>
<award-group id="awg1">
<funding-source>National Natural Science Foundation of China (NSFC)</funding-source>
<award-id>62066024</award-id>
</award-group>
<award-group id="awg2">
<funding-source>Basic Scientific Research Projects of Higher Education Institutions in Liaoning Province</funding-source>
<award-id>LJ212411632063</award-id>
</award-group>
<award-group id="awg3">
<funding-source>National Undergraduate Training Program for Innovation and Entrepreneurship</funding-source>
<award-id>S202511632045</award-id>
</award-group>
</funding-group>
</article-meta>
</front>
<body>
<sec id="s1">
<label>1</label>
<title>Introduction</title>
<p>Under the &#x201C;Dual Carbon&#x201D; strategy, the application of renewable energy is a critical pathway toward low-carbon emission reduction. The development and utilization of solar energy have led to a growing share of photovoltaic power generation. However, due to varying meteorological conditions, PV power generation exhibits significant volatility and uncertainty, substantially impacting the stable operation and optimal dispatch of power systems [<xref ref-type="bibr" rid="ref-1">1</xref>,<xref ref-type="bibr" rid="ref-2">2</xref>]. Therefore, constructing high-precision prediction models to accurately forecast power generation under different seasonal and weather conditions is crucial [<xref ref-type="bibr" rid="ref-3">3</xref>]. PV power forecasting can be systematically categorized into ultra-short-term, short-term, and medium-to-long-term forecasting [<xref ref-type="bibr" rid="ref-4">4</xref>]. Ultra-short-term forecasting models can better capture the dynamic characteristics of real-time PV power output, providing precise decision-making support for daily grid dispatch and optimization, thereby playing a key role in enhancing the flexibility and reliability of power system operations [<xref ref-type="bibr" rid="ref-5">5</xref>].</p>
<p>The accuracy of PV power forecasting is primarily constrained by meteorological randomness and the complexity of time series [<xref ref-type="bibr" rid="ref-6">6</xref>]. To address the volatility challenges caused by the coupling of meteorological factors and temporal dependencies in ultra-short-term forecasting, current research innovations mainly focus on simplifying data processing, selecting key features, optimizing model structures, and improving algorithm interpretability [<xref ref-type="bibr" rid="ref-7">7</xref>]. While these approaches enhance forecasting accuracy to some extent, they still suffer from respective limitations.</p>
<p>The CEEMDAN-TCN-BiLSTM-ESN model proposed in Ref. [<xref ref-type="bibr" rid="ref-8">8</xref>] effectively suppresses mode mixing through adaptive noise-assisted ensemble decomposition and enhances nonlinear fitting capabilities with an echo state network (ESN). However, the ESN reservoir parameters are highly sensitive, and computational complexity remains high. The ECA-MTGNN model in Ref. [<xref ref-type="bibr" rid="ref-9">9</xref>] employs graph attention mechanisms to model plant topology relationships, significantly reducing errors, but it heavily relies on geographical information and exhibits poor generalization. The black-winged kite algorithm used in Ref. [<xref ref-type="bibr" rid="ref-10">10</xref>] optimizes VMD parameters, greatly improving decomposition accuracy, but excessive iterations compromise real-time performance. The fractal theory-based feature extraction method in Ref. [<xref ref-type="bibr" rid="ref-11">11</xref>] significantly reduces mean absolute error, yet it exhibits lagged responses to sudden weather changes. The LGGWO-TCN-MHSA model in Ref. [<xref ref-type="bibr" rid="ref-12">12</xref>] utilizes Spearman correlation coefficients for feature selection, achieving substantial dimensionality reduction, and an improved grey wolf algorithm significantly lowers RMSE. However, its high-dimensional parameter search space imposes considerable computational burdens while failing to adequately account for temporal dependencies. The DTCN-BiLSTM-TSA framework in Ref. [<xref ref-type="bibr" rid="ref-13">13</xref>] extracts trend and detail features separately via dual-channel temporal convolutional networks, improving forecasting accuracy, but its serial structure significantly prolongs training time. The group-cross-gated GCN model in Ref. [<xref ref-type="bibr" rid="ref-14">14</xref>] clearly illustrates feature interactions, yet its performance heavily depends on graph structure quality. The SHAP-TCN-BiLSTM framework in Ref. [<xref ref-type="bibr" rid="ref-15">15</xref>] quantifies irradiation contributions via additive feature attribution, but increasing feature counts elevate computational complexity. Although the KOA optimization method in Ref. [<xref ref-type="bibr" rid="ref-16">16</xref>] improves parameter search efficiency, it still suffers from premature convergence. The empirical mode decomposition method in Ref. [<xref ref-type="bibr" rid="ref-17">17</xref>] is prone to endpoint effects, while the multi-scale convolutional structure in Ref. [<xref ref-type="bibr" rid="ref-18">18</xref>] enhances adaptability to abrupt weather changes but exhibits limited long-term dependency capture.</p>
<p>The above deep learning models mainly suffer from issues of insufficient prediction accuracy and precision due to factors related to time series and meteorological conditions. The DTCN-BiLSTM-TSA framework and the SHAP-TCN-BiLSTM framework can effectively address the impact of spatiotemporal factors on prediction accuracy. However, both frameworks have the problems of high computational complexity and longer training times. To address these challenges, this paper proposes an interpretable feedback-based PV power forecasting method that integrates a parallel TCN-BiLSTM structure [<xref ref-type="bibr" rid="ref-19">19</xref>] with a spatiotemporal attention mechanism: First, Pearson correlation coefficients [<xref ref-type="bibr" rid="ref-20">20</xref>] are used to screen strongly correlated features (e.g., irradiance), and autocorrelation analysis determines the optimal historical window, reducing input dimensionality and noise interference while avoiding decomposition-induced cumulative errors. Second, a parallel TCN-BiLSTM core architecture is constructed&#x2014;the TCN branch extracts irradiance trends via dilated causal convolutions, while the BiLSTM branch captures periodic meteorological patterns using bidirectional gating mechanisms. A spatiotemporal attention module dynamically weights feature interactions, addressing TCN&#x2019;s future information loss and the rigidity of traditional parallel feature fusion, thereby streamlining network architecture and accelerating computation. Finally, SHAP additive explanations quantify feature contributions [<xref ref-type="bibr" rid="ref-21">21</xref>], resolving the &#x201C;black-box&#x201D; issue and providing physically interpretable insights for dispatch decision-making.</p>
</sec>
<sec id="s2">
<label>2</label>
<title>Parallel TCN-BiLSTM and TSA</title>
<sec id="s2_1">
<label>2.1</label>
<title>TCN-BiLSTM Parallel Dual-Stream Architecture</title>
<p>Photovoltaic power generation exhibits distinct diurnal periodicity and weather dependence, requiring the capture of characteristic patterns over extended time spans. The Temporal Convolutional Network (TCN) addresses this need through stacked dilated causal convolutional layers that expand the receptive field to effectively capture multi-timescale temporal patterns [<xref ref-type="bibr" rid="ref-22">22</xref>]. TCN can process longer input sequences, which helps simplify the model architecture while preventing gradient explosion, and enables the construction of larger receptive fields without requiring excessive network depth.</p>
<p>By employing TCN, the convolutional operations can extract correlation patterns between different features at concurrent timesteps from the input time-series data. <xref ref-type="fig" rid="fig-1">Fig. 1</xref> illustrates the TCN convolutional architecture, where adjusting network parameters such as the dilation coefficient in the Dilated Causal Convolution (DCC) network can effectively expand the input receptive field. The conclusions from the DCC operation are as follows:
<disp-formula id="eqn-1"><label>(1)</label><mml:math id="mml-eqn-1" display="block"><mml:mi>D</mml:mi><mml:mi>C</mml:mi><mml:mi>C</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>T</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mn>0</mml:mn></mml:mrow><mml:mrow><mml:mi>K</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:munderover><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>T</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>d</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></disp-formula>where, <italic>DCC</italic>(<italic>T</italic>) is the output computation of <italic>DCC</italic> at time step <italic>T</italic>. <inline-formula id="ieqn-1"><mml:math id="mml-ieqn-1"><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>i</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is learnable convolutional kernel weight parameters. <inline-formula id="ieqn-2"><mml:math id="mml-ieqn-2"><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>T</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>d</mml:mi><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represents the PV power from time <italic>T</italic> to the previous time shifted by <italic>d</italic><sub><italic>i</italic></sub>. <italic>K</italic> denotes the kernel size of the filter, <italic>d</italic> is the dilation coefficient.</p>
<fig id="fig-1">
<label>Figure 1</label>
<caption>
<title>Schematic illustration of TCN</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-1.tif"/>
</fig>
<p>The residual block is computed as follows:
<disp-formula id="eqn-2"><label>(2)</label><mml:math id="mml-eqn-2" display="block"><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>h</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>&#x03B4;</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>G</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>h</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>C</mml:mi><mml:mi>o</mml:mi><mml:mi>v</mml:mi><mml:mn>1</mml:mn><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>L</mml:mi><mml:mrow><mml:mi>h</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>where, <italic>L</italic> represents the input data before residual connection. <italic>G</italic> denotes the operations of DCC and normalization. <italic>Conv1</italic>(&#x00B7;) indicates the convolution operation. <italic>&#x03B4;</italic> stands for the activation function.</p>
<p>To effectively capture both short-term fluctuations and long-term trends in photovoltaic power forecasting, a time-series model capable of learning bidirectional temporal dependencies is required. The Bidirectional Long Short-Term Memory network (Bi-LSTM) incorporates gated units comprising three control mechanisms: input gate, output gate, and forget gate, which collectively determine the hidden state transmission between timesteps. By implementing a bidirectional architecture that adds reverse-direction hidden layer propagation [<xref ref-type="bibr" rid="ref-23">23</xref>], Bi-LSTM performs both forward and backward state transmissions during hidden state updates. This unique operational mechanism enhances the model&#x2019;s nonlinear fitting capability and improves prediction accuracy for photovoltaic power generation cycles, with its detailed structure illustrated in <xref ref-type="fig" rid="fig-2">Fig. 2</xref>.</p>
<fig id="fig-2">
<label>Figure 2</label>
<caption>
<title>Bidirectional long short-term memory network architecture diagram</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-2.tif"/>
</fig>
<p>Let <inline-formula id="ieqn-3"><mml:math id="mml-ieqn-3"><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>n</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> denote the relationship between meteorological factors and photovoltaic power generation fed into the bidirectional long short-term memory network at timestep <italic>t</italic>, where <italic>n</italic> represents the sample size. In <xref ref-type="fig" rid="fig-2">Fig. 2</xref>, <inline-formula id="ieqn-4"><mml:math id="mml-ieqn-4"><mml:msub><mml:mover><mml:mi>h</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo></mml:mover><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>h</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> indicates the forward-propagating hidden state, <inline-formula id="ieqn-5"><mml:math id="mml-ieqn-5"><mml:msub><mml:mover><mml:mi>h</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo></mml:mover><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>h</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> represents the backward-propagating hidden state, and <italic>h</italic> denotes the number of hidden units in both directions. The final hidden state output <inline-formula id="ieqn-6"><mml:math id="mml-ieqn-6"><mml:msub><mml:mover><mml:mi>h</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo></mml:mover><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>h</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> of the bidirectional long short-term memory network is as follows:
<disp-formula id="eqn-3"><label>(3)</label><mml:math id="mml-eqn-3" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mover><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mover><mml:mi>&#x03C3;</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2299;</mml:mo><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>h</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mover><mml:mi mathvariant="bold-italic">c</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-4"><label>(4)</label><mml:math id="mml-eqn-4" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mover><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mover><mml:mi>&#x03C3;</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2299;</mml:mo><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>h</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mover><mml:mi mathvariant="bold-italic">c</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-5"><label>(5)</label><mml:math id="mml-eqn-5" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>c</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi><mml:mi>c</mml:mi><mml:mi>a</mml:mi><mml:mi>t</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mover><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mover><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>where, <inline-formula id="ieqn-7"><mml:math id="mml-ieqn-7"><mml:mo>&#x2299;</mml:mo></mml:math></inline-formula> represents element-wise multiplication; <inline-formula id="ieqn-8"><mml:math id="mml-ieqn-8"><mml:msub><mml:mover><mml:mi>&#x03C3;</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-9"><mml:math id="mml-ieqn-9"><mml:msub><mml:mover><mml:mi>&#x03C3;</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represent the computation results of the forward and backward LSTM output gates at time step <italic>t</italic>, respectively; <inline-formula id="ieqn-10"><mml:math id="mml-ieqn-10"><mml:msub><mml:mover><mml:mi mathvariant="bold-italic">c</mml:mi><mml:mo stretchy="false">&#x2192;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> and <inline-formula id="ieqn-11"><mml:math id="mml-ieqn-11"><mml:msub><mml:mover><mml:mi mathvariant="bold-italic">c</mml:mi><mml:mo stretchy="false">&#x2190;</mml:mo></mml:mover><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represent the output values of the forward and backward LSTM memory cells at time step <italic>t</italic>, where <inline-formula id="ieqn-12"><mml:math id="mml-ieqn-12"><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>h</mml:mi></mml:math></inline-formula> is the hyperbolic tangent activation function applied to the memory cells.
<disp-formula id="eqn-6"><label>(6)</label><mml:math id="mml-eqn-6" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi mathvariant="bold-italic">f</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">=</mml:mtext></mml:mrow><mml:mi mathvariant="bold-italic">&#x03C3;</mml:mi><mml:mrow><mml:mtext mathvariant="bold">(</mml:mtext></mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">W</mml:mi><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">f</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo mathvariant="bold">&#x22C5;</mml:mo><mml:mrow><mml:mtext mathvariant="bold">[</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">,</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi><mml:mrow><mml:mtext mathvariant="bold">-</mml:mtext></mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mtext mathvariant="bold">]</mml:mtext></mml:mrow><mml:mrow><mml:mi mathvariant="bold-italic">T</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mtext mathvariant="bold">+</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">b</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">f</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-7"><label>(7)</label><mml:math id="mml-eqn-7" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi mathvariant="bold-italic">i</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">=</mml:mtext></mml:mrow><mml:mi mathvariant="bold-italic">&#x03C3;</mml:mi><mml:mrow><mml:mtext mathvariant="bold">(</mml:mtext></mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">W</mml:mi><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">i</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo mathvariant="bold">&#x22C5;</mml:mo><mml:mrow><mml:mtext mathvariant="bold">[</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">,</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi><mml:mrow><mml:mtext mathvariant="bold">-</mml:mtext></mml:mrow><mml:mrow><mml:mtext mathvariant="bold">1</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mtext mathvariant="bold">]</mml:mtext></mml:mrow><mml:mrow><mml:mi mathvariant="bold-italic">T</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mtext mathvariant="bold">+</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">b</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">i</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-8"><label>(8)</label><mml:math id="mml-eqn-8" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi mathvariant="bold-italic">o</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">=</mml:mtext></mml:mrow><mml:mi mathvariant="bold-italic">&#x03C3;</mml:mi><mml:mrow><mml:mtext mathvariant="bold">(</mml:mtext></mml:mrow><mml:msup><mml:mi mathvariant="bold-italic">W</mml:mi><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi mathvariant="bold-italic">o</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo mathvariant="bold">&#x22C5;</mml:mo><mml:mrow><mml:mtext mathvariant="bold">[</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">,</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi><mml:mrow><mml:mtext mathvariant="bold">-</mml:mtext></mml:mrow><mml:mrow><mml:mtext mathvariant="bold">1</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mtext mathvariant="bold">]</mml:mtext></mml:mrow><mml:mrow><mml:mi mathvariant="bold-italic">T</mml:mi></mml:mrow></mml:msup><mml:mrow><mml:mtext mathvariant="bold">+</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">b</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">o</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">)</mml:mtext></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-9"><label>(9)</label><mml:math id="mml-eqn-9" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mrow><mml:mover><mml:mi mathvariant="bold-italic">c</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>t</mml:mi><mml:mi>a</mml:mi><mml:mi>n</mml:mi><mml:mi>h</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi mathvariant="bold-italic">W</mml:mi><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mrow><mml:mover><mml:mi>c</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msup><mml:mo>&#x22C5;</mml:mo><mml:msup><mml:mrow><mml:mo>[</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:msup><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">b</mml:mi><mml:mrow><mml:mrow><mml:mover><mml:mi>c</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-10"><label>(10)</label><mml:math id="mml-eqn-10" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi mathvariant="bold-italic">c</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">f</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2299;</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">c</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi><mml:mo mathvariant="bold">&#x2212;</mml:mo><mml:mn mathvariant="bold">1</mml:mn></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">i</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2299;</mml:mo><mml:msub><mml:mrow><mml:mover><mml:mi mathvariant="bold-italic">c</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>where, <inline-formula id="ieqn-13"><mml:math id="mml-ieqn-13"><mml:msub><mml:mi mathvariant="bold-italic">f</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> denotes the output of the forget gate, <inline-formula id="ieqn-14"><mml:math id="mml-ieqn-14"><mml:msub><mml:mi mathvariant="bold-italic">i</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> denotes the output of the forget gate, <inline-formula id="ieqn-15"><mml:math id="mml-ieqn-15"><mml:mi mathvariant="bold-italic">&#x03C3;</mml:mi></mml:math></inline-formula> denotes Sigmoid activation function, <inline-formula id="ieqn-16"><mml:math id="mml-ieqn-16"><mml:mrow><mml:mtext mathvariant="bold">[</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mtext mathvariant="bold">,</mml:mtext></mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">h</mml:mi><mml:mrow><mml:mi mathvariant="bold-italic">t</mml:mi><mml:mrow><mml:mtext mathvariant="bold">-</mml:mtext></mml:mrow><mml:mrow><mml:mtext mathvariant="bold">1</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:msup><mml:mrow><mml:mtext mathvariant="bold">]</mml:mtext></mml:mrow><mml:mrow><mml:mi mathvariant="bold-italic">T</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> represents the concatenated input vector, which is the input of the gating computations. <inline-formula id="ieqn-17"><mml:math id="mml-ieqn-17"><mml:msub><mml:mrow><mml:mover><mml:mi mathvariant="bold-italic">c</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> denotes the candidate memory cell output, whose value can be calculated through <xref ref-type="disp-formula" rid="eqn-10">Eq. (10)</xref>. The weight matrix <inline-formula id="ieqn-18"><mml:math id="mml-ieqn-18"><mml:msup><mml:mi>W</mml:mi><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>f</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> contains <inline-formula id="ieqn-19"><mml:math id="mml-ieqn-19"><mml:msub><mml:mi>W</mml:mi><mml:mrow><mml:mi>x</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>h</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mn>1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula> (input feature weights) and <inline-formula id="ieqn-20"><mml:math id="mml-ieqn-20"><mml:msub><mml:mi>W</mml:mi><mml:mrow><mml:mi>h</mml:mi><mml:mi>f</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>h</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>h</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> (hidden state weights); and correspond to the <inline-formula id="ieqn-21"><mml:math id="mml-ieqn-21"><mml:msub><mml:mi>b</mml:mi><mml:mrow><mml:mi>f</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> (forget gate), <inline-formula id="ieqn-22"><mml:math id="mml-ieqn-22"><mml:msub><mml:mi>b</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> (input gate), <inline-formula id="ieqn-23"><mml:math id="mml-ieqn-23"><mml:msub><mml:mi>b</mml:mi><mml:mrow><mml:mi>o</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> (output gate), and <inline-formula id="ieqn-24"><mml:math id="mml-ieqn-24"><mml:msub><mml:mi>b</mml:mi><mml:mrow><mml:mrow><mml:mover><mml:mi>c</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> (candidate memory cell), respectively, where represents the activation function.</p>
<p>TCN and BiLSTM each have advantages in perceiving local features and long-term temporal dependencies. Traditional model architectures employ serial concatenation structures to capture both local and global temporal patterns, but overly complex models require more computational memory and time, significantly increasing training costs. This adversely affects the timeliness of ultra-short-term predictions, leading to increased computational costs and substantially reduced efficiency during training.</p>
<p>The parallel dual-stream prediction model utilizes a tensor pooling concatenation module to merge the output matrices of both models along the feature dimension, achieving feature information fusion, and generates target values through output neurons. By adopting a parallel structure, all individual models within the hybrid model can be trained independently side by side, learning feature information from the original time series before the tensor concatenation module. Thus, the depth of the hybrid model is not increased by stacking network layers. Furthermore, the tensor concatenation module combines the feature information learned by each individual model, fully preserving their respective perceptual capabilities. Consequently, this parallel dual-stream structure maintains feature learning and perceptual ability while significantly improving learning efficiency and drastically reducing training time costs due to reduced model depth. A schematic diagram of the parallel structure is shown in <xref ref-type="fig" rid="fig-3">Fig. 3</xref>.</p>
<fig id="fig-3">
<label>Figure 3</label>
<caption>
<title>TCN-BiLSTM parallel dual-stream architecture schematic diagram</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-3.tif"/>
</fig>
</sec>
<sec id="s2_2">
<label>2.2</label>
<title>Temporal-Spatial Attention</title>
<p>Photovoltaic power generation is simultaneously influenced by local meteorological factors and temporal periodicity, exhibiting continuous fluctuation characteristics. However, conventional TCN and Bi-LSTM prediction models equally process all temporal and spatial features in photovoltaic power forecasting, failing to adapt to scenarios like abrupt weather changes. By integrating a Temporal-Spatial Attention (TSA) mechanism with the parallel TCN-BiLSTM architecture, dynamic adjustment of spatial features from TCN outputs and temporal features from Bi-LSTM outputs can be achieved. The multi-head mechanism enables parallel learning of spatiotemporal relationships across different subspaces, followed by lightweight feature fusion through tensor pooling concatenation. This approach significantly enhances the performance of photovoltaic power prediction models under complex weather conditions.</p>
<p>The calculation formula of Temporal-Spatial Attention is as follows:
<disp-formula id="eqn-11"><label>(11)</label><mml:math id="mml-eqn-11" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>Q</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:msubsup><mml:mi>W</mml:mi><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msubsup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-12"><label>(12)</label><mml:math id="mml-eqn-12" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>K</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:msubsup><mml:mi>W</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msubsup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-13"><label>(13)</label><mml:math id="mml-eqn-13" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>X</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:msubsup><mml:mi>W</mml:mi><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msubsup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-14"><label>(14)</label><mml:math id="mml-eqn-14" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>A</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mtext>softmax</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mfrac><mml:mrow><mml:msub><mml:mi>Q</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:msubsup><mml:mi>K</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mtext>T&#xA0;</mml:mtext></mml:mrow></mml:mrow></mml:msubsup></mml:mrow><mml:msqrt><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:msqrt></mml:mfrac><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-15"><label>(15)</label><mml:math id="mml-eqn-15" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mrow><mml:mover><mml:mi>X</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:msub><mml:mi>A</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:msub><mml:mi>V</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>where, <italic>s</italic> and <italic>t</italic> represent spatial and temporal features, respectively, <italic>Q</italic> is the query vector, <italic>K</italic> is the key vector, <italic>V</italic> is the value vector, <inline-formula id="ieqn-25"><mml:math id="mml-ieqn-25"><mml:mi>X</mml:mi><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>B</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>T</mml:mi><mml:mo>&#x00D7;</mml:mo><mml:mi>D</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> is the output spatial/temporal feature, <inline-formula id="ieqn-26"><mml:math id="mml-ieqn-26"><mml:msubsup><mml:mi>W</mml:mi><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>W</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:msubsup><mml:mi>W</mml:mi><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msubsup><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mrow><mml:msub><mml:mi>D</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x00D7;</mml:mo><mml:mrow><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:mrow></mml:mrow></mml:msup></mml:math></inline-formula> are learnable weight matrices, <inline-formula id="ieqn-27"><mml:math id="mml-ieqn-27"><mml:msub><mml:mi>A</mml:mi><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the attention matrix, <inline-formula id="ieqn-28"><mml:math id="mml-ieqn-28"><mml:mrow><mml:mtext>softmax</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mo>&#x22C5;</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> converts the similarity score into a probability distribution, indicating the dependency of the position <inline-formula id="ieqn-29"><mml:math id="mml-ieqn-29"><mml:mrow><mml:mo>(</mml:mo><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> on the position <inline-formula id="ieqn-30"><mml:math id="mml-ieqn-30"><mml:mrow><mml:mo>(</mml:mo><mml:msup><mml:mi>s</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>,</mml:mo><mml:msup><mml:mi>t</mml:mi><mml:mrow><mml:mi mathvariant="normal">&#x2032;</mml:mi></mml:mrow></mml:msup><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>. <inline-formula id="ieqn-31"><mml:math id="mml-ieqn-31"><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the scaling factor, and <inline-formula id="ieqn-32"><mml:math id="mml-ieqn-32"><mml:msub><mml:mrow><mml:mover><mml:mi>X</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>s</mml:mi><mml:mo>,</mml:mo><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> denotes the spatiotemporally enhanced feature.</p>
<p>The multi-head attention extension calculation formula is as follows, where <italic>h</italic> &#x003D; 4 represents minute fluctuations, hourly trends, spatial coupling, and anomaly detection, respectively.
<disp-formula id="eqn-16"><label>(16)</label><mml:math id="mml-eqn-16" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>A</mml:mi><mml:mi>t</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi><mml:mi>i</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>X</mml:mi><mml:msubsup><mml:mi>W</mml:mi><mml:mrow><mml:mi>q</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mi>X</mml:mi><mml:msubsup><mml:mi>W</mml:mi><mml:mrow><mml:mi>k</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:mo>,</mml:mo><mml:mi>X</mml:mi><mml:msubsup><mml:mi>W</mml:mi><mml:mrow><mml:mi>v</mml:mi></mml:mrow><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msubsup><mml:mo>)</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-17"><label>(17)</label><mml:math id="mml-eqn-17" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mi>M</mml:mi><mml:mi>u</mml:mi><mml:mi>l</mml:mi><mml:mi>t</mml:mi><mml:mi>i</mml:mi><mml:mi>H</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:mi>d</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>Q</mml:mi><mml:mo>,</mml:mo><mml:mi>K</mml:mi><mml:mo>,</mml:mo><mml:mi>V</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mi>C</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi><mml:mi>c</mml:mi><mml:mi>a</mml:mi><mml:mi>t</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mo>&#x2026;</mml:mo><mml:mo>,</mml:mo><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>h</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:msup><mml:mi>W</mml:mi><mml:mrow><mml:mi>o</mml:mi></mml:mrow></mml:msup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>where, <inline-formula id="ieqn-33"><mml:math id="mml-ieqn-33"><mml:mi>h</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>i</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represents the output of the <inline-formula id="ieqn-34"><mml:math id="mml-ieqn-34"><mml:mi>i</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>t</mml:mi><mml:mi>h</mml:mi></mml:math></inline-formula> attention head, <italic>h</italic> represents the number of heads, <inline-formula id="ieqn-35"><mml:math id="mml-ieqn-35"><mml:mi>A</mml:mi><mml:mi>t</mml:mi><mml:mi>t</mml:mi><mml:mi>e</mml:mi><mml:mi>n</mml:mi><mml:mi>t</mml:mi><mml:mi>i</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mo>&#x22C5;</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> represents core computational logic of attention mechanism, <inline-formula id="ieqn-36"><mml:math id="mml-ieqn-36"><mml:mi>X</mml:mi></mml:math></inline-formula> represents the input data for the attention heads usually comes from the output of the previous layer, <inline-formula id="ieqn-37"><mml:math id="mml-ieqn-37"><mml:mi>M</mml:mi><mml:mi>u</mml:mi><mml:mi>l</mml:mi><mml:mi>t</mml:mi><mml:mi>i</mml:mi><mml:mi>H</mml:mi><mml:mi>e</mml:mi><mml:mi>a</mml:mi><mml:mi>d</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mi>Q</mml:mi><mml:mo>,</mml:mo><mml:mi>K</mml:mi><mml:mo>,</mml:mo><mml:mi>V</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> represents the final output of the multi-head attention mechanism, <inline-formula id="ieqn-38"><mml:math id="mml-ieqn-38"><mml:mi>C</mml:mi><mml:mi>o</mml:mi><mml:mi>n</mml:mi><mml:mi>c</mml:mi><mml:mi>a</mml:mi><mml:mi>t</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:mo>&#x22C5;</mml:mo><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> represents concatenation operation and <inline-formula id="ieqn-39"><mml:math id="mml-ieqn-39"><mml:msup><mml:mi>W</mml:mi><mml:mrow><mml:mi>o</mml:mi></mml:mrow></mml:msup><mml:mo>&#x2208;</mml:mo><mml:msup><mml:mrow><mml:mrow><mml:mi mathvariant="double-struck">R</mml:mi></mml:mrow></mml:mrow><mml:mrow><mml:mi>h</mml:mi><mml:mo>&#x22C5;</mml:mo><mml:mrow><mml:msub><mml:mi>d</mml:mi><mml:mrow><mml:mi>v</mml:mi></mml:mrow></mml:msub></mml:mrow><mml:mo>&#x00D7;</mml:mo><mml:mi>D</mml:mi></mml:mrow></mml:msup></mml:math></inline-formula> denotes the output projection matrix.</p>
<p>Feature fusion decision enables complementary information enhancement of spatiotemporal features while reducing output dimensionality. The fusion incorporates <italic>RELU</italic> activation functions to model the irradiance-power exponential relationship and introduce nonlinear transformation capabilities. The calculation formula is as follows:
<disp-formula id="eqn-18"><label>(18)</label><mml:math id="mml-eqn-18" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mi>T</mml:mi></mml:mfrac><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:munderover><mml:msubsup><mml:mrow><mml:mover><mml:mi>X</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-19"><label>(19)</label><mml:math id="mml-eqn-19" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mfrac><mml:mn>1</mml:mn><mml:mi>T</mml:mi></mml:mfrac><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:munderover><mml:msubsup><mml:mrow><mml:mover><mml:mi>X</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-20"><label>(20)</label><mml:math id="mml-eqn-20" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mrow><mml:mtext>fused</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mrow><mml:mo>[</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2225;</mml:mo><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
<disp-formula id="eqn-21"><label>(21)</label><mml:math id="mml-eqn-21" display="block"><mml:mtable columnalign="right left right left right left right left right left right left" rowspacing="3pt" columnspacing="0em 2em 0em 2em 0em 2em 0em 2em 0em 2em 0em" displaystyle="true"><mml:mtr><mml:mtd /><mml:mtd><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow><mml:mo>=</mml:mo><mml:msub><mml:mi>W</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:mi>R</mml:mi><mml:mi>E</mml:mi><mml:mi>L</mml:mi><mml:mi>U</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>W</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mrow><mml:mtext>fused</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:msub><mml:mi>b</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:msub><mml:mi>b</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>where, <inline-formula id="ieqn-40"><mml:math id="mml-ieqn-40"><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>s</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> represents spatial pooling, <italic>T</italic> denotes the length of time series data, <inline-formula id="ieqn-41"><mml:math id="mml-ieqn-41"><mml:msubsup><mml:mrow><mml:mover><mml:mi>X</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>s</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> denotes Spatial features at time <italic>t</italic>, <inline-formula id="ieqn-42"><mml:math id="mml-ieqn-42"><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> denotes temporal pooling, <inline-formula id="ieqn-43"><mml:math id="mml-ieqn-43"><mml:msubsup><mml:mrow><mml:mover><mml:mi>X</mml:mi><mml:mo stretchy="false">&#x007E;</mml:mo></mml:mover></mml:mrow><mml:mrow><mml:mi>t</mml:mi></mml:mrow><mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>t</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:mrow></mml:msubsup></mml:math></inline-formula> denotes Temporal features at time <italic>t</italic>. <inline-formula id="ieqn-44"><mml:math id="mml-ieqn-44"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mrow><mml:mtext>fused</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> signifies spatial concatenation, <inline-formula id="ieqn-45"><mml:math id="mml-ieqn-45"><mml:mo>&#x2225;</mml:mo></mml:math></inline-formula> signifies concatenation operation, <inline-formula id="ieqn-46"><mml:math id="mml-ieqn-46"><mml:mrow><mml:mover><mml:mi>y</mml:mi><mml:mo stretchy="false">&#x005E;</mml:mo></mml:mover></mml:mrow></mml:math></inline-formula> corresponds to fully-connected prediction, <inline-formula id="ieqn-47"><mml:math id="mml-ieqn-47"><mml:msub><mml:mi>W</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, <inline-formula id="ieqn-48"><mml:math id="mml-ieqn-48"><mml:msub><mml:mi>W</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> represent the weights of the first fully-connected layer and the second fully-connected layer, respectively, <inline-formula id="ieqn-49"><mml:math id="mml-ieqn-49"><mml:msub><mml:mi>b</mml:mi><mml:mrow><mml:mn>1</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula>, <inline-formula id="ieqn-50"><mml:math id="mml-ieqn-50"><mml:msub><mml:mi>b</mml:mi><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msub></mml:math></inline-formula> represent the bias of the first fully-connected layer and the second fully-connected layer, respectively, and <inline-formula id="ieqn-51"><mml:math id="mml-ieqn-51"><mml:mi>R</mml:mi><mml:mi>E</mml:mi><mml:mi>L</mml:mi><mml:mi>U</mml:mi></mml:math></inline-formula> is activation function.</p>
</sec>
</sec>
<sec id="s3">
<label>3</label>
<title>Photovoltaic Power Generation Forecasting Model Based on Parallel TCN-BiLSTM-TSA</title>
<p>This paper proposes a photovoltaic power forecasting model framework based on a parallel TCN-BiLSTM architecture for spatiotemporal feature analysis, comprising three components: data preprocessing, model operation analysis, and post-model decision processing, forming a closed-loop optimization system.</p>
<p>First, in the data preprocessing stage, Pearson correlation analysis and autocorrelation analysis are conducted to examine the key influencing factors of photovoltaic power generation and the temporal dependencies within the time series, identifying data that significantly impacts the current forecast. Based on statistical analysis of the raw data, a fixed-length historical window is determined and set as the model&#x2019;s input time step, primarily considering the correlation between historical values of the target variable (photovoltaic power) while optimizing the sequence length. The determined historical window is then fed as input into the parallel dual-stream TCN and Bi-LSTM structure. The TCN extracts spatial local feature patterns through dilated convolutions, while the Bi-LSTM captures temporal dependencies via bidirectional memory units, achieving the goal of spatiotemporal feature decoupling. Subsequently, a spatiotemporal feature attention mechanism dynamically optimizes feature representations, followed by lightweight feature fusion through tensor pooling concatenation. Finally, the output results undergo SHAP additive explanation analysis and feedback optimization to form an interpretable closed-loop model.</p>
<p>Through model training and optimization, as well as comparative analysis with other models and real-world data, the model&#x2019;s advantages and reliability are validated. The overall forecasting architecture is illustrated in <xref ref-type="fig" rid="fig-4">Fig. 4</xref>.</p>
<fig id="fig-4">
<label>Figure 4</label>
<caption>
<title>Framework diagram of photovoltaic power forecasting</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-4.tif"/>
</fig>
<sec id="s3_1">
<label>3.1</label>
<title>Pearson Correlation Input Analysis</title>
<p>The actual power generation output of photovoltaic systems, known as active power output, is influenced by various factors. The active power output formula is as follows:
<disp-formula id="eqn-22"><label>(22)</label><mml:math id="mml-eqn-22" display="block"><mml:msub><mml:mi>P</mml:mi><mml:mrow><mml:mrow><mml:mtext>out</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mi>G</mml:mi><mml:mo>&#x22C5;</mml:mo><mml:mi>A</mml:mi><mml:mo>&#x22C5;</mml:mo><mml:msub><mml:mi>&#x03B7;</mml:mi><mml:mrow><mml:mrow><mml:mtext>module</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:msub><mml:mi>&#x03B7;</mml:mi><mml:mrow><mml:mrow><mml:mtext>system</mml:mtext></mml:mrow></mml:mrow></mml:msub><mml:mo>&#x22C5;</mml:mo><mml:msub><mml:mi>&#x03B7;</mml:mi><mml:mrow><mml:mrow><mml:mtext>other</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></disp-formula>where, <inline-formula id="ieqn-52"><mml:math id="mml-ieqn-52"><mml:mi>G</mml:mi></mml:math></inline-formula> represents solar irradiance, <inline-formula id="ieqn-53"><mml:math id="mml-ieqn-53"><mml:mi>A</mml:mi></mml:math></inline-formula> denotes the effective area of the PV module, <inline-formula id="ieqn-54"><mml:math id="mml-ieqn-54"><mml:msub><mml:mi>&#x03B7;</mml:mi><mml:mrow><mml:mrow><mml:mtext>module</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> represents module conversion efficiency, <inline-formula id="ieqn-55"><mml:math id="mml-ieqn-55"><mml:msub><mml:mi>&#x03B7;</mml:mi><mml:mrow><mml:mrow><mml:mtext>system</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> stands for system efficiency, and <inline-formula id="ieqn-56"><mml:math id="mml-ieqn-56"><mml:msub><mml:mi>&#x03B7;</mml:mi><mml:mrow><mml:mrow><mml:mtext>other</mml:mtext></mml:mrow></mml:mrow></mml:msub></mml:math></inline-formula> represents other correction factors.</p>
<p>In the actual process of photovoltaic power generation, the effect of solar irradiance is influenced by factors such as solar incidence angle, cloud cover, and dust shading. The module conversion efficiency <italic>&#x03B7;</italic><sub>module</sub> of the system is primarily affected by temperature. Accurate photovoltaic power prediction requires considering these correlated factors, but each factor impacts PV output to varying degrees. Insufficient consideration of these factors will significantly reduce prediction accuracy, while incorporating all factors will drastically increase the system&#x2019;s input dimensions, affecting the model&#x2019;s computation and learning efficiency and negatively impacting the timeliness of short-term forecasting. Therefore, we process the input variables by combining Pearson correlation analysis. As shown in the <xref ref-type="fig" rid="fig-5">Fig. 5</xref>.</p>
<fig id="fig-5">
<label>Figure 5</label>
<caption>
<title>Pearson correlation coefficient matrix plot</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-5.tif"/>
</fig>
<p>As evident from the heatmap, irradiance exhibits the highest correlation 0.96, making it the most critical influencing factor. The hourly sine value (hour_sin) also shows a correlation of 0.96, indirectly reflecting the temporal distribution of irradiance throughout the day, thus serving as another key predictive feature for power output. Temperature demonstrates a correlation of 0.81, indicating its significance as both excessive heat and cold can reduce solar cell conversion efficiency. In contrast, humidity and air pressure display lower correlations, suggesting their minimal impact on PV output. Consequently, the primary input variables for PV power forecasting can be identified as irradiance, temperature, and time-periodic factors.</p>
</sec>
<sec id="s3_2">
<label>3.2</label>
<title>Autocorrelation Function Analysis</title>
<p>Based on the Pearson analysis results, it can be concluded that temporal periodicity is one of the important influencing factors affecting photovoltaic output. Therefore, autocorrelation analysis [<xref ref-type="bibr" rid="ref-24">24</xref>] must be performed on the photovoltaic power generation sequence to determine historical windows based on statistical patterns, analyze the temporal dependencies within the time series, identify historically significant time-point data that substantially influence current predictions, and reveal temporal correlations between power generation outputs at different time steps. The autocorrelation function is calculated as follows:
<disp-formula id="eqn-23"><label>(23)</label><mml:math id="mml-eqn-23" display="block"><mml:mrow><mml:mtext>ACF</mml:mtext></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:mi>n</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:mfrac><mml:mrow><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi><mml:mo>&#x2212;</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:munderover><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mover><mml:mi>x</mml:mi><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>t</mml:mi><mml:mo>+</mml:mo><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mover><mml:mi>x</mml:mi><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>)</mml:mo></mml:mrow></mml:mrow><mml:mrow><mml:munderover><mml:mo>&#x2211;</mml:mo><mml:mrow><mml:mi>t</mml:mi><mml:mo>=</mml:mo><mml:mn>1</mml:mn></mml:mrow><mml:mrow><mml:mi>T</mml:mi></mml:mrow></mml:munderover><mml:msup><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub><mml:mo>&#x2212;</mml:mo><mml:mover><mml:mi>x</mml:mi><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover><mml:mo>)</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup></mml:mrow></mml:mfrac></mml:math></disp-formula>where, <inline-formula id="ieqn-57"><mml:math id="mml-ieqn-57"><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>t</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the photovoltaic power output at time <italic>t</italic>, <inline-formula id="ieqn-58"><mml:math id="mml-ieqn-58"><mml:mover><mml:mi>x</mml:mi><mml:mo accent="false">&#x00AF;</mml:mo></mml:mover></mml:math></inline-formula> is the average value of photovoltaic power output, <italic>n</italic> is the lag order of photovoltaic power output, and <italic>T</italic> is the length of the photovoltaic power output sequence.</p>
<p>The resolution of the photovoltaic power generation dataset is 15 min, and its autocorrelation analysis results are shown in <xref ref-type="fig" rid="fig-6">Fig. 6</xref>.</p>
<fig id="fig-6">
<label>Figure 6</label>
<caption>
<title>Autocorrelation variation of PV power sequence</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-6.tif"/>
</fig>
<p><xref ref-type="fig" rid="fig-6">Fig. 6</xref> shows that the photovoltaic power output exhibits an autocorrelation coefficient greater than 0.4 at a 3-h lag, indicating significant correlation between current power generation and that from three hours prior. Moreover, the autocorrelation coefficient exceeds 0.6 for corresponding periods within a two-day lag, demonstrating distinct daily periodicity in PV power generation. Therefore, historical load data from the preceding 3 h and corresponding time periods from the previous two days were selected as input features for the model, validating the scientific rationale behind the chosen historical data time window and confirming pronounced intraday periodicity and 72-h persistence in PV power output.</p>
</sec>
<sec id="s3_3">
<label>3.3</label>
<title>SHAP Additive Contribution Analysis</title>
<p>The Shapley additive explanation technique [<xref ref-type="bibr" rid="ref-25">25</xref>] is employed to analyze the contribution of input features to the model, enhancing the interpretability of prediction results by quantifying how different features influence the output, thereby facilitating better understanding of model decisions. The expression is as follows:
<disp-formula id="eqn-24"><label>(24)</label><mml:math id="mml-eqn-24" display="block"><mml:mi>v</mml:mi><mml:mo>=</mml:mo><mml:msub><mml:mi>v</mml:mi><mml:mrow><mml:mi>b</mml:mi><mml:mi>a</mml:mi><mml:mi>s</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msub><mml:mo>+</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mn>2</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow><mml:mo>+</mml:mo><mml:mo>&#x22EF;</mml:mo><mml:mo>+</mml:mo><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mi>n</mml:mi></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></disp-formula>where, <inline-formula id="ieqn-59"><mml:math id="mml-ieqn-59"><mml:msub><mml:mi>v</mml:mi><mml:mrow><mml:mi>b</mml:mi><mml:mi>a</mml:mi><mml:mi>s</mml:mi><mml:mi>e</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> is the mean prediction of selected samples, <inline-formula id="ieqn-60"><mml:math id="mml-ieqn-60"><mml:mi>f</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>x</mml:mi><mml:mrow><mml:mi>i</mml:mi><mml:mn>1</mml:mn></mml:mrow></mml:msub><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> represents the contribution of the first feature in the <italic>i</italic> sample, and <italic>v</italic> denotes the model&#x2019;s predicted value.</p>
<p>SHAP values are used for visual analysis and model interpretation, with 128 samples randomly selected from the training set to calculate the feature contributions within a specific time frame. SHAP conducts numerical analysis for prediction days in summer and winter, determining the specific contributions of each input feature, as shown in <xref ref-type="fig" rid="fig-7">Fig. 7</xref>.</p>
<fig id="fig-7">
<label>Figure 7</label>
<caption>
<title>Shapley additive explanations analysis</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-7.tif"/>
</fig>
<p>The SHAP analysis results indicate that the contribution of irradiance reaches up to 62.3% in winter and 58.7% in summer, validating its role as a core variable in photovoltaic power prediction. It also confirms the conclusion from Pearson analysis that irradiance intensity exhibits a strong positive correlation with the output power of photovoltaic modules. Additionally, the analysis suggests that high summer temperatures may lead to a decrease in component efficiency, reflected by negative SHAP values, while low winter temperatures combined with high irradiance result in positive SHAP values, potentially linked to enhanced snow reflection. The autocorrelation analysis of model inputs and Pearson analysis form a closed-loop feedback optimization, identifying strongly correlated factors for input.</p>
</sec>
<sec id="s3_4">
<label>3.4</label>
<title>Evaluation Metrics</title>
<p>The probabilistic forecasting model for photovoltaic power requires selecting an appropriate loss function to guide the training process, which should effectively reflect the proximity between the predicted probability distribution and the true distribution. Root mean square error (RMSE), mean absolute percentage error (MAPE), mean absolute error (MAE), and continuous ranked probability score (CRPS) are chosen as evaluation metrics for the forecasting model. RMSE, MAPE, and MAE can respectively reflect large errors, average errors, and relative errors of the forecasting model, all of which belong to point forecasting methods. A comprehensive evaluation of the model&#x2019;s prediction accuracy also requires combining continuous ranked probability score (CRPS), for interval probabilistic forecasting.</p>
<p>CRPS is one of the most widely used comprehensive evaluation metrics in probabilistic forecasting, capable of assessing the global performance of predictive distributions across the entire domain. Therefore, it is selected in this paper as the loss function for combined probabilistic forecasting of photovoltaic power. Its definition formula is:
<disp-formula id="eqn-25"><label>(25)</label><mml:math id="mml-eqn-25" display="block"><mml:mi>S</mml:mi><mml:mrow><mml:mo>(</mml:mo><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mi>Y</mml:mi></mml:mrow></mml:msub><mml:mo>,</mml:mo><mml:mi>y</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>=</mml:mo><mml:msubsup><mml:mo>&#x222B;</mml:mo><mml:mrow><mml:mo>&#x2212;</mml:mo><mml:mi mathvariant="normal">&#x221E;</mml:mi></mml:mrow><mml:mrow><mml:mo>+</mml:mo><mml:mi mathvariant="normal">&#x221E;</mml:mi></mml:mrow></mml:msubsup><mml:msup><mml:mrow><mml:mo>[</mml:mo><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mi>Y</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mi>z</mml:mi><mml:mo>)</mml:mo></mml:mrow><mml:mo>&#x2212;</mml:mo><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mi>z</mml:mi></mml:mrow></mml:msub><mml:mo>]</mml:mo></mml:mrow><mml:mrow><mml:mn>2</mml:mn></mml:mrow></mml:msup><mml:mrow><mml:mtext>d</mml:mtext></mml:mrow><mml:mi>z</mml:mi></mml:math></disp-formula>where, <inline-formula id="ieqn-61"><mml:math id="mml-ieqn-61"><mml:msub><mml:mi>F</mml:mi><mml:mrow><mml:mi>Y</mml:mi></mml:mrow></mml:msub><mml:mrow><mml:mo>(</mml:mo><mml:mi>z</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula> is the cumulative distribution function (CDF) of the forecast variable Y; The observation value of the forecast variable is y; <inline-formula id="ieqn-62"><mml:math id="mml-ieqn-62"><mml:msub><mml:mi>I</mml:mi><mml:mrow><mml:mi>y</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mi>z</mml:mi></mml:mrow></mml:msub></mml:math></inline-formula> indicators function that takes the value 1 when the condition <inline-formula id="ieqn-63"><mml:math id="mml-ieqn-63"><mml:mi>y</mml:mi><mml:mo>&#x003C;</mml:mo><mml:mi>z</mml:mi></mml:math></inline-formula> is satisfied and 0 otherwise.</p>
</sec>
</sec>
<sec id="s4">
<label>4</label>
<title>Experimental Results and Analysis</title>
<p>To validate the correctness and effectiveness of the model and methodology proposed in this study, simulation experiments were conducted using photovoltaic power output and meteorological data provided by a solar power plant in Northeast China covering the period from 01 January 2024 to 31 December 2024. The power plant is located primarily on flat terrain with an average elevation near sea level, featuring a total installed capacity of 750 kW and a sampling interval of 15 min (yielding 96 data points per day). As photovoltaic systems generate zero output during nighttime hours, this experiment exclusively utilized data collected between 05:30 and 19:30 daily. Furthermore, prediction performance was demonstrated across five characteristic weather conditions: sunny, cloudy, overcast, rainy, and snowy days.</p>
<sec id="s4_1">
<label>4.1</label>
<title>Prediction Results of Different Models for Short-Term Photovoltaic Power Forecasting</title>
<p>Following data preprocessing and correlation analysis, parameter configuration for the parallel TCN-BiLSTM-TSA model architecture was performed, with detailed model parameters specified in <xref ref-type="table" rid="table-1">Table 1</xref>.</p>
<table-wrap id="table-1">
<label>Table 1</label>
<caption>
<title>Hyperparameter settings of proposed model</title>
</caption>
<table>
<colgroup>
<col align="center" width="18mm"/>
<col align="center" width="30mm"/>
<col align="center" width="12mm"/>
<col align="center" width="35mm"/>
<col align="center" width="20mm"/> </colgroup>
<thead>
<tr>
<th></th>
<th>Hyperparameter</th>
<th>Value</th>
<th>Hyperparameter</th>
<th>Value</th>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="2">TCN</td>
<td>Num layers</td>
<td>2</td>
<td>Kernel size</td>
<td>4</td>
</tr>
<tr>
<td>Num filters</td>
<td>64</td>
<td>Dilated coefficient</td>
<td>[1, 2]</td>
</tr>
<tr>
<td>BiLSTM</td>
<td>Num layers</td>
<td>2</td>
<td>Hidden units</td>
<td>[256, 128]</td>
</tr>
<tr>
<td>Dense</td>
<td>Num layers</td>
<td>2</td>
<td>Num units</td>
<td>[256, 128]</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>Through Pearson correlation analysis and SHAP additive explanations applied to the input data, we completed data cleaning and selected highly representative samples. Based on the temporal periodicity results from autocorrelation analysis, the experiment employed four consecutive days as the test set to validate the model&#x2019;s superior performance, with prediction outcomes illustrated in <xref ref-type="fig" rid="fig-8">Fig. 8</xref>.</p>
<fig id="fig-8">
<label>Figure 8</label>
<caption>
<title>Photovoltaic power forecasting model comparison</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-8.tif"/>
</fig>
<p>The <xref ref-type="fig" rid="fig-8">Fig. 8</xref> demonstrates the predictive performance of different models, while <xref ref-type="table" rid="table-2">Table 2</xref> and <xref ref-type="fig" rid="fig-9">Fig. 9</xref> visually illustrate the accuracy of the proposed TCN-BiLSTM-TSA model across evaluation metrics including MAE, RMSE, MAPE, and CRPS.</p>
<table-wrap id="table-2">
<label>Table 2</label>
<caption>
<title>The experiment results</title>
</caption>
<table>
<colgroup>
<col align="center" width="50mm"/>
<col align="center" width="15mm"/>
<col align="center" width="14mm"/>
<col align="center" width="16mm"/>
<col align="center" width="15mm"/> </colgroup>
<thead>
<tr>
<th>Modle</th>
<th>MAE/kW</th>
<th>MAPE/<bold>%</bold></th>
<th>RMSE/kW</th>
<th>CRPS/kW</th>
</tr>
</thead>
<tbody>
<tr>
<td><bold>Parallel TCN-BiLSTM-TSA</bold></td>
<td>10.2</td>
<td>2.1</td>
<td>16.1</td>
<td>0.06</td>
</tr>
<tr>
<td><bold>Series TCN-BiLSTM-TSA</bold></td>
<td>10.5</td>
<td>2.2</td>
<td>16.3</td>
<td>0.065</td>
</tr>
<tr>
<td><bold>DTCN-BiLSTM-TSA</bold></td>
<td>13.8</td>
<td>3.5</td>
<td>20.5</td>
<td>0.09</td>
</tr>
<tr>
<td><bold>SHAP-TCN-BiLSTM</bold></td>
<td>17.2</td>
<td>4.8</td>
<td>24.1</td>
<td>0.12</td>
</tr>
<tr>
<td><bold>TCN-BiLSTM</bold></td>
<td>22.5</td>
<td>6.1</td>
<td>28.3</td>
<td>0.15</td>
</tr>
<tr>
<td><bold>CNN-LSTM</bold></td>
<td>23.8</td>
<td>6.8</td>
<td>29.7</td>
<td>0.17</td>
</tr>
</tbody>
</table>
</table-wrap><fig id="fig-9">
<label>Figure 9</label>
<caption>
<title>Radar chart comparison of photovoltaic prediction models</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-9.tif"/>
</fig>
<p><xref ref-type="fig" rid="fig-10">Fig. 10</xref> compares the training times of four models: parallel TCN-BiLSTM-TSA, series TCN-BiLSTM-TSA, DTCN-BiLSTM-TSA, and SHAP-TCN-BiLSTM, using error metric as the evaluation criterion. The analysis demonstrates that while the parallel and series TCN-BiLSTM-TSA models achieve comparable prediction accuracy, and the DTCN-BiLSTM-TSA and SHAP-TCN-BiLSTM models show slightly inferior performance, <xref ref-type="fig" rid="fig-10">Fig. 10</xref> reveals that when the training times of series TCN-BiLSTM-TSA, DTCN-BiLSTM-TSA, and SHAP-TCN-BiLSTM models exceed 1600 s, their error metric reaches approximately 0.06. In contrast, the parallel TCN-BiLSTM-TSA model achieves the same 0.06 error metric with merely 200 s of training time. This clearly indicates that under comparable prediction errors, the parallel TCN-BiLSTM-TSA model requires significantly less training time.</p>
<fig id="fig-10">
<label>Figure 10</label>
<caption>
<title>Comparison of training time efficiency between similar models</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-10.tif"/>
</fig>
</sec>
<sec id="s4_2">
<label>4.2</label>
<title>Response Characteristics of Prediction Models under Different Weather Conditions</title>
<p>To more comprehensively evaluate the prediction performance of the TCN-BiLSTM-TSA model and verify its superiority, simulations were conducted under consistent conditions using the TCN-BiLSTM-TSA, SHAP-TCN-BiLSTM, and DTCN-BiLSTM-TSA models to predict PV power output under &#x201C;rainy&#x201D; and &#x201C;overcast&#x201D; weather conditions. The prediction results and evaluation metrics for each model are shown in <xref ref-type="fig" rid="fig-11">Fig. 11</xref> and <xref ref-type="table" rid="table-3">Table 3</xref>.</p>
<fig id="fig-11">
<label>Figure 11</label>
<caption>
<title>Comparative analysis of prediction models under different weather conditions</title>
</caption>
<graphic mimetype="image" mime-subtype="tif" xlink:href="EE_73012-fig-11.tif"/>
</fig><table-wrap id="table-3">
<label>Table 3</label>
<caption>
<title>The experiment results</title>
</caption>
<table>
<colgroup>
<col align="center" width="27mm"/>
<col align="center" width="50mm"/>
<col align="center" width="14mm"/>
<col align="center" width="14mm"/>
<col align="center" width="16mm"/>
<col align="center" width="16mm"/> </colgroup>
<thead>
<tr>
<th>Weather</th>
<th>Modle</th>
<th>MAE/kW</th>
<th>MAPE/%</th>
<th>RMSE/kW</th>
<th>CRPS/kW</th>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="4"><bold>Sunny</bold></td>
<td><bold>Parallel TCN-BiLSTM-TSA</bold></td>
<td>10.2</td>
<td>2.1</td>
<td>16.1</td>
<td>0.06</td>
</tr>
<tr>
<td><bold>Series TCN-BiLSTM-TSA</bold></td>
<td>10.5</td>
<td>2.2</td>
<td>16.3</td>
<td>0.065</td>
</tr>
<tr>
<td><bold>DTCN-BiLSTM-TSA</bold></td>
<td>13.8</td>
<td>3.5</td>
<td>20.5</td>
<td>0.09</td>
</tr>
<tr>
<td><bold>SHAP-TCN-BiLSTM</bold></td>
<td>17.2</td>
<td>4.8</td>
<td>24.1</td>
<td>0.12</td>
</tr>
<tr>
<td rowspan="4"><bold>Sunny to cloudy</bold></td>
<td><bold>Parallel TCN-BiLSTM-TSA</bold></td>
<td>13.2</td>
<td>2.5</td>
<td>20.1</td>
<td>0.075</td>
</tr>
<tr>
<td><bold>Series TCN-BiLSTM-TSA</bold></td>
<td>13.5</td>
<td>2.6</td>
<td>20.4</td>
<td>0.077</td>
</tr>
<tr>
<td><bold>DTCN-BiLSTM-TSA</bold></td>
<td>17.1</td>
<td>3.3</td>
<td>25.3</td>
<td>0.10</td>
</tr>
<tr>
<td><bold>SHAP-TCN-BiLSTM</bold></td>
<td>24.3</td>
<td>4.8</td>
<td>32.5</td>
<td>0.14</td>
</tr>
<tr>
<td rowspan="4"><bold>Cloudy</bold></td>
<td><bold>Parallel TCN-BiLSTM-TSA</bold></td>
<td>12.1</td>
<td>2.3</td>
<td>18.5</td>
<td>0.07</td>
</tr>
<tr>
<td><bold>Series TCN-BiLSTM-TSA</bold></td>
<td>12.3</td>
<td>2.4</td>
<td>18.8</td>
<td>0.072</td>
</tr>
<tr>
<td><bold>DTCN-BiLSTM-TSA</bold></td>
<td>15.8</td>
<td>3.1</td>
<td>23.2</td>
<td>0.095</td>
</tr>
<tr>
<td><bold>SHAP-TCN-BiLSTM</bold></td>
<td>22.5</td>
<td>4.5</td>
<td>30.1</td>
<td>0.13</td>
</tr>
<tr>
<td rowspan="4"><bold>Overcast</bold></td>
<td><bold>Parallel TCN-BiLSTM-TSA</bold></td>
<td>11.8</td>
<td>2.2</td>
<td>18.1</td>
<td>0.068</td>
</tr>
<tr>
<td><bold>Series TCN-BiLSTM-TSA</bold></td>
<td>12.0</td>
<td>2.3</td>
<td>18.4</td>
<td>0.07</td>
</tr>
<tr>
<td><bold>DTCN-BiLSTM-TSA</bold></td>
<td>15.5</td>
<td>3.0</td>
<td>22.8</td>
<td>0.092</td>
</tr>
<tr>
<td><bold>SHAP-TCN-BiLSTM</bold></td>
<td>21.9</td>
<td>4.3</td>
<td>29.5</td>
<td>0.125</td>
</tr>
<tr>
<td rowspan="4"><bold>Rainy</bold></td>
<td><bold>Parallel TCN-BiLSTM-TSA</bold></td>
<td>13.8</td>
<td>2.6</td>
<td>21.2</td>
<td>0.078</td>
</tr>
<tr>
<td><bold>Series TCN-BiLSTM-TSA</bold></td>
<td>14.1</td>
<td>2.7</td>
<td>21.5</td>
<td>0.08</td>
</tr>
<tr>
<td><bold>DTCN-BiLSTM-TSA</bold></td>
<td>17.9</td>
<td>3.4</td>
<td>26.5</td>
<td>0.105</td>
</tr>
<tr>
<td><bold>SHAP-TCN-BiLSTM</bold></td>
<td>25.7</td>
<td>5.0</td>
<td>34.2</td>
<td>0.145</td>
</tr>
<tr>
<td rowspan="4"><bold>Snowy</bold></td>
<td><bold>Parallel TCN-BiLSTM-TSA</bold></td>
<td>14.5</td>
<td>2.8</td>
<td>22.3</td>
<td>0.08</td>
</tr>
<tr>
<td><bold>Series TCN-BiLSTM-TSA</bold></td>
<td>14.8</td>
<td>2.9</td>
<td>22.6</td>
<td>0.082</td>
</tr>
<tr>
<td><bold>DTCN-BiLSTM-TSA</bold></td>
<td>18.7</td>
<td>3.6</td>
<td>27.8</td>
<td>0.11</td>
</tr>
<tr>
<td><bold>SHAP-TCN-BiLSTM</bold></td>
<td>26.9</td>
<td>5.2</td>
<td>35.7</td>
<td>0.15</td>
</tr>
</tbody>
</table>
</table-wrap>
<p>From <xref ref-type="fig" rid="fig-11">Fig. 11</xref> and <xref ref-type="table" rid="table-3">Table 3</xref>, it can be observed that under &#x201C;rainy&#x201D; and &#x201C;overcast&#x201D; conditions, the TCN-BiLSTM-TSA model exhibits smaller prediction errors compared to other models, enabling effective PV power prediction under these weather scenarios.</p>

<p>In summary, across five distinct weather conditions&#x2014;clear skies with high temperatures, cloudy, overcast, rainy, and snowy/low-temperature conditions&#x2014;the TCN-BiLSTM-TSA model successfully captures the variation trends of PV power sequences. It achieves accurate power predictions under diverse meteorological scenarios, demonstrating robust forecasting performance and strong generalization capabilities.</p>
</sec>
<sec id="s4_3">
<label>4.3</label>
<title>Experimental Results Analysis</title>
<p>Test results demonstrate that the proposed parallel dual-stream architecture with spatiotemporal attention mechanism reduces training time by 5.4% compared to serial architecture. This spatiotemporal attention mechanism improves RMSE by 17.6% for predictions under overcast, rainy and snowy conditions, verifying the effectiveness of parallel architecture in feature decoupling. Furthermore, the proposed prediction model exhibits superior performance during both extreme weather and stable PV generation periods, while significantly enhancing computational efficiency and substantially reducing training time. Performance comparison shows Parallel TCN-BiLSTM-TSA and Series TCN-BiLSTM-TSA curves nearly overlapping actual values with minimal errors, MAE &#x2264; 15 kW, MAPE &#x2264; 3%. DTCN-TCN-BiLSTM-TSA exhibits moderate dispersion but captures fluctuations with intermediate errors, MAE &#x2264; 19 kW, MAPE &#x2264; 3.6%. SHAP-TCN-BiLSTM significantly deviates from actual values with maximum errors, MAE &#x2265; 21 kW, MAPE &#x2265; 4.3%. Weather impacts reveal slightly higher errors in high-variability scenarios like snowfall and sunny-to-cloudy transitions, though Parallel TCN-BiLSTM-TSA maintains superior accuracy, while its advantage becomes more pronounced in stable conditions like overcast and cloudy weather with lower errors. The model achieves 5.00% MAPE on Northeast China field data, outperforming comparison models by 1.27%, proving parallel TCN-BiLSTM-TSA delivers optimal prediction performance for specific winter/summer dates with significantly improved accuracy over single models. Under constraints of Pearson feature selection, autocorrelation analysis and SHAP interpretability feedback fusion, peak power prediction errors remain below 8% even during extreme winter weather, validating multi-module collaboration robustness. SHAP analysis reveals irradiance contribution reaches 62.3%, providing quantitative basis for PV array cleaning maintenance.</p>
</sec>
</sec>
<sec id="s5">
<label>5</label>
<title>Conclusion</title>
<p>To address the issue of inaccurate predictions during periods of high fluctuation in ultra-short-term photovoltaic power forecasting, this paper conducts Pearson analysis and autocorrelation analysis on PV sequences. It determines the high-correlation factors for model inputs and the optimal historical time series window. Based on this, a parallel TCN-BiLSTM neural network prediction model is established by integrating spatiotemporal attention mechanisms. Through comparison with traditional deep learning prediction models, it is found that the proposed prediction model effectively improves the application effect of ultra-short-term photovoltaic power forecasting, enhancing both the accuracy of forecasting photovoltaic power and computational efficiency. This verifies the effectiveness of the parallel design in feature decoupling and confirms the robustness of the multi-module collaboration. Additionally, it provides quantitative evidence for the maintenance of photovoltaic arrays.</p>
<p>However, the data set selected in this study still has certain limitations. The climate conditions in Northeast China are special and the time span is short, which cannot fully demonstrate the stability of power forecasting across seasonal changes. Although multiple data processing steps can filter out strong correlation factors affecting power prediction, and the parallel dual-stream structure of the TCN-BiLSTM with spatiotemporal attention mechanisms significantly reduces training time, the multiple data processing steps of the model may still increase the training cost. This study only conducts prediction for a single site, while in actual production, multiple sites often work collaboratively, requiring simultaneous consideration of the spatiotemporal correlation among multiple sites. How to extend this model to multi-site collaborative prediction is a direction for future research.</p>
</sec>
</body>
<back>
<ack>
<p>Not applicable.</p>
</ack>
<sec>
<title>Funding Statement</title>
<p>This work is funded by the National Natural Science Foundation of China (NSFC) (No. 62066024). This research is funded by Basic Scientific Research Projects of Higher Education Institutions in Liaoning Province (LJ212411632063) and the National Undergraduate Training Program for Innovation and Entrepreneurship (S202511632045).</p>
</sec>
<sec>
<title>Author Contributions</title>
<p>Conceptualization, Supervision, Xingyu Jiang; Data curation, Writing&#x2014;original draft, Hongbo Sun; Design, Data interpretation, Wenyao Sun; Writing&#x2014;review and editing, Validation, Yi Zhao; Validation, Visualization, Investigation, Xiaoyi Qian; Methodology and algorithm guidance, Jifeng Cheng and Guo Wang. All authors reviewed the results and approved the final version of the manuscript.</p>
</sec>
<sec sec-type="data-availability">
<title>Availability of Data and Materials</title>
<p>Data available on request from the authors. The data that support the findings of this study are available from the Corresponding Author, [Xingyu Jiang], upon reasonable request.</p>
</sec>
<sec>
<title>Ethics Approval</title>
<p>Not applicable.</p>
</sec>
<sec sec-type="COI-statement">
<title>Conflicts of Interest</title>
<p>The authors declare no conflicts of interest to report regarding the present study.</p>
</sec>
<ref-list content-type="authoryear">
<title>References</title>
<ref id="ref-1"><label>[1]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Das</surname> <given-names>UK</given-names></string-name>, <string-name><surname>Tey</surname> <given-names>KS</given-names></string-name>, <string-name><surname>Seyedmahmoudian</surname> <given-names>M</given-names></string-name>, <string-name><surname>Mekhilef</surname> <given-names>S</given-names></string-name>, <string-name><surname>Idris</surname> <given-names>MYI</given-names></string-name>, <string-name><surname>Van Deventer</surname> <given-names>W</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Forecasting of photovoltaic power generation and model optimization: a review</article-title>. <source>Renew Sustain Energy Rev</source>. <year>2018</year>;<volume>81</volume>(<issue>1</issue>):<fpage>912</fpage>&#x2013;<lpage>28</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.rser.2017.08.017</pub-id>.</mixed-citation></ref>
<ref id="ref-2"><label>[2]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Tian</surname> <given-names>J</given-names></string-name>, <string-name><surname>Ooka</surname> <given-names>R</given-names></string-name>, <string-name><surname>Lee</surname> <given-names>D</given-names></string-name></person-group>. <article-title>Multi-scale solar radiation and photovoltaic power forecasting with machine learning algorithms in urban environment: a state-of-the-art review</article-title>. <source>J Clean Prod</source>. <year>2023</year>;<volume>426</volume>:<fpage>139040</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.jclepro.2023.139040</pub-id>.</mixed-citation></ref>
<ref id="ref-3"><label>[3]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Li</surname> <given-names>L-L</given-names></string-name>, <string-name><surname>Wen</surname> <given-names>S-Y</given-names></string-name>, <string-name><surname>Tseng</surname> <given-names>M-L</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>C-S</given-names></string-name></person-group>. <article-title>Renewable energy prediction: a novel short-term prediction model of photovoltaic output power</article-title>. <source>J Clean Prod</source>. <year>2019</year>;<volume>228</volume>(<issue>2</issue>):<fpage>359</fpage>&#x2013;<lpage>75</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.jclepro.2019.04.331</pub-id>.</mixed-citation></ref>
<ref id="ref-4"><label>[4]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Tang</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>L</given-names></string-name>, <string-name><surname>Huang</surname> <given-names>D</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>S</given-names></string-name>, <string-name><surname>Kuang</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Ultra-short-term photovoltaic power generation prediction based on hunter-prey optimized K-nearest neighbors and simple recurrent unit</article-title>. <source>Appl Sci</source>. <year>2024</year>;<volume>14</volume>(<issue>5</issue>):<fpage>2159</fpage>. doi:<pub-id pub-id-type="doi">10.3390/app14052159</pub-id>.</mixed-citation></ref>
<ref id="ref-5"><label>[5]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Huang</surname> <given-names>C</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>M</given-names></string-name></person-group>. <article-title>Memory long and short term time series network for ultra-short-term photovoltaic power forecasting</article-title>. <source>Energy</source>. <year>2023</year>;<volume>279</volume>(<issue>2</issue>):<fpage>127961</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.energy.2023.127961</pub-id>.</mixed-citation></ref>
<ref id="ref-6"><label>[6]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Di Leo</surname> <given-names>P</given-names></string-name>, <string-name><surname>Ciocia</surname> <given-names>A</given-names></string-name>, <string-name><surname>Malgaroli</surname> <given-names>G</given-names></string-name>, <string-name><surname>Spertino</surname> <given-names>F</given-names></string-name></person-group>. <article-title>Advancements and challenges in photovoltaic power forecasting: a comprehensive review</article-title>. <source>Energies</source>. <year>2025</year>;<volume>18</volume>(<issue>8</issue>):<fpage>2108</fpage>. doi:<pub-id pub-id-type="doi">10.20944/preprints202502.2234.v1</pub-id>.</mixed-citation></ref>
<ref id="ref-7"><label>[7]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhang</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Ren</surname> <given-names>X</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>F</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Li</surname> <given-names>J</given-names></string-name></person-group>. <article-title>A deep learning-based dual-scale hybrid model for ultra-short-term photovoltaic power forecasting</article-title>. <source>Sustainability</source>. <year>2024</year>;<volume>16</volume>(<issue>17</issue>):<fpage>7340</fpage>. doi:<pub-id pub-id-type="doi">10.3390/su16177340</pub-id>.</mixed-citation></ref>
<ref id="ref-8"><label>[8]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Qiu</surname> <given-names>H</given-names></string-name>, <string-name><surname>Hu</surname> <given-names>R</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>J</given-names></string-name>, <string-name><surname>Yuan</surname> <given-names>Z</given-names></string-name></person-group>. <article-title>Short-term electricity load forecasting based on complete ensemble empirical mode decomposition with adaptive noise and improved sparrow search algorithm-convolutional neural network-bidirectional long short-term memory model</article-title>. <source>Mathematics</source>. <year>2025</year>;<volume>13</volume>(<issue>5</issue>):<fpage>813</fpage>. doi:<pub-id pub-id-type="doi">10.3390/math13050813</pub-id>.</mixed-citation></ref>
<ref id="ref-9"><label>[9]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Chen</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Li</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wu</surname> <given-names>B</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>F</given-names></string-name>, <string-name><surname>Deng</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Jiang</surname> <given-names>X</given-names></string-name>, <etal>et al</etal></person-group>. <article-title>Lightweight hotspot detection model fusing SE and ECA mechanisms</article-title>. <source>Micromachines</source>. <year>2024</year>;<volume>15</volume>(<issue>10</issue>):<fpage>1217</fpage>. doi:<pub-id pub-id-type="doi">10.3390/mi15101217</pub-id>; <pub-id pub-id-type="pmid">39459092</pub-id></mixed-citation></ref>
<ref id="ref-10"><label>[10]</label><mixed-citation publication-type="book"><person-group person-group-type="author"><string-name><surname>Ganesh</surname> <given-names>N</given-names></string-name>, <string-name><surname>Arindham</surname> <given-names>S</given-names></string-name>, <string-name><surname>Ramanan</surname> <given-names>AV</given-names></string-name></person-group>. <chapter-title>Comparative analysis of the Black-Winged Kite Algorithm (BWKA) with ant lion optimizer and grey wolf optimizer using benchmark functions for global optimization</chapter-title>. In: <source>2025 AI-Driven Smart Healthcare for Society 50</source>. <publisher-loc>New York, NY, USA</publisher-loc>: <publisher-name>IEEE</publisher-name>; <year>2025</year>. doi:<pub-id pub-id-type="doi">10.1109/ieeeconf64992.2025.10962946</pub-id>.</mixed-citation></ref>
<ref id="ref-11"><label>[11]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Liu</surname> <given-names>W</given-names></string-name>, <string-name><surname>Mao</surname> <given-names>Z</given-names></string-name></person-group>. <article-title>Short-term photovoltaic power forecasting with feature extraction and attention mechanisms</article-title>. <source>Renew Energy</source>. <year>2024</year>;<volume>226</volume>(<issue>22</issue>):<fpage>120437</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2024.120437</pub-id>.</mixed-citation></ref>
<ref id="ref-12"><label>[12]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Dai</surname> <given-names>G</given-names></string-name>, <string-name><surname>Luo</surname> <given-names>S</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>H</given-names></string-name>, <string-name><surname>Ji</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Efficient method for photovoltaic power generation forecasting based on state space modeling and BiTCN</article-title>. <source>Sensors</source>. <year>2024</year>;<volume>24</volume>(<issue>20</issue>):<fpage>6590</fpage>. doi:<pub-id pub-id-type="doi">10.3390/s24206590</pub-id>; <pub-id pub-id-type="pmid">39460071</pub-id></mixed-citation></ref>
<ref id="ref-13"><label>[13]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Ma</surname> <given-names>R</given-names></string-name>, <string-name><surname>Zhu</surname> <given-names>D</given-names></string-name>, <string-name><surname>Shuai</surname> <given-names>C</given-names></string-name></person-group>. <article-title>Photovoltaic power prediction based on feature fusion and DTCN-BiLSTM-TSA</article-title>. <source>Comput Technol Dev</source>. <year>2025</year>;<fpage>1</fpage>&#x2013;<lpage>10</lpage>. (In Chinese). doi:<pub-id pub-id-type="doi">10.20165/j.cnki.ISSN1673-629X.2025.0181</pub-id>.</mixed-citation></ref>
<ref id="ref-14"><label>[14]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhao</surname> <given-names>W</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Chen</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>Ultra-short-term source-load joint forecasting method based on group cross-gating mechanism and graph convolutional neural network</article-title>. <source>High Volt Eng</source>. <year>2025</year>;<fpage>1</fpage>&#x2013;<lpage>14</lpage>. (In Chinese). doi:<pub-id pub-id-type="doi">10.13336/j.1003-6520.hve.20250444</pub-id>.</mixed-citation></ref>
<ref id="ref-15"><label>[15]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Xiang</surname> <given-names>X</given-names></string-name>, <string-name><surname>Li</surname> <given-names>X</given-names></string-name>, <string-name><surname>Zhang</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Jiang</surname> <given-names>H</given-names></string-name></person-group>. <article-title>A short-term forecasting method for photovoltaic power generation based on the TCN-ECANet-GRU hybrid model</article-title>. <source>Sci Rep</source>. <year>2024</year>;<volume>14</volume>(<issue>1</issue>):<fpage>6744</fpage>. doi:<pub-id pub-id-type="doi">10.1038/s41598-024-56751-6</pub-id>; <pub-id pub-id-type="pmid">38509109</pub-id></mixed-citation></ref>
<ref id="ref-16"><label>[16]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Wang</surname> <given-names>L</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Li</surname> <given-names>T</given-names></string-name>, <string-name><surname>Xie</surname> <given-names>X</given-names></string-name>, <string-name><surname>Chang</surname> <given-names>C</given-names></string-name></person-group>. <article-title>Short-term PV power prediction based on optimized VMD and LSTM</article-title>. <source>IEEE Access</source>. <year>2020</year>;<volume>8</volume>:<fpage>165849</fpage>&#x2013;<lpage>62</lpage>. doi:<pub-id pub-id-type="doi">10.1109/ACCESS.2020.3022246</pub-id>.</mixed-citation></ref>
<ref id="ref-17"><label>[17]</label><mixed-citation publication-type="conf-proc"><person-group person-group-type="author"><string-name><surname>Xiao</surname> <given-names>F</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Cui</surname> <given-names>Q</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>X</given-names></string-name></person-group>. <article-title>EMD-KPCA-BO-BILSTM: a novel hybrid approach for photovoltaic power prediction</article-title>. In: <conf-name>Proceedings of the 2024 7th International Conference on Computer Information Science and Application Technology; 2024 Jul 12&#x2013;14</conf-name>; <publisher-loc>Hangzhou, China</publisher-loc>. p. <fpage>1367</fpage>&#x2013;<lpage>70</lpage>. doi:<pub-id pub-id-type="doi">10.1109/CISAT62382.2024.10695238</pub-id>.</mixed-citation></ref>
<ref id="ref-18"><label>[18]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Guo</surname> <given-names>F</given-names></string-name>, <string-name><surname>Yang</surname> <given-names>C</given-names></string-name>, <string-name><surname>Xia</surname> <given-names>D</given-names></string-name>, <string-name><surname>Xu</surname> <given-names>J</given-names></string-name></person-group>. <article-title>Short-term prediction of photovoltaic power based on improved CNN-LSTM and cascading learning</article-title>. <source>Energy Eng</source>. <year>2025</year>;<volume>122</volume>(<issue>5</issue>):<fpage>1975</fpage>&#x2013;<lpage>99</lpage>. doi:<pub-id pub-id-type="doi">10.32604/ee.2025.062035</pub-id>.</mixed-citation></ref>
<ref id="ref-19"><label>[19]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Liu</surname> <given-names>S</given-names></string-name>, <string-name><surname>Xu</surname> <given-names>T</given-names></string-name>, <string-name><surname>Du</surname> <given-names>X</given-names></string-name></person-group>. <article-title>A hybrid deep learning model based on parallel architecture TCN-LSTM with Savitzky-Golay filter for wind power prediction</article-title>. <source>Energy Convers Manag</source>. <year>2024</year>;<volume>302</volume>(<issue>3</issue>):<fpage>118</fpage>&#x2013;<lpage>22</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.enconman.2024.118122</pub-id>.</mixed-citation></ref>
<ref id="ref-20"><label>[20]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zhou</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Dai</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Leng</surname> <given-names>M</given-names></string-name></person-group>. <article-title>A photovoltaic power forecasting framework based on attention mechanism and parallel prediction architecture</article-title>. <source>Appl Energy</source>. <year>2025</year>;<volume>391</volume>(<issue>1</issue>):<fpage>125869</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.apenergy.2025.125869</pub-id>.</mixed-citation></ref>
<ref id="ref-21"><label>[21]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Fu</surname> <given-names>J</given-names></string-name>, <string-name><surname>Sun</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Li</surname> <given-names>Y</given-names></string-name></person-group>. <article-title>An investigation of photovoltaic power forecasting in buildings considering shadow effects: modeling approach and SHAP analysis</article-title>. <source>Renew Energy</source>. <year>2025</year>;<volume>245</volume>(<issue>3</issue>):<fpage>122821</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2025.122821</pub-id>.</mixed-citation></ref>
<ref id="ref-22"><label>[22]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Cao</surname> <given-names>R</given-names></string-name>, <string-name><surname>Tian</surname> <given-names>H</given-names></string-name>, <string-name><surname>Li</surname> <given-names>D</given-names></string-name>, <string-name><surname>Feng</surname> <given-names>M</given-names></string-name>, <string-name><surname>Fan</surname> <given-names>H</given-names></string-name></person-group>. <article-title>Short-term photovoltaic power generation prediction model based on improved data decomposition and time convolution network</article-title>. <source>Energies</source>. <year>2024</year>;<volume>17</volume>(<issue>1</issue>):<fpage>33</fpage>. doi:<pub-id pub-id-type="doi">10.3390/en17010033</pub-id>.</mixed-citation></ref>
<ref id="ref-23"><label>[23]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Zang</surname> <given-names>H</given-names></string-name>, <string-name><surname>Liu</surname> <given-names>L</given-names></string-name>, <string-name><surname>Sun</surname> <given-names>L</given-names></string-name>, <string-name><surname>Cheng</surname> <given-names>L</given-names></string-name>, <string-name><surname>Wei</surname> <given-names>Z</given-names></string-name>, <string-name><surname>Sun</surname> <given-names>G</given-names></string-name></person-group>. <article-title>Short-term global horizontal irradiance forecasting based on a hybrid CNN-LSTM model with spatiotemporal correlations</article-title>. <source>Renew Energy</source>. <year>2020</year>;<volume>160</volume>(<issue>2</issue>):<fpage>26</fpage>&#x2013;<lpage>41</lpage>. doi:<pub-id pub-id-type="doi">10.1016/j.renene.2020.05.150</pub-id>.</mixed-citation></ref>
<ref id="ref-24"><label>[24]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Yu</surname> <given-names>B</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>Y</given-names></string-name>, <string-name><surname>Wang</surname> <given-names>J</given-names></string-name></person-group>. <article-title>A hybrid model for short-term offshore wind power prediction combining Kepler optimization algorithm with variational mode decomposition and stochastic configuration networks</article-title>. <source>Int J Electr Power Energy Syst</source>. <year>2025</year>;<volume>168</volume>:<fpage>110703</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.ijepes.2025.110703</pub-id>.</mixed-citation></ref>
<ref id="ref-25"><label>[25]</label><mixed-citation publication-type="journal"><person-group person-group-type="author"><string-name><surname>Bakht</surname> <given-names>MP</given-names></string-name>, <string-name><surname>Mohd</surname> <given-names>MNH</given-names></string-name>, <string-name><surname>Ibrahim</surname> <given-names>BSKSMK</given-names></string-name>, <string-name><surname>Khan</surname> <given-names>N</given-names></string-name>, <string-name><surname>Sheikh</surname> <given-names>UU</given-names></string-name>, <string-name><surname>Rahman</surname> <given-names>AA-HA</given-names></string-name></person-group>. <article-title>Advanced automated machine learning framework for photovoltaic power output prediction using environmental parameters and SHAP interpretability</article-title>. <source>Results Eng</source>. <year>2025</year>;<volume>25</volume>(<issue>19</issue>):<fpage>103838</fpage>. doi:<pub-id pub-id-type="doi">10.1016/j.rineng.2024.103838</pub-id>.</mixed-citation></ref>
</ref-list>
</back></article>