Studio del modello di soluzione Cortana Intelligence per la previsione della domanda di energiaCortana Intelligence Solution Template Playbook for Demand Forecasting of Energy

SuntoExecutive Summary

Negli ultimi anni la combinazione di Big Data, Internet delle cose (IoT) e fonti alternative di energia ha creato ampie opportunità nel settore dell'energia e dei pubblici servizi.In the past few years, Internet of Things (IoT), alternative energy sources, and big data have merged to create vast opportunities in the utility and energy domain. Allo stesso tempo, l'intero settore dell'energia e dei pubblici servizi ha assistito a un livellamento dei consumi con la ricerca, da parte dei consumatori, di modi migliori per controllare il consumo energetico.At the same time, the utility and the entire energy sector have seen consumption flattening out with consumers demanding better ways to control their use of energy. Per questo motivo le aziende operanti nel settore dei pubblici servizi e delle smart grid, ovvero le reti elettriche intelligenti, hanno un grande bisogno di innovazione e rinnovamento.Hence, the utility and smart grid companies are in great need to innovate and renew themselves. Molte reti elettriche e di pubblici servizi stanno diventando obsolete e molto costose da mantenere e gestire.Furthermore, many power and utility grids are becoming outdated and very costly to maintain and manage. Nell'ultimo anno il team ha lavorato a diversi interventi nel settore dell'energia.During the last year, the team has been working on a number of engagements within the energy domain. Nel corso di tali interventi il team ha incontrato diverse aziende di pubblici servizi e fornitori di software indipendenti (ISV) interessati a strumenti di previsione della futura domanda di energia.During these engagements, we have encountered many cases in which the utilities or ISVs (Independent Software Vendors) have been looking into forecasting for future energy demand. Le previsioni hanno un ruolo importante per l'attività attuale e futura di tali aziende e sono alla base di diversi casi d'uso,These forecasts play an important role in their current and future business and have become the foundation for various use cases. come previsioni del carico elettrico a breve e lungo termine, commercializzazione, bilanciamento del carico, ottimizzazione delle reti e così via. Big Data e metodi di analisi avanzata, come ad esempio Machine Learning (ML), sono particolarmente importanti per la creazione di previsioni accurate e affidabili.These include short and long-term power load forecast, trading, load balancing, grid optimization etc. Big data and Advanced Analytics (AA) methods such as Machine Learning (ML) are the key enablers for producing accurate and reliable forecasts.

Questo studio sintetizza le linee guida aziendali e analitiche per sviluppare e distribuire nel modo corretto una soluzione di previsione della domanda di energia.In this playbook, we put together the business and analytical guidelines needed for a successful development and deployment of energy demand forecast solution. Le linee guida qui proposte consentono ad aziende di pubblici servizi, data scientist e data engineer di creare soluzioni per la previsione della domanda completamente operative e basate sul cloud.These proposed guidelines can help utilities, data scientists, and data engineers in establishing fully operationalized, cloud-based, demand-forecasting solutions. Per le aziende che muovo i primi passi nel settore dei Big Data e dell'analisi avanzata, questa soluzione può rappresentare un ottimo punto di partenza per una strategia di smart grid a lungo termine.For companies who are just starting their big data and advanced analytics journey, such a solution can represent the initial seed in their long-term smart grid strategy.

Suggerimento

Per scaricare un diagramma che offre una panoramica dell'architettura del modello, vedere Architettura del modello di soluzione di Cortana Intelligence per la previsione della domanda di energia.To download a diagram that provides an architectural overview of this template, see Cortana Intelligence Solution Template architecture for demand forecasting of energy.

OverviewOverview

Questo documento illustra gli aspetti tecnici, commerciali e relativi ai dati legati all'uso di Cortana Intelligence e, in particolare, di Azure Machine Learning (Azure ML) per l'implementazione e la distribuzione di soluzioni di previsione energetica.This document covers the business, data, and technical aspects of using Cortana Intelligence and in particular Azure Machine Learning (AML) for the implementation and deployment of Energy Forecasting Solutions. Il documento è costituito da tre parti principali:The document consists of three main parts:

  1. Informazioni commercialiBusiness understanding
  2. Informazioni sui datiData understanding
  3. Implementazione tecnicaTechnical implementation

La parte relativa alle informazioni commerciali descrive l'aspetto legato alle esigenze aziendali che è necessario comprendere ed esaminare prima di prendere una decisione di investimento.The Business Understanding part outlines the business aspect one needs to understand and consider prior to making an investment decision. Illustra come qualificare il problema aziendale per assicurarsi che analisi predittiva e apprendimento automatico siano davvero efficaci e applicabili.It explains how to qualify the business problem at hand to ensure that predictive analytics and machine learning are indeed effective and applicable. Il documento approfondisce le nozioni di base sull'apprendimento automatico e come viene usato per risolvere i problemi di previsione energetica.The document further explains the basics of machine learning and how it is used to address energy-forecasting problems. Descrive i prerequisiti e i criteri di qualificazione di un caso d'uso.It outlines the prerequisites and the qualification criteria of a use case. Fornisce anche alcuni casi d'uso di esempio e scenari di casi aziendali.Some sample use cases and business case scenarios are also provided.

I dati sono l'elemento principale di qualsiasi soluzione di apprendimento automatico.Data is the main ingredient for any machine learning solution. La parte relativa alle informazioni sui dati di questo documento illustra alcuni aspetti importanti relativi ai dati.The Data Understanding part of this document covers some important aspects of the data. Descrive il tipo di dati necessario per la previsione energetica, i requisiti di qualità dei dati e le origini dati generalmente disponibili.It outlines the kind of data that is needed for energy forecasting, data quality requirements, and what data sources typically exist. Illustra anche come usare i dati non elaborati per preparare le funzionalità dei dati che determinano effettivamente la modellazione.We also explain how the raw data is used to prepare data features that actually drive the modeling part.

La terza parte del documento illustra l'aspetto relativo all' implementazione tecnica di una soluzione.The third part of the document covers the Technical Implementation aspect of a solution. La progettazione e la modellazione di funzionalità sono alla base del processo di analisi scientifica dei dati e vengono quindi discusse in modo dettagliato.Feature engineering and modeling are at the core of the data science process and are therefore being discussed in some detail. Questa parte illustra il concetto di servizi Web, un veicolo importante per la distribuzione cloud di soluzioni di analisi predittiva.It covers the concept of web services, which are an important vehicle for cloud deployment of predictive analytics solutions. Descrive anche una tipica architettura di soluzione end-to-end operativaWe also outline a typical architecture of an end-to-end operationalized solution.

e include materiale di riferimento utile per ottenere altre informazioni sul settore e sulla tecnologia.In addition, the document includes reference material that you can use to gain further understanding of the domain and technology.

È importante notare che una trattazione approfondita del processo di analisi scientifica dei dati e dei relativi aspetti matematici e tecnici non rientra nelle finalità di questo documento.It is important to note that we do not intend to cover in this document the deeper data science process, its mathematical and technical aspects. Tali informazioni dettagliate sono reperibili nella documentazione di Azure ML e nei blog.These details can be found in Azure ML documentation and blogs.

DestinatariTarget Audience

I destinatari di questo documento sono aziende e personale tecnico che vogliono conoscere e comprendere le soluzioni basate su Machine Learning e l'uso specifico nell'ambito della previsione energetica.The target audience for this document is both business and technical personnel who would like to gain knowledge and understanding of Machine Learning based solutions and how these are being used specifically within the energy-forecasting domain.

I data scientist possono leggere questo documento per comprendere meglio il processo generale che determina la distribuzione di una soluzione di previsione energetica.Data scientists can also benefit from reading this document to gain a better understanding of the high level process that drives the deployment of an energy forecasting solution. In questo contesto il documento può essere usato anche come base e punto di partenza per accedere a materiale più dettagliato e avanzato.In this context it can also be used to establish a good baseline and starting point for more detailed and advanced material.

Negli ultimi anni la combinazione di IoT, fonti alternative di energia e Big Data ha creato ampie opportunità nel settore dell'energia e dei pubblici servizi.In the past few years, IoT, alternative energy sources, and big data have merged to create vast opportunities in the utility and energy space. Allo stesso tempo, l'intero settore dell'energia e dei pubblici servizi ha assistito a un livellamento dei consumi con la ricerca, da parte dei consumatori, di modi migliori per controllare il consumo energetico.At the same time, the utility and the entire energy sectors have seen consumption flattening out with consumers demanding better ways to control their use of energy.

Molte aziende del settore energetico e dei pubblici servizi hanno avviato la realizzazione di smart grid , distribuendo diversi casi d'uso che fanno uso dei dati generati dalla rete.Many utility and smart energy companies have been pioneering the smart grid by deploying a number of use cases that make use of the data generated by the grid. Molti casi d'uso riguardano le caratteristiche intrinseche della produzione di elettricità, che non può essere accumulata né immagazzinata.Many use cases revolve around the inherent characteristics of electricity production: it cannot be accumulated nor stored aside as inventory. L'energia prodotta deve essere usata.So, what is produced must be used. Le aziende di pubblici servizi che vogliono migliorare l'efficienza devono elaborare previsioni del consumo energetico per riuscire a bilanciare meglio la domanda e l'offerta, prevenire gli sprechi, ridurre le emissioni di gas serra e controllare i costi.Utilities that want to become more efficient need to forecast power consumption simply because that will give them greater ability to balance supply and demand, thus preventing energy wastage, reduce greenhouse gas emission, and control cost.

In tema di costi, un altro aspetto importante è quello del prezzo.When talking of costs, there is another important aspect, which is price. Le nuove possibilità legate al commercio di energia tra aziende di pubblici servizi hanno fatto crescere la necessità di prevedere la domanda e il prezzo futuri dell'energia elettrica.New abilities to trade power between utilities have brought in a great need to forecast future demand and future price of electricity. Questo può aiutare le aziende a determinare i volumi di produzione.This can help companies determine their production volumes.

Il termine "smart grid" indica una rete elettrica intelligente, che può apprendere ed eseguire previsioni.When we use the word 'smart', we actually refer to a grid that can learn and then make predictions. Può prevedere le variazioni stagionali del consumo energetico nonché situazioni di sovraccarico temporaneo ed eseguire automaticamente le regolazioni necessarie.It can anticipate seasonal changes in consumption as well as foresee temporary overload situations and automatically adjust for it. La regolazione remota del consumo energetico, con l'aiuto di contatori intelligenti, permette di gestire situazioni di sovraccarico localizzate.By remotely regulating consumption (with the help of these smart meters), localized overload situations can be handled. Attraverso le attività di previsione e reazione, la rete diventa sempre più intelligente.By first predicting and then acting, the grid makes itself smarter over time.

La parte restante di questo documento è incentrata su un gruppo specifico di casi d'uso che riguarda la previsione della futura domanda di energia, a breve e a lungo termine.For the rest of this document we will focus on a specific family of use cases that cover forecasting of future, short term, and long-term energy demand. Le conoscenze e le competenze acquisite in diversi mesi di lavoro in queste aree hanno permesso di produrre risultati a livello di settore.We have been working in these areas for a few months and have gained some knowledge and skill that allow us to produce industry grade results. In un prossimo futuro nel documento verranno illustrati anche altri casi d'uso.Other use cases will be covered as well in the document in the near future.

Informazioni commercialiBusiness Understanding

Obiettivi commercialiBusiness Goals

L'obiettivo della demo sull'energia è dimostrare una soluzione tipica di analisi predittiva e apprendimento automatico che può essere distribuita in un intervallo di tempo molto breve.The Energy Demo goal is to demonstrate a typical predictive analytics and machine learning solution that can be deployed in a very short time frame. In particolare, l'obiettivo attuale è l'abilitazione di soluzioni di previsione della domanda di energia per valutarne e sfruttarne rapidamente il valore commerciale.Specifically, our current focus is on enabling energy demand forecast solutions so that its business value can be quickly realized and leveraged upon. Le informazioni contenute in questo studio permettono al cliente di raggiungere gli obiettivi seguenti:The information in this playbook can help the customer accomplishing the following goals:

  • Ottenere tempi di esecuzione ridotti per la soluzione basata sull'apprendimento automatico.Short time to value of machine learning based solution
  • Estendere un caso d'uso pilota ad altri casi d'uso oppure a un ambito più ampio in base alle esigenze aziendali.Ability to expand a pilot use case to other use cases or to a broader scope based on their business need
  • Apprendere rapidamente l'uso della suite Cortana Intelligence.Quickly gain Cortana Intelligence Suite product knowledge

Questo studio intende fornire le conoscenze tecniche e commerciali che consentiranno di raggiungere tali obiettivi.With these goals in mind, this playbook aims at delivering the business and technical knowledge that will assist in achieving these goals.

Previsione della domanda e del carico elettricoPower Load and Demand Forecasting

La previsione della domanda può contribuire in diversi modi a risolvere problemi commerciali critici nel settore energetico.Within the energy sector, there could be many ways in which demand forecasting can help solve critical business problems. La previsione della domanda può essere considerata, di fatto, la base di molti casi d'uso nel settore.In fact, demand forecasting can be considered the foundation for many core use cases in the industry. In generale, vengono presi in considerazione due tipi di previsione della domanda di energia: a breve termine e a lungo termine.In general, we consider two types of energy demand forecasts: short term and long term. Ognuno di essi può avere uno scopo diverso e usare un approccio differente.Each one may serve a different purpose and utilize a different approach. La differenza principale tra i due è l'orizzonte di previsione, vale a dire l'intervallo di tempo nel futuro rispetto al quale si esegue la previsione.The main difference between the two is the forecasting horizon, meaning the range of time into the future for which we would forecast.

Previsione di carico a breve termineShort Term Load Forecasting

Nel contesto della domanda di energia, la previsione di carico a breve termine è definita come il carico aggregato che viene previsto per il prossimo futuro in varie parti della rete o in tutta la rete.Within the context of energy demand, Short Term Load Forecasting (STLF) is defined as the aggregated load that is forecasted in the near future on various parts of the grid (or the grid as a whole). In questo contesto il breve termine è un orizzonte temporale compreso tra un'ora e 24 ore.In this context, short term is defined to be time horizon within the range of 1 hour to 24 hours. In alcuni casi è anche possibile avere un orizzonte di 48 ore.In some cases, a horizon of 48 hours is also possible. Di conseguenza, la previsione di carico a breve termine è molto diffusa nei casi d'uso operativi della rete.Therefore, STLF is very common in an operational use case of the grid. Di seguito sono riportati alcuni esempi di casi d'uso basati sulla previsione di carico a breve termine:Here are some examples of STLF driven use cases:

  • Bilanciamento della domanda e dell'offerta.Supply and demand balancing
  • Supporto alla commercializzazione dell'energia.Power trading support
  • Market making e determinazione del prezzo dell'energia.Market making (setting power price)
  • Ottimizzazione operativa della rete.Grid operational optimization
  • Risposta alla domandaDemand response
  • Previsione dei picchi nella domanda.Peak demand forecasting
  • Gestione sul lato della domanda.Demand side management
  • Bilanciamento del carico e prevenzione del sovraccarico.Load balancing and overload prevention
  • Previsione di carico a lungo termine.Long Term Load Forecasting
  • Rilevamento di guasti e anomalie.Fault and anomaly detection
  • Riduzione e livellamento dei picchi.Peak curtailment/leveling

I modelli di previsione di carico a breve termine sono basati principalmente sui dati relativi al consumo del giorno o della settimana precedente e usano le temperature previste come un predittore importante.STLF model are mostly based on the near past (last day or week) consumption data and use forecasted temperature as an important predictor. Ottenere previsioni accurate sulle temperature da un'ora a 24 ore dopo sta diventando sempre meno difficile.Obtaining accurate temperature forecast for the next hour and up to 24 hours is becoming less of a challenge now days. Questi modelli sono meno sensibili agli schemi stagionali o alle tendenze di consumo a lungo termine.These models are less sensitive to seasonal patterns or long-term consumption trends.

Le soluzioni di previsione di carico a breve termine hanno anche maggiori probabilità di generare un volume elevato di chiamate di previsione, o richieste di servizio, dal momento che vengono richiamate ogni ora e, in alcuni casi, anche con una frequenza maggiore.SLTF solutions are also likely to generate high volume of prediction calls (service requests) since they are being invoked on an hourly basis and in some cases even with higher frequency. Non è raro trovare impianti in cui ogni singola sottostazione o trasformatore è rappresentato come un modello autonomo e, di conseguenza, il volume delle richieste di previsione è ancora maggiore.It is also very common to see implantation where each individual substation or transformer is represented as a standalone model and therefore the volume of prediction requests are even greater.

Previsione di carico a lungo termine.Long Term Load Forecasting

L'obiettivo della previsione di carico a lungo termine è la previsione della domanda di energia con un orizzonte di previsione che va da una settimana a diversi mesi e, in alcuni casi, anche diversi anni.The goal of Long Term Load Forecasting (LTLF) is to forecast power demand with a time horizon ranging from 1 week to multiple months (and in some cases for a number of years). Questo orizzonte di previsione si applica principalmente a casi d'uso di pianificazione e investimento.This range of horizon is mostly applicable for planning and investment use cases.

Per gli scenari a lungo termine è importante avere a disposizione dati di qualità elevata che coprano un intervallo di almeno tre anni.For long-term scenarios, it is important to have high quality data that covers a span of multiple years (minimum 3 years). In genere questi modelli estraggono gli schemi stagionali dai dati storici e fanno uso di indicatori esterni, come ad esempio schemi meteorologici e climatici.These models will typically extract seasonality patterns from the historical data and make use of external predicators such as weather and climate patterns.

È importante chiarire che a un orizzonte di previsione più esteso può corrispondere una previsione meno precisa.It is important to clarify that the longer the forecasting horizon is, the less accurate the forecast may be. È quindi importante produrre alcuni intervalli di confidenza insieme alla previsione effettiva, per permettere ai tecnici di includere la possibile variazione nel processo di pianificazione.It is therefore important to produce some confidence intervals along with the actual forecast that would allow humans to factor the possible variation into their planning process.

Dal momento che lo scenario di utilizzo della previsione di carico a lungo termine è principalmente la pianificazione, ci si aspettano volumi di previsione molto più bassi rispetto alla previsione di carico a breve termine.Since the consumption scenario for LTLF is mostly planning, we can expect much lower prediction volumes (as compared to STLF). Tali previsioni sono in genere incorporate in strumenti di visualizzazione come Excel o Power BI e vengono richiamate manualmente dall'utente.We would typically see these predictions embedded into visualization tools such as Excel or PowerBI and be invoked manually by the user.

Confronto tra la previsione a breve termine e la previsione a lungo termineShort Term vs. Long Term Prediction

La tabella seguente mette a confronto la previsione di carico a breve e a lungo termine rispetto agli attributi più importanti:The following table compares STLF and LTLF in respect to the most important attributes:

AttributoAttribute Previsione di carico a breve termineShort Term Load Forecast Previsione di carico a lungo termineLong Term Load Forecast
Orizzonte di previsioneForecast Horizon Da un'ora a 48 oreFrom 1 hour to 48 hours Da 1 a 6 mesi o piùFrom 1 to 6 months or more
Granularità dei datiData granularity OrariaHourly Oraria o giornalieraHourly or daily
Casi d'uso tipiciTypical use cases
  • Bilanciamento di domanda/offertaDemand/Supply balancing
  • Previsione delle ore di piccoPick hour forecasting
  • Risposta alla domandaDemand response
  • Pianificazione a lungo termineLong term planning
  • Pianificazione degli asset della reteGrid assets planning
  • Pianificazione delle risorseResource planning
Predittori tipiciTypical predictors
  • Giorno o settimanaDay or week
  • Ora del giornoHour of day
  • Temperatura orariaHourly temperature
  • Mese dell'annoMonth of year
  • Giorno del meseDay of month
  • Condizioni climatiche e temperatura a lungo termineLong term temperature and climate
Intervallo di dati storiciHistorical data range Da due a tre anni di datiTwo to three years' worth of data Da cinque a dieci anni di datiFive to 10 years' worth of data
Precisione tipicaTypical accuracy MAPE* pari al 5% o inferioreMAPE* of 5% or lower MAPE* pari al 25% o inferioreMAPE* of 25% or lower
Frequenza di previsioneForecast frequency Ogni ora oppure ogni 24 oreProduced every hour or every 24 hours Mensile, trimestrale o annualeProduced once monthly, quarterly or yearly

*MAPE: errore medio assoluto percentuale.*MAPE – Mean Average Percent Error

Come si può notare dalla tabella, la distinzione tra scenari di previsione a breve e lungo termine è molto importante dal momento che rappresentano esigenze commerciali diverse e possono avere schemi di distribuzione e consumo differenti.As can be seen from this table, it is quite important to distinguish between the short and the long term forecasting scenarios as these represent different business needs and may have different deployment and consumption patterns.

Caso d'uso di esempio 1: eSmart Systems - Ottimizzazione del sovraccaricoExample Use Case 1: eSmart Systems – Overload optimization

Tra i compiti importanti di una smart grid c'è quello di eseguire l'ottimizzazione e la regolazione in modo dinamico e costante in base agli schemi di variazione dei consumi.An important role of a smart grid is to dynamically and constantly optimize and adjust for the changing consumption patterns. Il consumo energetico può essere influenzato da cambiamenti a breve termine causati principalmente da variazioni della temperatura. Ad esempio, i maggiori consumi dovuti all'uso del riscaldamento o dell'aria condizionata.Power consumption can be impacted by short-term changes that are mainly caused by temperature fluctuations (e.g., more power is used for air condition or heating). Allo stesso tempo, il consumo energetico è influenzato anche da tendenze a lungo termine.At the same time, power consumption is also influenced by long-term trends. Sono inclusi, ad esempio, effetti stagionali, festività nazionali, aumento del consumo a lungo termine e persino fattori economici come l'indice al consumo, il prezzo del greggio e il PIL.These may include seasonality effects, national holidays, long-term consumption growth, and even economic factors such as consumer index, oil price, and GDP.

In questo caso d'uso eSmart Systems vuole distribuire una soluzione basata sul cloud che consenta di prevedere la propensione a una situazione di sovraccarico per una data sottostazione della rete.In this use case, eSmart wanted to deploy a cloud-based solution that enables predicting the propensity of an overload situation on any given substation of the grid. In particolare, eSmart Systems vuole identificare le sottostazioni con una maggiore probabilità di sovraccarico nell'ora successiva, per poter intervenire immediatamente ed evitare o risolvere tale situazione.In particular, eSmart wanted to identify substations that are likely to overload within the next hour, so an immediate action could be taken to avoid or resolve that situation.

Una previsione rapida e accurata richiede l'implementazione di tre modelli predittivi:An accurate and fast performing prediction requires implementation of three predictive models:

  • Modello a lungo termine, che consente di prevedere il consumo energetico in ogni sottostazione nelle settimane o nei mesi successivi.Long term model that enables forecasting of power consumption on each substation during the next few weeks or months
  • Modello a breve termine, che consente di prevedere una situazione di sovraccarico in una determinata sottostazione nell'ora successiva.Short term model that enables prediction of overload situation on a given substation during the next hour
  • Modello di temperatura, che consente di prevedere le temperature future in più scenari.Temperature model that provides forecasting of future temperature over multiple scenarios

L'obiettivo del modello a lungo termine è classificare le sottostazioni in base alla relativa propensione al sovraccarico, data la capacità di trasmissione dell'energia elettrica, nella settimana o nel mese successivo.The objective of the long-term model is to rank the substations by their propensity to overload (given their power transmission capacity) during the next week or month. Ciò consente la creazione di un breve elenco di sottostazioni da usare come input per la previsione a breve termine.This allows the creation of a short list of substations that would serve as an input for the short-term prediction. Dal momento che la temperatura è un predittore importante per il modello a lungo termine, è necessario produrre costantemente previsioni di temperatura multi-scenario e inserirle come input nel modello a lungo termine.As temperature is an important predictor for the long-term model, there is a need to constantly produce multi-scenario temperature forecasts and feed them as input into to the long-term model. Viene quindi richiamata la previsione a breve termine per prevedere quale sottostazione ha più probabilità di sovraccarico nell'ora successiva.The short term forecast is then invoked to predict which substation is likely to overload over the next hour.

I modelli a breve e a lungo termine vengono distribuiti singolarmente per ogni sottostazione.The short-term and long-term models are deployed individually per each substation. L'esecuzione pratica di questi modelli richiede quindi un'orchestrazione estesa.Therefore, the practical execution of these models requires extensive orchestration. Per ottenere una maggiore precisione della previsione a breve termine, è possibile usare un modello più granulare dedicato per ogni ora del giorno.To gain higher prediction accuracy in the short term, a more granular model is dedicated for each hour of the day. Tutti questi modelli vengono eseguiti con cadenza oraria e terminano l'esecuzione in pochi minuti per dare tempo sufficiente per rispondere e adottare le misure preventive necessarie.All these models are executed every hour and finish execution within a few minutes to allow sufficient time to respond and take preventive actions if needed. Questa raccolta di modelli viene mantenuta aggiornata attraverso la ripetizione periodica del training con i dati più recenti.This collection of models is kept up-to-date by periodical retraining using the most recent data.

Altre informazioni su questo caso d'uso sono disponibili qui.More information about this use case can be found here.

Criteri di qualificazione dei casi d'uso - PrerequisitiUse Case Qualification Criteria – Prerequisites

Il punto di forza di Cortana Intelligence è la grande capacità di distribuire e ridimensionare soluzioni incentrate sul Machine Learning.The main strength of Cortana Intelligence is in its powerful ability to deploy and scale machine learning centric solutions. È progettato per supportare l'esecuzione simultanea di migliaia di previsioni.It is designed to support thousands of predictions that are executed concurrently. Consente la scalabilità automatica in base ai cambiamenti dello schema di consumo.It can automatically scale to meet a changing consumption pattern. La soluzione è quindi incentrata sulla precisione e sulle prestazioni di calcolo.A solution's focus therefore, is on accuracy and computational performance. Si prenda, ad esempio, un'azienda di pubblici servizi interessata alla produzione di una previsione accurata della domanda di energia per l'ora successiva e per ogni ora del giorno.For example, a utility company is interested in producing accurate energy demand forecast for the next hour, and for each hour of the day. È meno interessante sapere perché la domanda viene prevista come tale, dato che è il modello stesso a occuparsi di questo aspetto.On the other hand, we are less interested in answering the question of why the demand is predicted to be as it is (the model itself will take care of that).

È quindi importante tenere presente che non tutti i casi d'uso e i problemi aziendali possono essere risolti in modo efficace con l'uso dell'apprendimento automatico.It is therefore important to realize that not all use cases and business problems can be effectively solved using machine learning.

Cortana Intelligence e Machine Learning possono risultare molto efficaci per la risoluzione di un problema aziendale quando sono soddisfatti i criteri seguenti:Cortana Intelligence and machine learning could be highly effective in solving a given business problem when the following criteria are met:

  • Il problema aziendale è di natura predittiva .The business problem in hand is predictive in nature. Un esempio di caso d'uso predittivo è un'azienda di pubblici servizi che voglia prevedere il carico elettrico in una determinata sottostazione nell'ora successiva.A predictive use case example is a utility company that would like to predict power load on a given substation during the next hour. L'analisi e la classificazione dei fattori che storicamente hanno determinato la domanda sarebbe, invece, di natura descrittiva e quindi meno applicabile.On the other hand, analyzing and ranking drivers of historical demand would be descriptive in nature and therefore less applicable.
  • Esiste un chiaro percorso da seguire quando la previsione è disponibile.There is a clear path of action to be taken once the prediction is available. Ad esempio, una previsione di sovraccarico in una sottostazione nell'ora successiva può attivare un'azione preventiva di riduzione del carico associato a tale sottostazione e quindi prevenire il problema.For example, predicting an overload on a substation during the next hour can trigger a proactive action of reducing load that is associated with that substation and thus potentially preventing an overload.
  • Il caso d'uso rappresenta un tipo di problema tipico che, dopo la risoluzione, può aprire la strada alla risoluzione di altri casi d'uso simili.The use case represents a typical type of problem such that when solved it can pave the way to solving other similar use cases.
  • Il cliente può impostare obiettivi quantitativi e qualitativi per illustrare l'implementazione di una soluzione con esito positivo.The customer can set quantitative and qualitative goals to demonstrate a successful solution implementation. Un obiettivo quantitativo valido per la previsione della domanda di energia potrebbe essere la soglia di precisione richiesta, ad esempio specificando che l'errore massimo consentito è del 5%. Nella previsione del sovraccarico di una sottostazione, invece, la precisione, ovvero la percentuale di veri positivi, e il richiamo, ovvero la quantità di veri positivi, dovrebbero essere superiori a una determinata soglia.For example, a good quantitative goal for energy demand forecast would be the required accuracy threshold (e.g., up to 5% error is allowed) or when predicting substation overload then the precision (rate of true positives) and recall (extent of true positives) should be above a given threshold. Questi obiettivi devono derivare dagli obiettivi aziendali del cliente.These goals should be derived from the customer's business goals.
  • Esiste un chiaro scenario di integrazione con il flusso di lavoro aziendale della società.There is a clear integration scenario with the company's business workflow. Ad esempio, la previsione di carico di una sottostazione può essere integrata nel centro di controllo della rete per consentire le attività di prevenzione del sovraccarico.For example, the substation load forecast can be integrated into the grid control center to allow overload prevention activities.
  • Il cliente ha dati di qualità sufficiente pronti all'uso per supportare il caso d'uso. Per altre informazioni, vedere la sezione Qualità dei dati di questo studio.The customer has ready to use data with sufficient quality to support the use case (see more in the next section, Data Quality, of this playbook).
  • Il cliente usa un'architettura dei dati basata sul cloud o il Machine Learning basato sul cloud, ad esempio Azure ML e altri componenti della suite Cortana Intelligence.The customer embraces cloud centric data architecture or cloud-based machine learning, including Azure ML and other Cortana Intelligence Suite components.
  • Il cliente è disposto a specificare un flusso di dati end-to-end che agevola il recapito dei dati nel cloud con regolarità ed è disposto a rendere operativa la soluzione.The customer is willing to establish an end to end data flow that facilities the delivery of data into the cloud on an ongoing basis, and is willing to operationalize the solution.
  • Il cliente è pronto a destinare risorse dedicate che saranno coinvolte attivamente durante l'implementazione del progetto pilota iniziale, in modo che al termine sia possibile trasferire al cliente la competenza e la proprietà della soluzione.The customer is ready to dedicate resources who will be actively engaged during the initial pilot implementation so that knowledge and ownership of the solution can be transferred to the customer upon successful completion.
  • La risorsa del cliente deve essere un esperto di dati, preferibilmente un data scientist.The customer resource should be a skilled data professional, preferably a data scientist.

La qualificazione di un caso d'uso in base ai criteri appena descritti può migliorarne notevolmente i tassi di successo e stabilire un buon punto di partenza per l'implementazione di casi d'uso futuri.Qualification of a use case based on the above criteria can greatly improve the success rates of a use case and establish a good beachhead for the implementation of future use cases.

Soluzioni basate sul cloudCloud-Based Solutions

La suite Cortana Intelligence in Azure è un ambiente integrato che risiede nel cloud.Cortana Intelligence Suite on Azure is an integrated environment that resides in the cloud. La distribuzione di una soluzione di analisi avanzata in un ambiente cloud offre notevoli vantaggi alle aziende e, allo stesso tempo, può rappresentare un grande cambiamento per quelle aziende che usano ancora soluzioni IT locali.The deployment of an advanced analytics solution in a cloud environment holds substantial benefits for businesses and at the same time may mean big change for companies that still use on-premises IT solutions. Nel settore dell'energia c'è una chiara tendenza alla graduale migrazione delle operazioni nel cloud.Within the energy sector, there is a clear trend of gradual migration of operations into the cloud. Questa tendenza va di pari passo con lo sviluppo delle smart grid, discusso nella sezione Tendenze del settore.This trend goes hand in hand along with the development of the smart grid as discussed above, in Industry Trends. Dato che questo studio è incentrato su una soluzione basata sul cloud nel settore dell'energia, è importante illustrare i vantaggi e altre considerazioni relative alla distribuzione di una soluzione basata sul cloud.As this playbook is focused on a cloud-based solution in the energy domain, it is important to explain the benefits and other considerations of deploying a cloud-based solution.

Il vantaggio principale di una soluzione basata sul cloud è probabilmente il costo.Perhaps the biggest advantage of a cloud-based solution is the cost. Dal momento che la soluzione fa uso di componenti distribuiti nel cloud, non c'è una componente COGS (costo del venduto) o costi iniziali associati.As a solution makes use of cloud-deployed components, there is no upfront costs or COGS (Cost of Goods Sold) component costs associated with it. Ciò significa che non è necessario investire in hardware, software e manutenzione IT, con una riduzione sostanziale del rischio d'impresa.That means that there is no need to invest in hardware, software, and IT maintenance, and therefore there is a substantial reduction in business risk.

Un altro vantaggio importante è la struttura dei costi con pagamento in base al consumo delle soluzioni basate sul cloud.Another important advantage is the pay-as-you-go cost structure of cloud-based solutions. I server basati sul cloud destinati al calcolo o all'archiviazione possono essere distribuiti e ridimensionati in base alle necessità.Cloud-based servers for computing or storage can be deployed and scaled on a just-as-needed basis. Questa è la vera efficienza economica di una soluzione basata sul cloud.This represents the cost efficiency advantage of a cloud-based solution.

Infine, non è necessario investire nella manutenzione IT o nello sviluppo futuro dell'infrastruttura, perché è tutto incluso nell'offerta basata sul cloud.Finally, there is no need for investing in IT maintenance or future infrastructure development as all this is part of the cloud-based offering. Sotto questo aspetto, la suite Cortana Intelligence include servizi di altissimo livello e l'offerta è in continua evoluzione.To that extent, Cortana Intelligence Suite includes the best in class services and its road map keeps evolving. Nuove funzionalità e nuovi componenti vengono introdotti e sviluppati continuamente.New features, components, and capabilities are constantly being introduced and evolve.

Per le aziende che hanno appena iniziato la transizione al cloud, è consigliabile adottare un approccio graduale implementando un piano di migrazione cloud.For a company that is just starting its transition into the cloud, we are highly recommending to take a gradual approach by implementing a cloud migration road map. Per le aziende che operano nel settore dell'energia e dei pubblici servizi, i casi d'uso illustrati in questo studio possono rappresentare un'ottima opportunità per l'introduzione di soluzioni di analisi predittiva nel cloud.We believe that for utilities and companies in the energy domain, the use cases that are discussed in this playbook represent an excellent opportunity for piloting predictive analytics solutions in the cloud.

Considerazioni per la motivazione dei casi aziendaliBusiness Case Justification Considerations

In molti casi il cliente può essere interessato a una motivazione aziendale per un caso d'uso specifico in cui una soluzione basata sul cloud e Machine Learning siano componenti importanti.In many cases, the customer may be interested in making a business justification for a given use case in which a cloud-based solution and Machine Learning are important components. A differenza di una soluzione locale, nel caso di una soluzione basata sul cloud i costi iniziali sono minimi e la maggior parte degli elementi di costo è associata all'uso effettivo.Unlike an on-premises solution, in the case of a cloud-based solution, the upfront cost component is minimal and most of the cost elements are associated with actual usage. Per la distribuzione di una soluzione di previsione energetica nella suite Cortana Intelligence, è possibile integrare più servizi in un'unica struttura dei costi comune.When it comes to deploying an energy forecasting solution on Cortana Intelligence Suite, multiple services can be integrated with a single common cost structure. Ad esempio, è possibile usare database comeSQL Azureper archiviare i dati non elaborati, mentre per le previsioni effettive viene usato Azure ML per ospitare i servizi di previsione.For example, databases (e.g., SQL Azure) can be used to store the raw data and then for the actual forecasts Azure ML is used to host the forecasting services. In questo esempio la struttura dei costi potrebbe includere componenti transazionali e di archiviazione.In this example, the cost structure could include storage and transactional components.

È importante avere una buona conoscenza del valore commerciale di una previsione della domanda di energia, che sia a breve o a lungo termine.On the other hand, one should have a good understanding of the business value of operating an energy demand forecasting (short or long term). Di fatto, è importante conoscere il valore commerciale di ogni operazione di previsione.In fact, it is important to realize the business value of each forecast operation. Ad esempio, la previsione accurata del carico elettrico per le 24 ore successive può evitare la sovrapproduzione e contribuire a prevenire i sovraccarichi della rete. Tutto questo può essere quantificato in termini di risparmio economico su base giornaliera.For example, accurately forecasting power load for the next 24 hours can prevent overproduction or can help prevent overloads on the grid and this can be quantified in terms of financial savings on a daily basis.

Di seguito è riportata una formula di base per il calcolo del vantaggio economico della soluzione di previsione della domanda: Formula di base per il calcolo del vantaggio economico della soluzione di previsione della domandaA basic formula for calculating the financial benefit of demand forecast solution would be: Basic formula for calculating the financial benefit of demand forecast solution

Dal momento che la suite Cortana Intelligence offre un modello tariffario con pagamento in base al consumo, non è necessario inserire una componente di costo fisso in questa formula.Since Cortana Intelligence Suite provides a pay-as-you-go pricing model, there is no need for incurring a fixed cost component to this formula. La formula può essere calcolata su base giornaliera, mensile o annuale.This formula can be calculated on a daily, monthly, or annual basis.

I piani tariffari correnti della suite Cortana Intelligence e di Azure ML sono disponibili qui.Current Cortana Intelligence Suite and Azure ML pricing plans can be found here.

Processo di sviluppo di soluzioniSolution Development Process

Il ciclo di sviluppo di una soluzione per la previsione della domanda di energia prevede in genere quattro fasi, in ognuna delle quali si usano tecnologie e servizi basati sul cloud all'interno della suite Cortana Intelligence.The development cycle of an energy demand forecasting solution typically involves 4 phases, in all of which we make use of cloud-based technologies and services within the Cortana Intelligence Suite.

Il ciclo è illustrato nel diagramma seguente:This is illustrated in the following diagram:

Ciclo della smart grid

Di seguito viene descritto questo processo in quattro fasi:The following paragraph describes this 4 step process:

  1. Raccolta dei dati: qualsiasi soluzione basata sull'analisi avanzata si fonda sui dati. Vedere in proposito la sezione Informazioni sui dati.Data Collection – Any advanced analytics based solution relies on data (see Data Understanding). In particolare, la previsione e l'analisi predittiva si basano su un flusso di dati dinamico e continuo.Specifically, when it comes to predictive analytics and forecasting, we rely on ongoing, dynamic flow of data. Per la previsione della domanda di energia, questi dati possono derivare direttamente da contatori intelligenti o essere già aggregati in un database locale.In the case of energy demand forecasting, this data can be sourced directly from smart meters, or be already aggregated on an on-prem database. È possibile basarsi anche su altre origini dati esterne, ad esempio le condizioni meteorologiche e la temperatura.We also rely on other external sources of data such as weather and temperature. Questo flusso di dati continuo deve essere orchestrato, pianificato e archiviato.This ongoing flow of data must be orchestrated, scheduled, and stored. Azure Data Factory è lo strumento principale per eseguire questa attività.Azure Data Factory (ADF) is our main workhorse for accomplishing this task.
  2. Modellazione : per ottenere previsioni energetiche accurate e affidabili è necessario sviluppare, eseguire il training, e gestire un modello per l'uso dei dati storici e l'estrazione di schemi significativi e predittivi dai dati.Modeling – For accurate and reliable energy forecasts, one must develop (train) and maintain a great model that makes use of the historical data and extracts the meaningful and predictive patterns in the data. L'area di Machine Learning (ML) sta crescendo rapidamente grazie al continuo sviluppo di algoritmi sempre più avanzati.The area of Machine Learning (ML) has been growing rapidly with more advanced algorithms being routinely developed. Azure ML Studio offre un'esperienza utente eccezionale che permette di usare gli algoritmi di apprendimento automatico più avanzati all'interno di un flusso di lavoro completo.Azure ML Studio provides a great user experience that helps utilize the most advanced ML algorithms within a complete work flow. Il flusso di lavoro, illustrato di seguito in un diagramma di flusso intuitivo, include la preparazione dei dati, l'estrazione delle funzionalità, la modellazione e la valutazione del modello.That workflow is illustrated in an intuitive flow diagram and includes the data preparation, feature extraction, modeling, and model evaluation. L'utente può inserire centinaia di modelli diversi inclusi in questo ambiente.The user can pull in hundreds of various models that are included in this environment. Al termine di questa fase, un data scientist avrà a disposizione un modello di lavoro interamente valutato e pronto per la distribuzione.By the end of this phase a data scientist will have a working model that is fully evaluated and ready for deployment.

    Il diagramma seguente illustra un flusso di lavoro tipico:The following diagram is an illustration of a typical workflow:

    Flusso di lavoro di modellazione

  3. Distribuzione : con un modello di lavoro a disposizione, il passaggio successivo è la distribuzione.Deployment – With a working model in hand, the next step is deployment. Il modello viene convertito in un servizio Web che espone un'API RESTful che può essere richiamata contemporaneamente tramite Internet dai vari client di utilizzo.Here the model is converted into a web service that exposes a RESTful API that can be concurrently invoked over the Internet from various consumption clients. Azure ML consente la semplice distribuzione di un modello direttamente da Azure ML Studio, con un solo clic.Azure ML provides a simple way of deploying a model directly from the Azure ML Studio with a single click of a button. L'intero processo di distribuzione avviene in background.The entire deployment process happens under the hood. Questa soluzione consente la scalabilità automatica in base alle esigenze di consumo.This solution can automatically scale to meet the required consumption.
  4. Consumo : in questa fase si fa effettivamente uso del modello di previsione per generare previsioni.Consumption – In this phase, we actually make use of the forecasting model to produce predictions. Il consumo può essere determinato da un'applicazione utente,ad esempioun dashboard, o direttamente da un sistema operativo, ad esempio un sistema di bilanciamento della domanda e dell'offerta o una soluzione di ottimizzazione della rete.The consumption can be driven from a user application (e.g., dashboard) or directly from an operational system such as demand/supply balancing system or a grid optimization solution. Più casi d'uso possono essere determinati da un unico modello.Multiple use cases can be driven from a single model.

Informazioni sui datiData Understanding

Dopo aver discusso le considerazioni commerciali relative a una soluzione per la previsione della domanda di energia nella sezione Informazioni commerciali, verrà ora discussa la parte relativa ai dati.After covering the business considerations (see Business Understanding) of an energy demand forecasting solution, we are now ready to discuss the data part. Qualsiasi soluzione di analisi predittiva si basa su dati affidabili.Any predictive analytics solution relies on reliable data. Per la previsione della domanda di energia ci si basa su dati storici relativi al consumo con vari livelli di granularità.For energy demand forecasting, we rely on historical consumption data with various levels of granularity. Tali dati storici vengono trattati come dati non elaborati.That historical data is used as the raw material. Vengono sottoposti a un'attenta analisi in cui il data scientist identifica i predittori, anche detti funzionalità, da inserire in un modello che poi genererà le previsioni richieste.It will undergo a careful analysis in which the data scientist will identify predictors (also referred to as features) that can be put into a model which will eventually generate the required forecasts.

In questa sezione vengono descritti i vari passaggi e le considerazioni che permettono di comprendere i dati e come ottenerli in un formato utilizzabile.In the rest of this section, we will describe the various steps and considerations for understanding the data and how to bring it to a usable form.

Ciclo di sviluppo del modelloThe Model Development Cycle

Per generare un buon modello di previsione è necessario eseguire un'attenta preparazione e pianificazione.Producing good forecasting models requires some careful preparation and planning. Suddividere il processo di modellazione in più passaggi e concentrarsi su un passaggio alla volta può migliorare notevolmente il risultato dell'intero processo.Breaking down the modeling process into multiple steps and focusing on one step at a time could dramatically improve the outcome of the entire process.

Il diagramma seguente illustra come è possibile suddividere in più passaggi il processo di modellazione:The following diagram illustrates how the modeling process could be broken down into multiple steps:

Ciclo di sviluppo del modello

Il ciclo è costituito da sei passaggi:As can be seen the cycle consists of six steps:

  • Formulazione del problema.Problem formulation
  • Inserimento ed esplorazione dei dati.Data ingestion and data exploration
  • Preparazione dei dati e progettazione di funzionalità.Data preparation and feature engineering
  • ModellazioneModeling
  • Valutazione del modello.Model evaluation
  • Sviluppo.Development

La parte restante di questa sezione è dedicata alla descrizione dei singoli passaggi e dei relativi elementi da considerare.In the rest of this section we will describe the individual steps and items to consider at each step.

Formulazione del problema.Problem Formulation

La formulazione del problema è probabilmente il passaggio più importante da intraprendere prima di implementare qualsiasi soluzione di analisi predittiva.We can consider the problem formulation as the most critical step one needs to take prior to implementing any predictive analytics solution. In questo passaggio il problema aziendale viene trasformato e scomposto in elementi specifici che possono essere risolti usando tecniche di modellazione e dati.Here we would transform the business problem and decompose it to specific elements which can be solved by using data and modeling techniques. È buona norma formulare il problema come una serie di domande alle quali si cerca risposta.It is a good practice to formulate the problem as a set of questions we would like to answer. Di seguito sono riportate alcune possibili domande applicabili anche all'ambito della previsione della domanda di energia:Here are some possible questions that might be applicable within the scope of energy demand forecasting:

  • Qual è il carico previsto in una singola sottostazione nell'ora o nel giorno successivo?What is the expected load on an individual substation in the next hour or day?
  • A che ora del giorno si verifica il picco della domanda nella rete?At what time of the day will my grid experience peak demand?
  • Qual è la probabilità che la rete riesca a sostenere il carico di picco previsto?How likely is my grid to sustain the expected peak load?
  • Quanta energia deve generare la centrale elettrica durante ogni ora del giorno?How much power should the power station generate during each hour of the day?

La formulazione di queste domande porta l'attenzione sui dati corretti da ottenere e permette di implementare una soluzione completamente in linea con le esigenze aziendali.Formulating these questions allows us to focus on getting the right data and implementing a solution that is fully aligned with the business problem at hand. È anche possibile impostare alcune metriche chiave che consentono di valutare le prestazioni del modello.Furthermore, we can then set some key metrics that allow us to evaluate the performance of the model. Ad esempio, è possibile impostare la precisione richiesta per la previsione e il margine di errore accettabile per l'azienda.For example, how accurate should the forecast be and what is the range of error that would still be acceptable by the business?

Origini datiData Sources

Le smart grid moderne raccolgono dati da vari componenti e parti della rete.The modern smart grid collects data from various parts and components of the grid. Questi dati rappresentano i diversi aspetti del funzionamento e dell'utilizzo della rete elettrica.This data represents various aspects of the operation and the utilization of the power grid. Nell'ambito della previsione della domanda di energia questa discussione prende in considerazione le origini dati che riflettono il consumo effettivo.Within the scope of the energy demand forecast, we are limiting the discussion on data sources that reflect the actual demand consumption. Un'origine dati importante per il consumo energetico è costituita dai contatori intelligenti.One important source of energy consumption are smart meters. Le aziende di pubblici servizi in tutto il mondo stanno rapidamente distribuendo i contatori intelligenti agli utenti.Utilities around the globe are rapidly deploying smart meters for their consumers. I contatori intelligenti registrano il consumo energetico effettivo e inoltrano continuamente i dati all'azienda.Smart meters record the actual power consumption and constantly relay this data back to the utility company. I dati vengono raccolti e inviati a intervalli fissi compresi tra cinque minuti e un'ora.Data is collected and sent back at a fixed interval, ranging from every 5 minutes to 1 hour. I contatori intelligenti più avanzati possono essere programmati in modalità remota per controllare e bilanciare il consumo effettivo nell'abitazione.More advanced smart meters can be programmed remotely to control and balance the actual consumption within a household. I dati forniti dai contatori intelligenti sono relativamente affidabili e includono un timestamp.Smart meter data is relatively reliable and includes a time stamp. Questo li rende un elemento importante per la previsione della domanda.That makes it an important ingredient for demand forecast. I dati dei contatori possono essere aggregati e riepilogati a vari livelli nella topologia della rete, in base a trasformatore, sottostazione, area e così via. È quindi possibile selezionare il livello di aggregazione necessario per compilare il relativo modello di previsione.Meter data can be aggregated (summed up) at various levels within the grid topology: transformer, substation, region, etc. We can then pick the required aggregation level to build a forecasting model for it. Se, ad esempio, l'azienda di pubblici servizi vuole prevedere il carico futuro in ognuna delle sottostazioni della rete, è possibile aggregare i dati di tutti i contatori per ogni singola sottostazione e usarli come input per il modello di previsione.For example, if the utility company would like to forecast future load on each of its grid substations then all meters' data can be aggregated for each individual substation and used as an input for the forecasting model. I contatori intelligenti sono considerati un'origine dati interna.We refer to smart meters as an internal data source.

Perché una previsione della domanda di energia sia affidabile è necessario avere a disposizione anche origini dati esterne.A reliable energy demand forecast will also rely on other external data sources. Un fattore importante che influisce sul consumo energetico sono le condizioni meteorologiche e, in particolare, la temperatura.One important factor that affects power consumption is the weather, or more precisely the temperature. I dati storici mostrano una stretta correlazione tra temperatura esterna e consumo energetico.Historical data shows strong correlation between outside temperature and power consumption. Con il caldo estivo aumenta il consumo dovuto ai condizionatori d'aria, mentre con il freddo invernale il consumo è dovuto ai sistemi di riscaldamento.During hot summer days, consumers make use of their air conditioners and during the winter power on heating systems. È quindi molto importante avere a disposizione una fonte affidabile di dati storici sulle temperature in corrispondenza della posizione della rete.A reliable source of historical temperatures at the grid location is therefore key. Una previsione accurata delle temperature è un altro predittore del consumo energetico.Furthermore, we also rely on accurate forecast of temperature as a predictor of power consumption.

Anche altre origini dati esterne possono contribuire alla compilazione di modelli di previsione della domanda di energia.Other external data sources can also help in building energy demand forecast models. Sono inclusi,ad esempio, i cambiamenti climatici a lungo termine, gli indici economici come il PIL e così via.These may include long term climate changes, economical indexes (e.g., GDP), and others. In questo documento non vengono trattate le altre origini dati.In this document we will not include these other data sources.

Struttura dei datiData Structure

Dopo aver identificato le origini dati necessarie, occorre verificare che i dati non elaborati raccolti includano le funzionalità dei dati corrette.After identifying the required data sources, we would like to ensure that raw data that has been collected includes the correct data features. Per compilare un modello di previsione della domanda affidabile, è necessario assicurarsi che i dati raccolti includano elementi di dati che consentono di prevedere la domanda futura.To build a reliable demand forecast model, we would need to ensure that the data collected includes data elements that can help predict the future demand. Di seguito sono riportati alcuni requisiti di base relativi alla struttura dei dati, ovvero lo schema, per i dati non elaborati.Here are some basic requirements concerning the data structure (schema) of the raw data.

I dati non elaborati sono costituiti da righe e colonne.The raw data consists of rows and columns. Ogni misurazione è rappresentata come una singola riga di dati.Each measurement is represented as a single row of data. Ogni riga di dati include più colonne, dette anche campi o funzionalità.Each row of data includes multiple columns (also referred to as features or fields).

  1. Timestamp : il campo timestamp rappresenta l'ora effettiva in cui è stata registrata la misurazione.Time stamp – the timestamp field represents the actual time when the measurement was recorded. Deve essere conforme a uno dei formati di data/ora più comuni.It should comply with one of the common date/time formats. Devono essere incluse sia la data che l'ora.Both date and time parts should be included. Nella maggior parte dei casi non è necessario registrare l'ora fino al secondo livello di granularità.In most cases, there is no need for the time to be recorded till the second level of granularity. È importante specificare il fuso orario in cui i dati vengono registrati.It is important to specify the time zone in which the data is recorded.
  2. ID contatore : questo campo identifica il contatore o il dispositivo di misurazione.Meter ID - This field identifies the meter or the measurement device. È una variabile di categoria e può essere una combinazione di numeri e lettere.It is a categorical variable and can be a combination of digits and characters.
  3. Valore di consumo: il consumo effettivo in una specifica data/ora.Consumption value – This is the actual consumption at a given date/time. Il consumo può essere misurato in chilowattora (kWh) o in qualsiasi altra unità di misura,The consumption can be measured in kWh (kilowatt-hour) or any other preferred units. purché questa rimanga coerente in tutte le misurazioni dei dati.It is important to note that the measurement unit must stay consistent across all measurements in the data. In alcuni casi il consumo può essere fornito in tre fasi di alimentazione.In some cases, consumption can be supplied over 3 power phases. In tal caso è necessario raccogliere i dati relativi a tutte le fasi di consumo indipendenti.In that case we would need to collect all the independent consumption phases.
  4. Temperatura: in genere la temperatura viene raccolta da un'origine indipendente,Temperature – the temperature is typically collected from an independent source. ma deve essere compatibile con i dati sul consumo.However, it should be compatible with the consumption data. Deve includere un timestamp come descritto in precedenza che ne consente la sincronizzazione con i dati sul consumo effettivo.It should include a timestamp as described above that will allow it to be synchronized with the actual consumption data. Il valore della temperatura può essere specificato in gradi Celsius o gradi Fahrenheit, ma deve rimanere coerente in tutte le misurazioni.The temperature value can be specified in degrees Celsius or Fahrenheit but should stay consistent across all measurements.
  5. Posizione : il campo della posizione è in genere associato al luogo in cui sono stati raccolti i dati di temperatura.Location – The location field is typically associated with the place where the temperature data has been collected. Può essere rappresentata come codice di avviamento postale o sotto forma di latitudine/longitudine.It can be represented as a zip-code number or in latitude/longitude (lat/long) format.

Le tabelle seguenti illustrano esempi di dati sul consumo e sulla temperatura in un formato valido:The following tables shows examples of a good consumption and temperature data format:

DataDate OraTime ID contatoreMeter ID Fase 1Phase 1 Fase 2Phase 2 Fase 3Phase 3
7/1/20157/1/2015 10:00:0010:00:00 ABC1234ABC1234 7.07.0 2.12.1 5.35.3
7/1/20157/1/2015 10:00:0110:00:01 ABC1234ABC1234 7.17.1 2.22.2 4.34.3
7/1/20157/1/2015 10:00:0210:00:02 ABC1234ABC1234 6.06.0 2.12.1 4.04.0
DataDate OraTime PosizioneLocation TemperaturaTemperature
7/1/20157/1/2015 10:00:0010:00:00 1124211242 24.424.4
7/1/20157/1/2015 10:00:0110:00:01 1124211242 24.424.4
7/1/20157/1/2015 10:00:0210:00:02 1124211242 24.524.5

Come illustrato sopra, questo esempio include tre valori diversi per il consumo associati a tre fasi di alimentazione.As can be seen above, this example includes 3 different values for consumption associated with 3 power phases. I campi di data e ora sono separati, ma possono anche essere combinati in un'unica colonna.Also, note that the date and time fields are separated, however they can also be combined into a single column. In questo caso la colonna della posizione è rappresentata nel formato CAP a cinque cifre e la temperatura è espressa in gradi Celsius.In this case the location column is represented in a 5-digit zip-code format and the temperature in a degree Celsius format.

Formato datiData Format

Cortana Intelligence Suite supporta i formati di dati più comuni come CSV, TSV, JSON e così via. È importante che il formato dati rimanga coerente per l'intero ciclo di vita del progetto.Cortana Intelligence Suite can support the most common data formats like CSV, TSV, JSON, etc. It is important that the data format stays consistent for the entire life cycle of the project.

Inserimento di datiData Ingestion

Dal momento che la previsione della domanda di energia viene eseguita in modo frequente e costante, è necessario garantire il flusso dei dati non elaborati attraverso un processo di inserimento dati solido e affidabile.Since energy demand forecast is constantly and frequently predicted, we must ensure that the raw data is flowing by means of a solid and reliable data ingestion process. Il processo di inserimento deve garantire la disponibilità dei dati non elaborati per la previsione quando richiesto.The ingestion process must guarantee that the raw data is available for the forecasting process at the required time. Ciò significa che la frequenza di inserimento dati deve essere maggiore della frequenza di previsione.That implies that the data ingestion frequency should be greater than the forecasting frequency.

Ad esempio: se la soluzione di previsione della domanda genera una nuova previsione ogni mattina alle 8.00, è necessario assicurarsi che tutti i dati raccolti durante le 24 ore precedenti siano stati inseriti fino a quel momento, inclusi i dati dell'ultima ora.For example: If our demand forecasting solution would generate a new forecast at 8:00AM on a daily basis then we need to ensure that all the data that has been collected during the last 24 hours has been fully ingested till that point and has to even include the last hour of data.

A questo scopo, la suite Cortana Intelligence offre diversi modi per supportare un processo di inserimento dati affidabile.In order to accomplish this, Cortana Intelligence Suite offers various ways to support a reliable data ingestion process. Questo punto verrà approfondito nella sezione Distribuzione di questo documento.This will be further discussed in the Deployment section of this document.

Qualità dei datiData Quality

L'origine dei dati non elaborati necessaria per eseguire previsioni della domanda affidabili e accurate deve soddisfare alcuni criteri di base relativi alla qualità dei dati.The raw data source that is required for performing reliable and accurate demand forecasting must meet some basic data quality criteria. Anche se è possibile usare metodi statistici avanzati per compensare un eventuale problema di qualità dei dati, è necessario assicurarsi che la qualità dei nuovi dati inseriti sia superiore a una certa soglia di base.Although advanced statistical methods can be used to compensate for some possible data quality issue, we still need to ensure that we are crossing some base data quality threshold when ingesting new data. Di seguito sono riportate alcune considerazioni sulla qualità dei dati non elaborati:Here are a few considerations concerning raw data quality:

  • Valore mancante : si riferisce a una situazione in cui non sono state raccolte misurazioni specifiche.Missing value – this refers to the situation when specific measurement was not collected. Il requisito di base in questo caso è che il tasso di valori mancanti non superi il 10% per un determinato periodo di tempo.The basic requirement here is that the missing value rate should not be greater than 10% for any given time period. Un singolo valore mancante dovrà essere indicato usando un valore predefinito, ad esempio "9999", e non "0" che può essere una misurazione valida.In case that a single value is missing it should be indicated by using a pre-defined value (for example: '9999') and not '0' which could be a valid measurement.
  • Precisione della misurazione : è necessario registrare in modo accurato il valore effettivo del consumo o della temperatura.Measurement accuracy – the actual value of consumption or temperature should be accurately recorded. Misurazioni poco accurate generano previsioni imprecise.Inaccurate measurements will produce inaccurate forecasts. In genere, l'errore di misurazione deve essere inferiore all'1% rispetto al valore reale.Typically, the measurement error should be lower than 1% relative to the true value.
  • Ora della misurazione : la differenza tra il timestamp effettivo dei dati raccolti e l'ora della effettiva della misurazione non deve superare i 10 secondi.Time of measurement – it is required that the actual timestamp of the data collected will not deviate by more than 10 seconds relative to the true time of the actual measurement.
  • Sincronizzazione : quando si usano più origini dati,ad esempioil consumo e la temperatura, è necessario assicurarsi che non presentino problemi di sincronizzazione.Synchronization – When multiple data sources are being used (e.g., consumption and temperature) we must ensure that there are no time synchronization issues between them. Ciò significa che la differenza tra il timestamp raccolto da due origini dati indipendenti qualsiasi non deve superare i 10 secondi.This means that the time difference between the collected timestamp from any two independent data sources should not exceed more than 10 seconds.
  • Latenza: come illustrato nella sezione Inserimento di dati, un flusso di dati affidabile e il processo di inserimento sono componenti fondamentali.Latency - As discussed above, in Data Ingestion, we are dependent on a reliable data flow and ingestion process. Per controllarli è necessario controllare la latenza dei dati.To control that we must ensure that we control the data latency. Questa è definita come la differenza tra l'ora in cui la misurazione effettiva è stata eseguita e l'ora in cui è stata caricata nell'archivio della suite Cortana Intelligence, pronta per l'uso.This is specified as the time difference between the time that the actual measurement was taken and the time at which it has been loaded into the Cortana Intelligence Suite storage and is ready for use. Per la previsione di carico a breve termine la latenza totale non deve essere maggiore di 30 minuti.For short term load forecasting the total latency should not be greater than 30 minutes. Per la previsione di carico a lungo termine la latenza totale non deve essere maggiore di un giorno.For long term load forecasting the total latency should not be greater than 1 day.

Preparazione dei dati e progettazione di funzionalità.Data Preparation and Feature Engineering

Dopo aver inserito i dati non elaborati come indicato nella sezione Inserimento di dati e averli archiviati in modo sicuro, è possibile procedere con l'elaborazione.Once the raw data has been ingested (see Data Ingestion) and has been securely stored, it is ready to be processed. La fase di preparazione dei dati consiste principalmente nel prendere i dati non elaborati e convertirli o trasformarli in un formato adatto alla fase di modellazione.The data preparation phase is basically taking the raw data and converting (transforming, reshaping) it into a form for the modeling phase. La preparazione può includere operazioni semplici, usando ad esempio la colonna di dati non elaborati con il valore misurato effettivo o valori standardizzati, oppure operazioni più complesse, come ad esempio l'uso di un operatore di ritardo.That may include simple operations such as using the raw data column as is with its actual measured value, standardized values, more complex operations such as time lagging, and others. Le colonne di dati appena create sono dette funzionalità dei dati e il relativo processo di generazione è detto progettazione di funzionalità.The newly created data columns are referred to as data features and the process of generating these is referred to as feature engineering. Al termine di questo processo sarà disponibile un nuovo set di dati derivato dai dati non elaborati che potrà essere usato per la modellazione.By the end of this process we would have a new data set that has been derived from the raw data and can be used for modeling. Durante la fase di preparazione dei dati è necessario anche inserire eventuali valori mancanti. Vedere in proposito la sezione Qualità dei dati.In addition, the data preparation phase needs to take care of missing values (see Data Quality) and compensate for them. In alcuni casi, potrebbe essere necessario normalizzare i dati per fare in modo che tutti i valori siano rappresentati in modo coerente.In some cases, we would also need to normalize the data to ensure that all values are represented in the same scale.

Questa sezione illustra alcune delle funzionalità dei dati più comuni incluse nei modelli di previsione della domanda di energia.In this section we list some of the common data features that are included in the energy demand forecast models.

Funzionalità basate sul tempo: queste funzionalità vengono derivate dai dati relativi a data e timestamp.Time driven features: These features are derived from the date/timestamp data. Tali dati vengono estratti e convertiti in funzionalità categoriche quali:These are extracted and converted into categorical features like:

  • Ora del giorno: rappresenta l'ora del giorno, accetta valori compresi tra 0 e 23.Time of day – This is the hour of the day which takes values from 0 to 23
  • Giorno della settimana: rappresenta il giorno della settimana, accetta valori compresi tra 1 (domenica) e 7 (sabato).Day of week – This represents the day of the week and takes values from 1 (Sunday) to 7 (Saturday)
  • Giorno del mese: rappresenta la data effettiva, accetta valori compresi tra 1 e 31.Day of month – This represents the actual date and can take values from 1 to 31
  • Mese dell'anno: rappresenta il mese, accetta valori compresi tra 1 (gennaio) e 12 (dicembre).Month of year – This represents the month and takes values from 1 (January) to 12 (December)
  • Fine settimana: funzionalità con valore binario che accetta i valori 0 (giorni della settimana) o 1 (fine settimana).Weekend – This is a binary value feature that takes the values of 0 for weekdays or 1 for weekend
  • Festivo: funzionalità con valore binario che accetta i valori 0 (giorni feriali) o 1 (giorni festivi).Holiday - This is a binary value feature that takes the values of 0 for a regular day or 1 for a holiday
  • Termini di Fourier: i termini di Fourier sono pesi derivati dal timestamp e vengono usati per acquisire la stagionalità, vale a dire i cicli, nei dati.Fourier terms – The Fourier terms are weights that are derived from the timestamp and are used to capture the seasonality (cycles) in the data. Dato che nei dati sono presenti più stagioni, possono essere necessari più termini di Fourier.Since we may have multiple seasons in our data we may need multiple Fourier terms. Ad esempio, se i valori della domanda hanno stagioni/cicli annuali, settimanali e giornalieri saranno necessari tre termini di Fourier.For example, demand values may have yearly, weekly, and daily seasons/cycles which will result in 3 Fourier terms.

Funzionalità di misurazione indipendenti: le funzionalità indipendenti includono tutti gli elementi di dati da usare come predittori nel modello.Independent measurement features: The independent features include all the data elements that we would like to use as predictors in our model. Qui viene esclusa la funzionalità dipendente di cui deve essere eseguita la previsione.Here we exclude the dependent feature which we would need to predict.

  • Funzione Lag: esegue lo spostamento temporale dei valori della domanda effettivi.Lag feature – these are time shifted values of the actual demand. Ad esempio, in caso di dati con cadenza oraria, la funzione Lag 1 conserva il valore della domanda nell'ora precedente rispetto al timestamp corrente.For example, lag 1 features will hold the demand value in the previous hour (assuming hourly data) relative to the current timestamp. Analogamente è possibile aggiungere le funzioni Lag 2, Lag 3 e così via. La combinazione effettiva delle funzioni Lag usate viene stabilita durante la fase di modellazione attraverso la valutazione dei risultati del modello.Similarly, we can add lag 2, lag 3, etc. The actual combination of lag features that are used are determined during the modeling phase by evaluation of the model results.
  • Tendenza a lungo termine: rappresenta la crescita lineare della domanda negli anni.Long term trending – this feature represents the linear growth in demand between years.

Funzionalità dipendente: la funzionalità dipendente è la colonna di dati di cui il modello deve eseguire la previsione.Dependent feature: The dependent feature is the data column which we would like our model to predict. Con l' apprendimento supervisionatoè necessario prima di tutto eseguire il training del modello usando le funzionalità dipendenti, anche dette etichette.With supervised machine learning, we need to first train the model using the dependent features (which is also referred to as labels). In questo modo il modello può apprendere gli schemi contenuti nei dati associati alla funzionalità dipendente.This allows the model to learn the patterns in the data associated with the dependent feature. Nella previsione della domanda di energia in genere si cerca di prevedere la domanda effettiva, che viene quindi usata come funzionalità dipendente.In energy demand forecast we typically want to predict the actual demand and therefore we would use it as the dependent feature.

Gestione dei valori mancanti: durante la fase di preparazione dei dati è necessario stabilire quale sia la strategia migliore per gestire i valori mancanti.Handling of missing values: During the data preparation phase, we would need to determine the best strategy to handle missing values. Nella maggior parte dei casi questi vengono gestiti usando vari metodi statistici di imputazione dei dati.This is mostly done by using the various statistical data imputation methods. Nella previsione della domanda di energia, in genere l'imputazione dei valori mancanti viene eseguita usando la media mobile calcolata sui punti dati precedenti disponibili.In the case of energy demand forecasting, we typically impute missing values by using moving average from previous available data points.

Normalizzazione dei dati: la normalizzazione dei dati è un altro tipo di trasformazione che viene usato per uniformare i dati numerici, come quelli usati nella previsione della domanda.Data Normalization: Data normalization is another type of transformation which is used to bring all numeric data such as demand forecast into a similar scale. Questo permette di migliorare l'accuratezza e la precisione del modello.This typically helps improve the model accuracy and precision. In genere questa operazione viene eseguita dividendo il valore effettivo per l'intervallo dei dati.We would typically do this by dividing the actual value by the range of the data. Il valore originale risulta quindi ridotto a un intervallo più piccolo, in genere compreso tra -1 e 1.This will scale the original value down into a smaller range, typically between -1 and 1.

ModellazioneModeling

La fase di modellazione è quella in cui i dati vengono convertiti in un modello.The modeling phase is where the conversion of the data into a model takes place. Alla base di questo processo ci sono algoritmi avanzati che analizzano i dati storici, o dati di training, ne estrapolano gli schemi e compilano un modello.In the core of this process there are advanced algorithms that scan the historical data (training data), extract patterns, and build a model. Tale modello può essere usato successivamente per eseguire previsioni su nuovi dati non ancora usati per la compilazione del modello.That model can be later used to predict on new data that has not been used to build the model.

Dopo aver ottenuto un modello affidabile funzionante, è possibile usarlo per il calcolo del punteggio dei nuovi dati strutturati in modo da includere le funzionalità necessarie (X).Once we have a working reliable model we can then use it to score new data that is structured to include the required features (X). Il processo di calcolo del punteggio farà uso del modello persistente, proveniente dalla fase di training, per prevedere la variabile di destinazione, contrassegnata da Ŷ.The scoring process will make use of the persisted model (object from the training phase) and predict the target variable that is denoted by Ŷ.

Tecniche di modellazione della previsione della domandaDemand Forecasting Modeling Techniques

Nella previsione della domanda si usano i dati storici in ordine cronologico.In the case of demand forecasting we make use of historical data which is ordered by time. I dati che includono la dimensione temporale sono in genere definiti serie storiche.We generally refer to data that includes the time dimension as time series. Nella modellazione delle serie storiche l'obiettivo è identificare le tendenze legate al tempo, la stagionalità, l'auto-correlazione o correlazione nel tempo ed elaborare tali informazioni in un modello.The goal in time series modeling is to find time related trends, seasonality, auto-correlation (correlation over time), and formulate those into a model.

Negli ultimi anni sono stati sviluppati algoritmi avanzati per la previsione basata sulle serie storiche e per migliorare l'accuratezza delle previsioni.In recent years advanced algorithms have been developed to accommodate time series forecasting and to improve forecasting accuracy. Alcuni di questi vengono illustrati brevemente in questa sezione,We briefly discuss a few of them here.

Nota

che non intende fornire una panoramica dell'apprendimento automatico e delle previsioni ma piuttosto un breve sguardo sulle tecniche di modellazione comunemente usate per la previsione della domanda.This section is not intended to be used as a machine learning and forecasting overview but rather as a short survey of modeling techniques that are commonly used for demand forecasting. Per altre informazioni e materiale didattico sulla previsione basata sulle serie storiche, vedere il libro online Forecasting: principles and practice.For more information and educational material about time series forecasting, we highly recommend the online book Forecasting: principles and practice.

Media mobileMA (Moving Average)

La media mobile è una delle prime tecniche di analisi usate per la previsione basata sulle serie storiche ed è ancora oggi una delle più diffuse.Moving average is one of the first analytical techniques that has been used for time series forecasting and it is still one of the most commonly used techniques as of today. È anche la base di tecniche di previsione più avanzate.It is also the foundation for more advanced forecasting techniques. Con la media mobile viene previsto il punto dati successivo calcolando la media dei K punti più recenti, dove K indica l'ordine della media mobile.With moving average we are forecasting the next data point by averaging over the K most recent points, where K denotes the order of the moving average.

La tecnica della media mobile ha un effetto di smorzamento sulla previsione e potrebbe non gestire bene una grande volatilità dei dati.The moving average technique has the effect of smoothing the forecast and therefore may not handle well large volatility in the data.

Smorzamento esponenzialeETS (Exponential Smoothing)

Lo smorzamento esponenziale raggruppa una famiglia di metodi che usano la media ponderata dei punti dati recenti per prevedere il punto dati successivo.Exponential Smoothing (ETS) is a family of various methods which use weighted average of recent data points in order to predict the next data point. Ai valori più recenti viene assegnato un peso maggiore che diminuisce gradualmente man mano che i valori misurati si fanno meno recenti.The idea is to assign higher weights to more recent values and gradually decrease this weight for older measured values. I metodi di questa famiglia sono diversi e alcuni includono la gestione della stagionalità nei dati, ad esempio il modello con stagionalità Holt Winters.There are a number of different methods with this family, some of them include handling of seasonality in the data such as Holt-Winters Seasonal Method.

Alcuni di questi metodi tengono anche conto della stagionalità dei dati.Some of these methods also factor in the seasonality of the data.

Modello autoregressivo integrato a media mobile (ARIMA)ARIMA (Auto Regression Integrated Moving Average)

Il modello autoregressivo integrato a media mobile (ARIMA) raggruppa un'altra famiglia di metodi comunemente usati per la previsione basata sulle serie storiche.Auto Regression Integrated Moving Average (ARIMA) is another family of methods which is commonly used for time series forecasting. Unisce i metodi autoregressivi alla media mobile.It practically combines auto-regression methods with moving average. I metodi autoregressivi usano i modelli regressivi prendendo i valori delle serie storiche precedenti per calcolare il punto dati successivo.Auto-regression methods use regression models by taking previous time series values in order to compute the next date point. I metodi ARIMA applicano anche metodi di differenziazione che prevedono il calcolo della differenza tra i punti dati e l'uso di questi anziché del valore misurato originale.ARIMA methods also apply differencing methods that include calculating the difference between data points and using those instead of the original measured value. Il modello ARIMA fa anche uso delle tecniche con media mobile illustrate in precedenza.Finally, ARIMA also makes use of the moving average techniques that are discussed above. La combinazione in vari modi di tutti questi metodi costituisce la famiglia di metodi ARIMA.The combination of all of these methods in various ways is what constructs the family of ARIMA methods.

ARIMA e smorzamento esponenziale sono ampiamente usati per la previsione della domanda di energia e per molti altri problemi di previsione.ETS and ARIMA are widely used today for energy demand forecasting and many other forecasting problems. In molti casi questi metodi vengono combinati per fornire una maggiore accuratezza dei risultati.In many cases these are combined together to deliver very accurate results.

Regressione multipla : i modelli regressivi sono probabilmente l'approccio più importante alla modellazione in ambito statistico e di apprendimento automatico.General Multiple Regression Regression models could be the most important modeling approach within the domain of machine learning and statistics. Nel contesto delle serie storiche si usa la regressione per prevedere i valori futuri,ad esempioquelli della domanda.In the context of time series we use regression to predict the future values (e.g., of demand). Nella regressione si prende una combinazione lineare dei predittori e se ne ricavano i pesi, anche detti coefficienti, durante il processo di training.In regression we take a linear combination of the predictors and learn the weights (also referred to as coefficients) of those predictors during the training process. L'obiettivo è produrre una linea di regressione che permetterà di prevedere il valore previsto.The goal is to produce a regression line that will forecast our predicted value. I metodi regressivi possono essere usati quando la variabile di destinazione è numerica e quindi adatta anche alla previsione basata sulle serie storiche.Regression methods are suitable when the target variable is numeric and therefore also fits time series forecasting. La vasta gamma dei metodi regressivi esistenti include modelli regressivi molto semplici, come la regressione lineare, e altri più avanzati, come gli alberi di decisione, le foreste casuali, le reti neurali e gli alberi di decisione con boosting.There is a wide range of regression methods including very simple regression models such as Linear Regression and more advanced ones such as decision trees, Random Forests, Neural Networks, and Boosted Decision Trees.

Formulare la previsione della domanda di energia come un problema di regressione offre una notevole flessibilità nella selezione delle funzionalità dei dati, che possono essere combinate dai dati della serie storica della domanda effettiva e da fattori esterni come la temperatura.Constructing energy demand forecasting as a regression problem gives us a lot of flexibility in selecting our data features which can be combined from the actual demand time series data and external factors such as temperature. Per altre informazioni sulle funzionalità selezionate, vedere la sezione Preparazione dei dati e progettazione di funzionalitàdi questo studio.More information about the selected features are discussed in the Feature Engineering (see Data Preparation and Feature Engineering) section of this playbook.

L'esperienza nell'implementazione e nella distribuzione del progetto pilota di previsione della domanda di energia mostra che i modelli regressivi avanzati disponibili in Azure ML tendono a produrre i risultati migliori.From our experience with implementation and deployment of energy demand forecasts pilot, we have found that the advanced regression models that are available in Azure ML tend to produce the best results and we make use of them.

Valutazione del modello.Model Evaluation

La valutazione ha un ruolo fondamentale nel ciclo di sviluppo del modello.Model evaluation has a critical role within the Model Development Cycle. In questa fase vengono esaminate la convalida del modello e le relative prestazioni con dati reali.At this step we look into validating the model and its performance with real life data. Nella fase di modellazione viene usata una parte dei dati disponibili per il training del modello.During the modeling step we use a part of the available data for training the model. Nella fase di valutazione viene usato il resto dei dati per testare il modello.During the evaluation phase we take the remainder of the data to test the model. In sostanza, nel modello vengono inseriti nuovi dati che sono stati ristrutturati e contengono le stesse funzionalità del set di dati di training.Practically it means that we are feeding the model new data that has been restructured and contains the same features as the training dataset. Tuttavia, durante il processo di convalida il modello viene usato per prevedere la variabile di destinazione anziché per fornire la variabile di destinazione disponibile.However, during the validation process, we use the model to predict the target variable rather than provide the available target variable. Questo processo è anche detto calcolo del punteggio del modello.We often refer to this process as model scoring. Vengono quindi usati i valori di destinazione reali e messi a confronto con quelli previsti.We would then use the true target values and compare them with the predicted ones. L'obiettivo è misurare e ridurre al minimo l'errore di previsione, vale a dire la differenza tra il valore previsto e il valore reale.The goal here is to measure and minimize the prediction error, meaning the difference between the predictions and the true value. Quantificare la misura dell'errore è fondamentale per ottimizzare il modello e stabilire se l'errore viene effettivamente ridotto.Quantifying the error measurement is key since we would like to fine-tune the model and validate whether the error is actually decreasing. Per ottimizzare il modello, è possibile modificarne i parametri che controllano il processo di apprendimento oppure aggiungere o rimuovere funzionalità dei dati. Questa operazione è detta sweep dei parametri.Fine-tuning the model can be done by modifying model parameters that control the learning process, or by adding or removing data features (referred to as parameters sweep). In sostanza, ciò significa che potrebbe essere necessario eseguire più volte l'iterazione tra le fasi di progettazione di funzionalità, modellazione e valutazione del modello, fino a ridurre l'errore al livello richiesto.Practically that means that we may need to iterate between the feature engineering, modeling, and model evaluation phases multiple times until we are able to reduce the error to the required level.

È importante sottolineare che l'errore di previsione non sarà mai uguale a zero perché non esiste un modello che possa prevedere esattamente qualsiasi risultato.It is important to emphasis that the prediction error will never be zero as there is never a model that can perfectly predict every outcome. Tuttavia, una certa misura dell'errore è accettabile per l'azienda.However, there is a certain magnitude of error that is acceptable by the business. Durante il processo di convalida si vuole fare in modo che l'errore di previsione del modello sia pari o inferiore alla soglia di tolleranza dell'azienda.During the validation process, we would like to ensure that our model prediction error is at the level or better than the business tolerance level. È quindi importante impostare il livello di errore tollerabile all'inizio del ciclo, durante la fase di formulazione del problema .It is therefore important to set the level of the tolerable error at the beginning of the cycle during the Problem Formulation phase.

Tecniche di valutazione tipicheTypical Evaluation Techniques

L'errore di previsione può essere misurato e quantificato in vari modi.There are various ways in which prediction error can be measured and quantified. Questa sezione illustra le tecniche di valutazione relative alle serie storiche e in particolare alla previsione della domanda di energia.In this section we will focus the discussion on evaluation techniques relevant to time series and in specific for energy demand forecast.

MAPEMAPE

MAPE è l'acronimo di Mean Absolute Percentage Error, errore medio assoluto percentuale.MAPE stands for Mean Absolute Percentage Error. Il MAPE permette di calcolare la differenza tra ogni punto previsto e il valore effettivo di tale punto.With MAPE we are computing the difference between each forecasted point and the actual value of that point. È quindi possibile quantificare l'errore per ogni punto calcolando la proporzione tra la differenza e il valore effettivo.We then quantify the error per point by calculating the proportion of the difference relative to the actual value. L'ultimo passaggio consiste nel calcolare la media di questi valori.At the last step we average these values. La formula matematica usata per il MAPE è la seguente:The mathematical formula used for MAPE is the following:

Formula MAPE Dove At è il valore effettivo, Ft è il valore previsto e n è l'orizzonte di previsione.MAPE Formula Where At is the actual value, Ft is the predicted value, and n is the forecast horizon.

DistribuzioneDeployment

Dopo aver stabilito la fase di modellazione e convalidato le prestazioni del modello, è possibile iniziare la fase di distribuzione.Once we have nailed down the modeling phase and validated the model performance we are ready to go into the deployment phase. In questo contesto, distribuzione significa permettere al cliente di utilizzare il modello per eseguire previsioni effettive su larga scala.In this context, deployment means enabling the customer to consume the model by running actual predictions on it at large scale. Il concetto di distribuzione è fondamentale in Azure ML, perché l'obiettivo principale è richiamare continuamente le previsioni anziché ottenere semplicemente le informazioni dai dati.The concept of deployment is key in Azure ML since our main goal is to constantly invoke predictions as opposed to just obtaining the insight from the data. La fase di distribuzione è la parte in cui il modello viene abilitato per l'utilizzo su larga scala.The deployment phase is the part where we enable the model to be consumed at large scale.

Nel contesto della previsione della domanda di energia, l'obiettivo è richiamare previsioni continue e periodiche garantendo anche la disponibilità di dati aggiornati per il modello e l'invio dei dati di previsione al client di utilizzo.Within the context of energy demand forecast, our aim is to invoke continuous and periodic forecasts while ensuring that fresh data is available for the model and that the forecasted data is sent back to the consuming client.

Distribuzione di servizi WebWeb Services Deployment

Il principale blocco predefinito distribuibile in Azure ML è il servizio Web.The main deployable building block in Azure ML is the web service. Si tratta del modo più efficace per consentire l'utilizzo di un modello predittivo nel cloud.This is the most effective way to enable consumption of a predictive model in the cloud. Il servizio Web incapsula il modello e lo include in un'API RESTful .The Web service encapsulates the model and wraps it up with a RESTful API (Application Programming Interface). L'API (Application Programming Interface) può essere usata in qualsiasi codice client, come illustrato nel diagramma seguente.The API can be used as part of any client code as illustrated in the diagram below.

Distribuzione del servizio e consumo

Come si può notare, il servizio Web viene distribuito nel cloud della suite Cortana Intelligence e può essere richiamato sul relativo endpoint API REST esposto.As can be seen, the web service is deployed in the Cortana Intelligence Suite cloud and can be invoked over its exposed REST API endpoint. Il servizio può essere richiamato contemporaneamente da diversi tipi di client in domini differenti tramite l'API Web.Different type of clients across various domains can invoke the service through the Web API simultaneously. La scalabilità del servizio Web permette di supportare migliaia di chiamate simultanee.The web service can also scale to support thousands of concurrent calls.

Esempio di architettura della soluzione tipicaA Typical Solution Architecture

Quando si distribuisce una soluzione di previsione della domanda di energia, l'obiettivo è distribuire una soluzione end-to-end che vada oltre il servizio Web di previsione e gestisca l'intero flusso di dati.When deploying an energy demand forecasting solution, we are interested in deploying an end to end solution that goes beyond the prediction web service and facilitates the entire data flow. Quando si richiama una nuova previsione, è necessario assicurarsi che nel modello vengano immesse funzionalità dei dati aggiornate.At the time we invoke a new forecast, we would need to make sure that the model is fed with the up-to-date data features. Questo significa che i dati non elaborati appena raccolti vengono continuamente inseriti, elaborati e trasformati nel set di funzionalità richiesto in cui è stato compilato il modello.That implies that the newly collected raw data is constantly ingested, processed, and transformed into the required feature set on which the model was built. Allo stesso tempo, i dati di previsione devono essere resi disponibili per i client di utilizzo finali.At the same time, we would like to make the forecasted data available for the end consuming clients. Il diagramma seguente illustra un esempio di ciclo del flusso di dati o pipeline di dati:An example data flow cycle (or data pipeline) is illustrated in the diagram below:

Flusso di dati end-to-end di previsione della domanda di energia

Il ciclo di previsione della domanda di energia include i passaggi seguenti:These are the steps that take place as part of the energy demand forecast cycle:

  1. Milioni di contatori di dati distribuiti generano continuamente dati sul consumo energetico in tempo reale.Millions of deployed data meters are constantly generating power consumption data in real time.
  2. I dati vengono raccolti e caricati in un repository cloud,ad esempioBLOB di Azure.This data is being collected and uploaded into a cloud repository (e.g., Azure Blob).
  3. Prima dell'elaborazione, i dati non elaborati vengono aggregati in una sottostazione o un livello regionale, in base alle indicazioni dell'azienda.Before being processed, the raw data is aggregated to a substation or regional level as defined by the business.
  4. Viene quindi eseguita la progettazione di funzionalità, illustrata nella sezione Preparazione dei dati e progettazione di funzionalità, che produce i dati necessari per il training o il calcolo del punteggio del modello. I dati del set di funzionalità vengono archiviati in un database, ad esempio SQL Azure.The feature processing (see Data Preparation and Feature Processing) then takes place and produces the data that is required for model training or scoring – the feature set data is stored in a database (e.g., SQL Azure).
  5. Viene richiamato il servizio di re-training per eseguire nuovamente il training del modello di previsione. La versione aggiornata del modello viene mantenuta per l'uso da parte del servizio Web di calcolo del punteggio.The re-training service is invoked to re-train the forecasting model – that updated version of the model is persisted so that it can be used by the scoring web service.
  6. Quest'ultimo viene richiamato in base a una pianificazione adeguata alla frequenza di previsione richiesta.The scoring web service is invoked on a schedule that fits the required forecast frequency.
  7. I dati di previsione vengono archiviati in un database accessibile dal client di utilizzo finale.The forecasted data is stored in a database that can be accessed by the end consumption client.
  8. Il client di utilizzo recupera le previsioni, le applica alla rete e le utilizza in base al caso d'uso richiesto.The consumption client retrieves the forecasts, applies it back into the grid, and consumes it in accordance with the required use case.

È importante notare che l'intero ciclo è completamente automatizzato e viene eseguito in base a una pianificazione.It is important to note that this entire cycle is fully automated and runs on a schedule. L'intera orchestrazione del ciclo dei dati può essere eseguita con strumenti come Azure Data Factory.The entire orchestration of this data cycle can be done by using tools such as Azure Data Factory.

Architettura di distribuzione end-to-endEnd to End Deployment Architecture

Per distribuire una soluzione di previsione della domanda di energia in Cortana Intelligence, è necessario verificare che i componenti richiesti siano installati e configurati correttamente.In order to practically deploy an energy demand forecast solution on Cortana Intelligence, we need to ensure that the required components are established and configured correctly.

Il diagramma seguente illustra una tipica architettura basata su Cortana Intelligence che implementa e orchestra il ciclo del flusso di dati descritto in precedenza:The following diagram illustrates a typical Cortana Intelligence based architecture that implements and orchestrates the data flow cycle that is described above:

Architettura di distribuzione end-to-end

Per altre informazioni su ognuno dei componenti e sull'intera architettura, vedere il modello di soluzione energetica.For more information about each of the components and the entire architecture please refer to the Energy Solution Template.