Wind turbine condition monitoring based on intra- and inter-farm federated learning
<|reference_start|>Wind turbine condition monitoring based on intra- and inter-farm federated learning: As wind energy adoption is growing, ensuring the efficient operation and maintenance of wind turbines becomes essential for maximizing energy production and minimizing costs and downtime. Many AI applications in wind energy, such as in condition monitoring and power forecasting, may benefit from using operational data not only from individual wind turbines but from multiple turbines and multiple wind farms. Collaborative distributed AI which preserves data privacy holds a strong potential for these applications. Federated learning has emerged as a privacy-preserving distributed machine learning approach in this context. We explore federated learning in wind turbine condition monitoring, specifically for fault detection using normal behaviour models. We investigate various federated learning strategies, including collaboration across different wind farms and turbine models, as well as collaboration restricted to the same wind farm and turbine model. Our case study results indicate that federated learning across multiple wind turbines consistently outperforms models trained on a single turbine, especially when training data is scarce. Moreover, the amount of historical data necessary to train an effective model can be significantly reduced by employing a collaborative federated learning strategy. Finally, our findings show that extending the collaboration to multiple wind farms may result in inferior performance compared to restricting learning within a farm, specifically when faced with statistical heterogeneity and imbalanced datasets.<|reference_end|>
@article{grataloup2024wind,
    title={Wind turbine condition monitoring based on intra- and inter-farm
  federated learning},
    author={Albin Grataloup, Stefan Jonas, Angela Meyer},
    journal={arXiv preprint arXiv:2409.03672},
    year={2024},
    archivePrefix={arXiv},
    eprint={2409.03672},
    primaryClass={cs.LG cs.SY eess.SY}
}