<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE article PUBLIC "-//NLM//DTD Journal Publishing with OASIS Tables v3.0 20080202//EN" "journalpub-oasis3.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:oasis="http://docs.oasis-open.org/ns/oasis-exchange/table" xml:lang="en" dtd-version="3.0">
  <front>
    <journal-meta><journal-id journal-id-type="publisher">WES</journal-id><journal-title-group>
    <journal-title>Wind Energy Science</journal-title>
    <abbrev-journal-title abbrev-type="publisher">WES</abbrev-journal-title><abbrev-journal-title abbrev-type="nlm-ta">Wind Energ. Sci.</abbrev-journal-title>
  </journal-title-group><issn pub-type="epub">2366-7451</issn><publisher>
    <publisher-name>Copernicus Publications</publisher-name>
    <publisher-loc>Göttingen, Germany</publisher-loc>
  </publisher></journal-meta>
    <article-meta>
      <article-id pub-id-type="doi">10.5194/wes-6-539-2021</article-id><title-group><article-title>Feature selection techniques for modelling tower fatigue loads of a wind turbine with neural networks</article-title><alt-title>Feature selection techniques for modelling tower fatigue loads of a wind turbine</alt-title>
      </title-group><?xmltex \runningtitle{Feature selection techniques for modelling tower fatigue loads of a wind turbine}?><?xmltex \runningauthor{A.~Movsessian et al.}?>
      <contrib-group>
        <contrib contrib-type="author" corresp="no" rid="aff1">
          <name><surname>Movsessian</surname><given-names>Artur</given-names></name>
          
        </contrib>
        <contrib contrib-type="author" corresp="yes" rid="aff2">
          <name><surname>Schedat</surname><given-names>Marcel</given-names></name>
          <email>marcel.schedat@hs-flensburg.de</email>
        </contrib>
        <contrib contrib-type="author" corresp="no" rid="aff2">
          <name><surname>Faber</surname><given-names>Torsten</given-names></name>
          
        </contrib>
        <aff id="aff1"><label>1</label><institution>Institute for Infrastructure and Environment, School of Engineering, <?xmltex \hack{\break}?> University of Edinburgh, Edinburgh, United Kingdom</institution>
        </aff>
        <aff id="aff2"><label>2</label><institution>Wind Energy Technology Institute, University of Applied Sciences
Flensburg, 24943 Flensburg, Germany</institution>
        </aff>
      </contrib-group>
      <author-notes><corresp id="corr1">Marcel Schedat (marcel.schedat@hs-flensburg.de)</corresp></author-notes><pub-date><day>21</day><month>April</month><year>2021</year></pub-date>
      
      <volume>6</volume>
      <issue>2</issue>
      <fpage>539</fpage><lpage>554</lpage>
      <history>
        <date date-type="received"><day>17</day><month>June</month><year>2019</year></date>
           <date date-type="rev-request"><day>2</day><month>January</month><year>2020</year></date>
           <date date-type="rev-recd"><day>31</day><month>January</month><year>2021</year></date>
           <date date-type="accepted"><day>11</day><month>March</month><year>2021</year></date>
      </history>
      <permissions>
        <copyright-statement>Copyright: © 2021 Artur Movsessian et al.</copyright-statement>
        <copyright-year>2021</copyright-year>
      <license license-type="open-access"><license-p>This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this licence, visit <ext-link ext-link-type="uri" xlink:href="https://creativecommons.org/licenses/by/4.0/">https://creativecommons.org/licenses/by/4.0/</ext-link></license-p></license></permissions><self-uri xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021.html">This article is available from https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021.html</self-uri><self-uri xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021.pdf">The full text article is available as a PDF file from https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021.pdf</self-uri>
      <abstract><title>Abstract</title>
    <p id="d1e107">The rapid development of the wind industry in recent
decades and the establishment of this technology as a mature and
cost-competitive alternative have stressed the need for sophisticated
maintenance and monitoring methods. Structural health monitoring has risen
as a diagnosis strategy to detect damage or failures in wind turbine
structures with the help of measuring sensors. The amount of data recorded
by the structural health monitoring system can potentially be used to obtain knowledge about the condition and remaining lifetime of wind turbines. Machine learning techniques provide the opportunity to extract this information, thereby improving the reliability and cost-effectiveness of the wind industry as well. This paper demonstrates the modelling of damage-equivalent loads of the fore–aft bending moments of a wind turbine tower, highlighting the advantage of using the neighbourhood component analysis. This feature selection technique is compared to common dimension
reduction/feature selection techniques such as correlation analysis,
stepwise regression, or principal component analysis. For this study,
recordings of data were gathered during approximately 11 months,
preprocessed, and filtered by different operational modes, namely
standstill, partial load, and full load. The results indicate that all
feature selection techniques were able to maintain high accuracy when
trained with artificial neural networks. The neighbourhood component analysis yields the lowest number of features required while maintaining the interpretability with an absolute mean squared error of around 0.07 % for full load. Finally, the applicability of the resulting model for predicting loads in the wind turbine is tested by reducing the amount of data used for training by 50 %. This analysis shows that the predictive model can be used for continuous monitoring of loads in the tower of the wind turbine.</p>
  </abstract>
    </article-meta>
  </front>
<body>
      

<sec id="Ch1.S1" sec-type="intro">
  <label>1</label><title>Introduction</title>
      <p id="d1e119">Wind power is becoming the electricity-generating technology with the lowest
costs in several areas of the world (REN21, 2018). To ensure the
cost-competitiveness of this technology in the future, it is important to
seize the potential cost reductions related to operation and maintenance (O &amp; M). This includes improving monitoring solutions and life extension strategies. The possibility of monitoring with sensors has enabled the gathering and supervision of data regarding the condition of a structure to for example detect failures. In particular, structural health monitoring (SHM) in
wind turbines (WTs) allows monitoring the structural behaviour and stresses
of structures such as blades, towers, and foundations.</p>
      <p id="d1e122">While machine learning techniques are widely applied in industries such as
the automotive, information technology, and communication industry, the wind industry is starting to explore the suitability of these promising methods for their benefits. Although data-driven attempts have been made to estimate the loads acting on the turbine using available information from the supervisory control and data acquisition (SCADA) system, there is no consensus yet on the type of relationship existent between these data and actual load measurements. In the last years, the focus on this topic increased.<?pagebreak page540?> This section aims to review available scientific literature regarding modelling loads with existing SCADA data for WTs.</p>
      <p id="d1e125">SHM systems could be used to verify structural safety and determine the
remaining useful lifetime (RUL) of WTs (Schedat et al., 2016). Moreover, information gathered through SHM during the lifetime of WTs can potentially be used to identify structural weaknesses and feed this information back to the manufacturers, ultimately improving the design of new turbines (Ziegler et al., 2018). Another potential benefit of SHM is a decrease in maintenance costs. Typically, operation and maintenance costs (including both fixed and
variable costs) represent approximately 20 % to 25 % of the levelized cost of electricity (LCOE) (IRENA, 2015). SHM could reduce this
share by allowing the implementation and establishment of more efficient
maintenance practices such as predictive maintenance while enabling better
spare-part inventory management. Consequently, downtime is reduced and
production is increased.</p>
      <p id="d1e128">Currently, the assessment and evaluation of the structural condition of WTs
without a load measurement system can be challenging. Particularly the
estimation of fatigue loads can be difficult due to a lack of information
(Melsheimer et al., 2015; Schedat and Faber, 2017). Therefore, exploring the ways to mine data from SHM systems and extract valuable information becomes an interesting and high-demand field of research.</p>
      <p id="d1e132">Ziegler et al. (2018) performed a literature review and assessed the development of the lifetime extension market of onshore WTs. The alternative to extending the lifetime of a WT, as opposed to repowering or decommissioning, is appealing given the potential increase in returns on investments (ROIs); however, not much public research has been done on this matter. The authors contributed, then, by comparing updated load simulations and inspections for lifetime extension assessments in Germany, Spain, Denmark, and the United Kingdom. For lifetime extension to be a feasible alternative, the structural integrity of the turbine should not compromise the level of safety. In this regard, the survey performed by the authors determined that, beyond the use of SCADA systems, no short-term load measurements or monitoring are carried out in the countries surveyed (a few exceptions were identified in the UK, where load reassessment is performed). They found that most interviewees focus on practical assessments for cost reasons. Nevertheless, these practical inspections are no guarantee that the safety level can be maintained during the lifetime extension. The authors concluded that new operation and maintenance strategies and data-processing methodologies are necessary for lifetime extension purposes. In this regard, data-driven approaches may contribute to the cost reduction of lifetime extension assessments.</p>
      <p id="d1e135">In line with the findings of Ziegler et al. (2018), other authors have worked on the aforementioned data-driven approaches. Noppe et al. (2018), for example, reconstructed the thrust loads history of a WT based on both simulated and measured SCADA data. The data gathered corresponded to operational 1 s and 10 min. Moreover, the data are segregated into different operational modes. The selection of explanatory variables that the authors performed was based on a Pearson correlation analysis. The first 2 weeks of operational data were used to model the thrust loads using neural networks and validated by 1 year of data. The model has the following input features: wind speed, blade pitch angle, rotor speed, and generated power. The results of this study showed that the constructed model was able to estimate thrust loads with a relative error that does not exceed 15 %. The authors also concluded that the use of simulated data yielded slightly better results and that adjustments in the hyperparameters of the neural networks had no significant impact on the estimated thrust loads.</p>
      <p id="d1e138">Relatedly, Vera-Tudela and Kühn (2014) focused on the selection of variables to be used for fatigue load monitoring and attempted to define an optimum set of explanatory variables for that purpose. The authors identified 117 potential variables (13 statistics of nine SCADA signals) used in related scientific literature. Among them, the mean of generator speed, electrical power, and pitch angle have been the most commonly used. The authors decided to apply several feature selection methods to six sets of variables. The methods chosen included Spearman coefficients, stepwise regression, cross-correlation, hierarchical clustering, and principal components. To evaluate the outcomes of the feature selection methods a feed-forward neural network was employed. The authors concluded that principal components yielded the best set of variables; however, the resulting set lost expertise knowledge about the relation between the variables. In this sense, ranking the variables by their corresponding Spearman coefficients resulted in a fair compromise between the number of features required to monitor the damage-equivalent load for blade out of plane bending moment and the available expert knowledge.</p>
      <p id="d1e141">Smolka and Cheng (2013) examined the amount and type of data necessary to determine a fatigue estimator for the operational lifetime of a WT. The inputs for the neural network are selected through a correlation analysis applied to standard data statistics of available SCADA signals such as electrical power, generator speed, and pitch angle, among others. The authors concluded that the minimum training data sample size required is approximately half a month worth of measurements.</p>
      <p id="d1e144">Seifert et al. (2017), acknowledging the complexity and cost of handling extra measurements, assessed the minimum needed size of a training sample to predict fatigue loads using 10 min statistics of SCADA signals and neural networks. In a sense, Seifert et al.'s (2017) work is an extension or continuation of Vera-Tudela and Kühn's (2014) and Smolka et al.'s (2013). Seifert et al. (2017) tested different sample sizes varying between 1 d (i.e. 144 records) and 4 months (i.e. 4032 records) of measurements. They determined that a sample of 2016 records of 10 min statistics is sufficient to predict<?pagebreak page541?> flap-wise blade root bending moments of a WT independent of seasonal effects.</p>
      <p id="d1e147">The reconstruction or estimation of loads using statistics from SCADA data
was already presented and tested in the mid-2000s. Cosack and Kühn (2006) developed a stepwise regression model for estimating the rotor thrust. Despite the good results (i.e. deviations between the calculated and the estimated loads ranging from 5.4 % to 7.3 % in the worst case), the presented model was too complex and time-consuming with further restrictions. In a new development of the model, an estimation method for the corresponding target values (i.e. damage-equivalent loads and load magnitude distributions) used neural networks (Cosack, 2010; Cosack and Kühn, 2007).</p>
      <p id="d1e151">The performance of artificial neural networks depends on the quality of the
information provided to them; thus, the features used to train them are key
to obtaining high accuracy in the results with a parsimonious model. So far,
little research has been done regarding feature selection for modelling tower
fatigue loads. The available literature has focused on techniques such as
correlation analysis, principal component analysis (PCA), and stepwise
regression to select the best subset of information. This paper aims to
contribute to this body of literature by assessing the use of neighbourhood
component analysis (NCA) as a feature selection technique to extract
relevant information from SCADA data to train artificial neural networks and
model fatigue loads.</p>
      <p id="d1e154">The paper is organized as follows: Sect. 2 outlines the methodology followed in this study, Sect. 3 summarizes the results, and, finally, Sect. 4 presents the conclusions derived from the obtained results.</p>
</sec>
<sec id="Ch1.S2">
  <label>2</label><title>Data and methodology</title>
<sec id="Ch1.S2.SS1">
  <label>2.1</label><title>Wind turbine and SCADA data</title>
      <p id="d1e172">This paper seeks to model the tower fatigue loads of a commercial wind
turbine with a rated power of 2.05 MW, a hub height of 100 m, and a rotor
diameter of 92.5 m located in the northern part of Germany. The turbine is
used for research purposes by the Wind Energy Technology Institute at the
Flensburg University of Applied Sciences. For this study, the readings from
the SCADA and a load measurement system in the previously mentioned turbine
were recorded for around 11 months and collected in 10 min files. The tower
bottom bending moment is measured by strain gauges. These were installed and
wired as full bridge (Wheatstone) with temperature compensation. A
Wheatstone bridge is widely used in strain gauge applications because of its
ability to measure small deviations in resistance. The calibration factors
were determined from the results of the shunt resistor calibration, tower
geometry, and the thickness of the tower wall at the strain gauge positions
(provided by the turbine manufacturer). The offsets are determined through a
yaw round. The sensors used to extract features for the model are described
in Table 1 and were selected based on a literature review and consultations with an application engineer.</p>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T1" specific-use="star"><?xmltex \currentcnt{1}?><label>Table 1</label><caption><p id="d1e178">Description of SCADA sensors selected.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="4">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="center"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">Feature</oasis:entry>
         <oasis:entry colname="col2">Description</oasis:entry>
         <oasis:entry colname="col3">Unit of</oasis:entry>
         <oasis:entry colname="col4">Frequency</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">name</oasis:entry>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">measurement</oasis:entry>
         <oasis:entry colname="col4">[Hz]</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col4"><italic>Explanatory variables</italic></oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Omega</oasis:entry>
         <oasis:entry colname="col2">Rotational speed at the rotor</oasis:entry>
         <oasis:entry colname="col3">rpm</oasis:entry>
         <oasis:entry colname="col4">20</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">acc_x</oasis:entry>
         <oasis:entry colname="col2">Acceleration fore–aft (<inline-formula><mml:math id="M1" display="inline"><mml:mi>x</mml:mi></mml:math></inline-formula> direction)</oasis:entry>
         <oasis:entry colname="col3">mm s<inline-formula><mml:math id="M2" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">20</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">acc_y</oasis:entry>
         <oasis:entry colname="col2">Acceleration side–side (<inline-formula><mml:math id="M3" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> direction)</oasis:entry>
         <oasis:entry colname="col3">mm s<inline-formula><mml:math id="M4" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">2</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">20</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">v_wind</oasis:entry>
         <oasis:entry colname="col2">Wind speed</oasis:entry>
         <oasis:entry colname="col3">m s<inline-formula><mml:math id="M5" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">20</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">v_dir</oasis:entry>
         <oasis:entry colname="col2">Relative wind direction</oasis:entry>
         <oasis:entry colname="col3">degree</oasis:entry>
         <oasis:entry colname="col4">10</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">omega_gen</oasis:entry>
         <oasis:entry colname="col2">Rotational speed at the generator</oasis:entry>
         <oasis:entry colname="col3">rpm</oasis:entry>
         <oasis:entry colname="col4">20</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">air_density</oasis:entry>
         <oasis:entry colname="col2">Air density</oasis:entry>
         <oasis:entry colname="col3">kg m<inline-formula><mml:math id="M6" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">3</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">20</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Pitch</oasis:entry>
         <oasis:entry colname="col2">Pitch angle</oasis:entry>
         <oasis:entry colname="col3">degree</oasis:entry>
         <oasis:entry colname="col4">20</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">ACpow</oasis:entry>
         <oasis:entry colname="col2">Active power output</oasis:entry>
         <oasis:entry colname="col3">kW</oasis:entry>
         <oasis:entry colname="col4">20</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col4"><italic>Dependent variables</italic></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Bieg1_060_240</oasis:entry>
         <oasis:entry colname="col2">Bending moment derived from a gauge sensor located at 60 and</oasis:entry>
         <oasis:entry colname="col3">kNm</oasis:entry>
         <oasis:entry colname="col4">50</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">240<inline-formula><mml:math id="M7" display="inline"><mml:msup><mml:mi/><mml:mo>∘</mml:mo></mml:msup></mml:math></inline-formula> inside the tower bottom</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Bieg2_150_330</oasis:entry>
         <oasis:entry colname="col2">Bending moment derived from a gauge sensor located at 150 and</oasis:entry>
         <oasis:entry colname="col3">kNm</oasis:entry>
         <oasis:entry colname="col4">50</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">330<inline-formula><mml:math id="M8" display="inline"><mml:msup><mml:mi/><mml:mo>∘</mml:mo></mml:msup></mml:math></inline-formula> inside the tower bottom</oasis:entry>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d1e511">The strain gauge measurements at the turbine were transformed into a
resultant fore–aft tower bending moment, which was later used to calculate
the short-term damage-equivalent load (DEL) for every 10 min time series.
This calculation was performed through a rainflow counting algorithm, and,
later, the resulting load spectrum was further reduced to a constant load
range. After several equivalent cycles, this load range results in the same
equivalent accumulated damage as the spectrum of loads previously calculated
through the rainflow counting algorithm. The short-term DELs were calculated
following Eq. (1):
            <disp-formula id="Ch1.E1" content-type="numbered"><label>1</label><mml:math id="M9" display="block"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mn mathvariant="normal">0</mml:mn></mml:msub><mml:mo>=</mml:mo><mml:msup><mml:mfenced close="]" open="["><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:munder><mml:mo movablelimits="false">∑</mml:mo><mml:mi>i</mml:mi></mml:munder><mml:msub><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>⋅</mml:mo><mml:msubsup><mml:mi>S</mml:mi><mml:mi>i</mml:mi><mml:mi>m</mml:mi></mml:msubsup></mml:mrow><mml:mrow><mml:msub><mml:mi>n</mml:mi><mml:mi mathvariant="normal">eq</mml:mi></mml:msub></mml:mrow></mml:mfrac></mml:mstyle></mml:mfenced><mml:mstyle scriptlevel="+1"><mml:mfrac><mml:mn mathvariant="normal">1</mml:mn><mml:mi>m</mml:mi></mml:mfrac></mml:mstyle></mml:msup><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M10" display="inline"><mml:mrow><mml:msub><mml:mi>n</mml:mi><mml:mi mathvariant="normal">eq</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the equivalent number of cycles, <inline-formula><mml:math id="M11" display="inline"><mml:mrow><mml:msub><mml:mi>S</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the different load ranges, <inline-formula><mml:math id="M12" display="inline"><mml:mrow><mml:msub><mml:mi>n</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the corresponding cycle numbers, and <inline-formula><mml:math id="M13" display="inline"><mml:mi>m</mml:mi></mml:math></inline-formula> is given by the slope of the stress–cycle (<inline-formula><mml:math id="M14" display="inline"><mml:mrow><mml:mi>S</mml:mi><mml:mo>-</mml:mo><mml:mi>N</mml:mi></mml:mrow></mml:math></inline-formula>) curve of the material used for the tower (DNV/Risø, 2002). In this case, an inverse slope <inline-formula><mml:math id="M15" display="inline"><mml:mrow><mml:mi>m</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">3</mml:mn></mml:mrow></mml:math></inline-formula> for the steel tower and <inline-formula><mml:math id="M16" display="inline"><mml:mrow><mml:msub><mml:mi>n</mml:mi><mml:mi mathvariant="normal">eq</mml:mi></mml:msub><mml:mo>=</mml:mo><mml:mn mathvariant="normal">9.5064</mml:mn></mml:mrow></mml:math></inline-formula> for the 10 min time series (equivalent to 10<inline-formula><mml:math id="M17" display="inline"><mml:msup><mml:mi/><mml:mn mathvariant="normal">7</mml:mn></mml:msup></mml:math></inline-formula> cycles in 20 years) is assumed. The DELs were then used as the dependent variable of the model.</p>
</sec>
<sec id="Ch1.S2.SS2">
  <label>2.2</label><title>Methods</title>
      <p id="d1e662">The methodology followed in this study is graphically described in Fig. 1. First, the sensors which provide relevant information to model resultant fore–aft tower bending moments were selected (see Table 1). In the next step, the resulting records were analysed for missing data (e.g. zero values) and outliers as there were periods where the turbine was out of service or measurement failures with no registered data. Subsequently, affected records were removed. The process of outlier detection in this study was not automated but done through visual inspection of the descriptive statistics calculated from the time series for each operational mode. To determine the
relationship between the dependent and nine explanatory variables described
previously, each of the 10 min files was summarized by estimating the
following descriptive statistics for every explanatory variable: (i) minimum
value, (ii) maximum value, (iii) arithmetic mean, (iv) range, (v) mode,
(vi) standard deviation, and (vii) variance.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F1" specific-use="star"><?xmltex \currentcnt{1}?><?xmltex \def\figurename{Figure}?><label>Figure 1</label><caption><p id="d1e667">Main methodological steps.</p></caption>
          <?xmltex \igopts{width=341.433071pt}?><graphic xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021-f01.png"/>

        </fig>

      <p id="d1e676">In this way, the dataset consists of 63 features (i.e. explanatory variables, see Appendix A1). Excluding the time where no SCADA data were recorded, the total amount of data results in 36 266 (77.1 %) observations. This corresponds to a little over 8 months of useful information.</p>
      <p id="d1e680">Relationships between sensor signals and the estimated DELs can vary
depending on the operational mode of the wind turbine; e.g. the pitch angle
operates mainly during startup and full load. Methods with an underlying
linear<?pagebreak page542?> assumption, such as the correlation analysis, can lead to
misinterpretation of feature importance when observing the complete dataset.
Therefore, the data were filtered by operational modes, namely standstill,
partial, and full load to study the relevance of the different potential
features for these operational modes. Additionally, this filter enables the
construction of individual models to account for the particularities of each
operational mode, thereby improving the accuracy of the monitoring system.
The filtering was done employing the feature ACpow, which refers to
active power output. In this sense, standstill corresponds to 10 min mean
ACpow readings below or equal to 5 kW (0.25 % of nominal power),
partial load to readings higher than 5 kW and below or equal to 2000 kW
(97.56 % of nominal power), and full load to readings above 2000 kW.</p>
      <p id="d1e683">Research by Sharma and Saroha (2015) concluded that a reduction of dimensions possibly leads to a better performance of the mining algorithms while maintaining a good accuracy; therefore, it is important to eliminate potential redundant data and select the variables with the most predictive power for the model. For this, three different feature selection techniques and one dimension reduction technique were applied to the entire dataset and the datasets resulting from filtering the data by operational mode.</p>
      <p id="d1e686">These techniques include Pearson correlation, stepwise regression, NCA, and
PCA. Pearson correlation measures the linear correlation between two variables and maps the result to an interval between <inline-formula><mml:math id="M18" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula> and 1, where 0
indicates no linear relationship (Boslaugh and Watters, 2008). It can be calculated as per Eq. (2):
            <disp-formula id="Ch1.E2" content-type="numbered"><label>2</label><mml:math id="M19" display="block"><mml:mrow><mml:msub><mml:mi>r</mml:mi><mml:mrow><mml:mi>X</mml:mi><mml:mi>Y</mml:mi></mml:mrow></mml:msub><mml:mo>=</mml:mo><mml:mstyle displaystyle="true"><mml:mfrac style="display"><mml:mrow><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:mfenced close=")" open="("><mml:mrow><mml:msub><mml:mi>X</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>X</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover></mml:mrow></mml:mfenced><mml:mfenced open="(" close=")"><mml:mrow><mml:msub><mml:mi>Y</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>Y</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover></mml:mrow></mml:mfenced></mml:mrow><mml:mrow><mml:msqrt><mml:mrow><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:msup><mml:mfenced close=")" open="("><mml:mrow><mml:msub><mml:mi>X</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>X</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:msqrt><mml:msqrt><mml:mrow><mml:munderover><mml:mo movablelimits="false">∑</mml:mo><mml:mrow><mml:mi>i</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow><mml:mi>n</mml:mi></mml:munderover><mml:msup><mml:mfenced close=")" open="("><mml:mrow><mml:msub><mml:mi>Y</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>-</mml:mo><mml:mover accent="true"><mml:mi>Y</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:msqrt></mml:mrow></mml:mfrac></mml:mstyle><mml:mo>,</mml:mo></mml:mrow></mml:math></disp-formula>
          where <inline-formula><mml:math id="M20" display="inline"><mml:mi>n</mml:mi></mml:math></inline-formula> is the sample size, <inline-formula><mml:math id="M21" display="inline"><mml:mrow><mml:msub><mml:mi>X</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> and <inline-formula><mml:math id="M22" display="inline"><mml:mrow><mml:msub><mml:mi>Y</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> are the
observations with index <inline-formula><mml:math id="M23" display="inline"><mml:mi>i</mml:mi></mml:math></inline-formula>, and <inline-formula><mml:math id="M24" display="inline"><mml:mover accent="true"><mml:mi>X</mml:mi><mml:mo mathvariant="normal">‾</mml:mo></mml:mover></mml:math></inline-formula> represents the arithmetic mean of all samples. A threshold value of 0.5 was set to define the strength of the correlation. In this sense, a correlation coefficient between 0 and 0.49 is weak and a correlation coefficient between 0.5 and 0.95 is strong.
Correlation among all features of a particular sensor above 0.95 was
considered as a redundant sensor and, therefore, eliminated from further
analyses.</p>
      <p id="d1e870">Stepwise regression is an iterative method where features are added and
removed from a multilinear model based on their statistical significance in
the regression (Draper and Smith, 1998). The algorithm begins by constructing an initial model with one feature (forward selection) or all the features (backward selection) and continues adding or removing features by comparing the explanatory power of the larger or smaller models. At each step, the <inline-formula><mml:math id="M25" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> value of the corresponding <inline-formula><mml:math id="M26" display="inline"><mml:mi>F</mml:mi></mml:math></inline-formula> statistic is estimated and compared to a threshold <inline-formula><mml:math id="M27" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> value to decide which features are included in or excluded from the model. The <inline-formula><mml:math id="M28" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> value is used as a probability<?pagebreak page543?> measure to identify if a particular feature is significant for the outcome of the model. If a <inline-formula><mml:math id="M29" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> value is larger than 0.05, the null hypothesis is true and the feature is selected for further modelling. The algorithm repeats this process until the added feature does not improve the model or until all features that do not improve the explanatory power of the model are removed. This method is considered to be locally optimal yet not globally optimal given that the selection of features included in the initial model is subjective and there is no guarantee that a different initial model will not lead to a better fit.</p>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T2" specific-use="star"><?xmltex \currentcnt{2}?><label>Table 2</label><caption><p id="d1e911">Comparison of strengths and limitations of methods used.</p></caption><oasis:table frame="topbot"><?xmltex \begin{scaleboxenv}{.92}[.92]?><oasis:tgroup cols="4">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Method</oasis:entry>
         <oasis:entry colname="col2">Description</oasis:entry>
         <oasis:entry colname="col3">Strengths</oasis:entry>
         <oasis:entry colname="col4">Limitations</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">Pearson</oasis:entry>
         <oasis:entry colname="col2">Measures of the strength of a linear</oasis:entry>
         <oasis:entry colname="col3">– Measures the degree and direction of</oasis:entry>
         <oasis:entry colname="col4">– Supervised</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">correlation</oasis:entry>
         <oasis:entry colname="col2">association between two variables</oasis:entry>
         <oasis:entry colname="col3">correlation between the variables</oasis:entry>
         <oasis:entry colname="col4">– Affected by extreme values in the data</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">through a coefficient</oasis:entry>
         <oasis:entry colname="col4">– Assumes a linear relationship between</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">– Widely used and easily interpretable</oasis:entry>
         <oasis:entry colname="col4">variables</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">– Computationally inexpensive</oasis:entry>
         <oasis:entry colname="col4">– Prone to misinterpretation in case of</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">homogeneous data</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Principal</oasis:entry>
         <oasis:entry colname="col2">Dimensionality reduction technique</oasis:entry>
         <oasis:entry colname="col3">– Unsupervised</oasis:entry>
         <oasis:entry colname="col4">– Assumes that the principal components</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">component</oasis:entry>
         <oasis:entry colname="col2">through linear transformation</oasis:entry>
         <oasis:entry colname="col3">– Well-established technique</oasis:entry>
         <oasis:entry colname="col4">are a linear combination of the features</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">analysis</oasis:entry>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">– Reduces overfitting</oasis:entry>
         <oasis:entry colname="col4">– Low interpretability</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">– Reduces redundancy of a feature set</oasis:entry>
         <oasis:entry colname="col4">– Uses variance as the measure of</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">given the orthogonal components</oasis:entry>
         <oasis:entry colname="col4">importance</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">– Prone to loss of information as high-</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">variance axes are treated as principal</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">components, while low-variance axes are</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">treated as noise</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Stepwise</oasis:entry>
         <oasis:entry colname="col2">Step-by-step iterative construction of</oasis:entry>
         <oasis:entry colname="col3">– Able to manage large amounts of</oasis:entry>
         <oasis:entry colname="col4">– Supervised</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">regression</oasis:entry>
         <oasis:entry colname="col2">a regression model that involves the</oasis:entry>
         <oasis:entry colname="col3">potential predictors</oasis:entry>
         <oasis:entry colname="col4">– Sensitive to collinearity</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">selection of independent variables to be</oasis:entry>
         <oasis:entry colname="col3">– Easily interpretable and tractable</oasis:entry>
         <oasis:entry colname="col4">– Highly dependent on the order in</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">used in a final model</oasis:entry>
         <oasis:entry colname="col3">– Computationally inexpensive</oasis:entry>
         <oasis:entry colname="col4">which features are added to or removed</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4">from the model</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">Neighbourhood</oasis:entry>
         <oasis:entry colname="col2">Feature weighting approach which</oasis:entry>
         <oasis:entry colname="col3">– Rarely leads to overfitting due to cross-</oasis:entry>
         <oasis:entry colname="col4">– Supervised</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">component</oasis:entry>
         <oasis:entry colname="col2">optimizes the nearest-neighbour</oasis:entry>
         <oasis:entry colname="col3">validation</oasis:entry>
         <oasis:entry colname="col4">– Usually necessary to select a value of</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">analysis</oasis:entry>
         <oasis:entry colname="col2">classifier performance to address the</oasis:entry>
         <oasis:entry colname="col3">– Non-parametric</oasis:entry>
         <oasis:entry colname="col4">the regularization parameter</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">issue of high dimensionality of the</oasis:entry>
         <oasis:entry colname="col3">– Performance does not degrade as</oasis:entry>
         <oasis:entry colname="col4">– Sensitive to the choice of loss function</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">training data</oasis:entry>
         <oasis:entry colname="col3">training data size increases</oasis:entry>
         <oasis:entry colname="col4"/>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup><?xmltex \end{scaleboxenv}?></oasis:table></table-wrap>

      <p id="d1e1295">NCA is a non-parametric classification model used for metric learning and
linear dimensionality reduction (Goldberger et al., 2004). It is based on a modelling technique known as <inline-formula><mml:math id="M30" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula>-nearest neighbours (<inline-formula><mml:math id="M31" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula>-NNs), which is a supervised learning algorithm used for classification or regressions (Han and Kamber, 2011; Parsian, 2015). In its simplest form, the <inline-formula><mml:math id="M32" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula>-NN approach looks for the closest <inline-formula><mml:math id="M33" display="inline"><mml:mrow><mml:mi>k</mml:mi><mml:mo>=</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:math></inline-formula> observation to the query observation <inline-formula><mml:math id="M34" display="inline"><mml:mrow><mml:msub><mml:mi>x</mml:mi><mml:mi mathvariant="normal">q</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> within the training dataset by measuring the distances to the neighbouring data points and selecting the one that satisfies the min<inline-formula><mml:math id="M35" display="inline"><mml:msub><mml:mi/><mml:mi>i</mml:mi></mml:msub></mml:math></inline-formula> distance (<inline-formula><mml:math id="M36" display="inline"><mml:mrow><mml:msub><mml:mi>x</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>, <inline-formula><mml:math id="M37" display="inline"><mml:mrow><mml:msub><mml:mi>x</mml:mi><mml:mi mathvariant="normal">q</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula>). The output is then predicted by applying a function <inline-formula><mml:math id="M38" display="inline"><mml:mrow><mml:mi>y</mml:mi><mml:mo>=</mml:mo><mml:mi>h</mml:mi><mml:mo>(</mml:mo><mml:mi>x</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math></inline-formula>, where <inline-formula><mml:math id="M39" display="inline"><mml:mi>h</mml:mi></mml:math></inline-formula> is the trained <inline-formula><mml:math id="M40" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula>-NN prediction function. In a multidimensional dataset, the <inline-formula><mml:math id="M41" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula>-NN approach requires us to differentiate between the relevance of the explanatory variables for the intended output. For the learning process, different weights can be assigned to the features of the model using the scales Euclidian distance estimation detailed in Eq. (3):
            <disp-formula id="Ch1.E3" content-type="numbered"><label>3</label><mml:math id="M42" display="block"><mml:mtable class="split" columnspacing="1em" rowspacing="0.2ex" displaystyle="true" columnalign="right left"><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mi mathvariant="normal">Distance</mml:mi><mml:mfenced open="(" close=")"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>,</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mi mathvariant="normal">q</mml:mi></mml:msub></mml:mrow></mml:mfenced></mml:mrow></mml:mtd></mml:mtr><mml:mtr><mml:mtd/><mml:mtd><mml:mrow><mml:mo>=</mml:mo><mml:msqrt><mml:mrow><mml:msub><mml:mi>a</mml:mi><mml:mn mathvariant="normal">1</mml:mn></mml:msub><mml:msup><mml:mfenced close=")" open="("><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>[</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>]</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mi mathvariant="normal">q</mml:mi></mml:msub><mml:mo>[</mml:mo><mml:mn mathvariant="normal">1</mml:mn><mml:mo>]</mml:mo></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup><mml:mo>+</mml:mo><mml:mspace linebreak="nobreak" width="0.125em"/><mml:mi mathvariant="normal">…</mml:mi><mml:mspace width="0.125em" linebreak="nobreak"/><mml:mo>+</mml:mo><mml:msub><mml:mi>a</mml:mi><mml:mi>d</mml:mi></mml:msub><mml:msup><mml:mfenced close=")" open="("><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mi>i</mml:mi></mml:msub><mml:mo>[</mml:mo><mml:mi>d</mml:mi><mml:mo>]</mml:mo><mml:mo>-</mml:mo><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mi mathvariant="normal">q</mml:mi></mml:msub><mml:mo>[</mml:mo><mml:mi>d</mml:mi><mml:mo>]</mml:mo></mml:mrow></mml:mfenced><mml:mn mathvariant="normal">2</mml:mn></mml:msup></mml:mrow></mml:msqrt><mml:mo>,</mml:mo></mml:mrow></mml:mtd></mml:mtr></mml:mtable></mml:math></disp-formula>
          where <inline-formula><mml:math id="M43" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mi>i</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is a vector of input values, <inline-formula><mml:math id="M44" display="inline"><mml:mrow><mml:msub><mml:mi mathvariant="bold-italic">x</mml:mi><mml:mi mathvariant="normal">q</mml:mi></mml:msub></mml:mrow></mml:math></inline-formula> is the query vector, <inline-formula><mml:math id="M45" display="inline"><mml:mi>a</mml:mi></mml:math></inline-formula> is the scaling number that defines the relevance of each explanatory value, and <inline-formula><mml:math id="M46" display="inline"><mml:mi>d</mml:mi></mml:math></inline-formula> is the total number of features. The weights are assigned randomly and then adjusted by<?pagebreak page544?> solving a minimization problem (minimizing the prediction error). Other distance metrics can be used, namely Mahalanobis, Manhattan, rank-based, correlation-based, and Hamming (Hazewinkel, 1994).</p>
      <p id="d1e1562">Lastly, PCA is a statistical method to reduce the dimensions of a dataset
that presumably contains a large number of irrelevant features while retaining the maximum information possible (Vidal et al., 1987). This is done by transforming the original set of multidimensional data into a new set referred to as components employing eigenvectors and eigenvalues. A pair of eigenvector and eigenvalue indicates respectively the direction and how much variance there is in the data in that direction. The eigenvector with the highest eigenvalue is the first principal component. In this sense, the transformation allows reducing the dimensions of the dataset to a few components with relatively low loss of information.</p>
      <p id="d1e1565">Table 2 summarizes the strengths and limitations of all the methods considered for feature selection and dimension reduction in this study.</p>
      <p id="d1e1568">In this way, 16 neural networks (NNs) were developed for four datasets (all
operational modes, standstill, partial load, and full load), three feature
selection techniques, and one dimension reduction technique. Each dataset is
divided into training, validation, and testing subsets. For this, 70 % of
a dataset is randomly chosen and used by NNs for training the model, 15 %
is used for testing, and 15 % is used for validation; i.e. this subset is used
to adjust the model through the mean squared error (MSE). This adjustment
stops when the MSE does not significantly improve. The validation subset is
used as a measure to avoid overfitting the NNs and generalize the prediction
model. After that, the model can be applied to new datasets. The test subset
does not affect training or validation; it is only used to measure the
performance of the trained NNs.</p>
      <p id="d1e1571">The NN models used in this paper are trained with the Neural Network Toolbox
from MATLAB (MathWorks, 2019). The standard settings consist of a two-layer feed-forward NN with a sigmoid transfer function in the hidden layer and a linear transfer function in the output layer. The NN was initially set to 25 neurons in the hidden layer and 1 neuron in the output layer as per Lind (2017). However, we tested different configurations and found that the results remain consistent. Therefore, the number of neurons in the hidden layer is set to 10 neurons and 1 neuron in the output layer. This simple configuration reduces the computational complexity and time while enabling the modelling of non-linear relationships. The Levenberg–Marquardt algorithm is selected as the training algorithm. The results from the 16 models were compared to derive conclusions about the relationship between operational data and tower loads acting on WTs.</p>
      <?pagebreak page545?><p id="d1e1574">Finally, the predictive capability of the model for continuous monitoring is
tested. For this purpose, the NN is trained using only the first 50 % of
the data gathered during partial load. The prediction error is estimated to
determine the accuracy of the model.</p>
</sec>
</sec>
<sec id="Ch1.S3">
  <label>3</label><title>Results and discussion</title>
      <p id="d1e1586">This section describes the sensors identified by different methods as potential predictors of tower fatigue loads of the WT and presents the
results of using a predictive model for continuous monitoring.</p>
<sec id="Ch1.S3.SS1">
  <label>3.1</label><title>Feature selection and dimension reduction</title>
      <p id="d1e1596">Before building a model to predict the desired output, it is important to
define which variables could act as predictors. The feature selection
methods described in Sect. 2.2 were applied to four different datasets: (i) an 8-month dataset, (ii) a full-load dataset, (iii) a partial load dataset, and (iv) a standstill dataset. The results of the feature selection methods are described below. For detailed information on selected features for each operational mode, the reader is referred to Appendix A1.</p>
<sec id="Ch1.S3.SS1.SSS1">
  <label>3.1.1</label><title>Complete dataset: 8-month data</title>
      <p id="d1e1606">A Pearson correlation analysis was applied to the pre-selected features for
predicting the DELs of the fore–aft bending moment of the tower. Before
using the features with the strongest correlation in a model, it is
necessary to check for collinearity, i.e. the correlation between independent variables. A high correlation between two explanatory variables
suggests that these variables should be excluded from the model to avoid
collinearity issues. From this analysis, it was determined that rotational
speed at the rotor should be excluded from the model and only rotational
speed at the generator should be included given that these two features are
a factor away from each other and, thus, may add bias to the model due to
redundancy. This resulted in 56 features from the initial 63 (see Sect. 2.2).</p>
      <p id="d1e1609">The correlation analysis shows that only 27 of the 56 features are strongly
correlated and should be used as independent variables in the model. The
accelerations in both directions (i.e. <inline-formula><mml:math id="M47" display="inline"><mml:mi>x</mml:mi></mml:math></inline-formula> and <inline-formula><mml:math id="M48" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> axis) are highly correlated with the DELs. The standard deviation of the acceleration in the <inline-formula><mml:math id="M49" display="inline"><mml:mi>x</mml:mi></mml:math></inline-formula> direction presents the highest correlation with a coefficient of 0.97, depicting an almost linear relationship between this feature and the dependent variable. Additionally, several statistics of wind speed and power output are also highly correlated with the DELs. As an example, the bilinear relationship between the mean wind speed and the calculated DEL (Fig. 2) is graphically shown over the complete measurement campaign and for all operational modes in Fig. 2c below.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F2" specific-use="star"><?xmltex \currentcnt{2}?><?xmltex \def\figurename{Figure}?><label>Figure 2</label><caption><p id="d1e1635">Time series corresponding to <bold>(a)</bold> normalized measured DELs, <bold>(b)</bold> mean wind speed, and <bold>(c)</bold> scatterplot of both mean wind speed and measured DELs with a correlation coefficient of 0.74 when data are not filtered by operational modes.</p></caption>
            <?xmltex \igopts{width=455.244094pt}?><graphic xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021-f02.png"/>

          </fig>

      <p id="d1e1654"><?xmltex \hack{\newpage}?>These results suggest that these features fluctuate together with the
dependent variable, and they could potentially be used to build a model that
can estimate the DELs of the fore–aft bending moments of the tower without
installing strain gauge sensors.</p>
      <p id="d1e1658">Furthermore, the results show that air density and relative wind direction,
along with all their corresponding descriptive statistics, have a very low
correlation with the DELs and should be, therefore, disregarded in the model
based on this feature selection technique. The mean wind direction, in
particular, has a correlation coefficient close to zero, indicating an
insignificant linear relationship with the DELs. Many of the remaining
variables are highly correlated with each other; nevertheless, they add
potentially valuable information to the model.</p>
      <p id="d1e1661">An alternative would be the use of a method such as PCA which could
contribute to avoiding multicollinearity by transforming the data while
maintaining the information contained in them. After using PCA on the remaining 27 features, 12 principal components are identified and can be used to build a model. These data were transformed as explained in Sect. 2.2 estimating the variance explained by each of the first components as seen in Fig. 3. It can be observed that 99 % of the information contained in the features is now stored in the first 12 components. The remaining 15 components explain less than 1 % of the cumulative variance. A model could be built using the first 12 components, and the results should be almost as accurate as using the 27 features selected after the correlation analysis. The biggest disadvantage with this method is that, given the transformation of the data, it is no longer possible to interpret it. The results, nevertheless, remain interpretable and are free of the influence of multicollinearity.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F3"><?xmltex \currentcnt{3}?><?xmltex \def\figurename{Figure}?><label>Figure 3</label><caption><p id="d1e1666">Cumulative variance explained by principal components.</p></caption>
            <?xmltex \igopts{width=236.157874pt}?><graphic xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021-f03.png"/>

          </fig>

      <p id="d1e1675">Alternatively, an interactive stepwise regression was built using the
pre-selected 56 features. Different combinations of features were tested to
identify those that should not be included in the model given that they do
not contribute to the predictive power or result in an increase in the error
of the model. The features with a <inline-formula><mml:math id="M50" display="inline"><mml:mi>p</mml:mi></mml:math></inline-formula> value above 0.1 should be omitted from
the model. The results suggest excluding a total of 30 variables from the
regression model. Among these the minimum, maximum, mean, and
range of the rotational speed at the generator; most descriptive statistics
of air density, except for the standard deviation; and range, mode, and
standard deviation of the acceleration in the <inline-formula><mml:math id="M51" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> direction can be found .</p>
      <p id="d1e1693">It is important to highlight that the variable that represents the range of
the acceleration sensor in the <inline-formula><mml:math id="M52" display="inline"><mml:mi>x</mml:mi></mml:math></inline-formula> direction was identified as statistically
insignificant despite its high correlation with DELs. As mentioned earlier,
the possible models explored with the stepwise regression are limited. The
algorithm builds different models from the 56 features depending on the
order in which these features are added to (in the case of forward
selection) or removed from (in the case of backward elimination) the models.
In this sense, the range of<?pagebreak page546?> the sensor acc_x and the variance of acc_x, which are correlated with a factor of 0.90, could be considered mutually exclusive. The decision as to which of
these variables to include in the model would depend solely on which variable is added or removed first in the stepwise regression. In this case, the algorithm suggests excluding the range of acc_x, a highly correlated feature, based on the search for the local minimum instead of evaluating all combinations. Ultimately, this method identified 33 features as statistically significant, and, thus, these are included in the model.</p>
      <p id="d1e1703">The last feature selection method, NCA, was applied as well to the dataset
with 56 features. A total of 13 features were identified by this method as relevant for
the prediction of DELs, a significantly smaller number than those selected
by applying the correlation analysis and stepwise regression.</p>
      <p id="d1e1706">To summarize, mean values and standard deviations are the descriptive
statistics that can best describe the data according to the three feature
selection methods applied. Features selected by all three methods include
wind speed, acceleration, and power output.</p><?xmltex \hack{\newpage}?>
</sec>
<sec id="Ch1.S3.SS1.SSS2">
  <label>3.1.2</label><title>Data filtered by operational modes</title>
      <p id="d1e1718">The dataset was divided by operational modes into 10 min samples with 7825 (21.6 %) of the measurements corresponding to standstill, 25 604 (70.6 %) to partial load, and 2837 (7.8 %) to full load. Each dataset contains 56 features and the corresponding DELs.</p>
      <p id="d1e1721">The first feature selection method used in these new datasets is again the
Pearson correlation analysis. The results show that most of the descriptive
statistics for wind speed and acceleration are highly correlated with the
DELs in all operational modes. The first differences appear in the generator
speed. As expected, the generator speed is not relevant during standstill
since the rotor is not moving or is only idling. The mean generator speed is
not as relevant in full load as it is in partial load. During full load, the
rotational speed is around a specified number and must be kept as stable as
possible. Therefore, the mean rotational speed does not change significantly
during full load. During partial load, the mean rotational speed is within a
higher range; therefore, it has a higher correlation with the corresponding DELs.</p>
      <p id="d1e1724">During full load, the standard deviation and variance of the rotational
speed are highly correlated with the DELs. The standard deviation explains
how the values differ from the mean; thus, conclusions about the dynamics of
the turbine can be derived based on these spreads. For example, fluctuations
of the rotational speed during full load have a significant effect on the
tower movement, which explains the high correlation between the standard
deviations of the rotational speed with the DELs. Additionally, several
descriptive statistics of the pitch angle are correlated with the DEL
exhibiting correlation coefficients greater than 0.5. This correlation is
only significant during full load. The pitch angle is held at the most
efficient lift-to-drag ratio during the partial load, and, therefore, not
many variations can be observed during standstill and partial load. During
full load, the<?pagebreak page547?> turbine pitches continuously to keep the rotational speed
nearly constant. For each operational mode, PCA was performed to account for
potential collinearity in the feature set. This was done consistently with
an explained variance of 99 % remaining.</p>
      <p id="d1e1727">The second feature selection method applied is stepwise regression. The
results are not consistent with the correlation analysis. Air density and
wind direction did not correlate with the DELs; however, they were chosen by
the stepwise regression during standstill and partial load as potential
predictors. Also, the pitch was chosen as a significant variable during
standstill, even though the turbine is not pitching. In general, the modeller
needs to be careful when interpreting the results from a stepwise regression
as described in Sect. 2.2.</p>
      <p id="d1e1731">NCA was applied to the three datasets. Examining the results, one
significant difference to the correlation analysis is that the wind
direction was identified as significant during standstill and partial load
by the NCA, whereas the correlation analysis showed no correlation of these
features with the output during any operational mode. Furthermore, the range
of the pitch angle was identified as relevant during partial load, which was
not the case in the correlation analysis. Mean acceleration in the
<inline-formula><mml:math id="M53" display="inline"><mml:mi>x</mml:mi></mml:math></inline-formula> direction and the standard deviation were the only two features identified as significant by the NCA in all three operational modes.</p>
</sec>
</sec>
<sec id="Ch1.S3.SS2">
  <label>3.2</label><title>Modelling fatigue loads</title>
      <p id="d1e1750">Once the features with predictive power have been identified for the
different datasets, NNs are built to evaluate the predictions. The outcomes
of these models are described hereafter.</p>
<sec id="Ch1.S3.SS2.SSS1">
  <label>3.2.1</label><title>Eight-month data with all operational modes</title>
      <p id="d1e1760">The first analysis is conducted on 8-month data without filtering by
operational modes. To illustrate the results, features used for training the
NN is selected
by using the correlation analysis and can be examined in Appendix A1. The data are randomly split into training, testing, and validation sets. The regression model of the NN in Fig. 4 shows a similar <inline-formula><mml:math id="M54" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula> value in all regressions, indicating that there is no overfitting in the model.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F4"><?xmltex \currentcnt{4}?><?xmltex \def\figurename{Figure}?><label>Figure 4</label><caption><p id="d1e1772">Linear regressions between the normalized neural network prediction and the measured DELs. The NN is built using the complete dataset (i.e. 8 months) and 27 features selected after the Pearson correlation analysis.</p></caption>
            <?xmltex \igopts{width=236.157874pt}?><graphic xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021-f04.png"/>

          </fig>

      <p id="d1e1781">The <inline-formula><mml:math id="M55" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula> value for the complete dataset is 0.99564, which can be confirmed by
observing the top plot in Fig. 5, where the predicted DELs overlap with the measured DELs with a mean prediction error of 2.22 % (see Table 3). Nevertheless, the prediction error, shown in the bottom plot in Fig. 5, can be as high as 685.79 %. Values close to zero can have a significant impact in terms of the mean error in percent due to a high ratio of prediction and measured DELs.</p>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T3" specific-use="star"><?xmltex \currentcnt{3}?><label>Table 3</label><caption><p id="d1e1795">Summary of results from neural networks for the complete year
considering all operational modes.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="10">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="center"/>
     <oasis:colspec colnum="4" colname="col4" align="center"/>
     <oasis:colspec colnum="5" colname="col5" align="center"/>
     <oasis:colspec colnum="6" colname="col6" align="center"/>
     <oasis:colspec colnum="7" colname="col7" align="center"/>
     <oasis:colspec colnum="8" colname="col8" align="right"/>
     <oasis:colspec colnum="9" colname="col9" align="center"/>
     <oasis:colspec colnum="10" colname="col10" align="center"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">No.</oasis:entry>
         <oasis:entry colname="col2">Feature</oasis:entry>
         <oasis:entry colname="col3">No. of</oasis:entry>
         <oasis:entry rowsep="1" namest="col4" nameend="col6"><inline-formula><mml:math id="M56" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col7">Mean</oasis:entry>
         <oasis:entry colname="col8">SD</oasis:entry>
         <oasis:entry colname="col9">Max</oasis:entry>
         <oasis:entry colname="col10">Mean</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">subset</oasis:entry>
         <oasis:entry colname="col3">features</oasis:entry>
         <oasis:entry colname="col4">Training</oasis:entry>
         <oasis:entry colname="col5">Validation</oasis:entry>
         <oasis:entry colname="col6">Test</oasis:entry>
         <oasis:entry colname="col7">error</oasis:entry>
         <oasis:entry colname="col8">[%]</oasis:entry>
         <oasis:entry colname="col9">abs.</oasis:entry>
         <oasis:entry colname="col10">abs.</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">(% of</oasis:entry>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
         <oasis:entry colname="col6"/>
         <oasis:entry colname="col7">[%]</oasis:entry>
         <oasis:entry colname="col8"/>
         <oasis:entry colname="col9">error</oasis:entry>
         <oasis:entry colname="col10">error</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">total)</oasis:entry>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
         <oasis:entry colname="col6"/>
         <oasis:entry colname="col7"/>
         <oasis:entry colname="col8"/>
         <oasis:entry colname="col9">[%]</oasis:entry>
         <oasis:entry colname="col10">[kNm]</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">1</oasis:entry>
         <oasis:entry colname="col2">Correlation</oasis:entry>
         <oasis:entry colname="col3">27</oasis:entry>
         <oasis:entry colname="col4">0.99576</oasis:entry>
         <oasis:entry colname="col5">0.99535</oasis:entry>
         <oasis:entry colname="col6">0.99536</oasis:entry>
         <oasis:entry colname="col7">2.22</oasis:entry>
         <oasis:entry colname="col8">22.85</oasis:entry>
         <oasis:entry colname="col9">685.79</oasis:entry>
         <oasis:entry colname="col10">237</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">2</oasis:entry>
         <oasis:entry colname="col2">Correlation and PCA</oasis:entry>
         <oasis:entry colname="col3">12</oasis:entry>
         <oasis:entry colname="col4">0.99393</oasis:entry>
         <oasis:entry colname="col5">0.99400</oasis:entry>
         <oasis:entry colname="col6">0.99365</oasis:entry>
         <oasis:entry colname="col7">2.94</oasis:entry>
         <oasis:entry colname="col8">18.93</oasis:entry>
         <oasis:entry colname="col9">410.33</oasis:entry>
         <oasis:entry colname="col10">276</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">3</oasis:entry>
         <oasis:entry colname="col2">Stepwise</oasis:entry>
         <oasis:entry colname="col3">33</oasis:entry>
         <oasis:entry colname="col4">0.99555</oasis:entry>
         <oasis:entry colname="col5">0.99523</oasis:entry>
         <oasis:entry colname="col6">0.99476</oasis:entry>
         <oasis:entry colname="col7">2.24</oasis:entry>
         <oasis:entry colname="col8">7.23</oasis:entry>
         <oasis:entry colname="col9">671.48</oasis:entry>
         <oasis:entry colname="col10">224</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">4</oasis:entry>
         <oasis:entry colname="col2">NCA</oasis:entry>
         <oasis:entry colname="col3">13</oasis:entry>
         <oasis:entry colname="col4">0.99581</oasis:entry>
         <oasis:entry colname="col5">0.99593</oasis:entry>
         <oasis:entry colname="col6">0.99568</oasis:entry>
         <oasis:entry colname="col7">2.07</oasis:entry>
         <oasis:entry colname="col8">26.09</oasis:entry>
         <oasis:entry colname="col9">525.20</oasis:entry>
         <oasis:entry colname="col10">228</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <?xmltex \floatpos{t}?><fig id="Ch1.F5" specific-use="star"><?xmltex \currentcnt{5}?><?xmltex \def\figurename{Figure}?><label>Figure 5</label><caption><p id="d1e2090">NN prediction. Plot <bold>(a)</bold> presents the normalized predicted and the measured DELs by the NN. Plot <bold>(b)</bold> is the prediction error.</p></caption>
            <?xmltex \igopts{width=341.433071pt}?><graphic xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021-f05.png"/>

          </fig>

      <p id="d1e2105">Plotting the error against the wind speed for all operational modes in Fig. 6, it can be concluded that the mean prediction error is significantly higher at low wind speeds. If the wind speed is below approximately 3 m s<inline-formula><mml:math id="M57" display="inline"><mml:msup><mml:mi/><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">1</mml:mn></mml:mrow></mml:msup></mml:math></inline-formula>, the WT is at a standstill.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F6"><?xmltex \currentcnt{6}?><?xmltex \def\figurename{Figure}?><label>Figure 6</label><caption><p id="d1e2122">Wind speed against prediction error.</p></caption>
            <?xmltex \igopts{width=236.157874pt}?><graphic xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021-f06.png"/>

          </fig>

      <p id="d1e2131">Comparing the results in Table 3, it can be seen that the model using
features selected by NCA results in the lowest mean error. Overall, these
results are significantly higher with the mean error ranging from 2.07 % to
2.94 % than those obtained by Vera-Tudela and Kühn (2014) with the mean error ranging from 0.01 % to 0.22 %. This can be explained by the high prediction error during low wind speeds seen in Fig. 6. However, our results indicate that it is possible to significantly reduce the number of features used in the model by applying NCA while maintaining a low prediction error. NCA did not select features such as the variance of the acceleration in the <inline-formula><mml:math id="M58" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> direction and the minimum wind speed during a 10 min time series, which had been selected by the correlation analysis and stepwise regression. This shows that to model the DELs with NNs, these features are not relevant and can be omitted without compromising the model's performance as suggested by the mean error of 2.07 % in Table 3. Furthermore, the non-parametric nature of NCA enabled this technique to outperform the other techniques such as correlation and stepwise regression, which are based on the assumption of linear relationships.</p>
</sec>
<sec id="Ch1.S3.SS2.SSS2">
  <label>3.2.2</label><title>Data filtered by operational modes</title>
      <p id="d1e2149">This section explores the performance of the NN when built with data subsets
from different operational modes. It can be observed that the mean percent
error is significantly high in standstill compared to other operational
modes as shown in<?pagebreak page548?> Table 4. Nevertheless, the mean absolute error in kilonewton metres (kNm) is the lowest. The high maximum error observed previously when using the complete 8-month dataset (i.e. when using all operational modes) for the different training sets could be explained by the poor predictive power of the data from the standstill mode. When the NN was built using filtered data for partial and full load, the errors of the predictions decreased significantly. Thus, it can be concluded that the data from the standstill mode add uncertainty to the model. This can be observed in Fig. 7.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F7" specific-use="star"><?xmltex \currentcnt{7}?><?xmltex \def\figurename{Figure}?><label>Figure 7</label><caption><p id="d1e2154">Normalized measured vs. predicted DELs. Figures correspond to a model built with features from the correlation analysis. Subfigure <bold>(a)</bold>: standstill. Subfigure <bold>(b)</bold>: partial load. Subfigure <bold>(c)</bold>: full load.</p></caption>
            <?xmltex \igopts{width=369.885827pt}?><graphic xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021-f07.png"/>

          </fig>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T4" specific-use="star"><?xmltex \currentcnt{4}?><label>Table 4</label><caption><p id="d1e2175">Summary of results from neural networks for different operational
modes.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="10">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="right"/>
     <oasis:colspec colnum="4" colname="col4" align="center"/>
     <oasis:colspec colnum="5" colname="col5" align="center"/>
     <oasis:colspec colnum="6" colname="col6" align="center"/>
     <oasis:colspec colnum="7" colname="col7" align="right"/>
     <oasis:colspec colnum="8" colname="col8" align="center"/>
     <oasis:colspec colnum="9" colname="col9" align="center"/>
     <oasis:colspec colnum="10" colname="col10" align="center"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">No.</oasis:entry>
         <oasis:entry colname="col2">Subset</oasis:entry>
         <oasis:entry colname="col3">No. of</oasis:entry>
         <oasis:entry rowsep="1" namest="col4" nameend="col6"><inline-formula><mml:math id="M59" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col7">Mean</oasis:entry>
         <oasis:entry colname="col8">SD</oasis:entry>
         <oasis:entry colname="col9">Max</oasis:entry>
         <oasis:entry colname="col10">Mean</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">features</oasis:entry>
         <oasis:entry colname="col4">Training</oasis:entry>
         <oasis:entry colname="col5">Validation</oasis:entry>
         <oasis:entry colname="col6">Test</oasis:entry>
         <oasis:entry colname="col7">error</oasis:entry>
         <oasis:entry colname="col8">[%]</oasis:entry>
         <oasis:entry colname="col9">abs.</oasis:entry>
         <oasis:entry colname="col10">abs.</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
         <oasis:entry colname="col6"/>
         <oasis:entry colname="col7">[%]</oasis:entry>
         <oasis:entry colname="col8"/>
         <oasis:entry colname="col9">error</oasis:entry>
         <oasis:entry colname="col10">error</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3"/>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
         <oasis:entry colname="col6"/>
         <oasis:entry colname="col7"/>
         <oasis:entry colname="col8"/>
         <oasis:entry colname="col9">[%]</oasis:entry>
         <oasis:entry colname="col10">[kNm]</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col10">Standstill </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">1.1</oasis:entry>
         <oasis:entry colname="col2">Correlation</oasis:entry>
         <oasis:entry colname="col3">18</oasis:entry>
         <oasis:entry colname="col4">0.96884</oasis:entry>
         <oasis:entry colname="col5">0.96598</oasis:entry>
         <oasis:entry colname="col6">0.96962</oasis:entry>
         <oasis:entry colname="col7">9.89</oasis:entry>
         <oasis:entry colname="col8">37.46</oasis:entry>
         <oasis:entry colname="col9">472.83</oasis:entry>
         <oasis:entry colname="col10">189</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">1.2</oasis:entry>
         <oasis:entry colname="col2">Correlation and PCA</oasis:entry>
         <oasis:entry colname="col3">7</oasis:entry>
         <oasis:entry colname="col4">0.96211</oasis:entry>
         <oasis:entry colname="col5">0.96776</oasis:entry>
         <oasis:entry colname="col6">0.95255</oasis:entry>
         <oasis:entry colname="col7">14.13</oasis:entry>
         <oasis:entry colname="col8">40.01</oasis:entry>
         <oasis:entry colname="col9">432.56</oasis:entry>
         <oasis:entry colname="col10">199</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">1.3</oasis:entry>
         <oasis:entry colname="col2">Stepwise</oasis:entry>
         <oasis:entry colname="col3">35</oasis:entry>
         <oasis:entry colname="col4">0.98781</oasis:entry>
         <oasis:entry colname="col5">0.98352</oasis:entry>
         <oasis:entry colname="col6">0.97053</oasis:entry>
         <oasis:entry colname="col7">7.21</oasis:entry>
         <oasis:entry colname="col8">46.51</oasis:entry>
         <oasis:entry colname="col9">828.72</oasis:entry>
         <oasis:entry colname="col10">138</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">1.4</oasis:entry>
         <oasis:entry colname="col2">NCA</oasis:entry>
         <oasis:entry colname="col3">16</oasis:entry>
         <oasis:entry colname="col4">0.98369</oasis:entry>
         <oasis:entry colname="col5">0.98163</oasis:entry>
         <oasis:entry colname="col6">0.97891</oasis:entry>
         <oasis:entry colname="col7">6.60</oasis:entry>
         <oasis:entry colname="col8">39.77</oasis:entry>
         <oasis:entry colname="col9">505.83</oasis:entry>
         <oasis:entry colname="col10">145</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col10">Partial load </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">2.1</oasis:entry>
         <oasis:entry colname="col2">Correlation</oasis:entry>
         <oasis:entry colname="col3">28</oasis:entry>
         <oasis:entry colname="col4">0.99322</oasis:entry>
         <oasis:entry colname="col5">0.99228</oasis:entry>
         <oasis:entry colname="col6">0.99212</oasis:entry>
         <oasis:entry colname="col7">0.70</oasis:entry>
         <oasis:entry colname="col8">8.77</oasis:entry>
         <oasis:entry colname="col9">82.34</oasis:entry>
         <oasis:entry colname="col10">242</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">2.2</oasis:entry>
         <oasis:entry colname="col2">Correlation and PCA</oasis:entry>
         <oasis:entry colname="col3">12</oasis:entry>
         <oasis:entry colname="col4">0.99045</oasis:entry>
         <oasis:entry colname="col5">0.99034</oasis:entry>
         <oasis:entry colname="col6">0.99040</oasis:entry>
         <oasis:entry colname="col7">0.69</oasis:entry>
         <oasis:entry colname="col8">9.74</oasis:entry>
         <oasis:entry colname="col9">89.06</oasis:entry>
         <oasis:entry colname="col10">256</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">2.3</oasis:entry>
         <oasis:entry colname="col2">Stepwise</oasis:entry>
         <oasis:entry colname="col3">37</oasis:entry>
         <oasis:entry colname="col4">0.99330</oasis:entry>
         <oasis:entry colname="col5">0.99295</oasis:entry>
         <oasis:entry colname="col6">0.99217</oasis:entry>
         <oasis:entry colname="col7">1.21</oasis:entry>
         <oasis:entry colname="col8">9.03</oasis:entry>
         <oasis:entry colname="col9">71.16</oasis:entry>
         <oasis:entry colname="col10">239</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">2.4</oasis:entry>
         <oasis:entry colname="col2">NCA</oasis:entry>
         <oasis:entry colname="col3">11</oasis:entry>
         <oasis:entry colname="col4">0.99282</oasis:entry>
         <oasis:entry colname="col5">0.99236</oasis:entry>
         <oasis:entry colname="col6">0.99218</oasis:entry>
         <oasis:entry colname="col7">0.72</oasis:entry>
         <oasis:entry colname="col8">9.33</oasis:entry>
         <oasis:entry colname="col9">79.02</oasis:entry>
         <oasis:entry colname="col10">240</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col10">Full load </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">3.1</oasis:entry>
         <oasis:entry colname="col2">Correlation</oasis:entry>
         <oasis:entry colname="col3">28</oasis:entry>
         <oasis:entry colname="col4">0.99186</oasis:entry>
         <oasis:entry colname="col5">0.98858</oasis:entry>
         <oasis:entry colname="col6">0.98389</oasis:entry>
         <oasis:entry colname="col7">0.06</oasis:entry>
         <oasis:entry colname="col8">3.07</oasis:entry>
         <oasis:entry colname="col9">56.28</oasis:entry>
         <oasis:entry colname="col10">276</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">3.2</oasis:entry>
         <oasis:entry colname="col2">Correlation and PCA</oasis:entry>
         <oasis:entry colname="col3">12</oasis:entry>
         <oasis:entry colname="col4">0.98759</oasis:entry>
         <oasis:entry colname="col5">0.98568</oasis:entry>
         <oasis:entry colname="col6">0.98636</oasis:entry>
         <oasis:entry colname="col7">0.11</oasis:entry>
         <oasis:entry colname="col8">3.58</oasis:entry>
         <oasis:entry colname="col9">53.35</oasis:entry>
         <oasis:entry colname="col10">290</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">3.3</oasis:entry>
         <oasis:entry colname="col2">Stepwise</oasis:entry>
         <oasis:entry colname="col3">23</oasis:entry>
         <oasis:entry colname="col4">0.99175</oasis:entry>
         <oasis:entry colname="col5">0.99011</oasis:entry>
         <oasis:entry colname="col6">0.98953</oasis:entry>
         <oasis:entry colname="col7">0.07</oasis:entry>
         <oasis:entry colname="col8">2.79</oasis:entry>
         <oasis:entry colname="col9">16.29</oasis:entry>
         <oasis:entry colname="col10">272</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">3.4</oasis:entry>
         <oasis:entry colname="col2">NCA</oasis:entry>
         <oasis:entry colname="col3">8</oasis:entry>
         <oasis:entry colname="col4">0.99048</oasis:entry>
         <oasis:entry colname="col5">0.98847</oasis:entry>
         <oasis:entry colname="col6">0.99084</oasis:entry>
         <oasis:entry colname="col7">0.07</oasis:entry>
         <oasis:entry colname="col8">3.09</oasis:entry>
         <oasis:entry colname="col9">54.85</oasis:entry>
         <oasis:entry colname="col10">273</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d1e2758">Presumably, the small variations observed in the readings from the sensors
during standstill do not provide enough information to predict the DELs.
This is consistent with the <inline-formula><mml:math id="M60" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula> values of the model during standstill mode.
These values are the lowest among the different operational modes. A more
detailed look at this case would be necessary to derive valuable insight.</p>
      <p id="d1e2768">Moreover, Table 4 shows that the partial and full-load models constructed
using smaller sets of features derived from the application of methods such
as PCA or NCA have approximately the same predictive power as those models
constructed using larger sets of features derived from applying methods such
as stepwise regression or correlation analysis. This can be observed in the
comparison of the measures of goodness of fit (i.e. <inline-formula><mml:math id="M61" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula> values) among the
models. Nevertheless, it is important to mention that to apply PCA the
complete feature set is needed to transform all the information in the first
few components. This is not the case when applying NCA, where the most
relevant features are directly identified.</p>
      <p id="d1e2778">The application of feature selection and dimension reduction methods can be
considered a good practice. NCA outperformed all other methods in terms of
the mean error in standstill and full load. In partial load, NCA still
performed well;<?pagebreak page549?> however, correlation and correlation–PCA yielded slightly lower mean errors.</p>
      <p id="d1e2781">The results can be compared to the existing work from Vera-Tudela and Kühn (2014). In the case of the full load model, the mean error, the maximum absolute error, and standard deviation of the error are in similar ranges. However, the accuracy of the results from the partial load model is slightly worse for all feature sets.</p>
</sec>
<sec id="Ch1.S3.SS2.SSS3">
  <label>3.2.3</label><title>Continuous monitoring with a predictive model</title>
      <p id="d1e2792">In this section, the results of using a predictive model for continuous
monitoring are presented. The aim is to identify if and how the errors in
the outcomes of the model vary when using only the first 50 % of data
gathered. The model is tested by predicting the DELs corresponding to the
remaining share of the data. The majority (i.e. 70.6 %) of all data
gathered corresponds to the partial load mode; therefore, this subset was
selected for this analysis. As in the previous analysis, four models are
built using the feature sets from the correlation analysis, correlation and
PCA, stepwise regression, and NCA.</p>

      <?xmltex \floatpos{t}?><fig id="Ch1.F8" specific-use="star"><?xmltex \currentcnt{8}?><?xmltex \def\figurename{Figure}?><label>Figure 8</label><caption><p id="d1e2797"><bold>(a)</bold> A comparison of normalized predicted and measured DELs and <bold>(b)</bold> the corresponding prediction error for the model using the feature set from the correlation analysis.</p></caption>
            <?xmltex \igopts{width=341.433071pt}?><graphic xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021-f08.png"/>

          </fig>

      <?xmltex \floatpos{t}?><fig id="Ch1.F9" specific-use="star"><?xmltex \currentcnt{9}?><?xmltex \def\figurename{Figure}?><label>Figure 9</label><caption><p id="d1e2813">Mean wind speed during partial load.</p></caption>
            <?xmltex \igopts{width=341.433071pt}?><graphic xlink:href="https://wes.copernicus.org/articles/6/539/2021/wes-6-539-2021-f09.png"/>

          </fig>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T5" specific-use="star"><?xmltex \currentcnt{5}?><label>Table 5</label><caption><p id="d1e2826">Summary of results of the partial load model trained with the first 50 % of the data.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="10">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="right"/>
     <oasis:colspec colnum="4" colname="col4" align="center"/>
     <oasis:colspec colnum="5" colname="col5" align="center"/>
     <oasis:colspec colnum="6" colname="col6" align="center"/>
     <oasis:colspec colnum="7" colname="col7" align="center"/>
     <oasis:colspec colnum="8" colname="col8" align="right"/>
     <oasis:colspec colnum="9" colname="col9" align="center"/>
     <oasis:colspec colnum="10" colname="col10" align="center"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">No.</oasis:entry>
         <oasis:entry colname="col2">Feature</oasis:entry>
         <oasis:entry colname="col3">No. of</oasis:entry>
         <oasis:entry rowsep="1" namest="col4" nameend="col6"><inline-formula><mml:math id="M62" display="inline"><mml:mi>R</mml:mi></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col7">Mean</oasis:entry>
         <oasis:entry colname="col8">SD</oasis:entry>
         <oasis:entry colname="col9">Max</oasis:entry>
         <oasis:entry colname="col10">Mean</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">subset</oasis:entry>
         <oasis:entry colname="col3">features</oasis:entry>
         <oasis:entry colname="col4">Training</oasis:entry>
         <oasis:entry colname="col5">Validation</oasis:entry>
         <oasis:entry colname="col6">Test</oasis:entry>
         <oasis:entry colname="col7">error</oasis:entry>
         <oasis:entry colname="col8">[%]</oasis:entry>
         <oasis:entry colname="col9">abs.</oasis:entry>
         <oasis:entry colname="col10">abs.</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">(% of</oasis:entry>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
         <oasis:entry colname="col6"/>
         <oasis:entry colname="col7">[%]</oasis:entry>
         <oasis:entry colname="col8"/>
         <oasis:entry colname="col9">error</oasis:entry>
         <oasis:entry colname="col10">error</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">total)</oasis:entry>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
         <oasis:entry colname="col6"/>
         <oasis:entry colname="col7"/>
         <oasis:entry colname="col8"/>
         <oasis:entry colname="col9">[%]</oasis:entry>
         <oasis:entry colname="col10">[kNm]</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">1</oasis:entry>
         <oasis:entry colname="col2">Correlation</oasis:entry>
         <oasis:entry colname="col3">27 (48 %)</oasis:entry>
         <oasis:entry colname="col4">0.99276</oasis:entry>
         <oasis:entry colname="col5">0.99011</oasis:entry>
         <oasis:entry colname="col6">0.99182</oasis:entry>
         <oasis:entry colname="col7">0.92</oasis:entry>
         <oasis:entry colname="col8">9.60</oasis:entry>
         <oasis:entry colname="col9">76.44</oasis:entry>
         <oasis:entry colname="col10">211</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">2</oasis:entry>
         <oasis:entry colname="col2">Correlation and PCA</oasis:entry>
         <oasis:entry colname="col3">9 (16 %)</oasis:entry>
         <oasis:entry colname="col4">0.99393</oasis:entry>
         <oasis:entry colname="col5">0.99400</oasis:entry>
         <oasis:entry colname="col6">0.99365</oasis:entry>
         <oasis:entry colname="col7">1.44</oasis:entry>
         <oasis:entry colname="col8">11.03</oasis:entry>
         <oasis:entry colname="col9">94.23</oasis:entry>
         <oasis:entry colname="col10">229</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">3</oasis:entry>
         <oasis:entry colname="col2">Stepwise</oasis:entry>
         <oasis:entry colname="col3">38 (68 %)</oasis:entry>
         <oasis:entry colname="col4">0.99555</oasis:entry>
         <oasis:entry colname="col5">0.99523</oasis:entry>
         <oasis:entry colname="col6">0.99476</oasis:entry>
         <oasis:entry colname="col7">2.45</oasis:entry>
         <oasis:entry colname="col8">11.24</oasis:entry>
         <oasis:entry colname="col9">75.56</oasis:entry>
         <oasis:entry colname="col10">231</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">4</oasis:entry>
         <oasis:entry colname="col2">NCA</oasis:entry>
         <oasis:entry colname="col3">13 (23 %)</oasis:entry>
         <oasis:entry colname="col4">0.99581</oasis:entry>
         <oasis:entry colname="col5">0.99593</oasis:entry>
         <oasis:entry colname="col6">0.99568</oasis:entry>
         <oasis:entry colname="col7">1.32</oasis:entry>
         <oasis:entry colname="col8">10.21</oasis:entry>
         <oasis:entry colname="col9">75.09</oasis:entry>
         <oasis:entry colname="col10">213</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

<?xmltex \floatpos{t}?><table-wrap id="Ch1.T6" specific-use="star"><?xmltex \currentcnt{6}?><label>Table 6</label><caption><p id="d1e3122">Results from using the trained model to predict the remaining 50 % of the data.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="7">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="right"/>
     <oasis:colspec colnum="4" colname="col4" align="center"/>
     <oasis:colspec colnum="5" colname="col5" align="center"/>
     <oasis:colspec colnum="6" colname="col6" align="center"/>
     <oasis:colspec colnum="7" colname="col7" align="center"/>
     <oasis:thead>
       <oasis:row>
         <oasis:entry colname="col1">No.</oasis:entry>
         <oasis:entry colname="col2">Feature</oasis:entry>
         <oasis:entry colname="col3">No. of</oasis:entry>
         <oasis:entry colname="col4">Mean</oasis:entry>
         <oasis:entry colname="col5">SD</oasis:entry>
         <oasis:entry colname="col6">Max</oasis:entry>
         <oasis:entry colname="col7">Mean</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2">subset</oasis:entry>
         <oasis:entry colname="col3">features</oasis:entry>
         <oasis:entry colname="col4">error</oasis:entry>
         <oasis:entry colname="col5">[%]</oasis:entry>
         <oasis:entry colname="col6">abs.</oasis:entry>
         <oasis:entry colname="col7">abs.</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">(% of</oasis:entry>
         <oasis:entry colname="col4">[%]</oasis:entry>
         <oasis:entry colname="col5"/>
         <oasis:entry colname="col6">error</oasis:entry>
         <oasis:entry colname="col7">error</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1"/>
         <oasis:entry colname="col2"/>
         <oasis:entry colname="col3">total)</oasis:entry>
         <oasis:entry colname="col4"/>
         <oasis:entry colname="col5"/>
         <oasis:entry colname="col6">[%]</oasis:entry>
         <oasis:entry colname="col7">[kNm]</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row>
         <oasis:entry colname="col1">1</oasis:entry>
         <oasis:entry colname="col2">Correlation</oasis:entry>
         <oasis:entry colname="col3">27 (48 %)</oasis:entry>
         <oasis:entry colname="col4">0.19</oasis:entry>
         <oasis:entry colname="col5">8.98</oasis:entry>
         <oasis:entry colname="col6">60.86</oasis:entry>
         <oasis:entry colname="col7">244</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">2</oasis:entry>
         <oasis:entry colname="col2">Correlation and PCA</oasis:entry>
         <oasis:entry colname="col3">9 (16 %)</oasis:entry>
         <oasis:entry colname="col4">0.07</oasis:entry>
         <oasis:entry colname="col5">9.54</oasis:entry>
         <oasis:entry colname="col6">83.67</oasis:entry>
         <oasis:entry colname="col7">229</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">3</oasis:entry>
         <oasis:entry colname="col2">Stepwise</oasis:entry>
         <oasis:entry colname="col3">38 (68 %)</oasis:entry>
         <oasis:entry colname="col4">0.84</oasis:entry>
         <oasis:entry colname="col5">9.55</oasis:entry>
         <oasis:entry colname="col6">88.64</oasis:entry>
         <oasis:entry colname="col7">248</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">4</oasis:entry>
         <oasis:entry colname="col2">NCA</oasis:entry>
         <oasis:entry colname="col3">13 (23 %)</oasis:entry>
         <oasis:entry colname="col4">0.46</oasis:entry>
         <oasis:entry colname="col5">8.81</oasis:entry>
         <oasis:entry colname="col6">96.51</oasis:entry>
         <oasis:entry colname="col7">234</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

      <p id="d1e3343">Figure 8 shows the prediction error from the model using the feature set from the correlation analysis. It can be seen that the mean absolute prediction error from the model trained using the first 50 % of the data gathered is 211 kNm (see Table 5). This value is lower than the mean absolute error from using this trained model to predict the remaining 50 % of the data, which yields 244 kNm (see Table 6). Nonetheless, the opposite is true for the
mean error (in percentage). This variation can be explained by the same
relationship observed previously in Figs. 6 and 7, where the prediction error decreases at high wind speeds. As can be seen in<?pagebreak page550?> Fig. 9, the average mean wind speed is higher in the second half of the partial load dataset, which was used for testing.</p>
      <p id="d1e3346">The same behaviour is observed in the remaining models. Overall, the mean
error is lower in the results from the models trained using the second half
of the datasets as can be seen when comparing Tables 5 and 6.</p>
</sec>
</sec>
</sec>
<sec id="Ch1.S4" sec-type="conclusions">
  <label>4</label><title>Conclusions</title>
      <p id="d1e3359">This paper used available SCADA data as well as strain gauge measurements
from a research WT to develop a predictive model to estimate the DELs of the
fore–aft bending moments of a WT tower. The dataset included over 8 months of useful data. Different feature selection methods and a dimension
reduction technique were applied to choose the sensors with the strongest
predictive power. The data were then inputted into a feed-forward neural
network. The methodology and data used reproduce and enhance the
approaches of similar studies in the field of SHM.</p>
      <p id="d1e3362">The results indicate that using all data and applying NCA for feature
selection yield an interpretable and low-dimensional feature set while
maintaining high accuracy. Additionally, dimension reduction techniques such
as PCA can contribute to a more parsimonious model reducing the number of
features needed but compromising the interpretability of the inputs
given the transformation of the data.</p>
      <p id="d1e3365">The results were significantly better, i.e. yielded lower mean absolute
errors, when the dataset was divided by operational modes. The models were
significantly more accurate when analysing the operation of the turbine at
full load and partial load. The outcome of the model using signals from when
the turbine was standing still was rather inaccurate with mean errors
ranging from 6 % to 14 %. In partial load, the errors vary between
0.69 % and 1.21 % and in full load between<?pagebreak page551?> 0.07 % and 0.11 %. It
can be concluded that the performance of the NN is influenced by the operational mode of the WT.</p>
      <p id="d1e3368">Finally, a model for continuous monitoring was built. For this, the first 50 % of partial load data were used for training and show stable results in
terms of prediction accuracy for the remaining data. All feature selection
techniques showed similar results when predicting DELs for continuous
monitoring. The feature set resulting from the application of correlation
analysis and PCA yielded the lowest mean error yet the second largest
standard deviation for these errors. Since the results are not significantly
different for each feature selection technique, the use of NCA is preferred
for the following reasons:
<list list-type="bullet"><list-item>
      <p id="d1e3373">it results in a significant reduction of features (up to 86 % during full load), which also leads to faster modelling of the DELs;</p></list-item><list-item>
      <p id="d1e3377">the interpretability of features is maintained.</p></list-item></list>
This study showed that NCA can be included as a reliable and efficient
feature selection method for modelling tower fatigue loads with NNs,
particularly due to its non-parametric nature. Nevertheless, the performance
of this technique relative to other techniques such as correlation analysis
or stepwise regression will depend on the particularities of the case study
(operational conditions, availability and location of the sensors,
characteristics of the WT, etc.). The decision of which technique should be
used to build the NN model should be based on the knowledge of the strengths
and limitations of the techniques in consideration.</p>
      <p id="d1e3382"><?xmltex \hack{\newpage}?>This study was limited to only one WT. To be able to generalize the results
obtained from this study, the NN model requires validation with data
collected from a different wind turbine with the same specifications. By
doing this, it will be possible to determine the relationship between SCADA
data and fatigue loads with more precision, thereby eliminating the need to
install expensive gauge sensors to estimate these loads and contributing to
more efficient SHM methods.</p>
      <p id="d1e3386">Furthermore, the methodology developed during this study could be further
tested through an analytical aeroelastic model. Such a model would provide
larger datasets for standstill and full load to test the predictive
capabilities for continuous monitoring without the significant costs that
this would imply if done empirically. The results of the NN trained with
information from the aeroelastic model can be compared to the results
presented in this paper to derive conclusions on the reliability and
accuracy of this methodology. Finally, the results could benefit from
exploring alternative machine learning algorithms such as support vector
machine and <inline-formula><mml:math id="M63" display="inline"><mml:mi>k</mml:mi></mml:math></inline-formula>-nearest neighbours.</p><?xmltex \hack{\clearpage}?>
</sec>

      
      </body>
    <back><app-group>

<?pagebreak page552?><app id="App1.Ch1.S1">
  <?xmltex \currentcnt{A}?><label>Appendix A</label><title/>

<?xmltex \floatpos{h!}?><table-wrap id="App1.Ch1.S1.T7"><?xmltex \hack{\hsize\textwidth}?><?xmltex \currentcnt{A1}?><label>Table A1</label><caption><p id="d1e3412">Feature selected by the different methods and for the different operational modes. Note that the numbers correspond to the Pearson correlation coefficient. The letters next to the coefficients indicate that the feature has been selected by the method: “a” corresponds to correlation analysis, “b” to stepwise regression, and “c” to NCA.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="6">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:colspec colnum="5" colname="col5" align="left"/>
     <oasis:colspec colnum="6" colname="col6" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Number</oasis:entry>
         <oasis:entry colname="col2">Feature</oasis:entry>
         <oasis:entry colname="col3">Standstill</oasis:entry>
         <oasis:entry colname="col4">Partial load</oasis:entry>
         <oasis:entry colname="col5">Full load</oasis:entry>
         <oasis:entry colname="col6">All modes</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col6">Acceleration fore–aft (<inline-formula><mml:math id="M64" display="inline"><mml:mi>x</mml:mi></mml:math></inline-formula> direction) </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">1</oasis:entry>
         <oasis:entry colname="col2">acc_x_min</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M65" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.09</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">0.06, b</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M66" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.05</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M67" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.16</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">2</oasis:entry>
         <oasis:entry colname="col2">acc_x_max</oasis:entry>
         <oasis:entry colname="col3">0.92, a, b, c</oasis:entry>
         <oasis:entry colname="col4">0.92, a, b</oasis:entry>
         <oasis:entry colname="col5">0.88, a, b</oasis:entry>
         <oasis:entry colname="col6">0.96, a, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">3</oasis:entry>
         <oasis:entry colname="col2">acc_x_mean</oasis:entry>
         <oasis:entry colname="col3">0.91, a, b, c</oasis:entry>
         <oasis:entry colname="col4">0.93, a, b, c</oasis:entry>
         <oasis:entry colname="col5">0.96, a, b, c</oasis:entry>
         <oasis:entry colname="col6">0.96, a, b, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">4</oasis:entry>
         <oasis:entry colname="col2">acc_x_range</oasis:entry>
         <oasis:entry colname="col3">0.92, a, c</oasis:entry>
         <oasis:entry colname="col4">0.92, a</oasis:entry>
         <oasis:entry colname="col5">0.88, a</oasis:entry>
         <oasis:entry colname="col6">0.96, a</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">5</oasis:entry>
         <oasis:entry colname="col2">acc_x_mode</oasis:entry>
         <oasis:entry colname="col3">0.53, a, b</oasis:entry>
         <oasis:entry colname="col4">0.08, b</oasis:entry>
         <oasis:entry colname="col5">0.25, b</oasis:entry>
         <oasis:entry colname="col6">0.19, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">6</oasis:entry>
         <oasis:entry colname="col2">acc_x_SD</oasis:entry>
         <oasis:entry colname="col3">0.93, a, b, c</oasis:entry>
         <oasis:entry colname="col4">0.94, a, b, c</oasis:entry>
         <oasis:entry colname="col5">0.97, a, b, c</oasis:entry>
         <oasis:entry colname="col6">0.97, a, b, c</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">7</oasis:entry>
         <oasis:entry colname="col2">acc_x_var</oasis:entry>
         <oasis:entry colname="col3">0.77, a, b</oasis:entry>
         <oasis:entry colname="col4">0.85, a, b</oasis:entry>
         <oasis:entry colname="col5">0.94, a, b</oasis:entry>
         <oasis:entry colname="col6">0.86, a, b</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col6">Acceleration side–side (<inline-formula><mml:math id="M68" display="inline"><mml:mi>y</mml:mi></mml:math></inline-formula> direction) </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">8</oasis:entry>
         <oasis:entry colname="col2">acc_y_min</oasis:entry>
         <oasis:entry colname="col3">0.04</oasis:entry>
         <oasis:entry colname="col4">0.04</oasis:entry>
         <oasis:entry colname="col5">0.03</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M69" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.08</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">9</oasis:entry>
         <oasis:entry colname="col2">acc_y_max</oasis:entry>
         <oasis:entry colname="col3">0.81, a, b, c</oasis:entry>
         <oasis:entry colname="col4">0.90, a</oasis:entry>
         <oasis:entry colname="col5">0.82, a</oasis:entry>
         <oasis:entry colname="col6">0.86, a, b, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">10</oasis:entry>
         <oasis:entry colname="col2">acc_y_mean</oasis:entry>
         <oasis:entry colname="col3">0.80, a, b</oasis:entry>
         <oasis:entry colname="col4">0.88, a, b</oasis:entry>
         <oasis:entry colname="col5">0.81, a, b</oasis:entry>
         <oasis:entry colname="col6">0.85, a, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">11</oasis:entry>
         <oasis:entry colname="col2">acc_y_range</oasis:entry>
         <oasis:entry colname="col3">0.81, a, b, c</oasis:entry>
         <oasis:entry colname="col4">0.90, a</oasis:entry>
         <oasis:entry colname="col5">0.82, a</oasis:entry>
         <oasis:entry colname="col6">0.86, a, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">12</oasis:entry>
         <oasis:entry colname="col2">acc_y_mode</oasis:entry>
         <oasis:entry colname="col3">0.35</oasis:entry>
         <oasis:entry colname="col4">0.14</oasis:entry>
         <oasis:entry colname="col5">0.00, b</oasis:entry>
         <oasis:entry colname="col6">0.06</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">13</oasis:entry>
         <oasis:entry colname="col2">acc_y_SD</oasis:entry>
         <oasis:entry colname="col3">0.80, a, c</oasis:entry>
         <oasis:entry colname="col4">0.90, a, b</oasis:entry>
         <oasis:entry colname="col5">0.83, a</oasis:entry>
         <oasis:entry colname="col6">0.85, a</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">14</oasis:entry>
         <oasis:entry colname="col2">acc_y_var</oasis:entry>
         <oasis:entry colname="col3">0.70, a, b</oasis:entry>
         <oasis:entry colname="col4">0.77, a, b</oasis:entry>
         <oasis:entry colname="col5">0.82, a</oasis:entry>
         <oasis:entry colname="col6">0.75, a, b</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col6">Wind speed </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">15</oasis:entry>
         <oasis:entry colname="col2">v_wind_min</oasis:entry>
         <oasis:entry colname="col3">0.65, a</oasis:entry>
         <oasis:entry colname="col4">0.53, a, b</oasis:entry>
         <oasis:entry colname="col5">0.59, a, b</oasis:entry>
         <oasis:entry colname="col6">0.64, a, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">16</oasis:entry>
         <oasis:entry colname="col2">v_wind_max</oasis:entry>
         <oasis:entry colname="col3">0.76, a, c</oasis:entry>
         <oasis:entry colname="col4">0.90, a</oasis:entry>
         <oasis:entry colname="col5">0.87, a</oasis:entry>
         <oasis:entry colname="col6">0.80, a</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">17</oasis:entry>
         <oasis:entry colname="col2">v_wind_mean</oasis:entry>
         <oasis:entry colname="col3">0.74, a, b</oasis:entry>
         <oasis:entry colname="col4">0.83, a, b, c</oasis:entry>
         <oasis:entry colname="col5">0.84, a, b</oasis:entry>
         <oasis:entry colname="col6">0.74, a, b, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">18</oasis:entry>
         <oasis:entry colname="col2">v_wind_range</oasis:entry>
         <oasis:entry colname="col3">0.75, a</oasis:entry>
         <oasis:entry colname="col4">0.92, a, b</oasis:entry>
         <oasis:entry colname="col5">0.77, a</oasis:entry>
         <oasis:entry colname="col6">0.79, a</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">19</oasis:entry>
         <oasis:entry colname="col2">v_wind_mode</oasis:entry>
         <oasis:entry colname="col3">0.72, a, b</oasis:entry>
         <oasis:entry colname="col4">0.80, a</oasis:entry>
         <oasis:entry colname="col5">0.78, a, b</oasis:entry>
         <oasis:entry colname="col6">0.71, a, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">20</oasis:entry>
         <oasis:entry colname="col2">v_wind_SD</oasis:entry>
         <oasis:entry colname="col3">0.73, a, b</oasis:entry>
         <oasis:entry colname="col4">0.94, a, b, c</oasis:entry>
         <oasis:entry colname="col5">0.81, a</oasis:entry>
         <oasis:entry colname="col6">0.77, a, b, c</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">21</oasis:entry>
         <oasis:entry colname="col2">v_wind_var</oasis:entry>
         <oasis:entry colname="col3">0.70, a, b</oasis:entry>
         <oasis:entry colname="col4">0.90, a, b</oasis:entry>
         <oasis:entry colname="col5">0.77, a, b</oasis:entry>
         <oasis:entry colname="col6">0.71, a, c</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col6">Relative wind direction </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">22</oasis:entry>
         <oasis:entry colname="col2">v_dir_min</oasis:entry>
         <oasis:entry colname="col3">0.12, b</oasis:entry>
         <oasis:entry colname="col4">0.08</oasis:entry>
         <oasis:entry colname="col5">0.12</oasis:entry>
         <oasis:entry colname="col6">0.16</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">23</oasis:entry>
         <oasis:entry colname="col2">v_dir_max</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M70" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.13</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M71" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.05</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
         <oasis:entry colname="col5">0.12</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M72" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.16</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">24</oasis:entry>
         <oasis:entry colname="col2">v_dir_mean</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M73" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.02</mml:mn></mml:mrow></mml:math></inline-formula>, b, c</oasis:entry>
         <oasis:entry colname="col4">0.05, b</oasis:entry>
         <oasis:entry colname="col5">0.03</oasis:entry>
         <oasis:entry colname="col6">0.00, b, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">25</oasis:entry>
         <oasis:entry colname="col2">v_dir_range</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M74" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.15</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4"><inline-formula><mml:math id="M75" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.07</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col5">0.01</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M76" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.19</mml:mn></mml:mrow></mml:math></inline-formula>, b, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">26</oasis:entry>
         <oasis:entry colname="col2">v_dir_mode</oasis:entry>
         <oasis:entry colname="col3">0.02, c</oasis:entry>
         <oasis:entry colname="col4">0.00</oasis:entry>
         <oasis:entry colname="col5">0.00</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M77" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.01</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">27</oasis:entry>
         <oasis:entry colname="col2">v_dir_SD</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M78" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.15</mml:mn></mml:mrow></mml:math></inline-formula>, b, c</oasis:entry>
         <oasis:entry colname="col4">0.07, b, c</oasis:entry>
         <oasis:entry colname="col5">0.11, b</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M79" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.11</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">28</oasis:entry>
         <oasis:entry colname="col2">v_dir_var</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M80" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.11</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
         <oasis:entry colname="col4">0.04, b</oasis:entry>
         <oasis:entry colname="col5">0.10</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M81" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.08</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col6">Rotational speed at the generator </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">29</oasis:entry>
         <oasis:entry colname="col2">omega_gen_min</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M82" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.08</mml:mn></mml:mrow></mml:math></inline-formula>, b, c</oasis:entry>
         <oasis:entry colname="col4">0.55, a, b</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M83" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.79</mml:mn></mml:mrow></mml:math></inline-formula>, a, b</oasis:entry>
         <oasis:entry colname="col6">0.64, a</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">30</oasis:entry>
         <oasis:entry colname="col2">omega_gen_max</oasis:entry>
         <oasis:entry colname="col3">0.19, c</oasis:entry>
         <oasis:entry colname="col4">0.80, a, b, c</oasis:entry>
         <oasis:entry colname="col5">0.81, a</oasis:entry>
         <oasis:entry colname="col6">0.68, a</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">31</oasis:entry>
         <oasis:entry colname="col2">omega_gen_mean</oasis:entry>
         <oasis:entry colname="col3">0.04, b</oasis:entry>
         <oasis:entry colname="col4">0.71, a, b</oasis:entry>
         <oasis:entry colname="col5">0.08</oasis:entry>
         <oasis:entry colname="col6">0.67, a</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">32</oasis:entry>
         <oasis:entry colname="col2">omega_gen_range</oasis:entry>
         <oasis:entry colname="col3">0.38, b, c</oasis:entry>
         <oasis:entry colname="col4">0.37, c</oasis:entry>
         <oasis:entry colname="col5">0.88, a</oasis:entry>
         <oasis:entry colname="col6">0.28, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">33</oasis:entry>
         <oasis:entry colname="col2">omega_gen_mode</oasis:entry>
         <oasis:entry colname="col3">0.02, b</oasis:entry>
         <oasis:entry colname="col4">0.65, a, b</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M84" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.05</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col6">0.66, a, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">34</oasis:entry>
         <oasis:entry colname="col2">omega_gen_SD</oasis:entry>
         <oasis:entry colname="col3">0.33, b</oasis:entry>
         <oasis:entry colname="col4">0.29</oasis:entry>
         <oasis:entry colname="col5">0.94, a, b, c</oasis:entry>
         <oasis:entry colname="col6">0.19, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">35</oasis:entry>
         <oasis:entry colname="col2">omega_gen_var</oasis:entry>
         <oasis:entry colname="col3">0.30, b</oasis:entry>
         <oasis:entry colname="col4">0.22, b</oasis:entry>
         <oasis:entry colname="col5">0.93, a, b</oasis:entry>
         <oasis:entry colname="col6">0.13, b</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

<?xmltex \hack{\clearpage}?><?xmltex \floatpos{h!}?><table-wrap id="App1.Ch1.S1.T8"><?xmltex \hack{\hsize\textwidth}?><?xmltex \currentcnt{A1}?><label>Table A1</label><caption><p id="d1e4449">Continued.</p></caption><oasis:table frame="topbot"><oasis:tgroup cols="6">
     <oasis:colspec colnum="1" colname="col1" align="left"/>
     <oasis:colspec colnum="2" colname="col2" align="left"/>
     <oasis:colspec colnum="3" colname="col3" align="left"/>
     <oasis:colspec colnum="4" colname="col4" align="left"/>
     <oasis:colspec colnum="5" colname="col5" align="left"/>
     <oasis:colspec colnum="6" colname="col6" align="left"/>
     <oasis:thead>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">Number</oasis:entry>
         <oasis:entry colname="col2">Feature</oasis:entry>
         <oasis:entry colname="col3">Standstill</oasis:entry>
         <oasis:entry colname="col4">Partial load</oasis:entry>
         <oasis:entry colname="col5">Full load</oasis:entry>
         <oasis:entry colname="col6">All modes</oasis:entry>
       </oasis:row>
     </oasis:thead>
     <oasis:tbody>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col6">Air density </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">36</oasis:entry>
         <oasis:entry colname="col2">air_density_min</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M85" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.10</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">0.22</oasis:entry>
         <oasis:entry colname="col5">0.05, b, c</oasis:entry>
         <oasis:entry colname="col6">0.23</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">37</oasis:entry>
         <oasis:entry colname="col2">air_density_max</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M86" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.11</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">0.22</oasis:entry>
         <oasis:entry colname="col5">0.06</oasis:entry>
         <oasis:entry colname="col6">0.23</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">38</oasis:entry>
         <oasis:entry colname="col2">air_density_mean</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M87" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.10</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">0.22</oasis:entry>
         <oasis:entry colname="col5">0.05</oasis:entry>
         <oasis:entry colname="col6">0.23</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">39</oasis:entry>
         <oasis:entry colname="col2">air_density_range</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M88" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.02</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
         <oasis:entry colname="col4">0.01</oasis:entry>
         <oasis:entry colname="col5">0.08</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M89" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.07</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">40</oasis:entry>
         <oasis:entry colname="col2">air_density_mode</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M90" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.10</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">0.22</oasis:entry>
         <oasis:entry colname="col5">0.05, b</oasis:entry>
         <oasis:entry colname="col6">0.23</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">41</oasis:entry>
         <oasis:entry colname="col2">air_density_SD</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M91" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.02</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
         <oasis:entry colname="col4">0.00, b</oasis:entry>
         <oasis:entry colname="col5">0.09</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M92" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.07</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">42</oasis:entry>
         <oasis:entry colname="col2">air_density_var</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M93" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.02</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
         <oasis:entry colname="col4">0.02, b</oasis:entry>
         <oasis:entry colname="col5">0.07</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M94" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.03</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col6">Pitch angle </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">43</oasis:entry>
         <oasis:entry colname="col2">pitch_min</oasis:entry>
         <oasis:entry colname="col3">0.27, b</oasis:entry>
         <oasis:entry colname="col4">0.03, b</oasis:entry>
         <oasis:entry colname="col5">0.71, a, b, c</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M95" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.35</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">44</oasis:entry>
         <oasis:entry colname="col2">pitch_max</oasis:entry>
         <oasis:entry colname="col3">0.41</oasis:entry>
         <oasis:entry colname="col4">0.31, b</oasis:entry>
         <oasis:entry colname="col5">0.87, a</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M96" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.25</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">45</oasis:entry>
         <oasis:entry colname="col2">pitch_mean</oasis:entry>
         <oasis:entry colname="col3">0.35</oasis:entry>
         <oasis:entry colname="col4">0.21, b</oasis:entry>
         <oasis:entry colname="col5">0.81, a, b, c</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M97" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.31</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">46</oasis:entry>
         <oasis:entry colname="col2">pitch_range</oasis:entry>
         <oasis:entry colname="col3">0.30</oasis:entry>
         <oasis:entry colname="col4">0.31, c</oasis:entry>
         <oasis:entry colname="col5">0.55, a</oasis:entry>
         <oasis:entry colname="col6">0.37</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">47</oasis:entry>
         <oasis:entry colname="col2">pitch_mode</oasis:entry>
         <oasis:entry colname="col3">0.36, b</oasis:entry>
         <oasis:entry colname="col4">0.12, b</oasis:entry>
         <oasis:entry colname="col5">0.66, a, b</oasis:entry>
         <oasis:entry colname="col6"><inline-formula><mml:math id="M98" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.32</mml:mn></mml:mrow></mml:math></inline-formula>, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">48</oasis:entry>
         <oasis:entry colname="col2">pitch_SD</oasis:entry>
         <oasis:entry colname="col3">0.30</oasis:entry>
         <oasis:entry colname="col4">0.24, b</oasis:entry>
         <oasis:entry colname="col5">0.32, b, c</oasis:entry>
         <oasis:entry colname="col6">0.25, b</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry colname="col1">49</oasis:entry>
         <oasis:entry colname="col2">pitch_var</oasis:entry>
         <oasis:entry colname="col3">0.26, b</oasis:entry>
         <oasis:entry colname="col4">0.15, b</oasis:entry>
         <oasis:entry colname="col5">0.28</oasis:entry>
         <oasis:entry colname="col6">0.09, b</oasis:entry>
       </oasis:row>
       <oasis:row rowsep="1">
         <oasis:entry namest="col1" nameend="col6">Active power output </oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">50</oasis:entry>
         <oasis:entry colname="col2">ACpow_min</oasis:entry>
         <oasis:entry colname="col3"><inline-formula><mml:math id="M99" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.15</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col4">0.64, a, b, c</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M100" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.05</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col6">0.82, a, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">51</oasis:entry>
         <oasis:entry colname="col2">ACpow_max</oasis:entry>
         <oasis:entry colname="col3">0.20, b</oasis:entry>
         <oasis:entry colname="col4">0.89, a, b</oasis:entry>
         <oasis:entry colname="col5">0.83, a, b</oasis:entry>
         <oasis:entry colname="col6">0.89, a, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">52</oasis:entry>
         <oasis:entry colname="col2">ACpow_mean</oasis:entry>
         <oasis:entry colname="col3">0.04, b</oasis:entry>
         <oasis:entry colname="col4">0.81, a, b, c</oasis:entry>
         <oasis:entry colname="col5">0.29, b</oasis:entry>
         <oasis:entry colname="col6">0.88, a, b, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">53</oasis:entry>
         <oasis:entry colname="col2">ACpow_range</oasis:entry>
         <oasis:entry colname="col3">0.21, c</oasis:entry>
         <oasis:entry colname="col4">0.92, a, c</oasis:entry>
         <oasis:entry colname="col5">0.17</oasis:entry>
         <oasis:entry colname="col6">0.70, a, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">54</oasis:entry>
         <oasis:entry colname="col2">ACpow_mode</oasis:entry>
         <oasis:entry colname="col3">0.00, b</oasis:entry>
         <oasis:entry colname="col4">0.75, a, b</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M101" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.15</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col6">0.85, a, b</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">55</oasis:entry>
         <oasis:entry colname="col2">ACpow_SD</oasis:entry>
         <oasis:entry colname="col3">0.21, b, c</oasis:entry>
         <oasis:entry colname="col4">0.88, a, b</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M102" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.07</mml:mn></mml:mrow></mml:math></inline-formula>, c</oasis:entry>
         <oasis:entry colname="col6">0.59, a, b, c</oasis:entry>
       </oasis:row>
       <oasis:row>
         <oasis:entry colname="col1">56</oasis:entry>
         <oasis:entry colname="col2">ACpow_var</oasis:entry>
         <oasis:entry colname="col3">0.20, b</oasis:entry>
         <oasis:entry colname="col4">0.70, a, b</oasis:entry>
         <oasis:entry colname="col5"><inline-formula><mml:math id="M103" display="inline"><mml:mrow><mml:mo>-</mml:mo><mml:mn mathvariant="normal">0.12</mml:mn></mml:mrow></mml:math></inline-formula></oasis:entry>
         <oasis:entry colname="col6">0.45, b</oasis:entry>
       </oasis:row>
     </oasis:tbody>
   </oasis:tgroup></oasis:table></table-wrap>

<?xmltex \hack{\clearpage}?>
</app>
  </app-group><notes notes-type="dataavailability"><title>Data availability</title>

      <p id="d1e5149">The high-frequency measurements from the SCADA and strain gauge sensors are not available due to confidentiality issues.</p>
  </notes><notes notes-type="authorcontribution"><title>Author contributions</title>

      <p id="d1e5155">The work was carried out by AM, based on his master's thesis at the Wind Energy Technology Institute under the supervision of MS and TF. AM preprocessed the data for machine learning purposes, implemented feature selection techniques, modelled fatigue loads with neural networks, and ran a sensitivity analysis. MS initiated the issue, ran the data-gathering
campaign, and processed the raw data. All authors were involved in the
development of the manuscript.</p>
  </notes><notes notes-type="competinginterests"><title>Competing interests</title>

      <p id="d1e5161">The authors declare that they have no conflict of interest.</p>
  </notes><ack><title>Acknowledgements</title><p id="d1e5167">We acknowledge financial support by Land Schleswig-Holstein within the
funding programme Open-Access-Publikationsfonds.</p></ack><notes notes-type="reviewstatement"><title>Review statement</title>

      <p id="d1e5172">This paper was edited by Gerard J. W. van Bussel and reviewed by two anonymous referees.</p>
  </notes><ref-list>
    <title>References</title>

      <ref id="bib1.bib1"><label>1</label><?label 1?><mixed-citation>Boslaugh, S. and Watters, P. A.: Statistics in a Nutshell by Sarah Boslaugh and Paul Andrew Watters, Copyright <sup>©</sup> 2008 Sarah Boslaugh, O'Reilly Media, Inc., Sebastopol, CA, USA, 2008.</mixed-citation></ref>
      <ref id="bib1.bib2"><label>2</label><?label 1?><mixed-citation>Cosack, N.: Fatigue Load Monitoring with Standard Wind Turbine Signals,
University of Stuttgart, Stuttgart, available at:
<uri>https://d-nb.info/1009926721/34</uri> (last access: 15 June 2019), 2010.</mixed-citation></ref>
      <ref id="bib1.bib3"><label>3</label><?label 1?><mixed-citation>
Cosack, N. and Kühn, M.: Ueberwachung von Belastungen an
Windenergieanlagen durch Analyse von Standardsignalen.pdf, in: AKIDA
Tagungsband, 6. Aachener Kolloquium für Instandhaltung, Diagnose und
Anlagenüberwachung, 14–15 November 2006, Aachen, 277–283., 2006.</mixed-citation></ref>
      <ref id="bib1.bib4"><label>4</label><?label 1?><mixed-citation>
Cosack, N. and Kühn, M.: Prognose von Ermüdungslasten an
Windenergieanlagen mittels Standardsignalen und neuronaler Netze.pdf, in: DMK 2007 – Dresdner Maschinenelemente Kolloquium: 5 and 6 December 2007, Dresden, 461–476, 2007.</mixed-citation></ref>
      <ref id="bib1.bib5"><label>5</label><?label 1?><mixed-citation>
DNV/Risø: Guidelines for Design of Wind Turbines, 2nd Edn., Jydsk Centraltrykkeri, Denmark, 2002.</mixed-citation></ref>
      <ref id="bib1.bib6"><label>6</label><?label 1?><mixed-citation>
Draper, N. R. and Smith, H.: Applied regression analysis, in: Wiley Series in Probability and Statistics, Wiley, 1998.</mixed-citation></ref>
      <ref id="bib1.bib7"><label>7</label><?label 1?><mixed-citation>
Goldberger, J., Roweis, S., Hinton, G., and Salakhutdinov, R.: Neighbourhood
Components Analysis, Adv. Neural Inform. Process. Syst., 17, 513–520, 2004.</mixed-citation></ref>
      <ref id="bib1.bib8"><label>8</label><?label 1?><mixed-citation>
Han, J. and Kamber, M.: Data Mining: Concepts and Techniques, 3rd Edn., The Morgan Kaufmann Series in Data Management Systems, 5, 83–124, 2011.</mixed-citation></ref>
      <ref id="bib1.bib9"><label>9</label><?label 1?><mixed-citation>Hazewinkel, M.: Encyclopaedia of Mathematics (set), 1st Edn., Springer,
Netherlands, 1994.
 </mixed-citation></ref><?xmltex \hack{\newpage}?>
      <ref id="bib1.bib10"><label>10</label><?label 1?><mixed-citation>
IRENA: Renewable Power Generation Costs in 2014, Bonn, Germany, 2015.</mixed-citation></ref>
      <ref id="bib1.bib11"><label>11</label><?label 1?><mixed-citation>Lind, P. G.: Normal behaviour models for wind turbine vibrations: Comparison of neural networks and a stochastic approach, Energies, 10, 1944, <ext-link xlink:href="https://doi.org/10.3390/en10121944" ext-link-type="DOI">10.3390/en10121944</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bib12"><label>12</label><?label 1?><mixed-citation>MathWorks: Fit Data with a Shallow Neural Network – MATLAB &amp; Simulink –
MathWorks, available at:
<uri>https://de.mathworks.com/help/deeplearning/gs/fit-data-with-a-neural-network.html</uri>,
last access: 5 June 2019.</mixed-citation></ref>
      <ref id="bib1.bib13"><label>13</label><?label 1?><mixed-citation>
Melsheimer, M., Kamieth, R., Liebich, R., and Heilmann, Christoph, Grunwald,
A.: Practical Experiences from a load measurement campaign for the assessment of the remaining service life of wind turbines, in: German Wind Energy Conference (DEWEK) Proceedings, 19–20 May 2015, Congress Centrum, Bremen, 1–4, 2015.</mixed-citation></ref>
      <ref id="bib1.bib14"><label>14</label><?label 1?><mixed-citation>Noppe, N., Weijtjens, W., and Devriendt, C.: Modeling of quasi-static thrust
load of wind turbines based on 1 s SCADA data, Wind Energ. Sci., 3,
139–147, <ext-link xlink:href="https://doi.org/10.5194/wes-3-139-2018" ext-link-type="DOI">10.5194/wes-3-139-2018</ext-link>, 2018.</mixed-citation></ref>
      <ref id="bib1.bib15"><label>15</label><?label 1?><mixed-citation>
Parsian, M.: Data algorithms: recipes for scaling up with Hadoop and Spark,
O'Reilly Media, Inc., O'Reilly Media, Inc., Sebastopol, CA, USA, 2015.</mixed-citation></ref>
      <ref id="bib1.bib16"><label>16</label><?label 1?><mixed-citation>
REN21: Renewables 2018 Global Status Report, Paris, France, 2018.</mixed-citation></ref>
      <ref id="bib1.bib17"><label>17</label><?label 1?><mixed-citation>
Schedat, M. and Faber, T.: Fatigue load reconstruction on wind turbine
structures using structural health monitoring, in: Proceedings DEWEK 2017,
13th German Wind Energy Conference, 17–18 October 2017, Bremen, Germany, 1–4, 2017.</mixed-citation></ref>
      <ref id="bib1.bib18"><label>18</label><?label 1?><mixed-citation>
Schedat, M., Faber, T., and Sivanesan, A.: Structural health monitoring
concept to predict the remaining lifetime of the wind turbine structure, in:
IEEE Proceedings of the 24th Conference on the Domestic Use of Energy, DUE 2016, 30–31 March 2016, Cape Town, South Africa, 1–5, 2016.</mixed-citation></ref>
      <ref id="bib1.bib19"><label>19</label><?label 1?><mixed-citation>Seifert, J., Vera-Tudela, L., and Kühn, M.: Training requirements of a
neural network used for fatigue load estimation of offshore wind turbines,
Energy Proced., 137, 315–322, <ext-link xlink:href="https://doi.org/10.1016/j.egypro.2017.10.356" ext-link-type="DOI">10.1016/j.egypro.2017.10.356</ext-link>, 2017.</mixed-citation></ref>
      <ref id="bib1.bib20"><label>20</label><?label 1?><mixed-citation>
Sharma, N. and Saroha, K.: Study of dimension reduction methodologies in
data mining, in: IEEE International Conference on Computing, Communication and Automation, ICCCA 2015, 15–16 May 2015, Greater Noida, India, 133–137, 2015.</mixed-citation></ref>
      <ref id="bib1.bib21"><label>21</label><?label 1?><mixed-citation>
Smolka, U. and Cheng, P. W.: On the Design of Measurement Campaigns for
Fatigue Life Monitoring of Offshore Wind Turbines, in: The Twenty-third
International Offshore and Polar Engineering Conference, vol. 9, International Society of Offshore and Polar Engineers, Anchorage, Alaska, USA, 408–413, 2013.</mixed-citation></ref>
      <ref id="bib1.bib22"><label>22</label><?label 1?><mixed-citation>Vera-Tudela, L. and Kühn, M.: On the Selection of Input Variables for a
Wind Turbine Load Monitoring System, Procedia Technol., 15, 726–736,
<ext-link xlink:href="https://doi.org/10.1016/j.protcy.2014.09.045" ext-link-type="DOI">10.1016/j.protcy.2014.09.045</ext-link>, 2014.</mixed-citation></ref>
      <ref id="bib1.bib23"><label>23</label><?label 1?><mixed-citation>Vidal, R., Ma, Y., and Sastry, S. S.: Principal Component Analysis,
Chemometr. Intell. Lab. Syst., 2, 37–52, <ext-link xlink:href="https://doi.org/10.1016/0169-7439(87)80084-9" ext-link-type="DOI">10.1016/0169-7439(87)80084-9</ext-link>, 1987.</mixed-citation></ref>
      <ref id="bib1.bib24"><label>24</label><?label 1?><mixed-citation>Ziegler, L., Gonzalez, E., Rubert, T., Smolka, U., and Melero, J. J.:
Lifetime extension of onshore wind turbines: A review covering Germany,
Spain, Denmark, and the UK, Renew. Sustain. Energy Rev., 82, 1261–1271,
<ext-link xlink:href="https://doi.org/10.1016/j.rser.2017.09.100" ext-link-type="DOI">10.1016/j.rser.2017.09.100</ext-link>, 2018.</mixed-citation></ref>

  </ref-list></back>
    <!--<article-title-html>Feature selection techniques for modelling tower fatigue loads of a wind turbine with neural networks</article-title-html>
<abstract-html><p>The rapid development of the wind industry in recent
decades and the establishment of this technology as a mature and
cost-competitive alternative have stressed the need for sophisticated
maintenance and monitoring methods. Structural health monitoring has risen
as a diagnosis strategy to detect damage or failures in wind turbine
structures with the help of measuring sensors. The amount of data recorded
by the structural health monitoring system can potentially be used to obtain knowledge about the condition and remaining lifetime of wind turbines. Machine learning techniques provide the opportunity to extract this information, thereby improving the reliability and cost-effectiveness of the wind industry as well. This paper demonstrates the modelling of damage-equivalent loads of the fore–aft bending moments of a wind turbine tower, highlighting the advantage of using the neighbourhood component analysis. This feature selection technique is compared to common dimension
reduction/feature selection techniques such as correlation analysis,
stepwise regression, or principal component analysis. For this study,
recordings of data were gathered during approximately 11 months,
preprocessed, and filtered by different operational modes, namely
standstill, partial load, and full load. The results indicate that all
feature selection techniques were able to maintain high accuracy when
trained with artificial neural networks. The neighbourhood component analysis yields the lowest number of features required while maintaining the interpretability with an absolute mean squared error of around 0.07&thinsp;% for full load. Finally, the applicability of the resulting model for predicting loads in the wind turbine is tested by reducing the amount of data used for training by 50&thinsp;%. This analysis shows that the predictive model can be used for continuous monitoring of loads in the tower of the wind turbine.</p></abstract-html>
<ref-html id="bib1.bib1"><label>1</label><mixed-citation>
Boslaugh, S. and Watters, P. A.: Statistics in a Nutshell by Sarah Boslaugh and Paul Andrew Watters, Copyright <span style="position:relative; bottom:0.5em; " class="text">©</span> 2008 Sarah Boslaugh, O'Reilly Media, Inc., Sebastopol, CA, USA, 2008.
</mixed-citation></ref-html>
<ref-html id="bib1.bib2"><label>2</label><mixed-citation>
Cosack, N.: Fatigue Load Monitoring with Standard Wind Turbine Signals,
University of Stuttgart, Stuttgart, available at:
<a href="https://d-nb.info/1009926721/34" target="_blank"/> (last access: 15 June 2019), 2010.
</mixed-citation></ref-html>
<ref-html id="bib1.bib3"><label>3</label><mixed-citation>
Cosack, N. and Kühn, M.: Ueberwachung von Belastungen an
Windenergieanlagen durch Analyse von Standardsignalen.pdf, in: AKIDA
Tagungsband, 6. Aachener Kolloquium für Instandhaltung, Diagnose und
Anlagenüberwachung, 14–15 November 2006, Aachen, 277–283., 2006.
</mixed-citation></ref-html>
<ref-html id="bib1.bib4"><label>4</label><mixed-citation>
Cosack, N. and Kühn, M.: Prognose von Ermüdungslasten an
Windenergieanlagen mittels Standardsignalen und neuronaler Netze.pdf, in: DMK 2007 – Dresdner Maschinenelemente Kolloquium: 5 and 6 December 2007, Dresden, 461–476, 2007.
</mixed-citation></ref-html>
<ref-html id="bib1.bib5"><label>5</label><mixed-citation>
DNV/Risø: Guidelines for Design of Wind Turbines, 2nd Edn., Jydsk Centraltrykkeri, Denmark, 2002.
</mixed-citation></ref-html>
<ref-html id="bib1.bib6"><label>6</label><mixed-citation>
Draper, N. R. and Smith, H.: Applied regression analysis, in: Wiley Series in Probability and Statistics, Wiley, 1998.
</mixed-citation></ref-html>
<ref-html id="bib1.bib7"><label>7</label><mixed-citation>
Goldberger, J., Roweis, S., Hinton, G., and Salakhutdinov, R.: Neighbourhood
Components Analysis, Adv. Neural Inform. Process. Syst., 17, 513–520, 2004.
</mixed-citation></ref-html>
<ref-html id="bib1.bib8"><label>8</label><mixed-citation>
Han, J. and Kamber, M.: Data Mining: Concepts and Techniques, 3rd Edn., The Morgan Kaufmann Series in Data Management Systems, 5, 83–124, 2011.
</mixed-citation></ref-html>
<ref-html id="bib1.bib9"><label>9</label><mixed-citation>
Hazewinkel, M.: Encyclopaedia of Mathematics (set), 1st Edn., Springer,
Netherlands, 1994.

</mixed-citation></ref-html>
<ref-html id="bib1.bib10"><label>10</label><mixed-citation>
IRENA: Renewable Power Generation Costs in 2014, Bonn, Germany, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib11"><label>11</label><mixed-citation>
Lind, P. G.: Normal behaviour models for wind turbine vibrations: Comparison of neural networks and a stochastic approach, Energies, 10, 1944, <a href="https://doi.org/10.3390/en10121944" target="_blank">https://doi.org/10.3390/en10121944</a>, 2017.
</mixed-citation></ref-html>
<ref-html id="bib1.bib12"><label>12</label><mixed-citation>
MathWorks: Fit Data with a Shallow Neural Network – MATLAB &amp; Simulink –
MathWorks, available at:
<a href="https://de.mathworks.com/help/deeplearning/gs/fit-data-with-a-neural-network.html" target="_blank"/>,
last access: 5 June 2019.
</mixed-citation></ref-html>
<ref-html id="bib1.bib13"><label>13</label><mixed-citation>
Melsheimer, M., Kamieth, R., Liebich, R., and Heilmann, Christoph, Grunwald,
A.: Practical Experiences from a load measurement campaign for the assessment of the remaining service life of wind turbines, in: German Wind Energy Conference (DEWEK) Proceedings, 19–20 May 2015, Congress Centrum, Bremen, 1–4, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib14"><label>14</label><mixed-citation>
Noppe, N., Weijtjens, W., and Devriendt, C.: Modeling of quasi-static thrust
load of wind turbines based on 1&thinsp;s SCADA data, Wind Energ. Sci., 3,
139–147, <a href="https://doi.org/10.5194/wes-3-139-2018" target="_blank">https://doi.org/10.5194/wes-3-139-2018</a>, 2018.
</mixed-citation></ref-html>
<ref-html id="bib1.bib15"><label>15</label><mixed-citation>
Parsian, M.: Data algorithms: recipes for scaling up with Hadoop and Spark,
O'Reilly Media, Inc., O'Reilly Media, Inc., Sebastopol, CA, USA, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib16"><label>16</label><mixed-citation>
REN21: Renewables 2018 Global Status Report, Paris, France, 2018.
</mixed-citation></ref-html>
<ref-html id="bib1.bib17"><label>17</label><mixed-citation>
Schedat, M. and Faber, T.: Fatigue load reconstruction on wind turbine
structures using structural health monitoring, in: Proceedings DEWEK 2017,
13th German Wind Energy Conference, 17–18 October 2017, Bremen, Germany, 1–4, 2017.
</mixed-citation></ref-html>
<ref-html id="bib1.bib18"><label>18</label><mixed-citation>
Schedat, M., Faber, T., and Sivanesan, A.: Structural health monitoring
concept to predict the remaining lifetime of the wind turbine structure, in:
IEEE Proceedings of the 24th Conference on the Domestic Use of Energy, DUE 2016, 30–31 March 2016, Cape Town, South Africa, 1–5, 2016.
</mixed-citation></ref-html>
<ref-html id="bib1.bib19"><label>19</label><mixed-citation>
Seifert, J., Vera-Tudela, L., and Kühn, M.: Training requirements of a
neural network used for fatigue load estimation of offshore wind turbines,
Energy Proced., 137, 315–322, <a href="https://doi.org/10.1016/j.egypro.2017.10.356" target="_blank">https://doi.org/10.1016/j.egypro.2017.10.356</a>, 2017.
</mixed-citation></ref-html>
<ref-html id="bib1.bib20"><label>20</label><mixed-citation>
Sharma, N. and Saroha, K.: Study of dimension reduction methodologies in
data mining, in: IEEE International Conference on Computing, Communication and Automation, ICCCA 2015, 15–16 May 2015, Greater Noida, India, 133–137, 2015.
</mixed-citation></ref-html>
<ref-html id="bib1.bib21"><label>21</label><mixed-citation>
Smolka, U. and Cheng, P. W.: On the Design of Measurement Campaigns for
Fatigue Life Monitoring of Offshore Wind Turbines, in: The Twenty-third
International Offshore and Polar Engineering Conference, vol. 9, International Society of Offshore and Polar Engineers, Anchorage, Alaska, USA, 408–413, 2013.
</mixed-citation></ref-html>
<ref-html id="bib1.bib22"><label>22</label><mixed-citation>
Vera-Tudela, L. and Kühn, M.: On the Selection of Input Variables for a
Wind Turbine Load Monitoring System, Procedia Technol., 15, 726–736,
<a href="https://doi.org/10.1016/j.protcy.2014.09.045" target="_blank">https://doi.org/10.1016/j.protcy.2014.09.045</a>, 2014.
</mixed-citation></ref-html>
<ref-html id="bib1.bib23"><label>23</label><mixed-citation>
Vidal, R., Ma, Y., and Sastry, S. S.: Principal Component Analysis,
Chemometr. Intell. Lab. Syst., 2, 37–52, <a href="https://doi.org/10.1016/0169-7439(87)80084-9" target="_blank">https://doi.org/10.1016/0169-7439(87)80084-9</a>, 1987.
</mixed-citation></ref-html>
<ref-html id="bib1.bib24"><label>24</label><mixed-citation>
Ziegler, L., Gonzalez, E., Rubert, T., Smolka, U., and Melero, J. J.:
Lifetime extension of onshore wind turbines: A review covering Germany,
Spain, Denmark, and the UK, Renew. Sustain. Energy Rev., 82, 1261–1271,
<a href="https://doi.org/10.1016/j.rser.2017.09.100" target="_blank">https://doi.org/10.1016/j.rser.2017.09.100</a>, 2018.
</mixed-citation></ref-html>--></article>
