Arbeta med multivariat tidsserieprognos
Med Qlik Predict kan du träna maskininlärningsmodeller för att göra prognoser för tidsspecifika mätvärden. Genom att använda neurala nätverksbaserade metoder lär sig och förutsäger modeller komplexa mönster som involverar tidsspecifika associationer, grupperade måldata, historiska funktioner och kända framtida variabler. För att skapa en tidsserieprognos förbereder du en träningsdatauppsättning, använder den i ett tidsserieexperiment, distribuerar en modell och skapar sedan tillämpningsdatauppsättningar som du kan använda för att generera förutsägelser.
Komponenter i ett tidsserieproblem
Med tidsserieprognoser är målet att förutsäga målvärden för specifika datum i framtiden. Du kanske till exempel vill förutsäga försäljningen för nästa vecka, månad eller kvartal.
När du utvecklar ditt tidsserieproblem definierar du följande komponenter:
-
Mål och grupper
-
Datumindex
-
Prognoshorisont
-
Kovariater
Förenklad illustration som visar komponenterna i ett tidsserieprognosproblem i Qlik Predict.

Mål
Precis som med andra experimenttyper är målet den kolumn för vilken du vill att modellen ska förutsäga framtida värden. För tidsserieexperiment måste målet innehålla numeriska data – till exempel försäljning eller lager.
Om du använder grupper i tidsserieprognosen kommer modeller att förutsäga ett målvärde per grupp per tidssteg i prognosfönstret. Om du inte använder grupper kommer dina tränade modeller att förutsäga ett målvärde för varje tidssteg i prognosfönstret.
Datumindex
Datumindexet spårar tidsseriemätvärdena över ett kontinuerligt tidsintervall (tidssteg). Du måste bestämma dig för ditt tidssteg i ett tidigt skede: hur ofta behöver du förutsäga framtida värden?
Mer specifikt är datumindexet en kolumn som visas i dina tränings- och tillämpningsdatauppsättningar för tidsserieproblem. Datumindexet bestämmer strukturen för båda dessa tillämpningsdatauppsättningar – varje rad representerar ett steg i tiden (eller, med grupper, ett steg i tiden för varje unik gruppering).
När du lägger till din träningsdatauppsättning i ett tidsserieexperiment identifieras möjliga datumindexkolumner automatiskt och presenteras för dig som Insikter på kolumnnivå. Du kan identifiera dem från insikten Möjligt datumindex i schemavy.
Grupper
Grupper är funktioner som innehåller kategorisk information som du vill generera förutsägelser för separat. Klassiska exempel på grupper är butiksnummer och produkt, som kan ha använts för att organisera data för ett mål som försäljning. Genom att välja butiksnummer och produkttyp som grupper kommer dina tidsserieeller att ge förutsägelser för varje enskilt värde i dessa kolumner. Med ett mål för försäljning, om du till exempel har tre butiksnummer – 1, 2 och 3 – och två produkttyper – livsmedel och färskvaror – kommer din modell av generera försäljningsprognoser för varje unik kombination av dessa värden.
Du bör införliva grupper i ditt tidsserieproblem om du har data och behöver individuella förutsägelser per kategori. En annan fördel med grupper är att modeller kan lära sig globalt och bättre förstå de mönster som finns mellan de olika grupperingar du definierar.
Du kan konfigurera vilka grupper som ska användas för varje experimentversion. Om du inte anger grupper men grupper identifieras i din träningsdatauppsättning, kommer träningen att använda grupper.
Grupper identifieras av duplicerade värden i datumindexkolumnen – till exempel för datumet 2025-01-14 har du två poster: en för butik A och den andra för butik B.
Varje grupp i ett tidsserieexperiment – inklusive enbart målet – anses vara separata tidsserier i din datauppsättning. Se Vad är en tidsserie?.
Prognoshorisont
Prognoshorisonten anger hur långt in i framtiden du vill göra prognoser. Prognoshorisonten består av prognosfönstret (antalet tidssteg som du behöver förutsägelser för) och prognosgapet (ett valfritt antal tidssteg efter dina historiska data som du inte vill ha förutsägelser för).
Du ställer in prognosfönstret och gapstorleken när du konfigurerar en experimentversion. Dessa värden används både under modellträning och när förutsägelser genereras från modeller som distribuerats som ML-distributioner.
Prognosfönstret är antalet tidssteg som du vill förutsäga i framtiden. Om ditt tidssteg till exempel är en dag och du vill göra en prognos för försäljningen under de kommande två veckorna, ställer du in ditt prognosfönster till 14.
Prognosgapet är den tid i framtiden som du inte behöver förutsägelser för. Att ställa in ett prognosgap är valfritt, eftersom du kanske eller kanske inte behöver ett. Prognosgapet börjar i slutet av de registrerade historiska träningsdata som du har tillhandahållit. Prognosfönstret börjar där prognosgapet slutar.
Du kanske till exempel vill förutsäga framtida försäljning, men du är bara intresserad av framtida försäljning för datum senare än en vecka efter slutet av dina indata. I det här fallet, med ett tidssteg i dagar, kan du ställa in din prognosgapstorlek till sju tidssteg.
Ditt valda prognosfönster, utöver hur mycket träningsdata du har, begränsar hur långt in i framtiden du kan göra prognoser. Mer information finns i Maximalt prognosfönster.
Kovariater
I tidsserieproblem kallas funktioner ofta för kovariater. I likhet med andra maskininlärningsproblem är kovariater de andra variablerna som du misstänker har ett inflytande på målets utfall. Varje kovariat representeras som en enskild kolumn i din träningsdatauppsättning.
Inom tidsserieprognoser finns det several typer av kovariater och de har några viktiga skillnader:
-
Statiska kovariater: Kolumner som inte varierar under en tidsserie. Statiska kovariater är tillämpliga i tidsserieexperiment där grupper används. Anta till exempel att du har grupper för produkt och butiksnummer, och att det finns en funktion Standardrabatt. Om produkt A i butik 1 har en standardrabatt på 10 % och produkt B i butik 2 har en standardrabatt på 20 %, skulle Standardrabatt vara en statisk kovariat. Det vill säga att den inte varierar inom data för den grupp där den visas.
Statiska kovariater detekteras automatiskt från historiska funktioner som du inkluderar i experimentet. Du behöver inte ange vilka funktioner som är statiska kovariater.
-
Tidigare kovariater: Tidsberoende variabler som endast är tillgängliga i historiska data och som varierar över dessa data. Tidigare kovariater detekteras automatiskt från historiska funktioner som du inkluderar i experimentet. Du behöver inte uttryckligen ange vilka funktioner som är tidigare kovariater.
-
Framtida kovariater: Framtida kovariater, även kända som framtida funktioner, är tidsberoende variabler för vilka du kommer att känna till de framtida värdena inom prognoshorisonten. När du använder framtida kovariater i träningen måste du ange dem som framtida funktioner i träningskonfigurationen.
Framtida funktioner
Med framtida funktioner kan du förse dina modeller med ytterligare data om framtida information som du redan känner till eller rimligen kan förvänta dig. Specifikt har du tillgång till framtida värden för denna funktion som sträcker sig över din valda prognoshorisont. När du definierar framtida funktioner måste du tillhandahålla både historiska data och framtida data.
För en modell som förutsäger mätvärden som kan påverkas av framtida rabatter som erbjuds av en butik, kan du till exempel inkludera de historiskt observerade rabatterna, såväl som rabatterna för framtida tidsperioder inom prognosfönstret. Andra exempel på framtida funktioner kan vara väder- eller kalenderinformation.
Andra viktiga koncept
Detta delavsnitt beskriver koncept som är relevanta för ditt tidsserieproblem, men som du inte konfigurerar direkt i ett experiment eller en ML-distribution. Det här är egenskaper som definieras av dina data eller av andra egenskaper som du konfigurerar för modellen.
Tidssteg
Tidssteget definieras av din träningsdatauppsättning och är viktigt för både träning och förutsägelser.
I din träningsdatauppsättning är tidssteget det intervall med vilket data i ditt datumindex registreras. Tidssteget kan till exempel vara dagligen, varje timme, varje minut eller varje sekund. Det minsta tidssteg som detekteras är millisekunder.
Det är viktigt att vara medveten om det tidssteg som används i dina träningsdata. Andra experimentparametrar som du definierar, till exempel prognosfönster och prognosgapstorlek, kommer att följa detta tidsstegsintervall.
Efter att du har distribuerat din modell måste tillämpningsdata som du vill skapa förutsägelser för följa samma tidssteg som definierats i träningsdatauppsättningen.
Kvalitet
När du väljer en träningsdatauppsättning härleder systemet vilket tidssteg som används. Om det finns några saknade värden eller luckor i datumindexet kan kolumner som mål, grupper och kovariater interpoleras automatiskt av systemet. Men om dina data innehåller tidsintervall som är inkonsekventa till den grad att olika tidssteg detekteras, måste data korrigeras först. Om du till exempel har flera månaders data registrerade en gång om dagen, men det finns ett delavsnitt där data konsekvent registreras på veckobasis, kan datauppsättningen inte användas eftersom flera tidssteg kommer att detekteras.
Tillämpningsfönster
Tillämpningsfönstret, eller tillbakablicksperioden, är den del av träningsdata som algoritmen kan använda för att ge förutsägelserna för ditt angivna prognosfönster.
Tillämpningsfönstret beräknas och ställs in av systemet. Det mäts i tidssteg. Tillämpningsfönstret definieras av vad du ställer in som prognosfönster och gap (prognoshorisont). Storleken på ditt tillämpningsfönster visas i experimentkonfigurationspanelen och i Sammanfattning av modellträning efter att du har kört minst en experimentversion. Det visas också i en ML-distributions Modellschema när du skapar eller redigerar en konfiguration för batchförutsägelse.
Tillämpningsfönstret identifieras automatiskt från din träningskonfiguration. För att generera förutsägelser för ett givet prognosfönster måste du tillhandahålla historiska data som täcker minst ditt tillämpningsfönster. Detta tillhandahålls i din tillämpningsdatauppsättning. Se Förbereda en tillämpningsdatamängd.
Maximalt prognosfönster
Det maximala prognosfönstret uppskattas när du konfigurerar ditt tidsserieexperiment. När du har kört en version av träningen bekräftas det maximala prognosfönstret med säkerhet. Det maximala prognosfönstret visas för dig som Uppskattad maximal prognos eller Maximal prognos under Baserat på dina data när du öppnar Mål och experimenttyp i experimentkonfigurationspanelen. Det maximala prognosfönstret är det maximala antalet tidssteg som du kan generera prognoser för, givet ditt valda prognosfönster, hur mycket historiska data du har tillhandahållit och den minsta urvalsstorlek som systemet förväntar sig. Ju mer historiska data du tillhandahåller, desto längre fram i tiden kommer du att kunna förutsäga. Men för att generera tillförlitliga förutsägelser är det viktigt att välja ett rimligt prognosfönster.
Det maximala prognosfönstret kan vara upp till 180 tidssteg.
Brytpunktstid för prognos
Brytpunktstiden för prognosen är särskilt viktig när du definierar din tillämpningsdatauppsättning under förutsägelser. Brytpunktstiden för prognosen är det sista datumet i ditt urval för vilket du har ett målvärde. I princip är datum efter denna brytpunktstid de datum som du vill generera förutsägelser för.
Vad är en tidsserie?
Inom tidsserieprognoser med Qlik Predict anses varje grupp – inklusive enbart målet – vara separata tidsserier i träningsdatauppsättningen. Anta till exempel att din träningsdatauppsättning innehåller försäljningsmätvärden. Dessa försäljningsmätvärden är definierade för varje butik och produkttyp. Med kolumnerna Butik och Produkttyp definierade som grupper finns det tre tidsserier i träningsdatauppsättningen.
Förbereda en träningsdatauppsättning
För multivariata tidsserieprognoser måste din träningsdatauppsättning innehålla följande kolumner:
-
Datumindex
-
Målkolumn
-
Gruppkolumner (valfritt)
-
Funktionskolumner (valfritt – utan funktioner tränar du en univariat prognosmodell)
Illustrationer som visar de kolumner och data som krävs för träningsdatauppsättningar för tidsserier. Scenarier utan grupper, en grupp och två grupper beskrivs.

Linjärt diagram som visar de komponenter och den tidslinje som behövs för en träningsdatauppsättning för en tidsserieprognosmodell.

Datumindexkolumn
Du behöver ett datumindex som innehåller fullständiga datum eller tidsstämplar. Den här kolumnen är det kronologiska index längs vilket målet och kovariatmätvärdena spåras. Datumindexkolumnen organiserar de tidsbaserade mätningarna sekventiellt längs ett konsekvent tidsintervall (tidssteget).
Datumindexkolumnen är organiserad på följande sätt, beroende på om du använder grupper eller inte:
-
Inga grupper: En enskild post för varje tidssteg. För en daglig prognos representerar till exempel varje rad en enskild dag.
-
Med grupper: En eller flera duplicerade poster för varje tidssteg beroende på vilka grupper som används.
Med en multivariat träningsdatauppsättning kommer det att finnas en eller flera duplicerade poster för varje tidssteg beroende på vilka grupper som används. Det finns en flexibilitet i vilket tidssteg du använder – du kan till exempel registrera datum en eller flera gånger på daglig, veckovis eller månadsvis basis och så vidare.
Saknade eller inkonsekvent registrerade värden i den här kolumnen är ibland acceptabla om de kan interpoleras. Dina datumindexvärden kan dock inte innehålla flera olika tidssteg. Om intervallet till exempel bestäms till en gång om dagen, men vid något tillfälle identifieras ett intervall på två gånger om dagen, kommer ett fel att uppstå under träningen.
Målkolumn och gruppkolumner
Din datauppsättning måste ha en målkolumn som innehåller ett numeriskt mätvärde som du vill göra en prognos för. Ett vanligt exempel är försäljning.
Om du använder grupper tillhandahåller du historiska målvärden för varje möjligt värde i de grupper som du lägger till. Om ditt mål till exempel är Försäljning och du lägger till gruppen Butiksnummer som innehåller data för Butik A och Butik B, måste din datauppsättning innehålla två separata poster för varje tidssteg: en med försäljningsvärdet för Butik A och den andra med försäljningsvärdet för Butik B.
Funktionskolumner
Du kan träna en tidsseriemodell utan några kovariater. Men om du inkluderar kovariater tillhandahåller du en kolumn i datauppsättningen för varje funktion. Funktionsdata bör i allmänhet vara historiskt registrerade data såvida du inte lägger till framtida funktioner. Kolumner för framtida funktioner kan innehålla både historiska och framtida data. Du bör endast inkludera framtida funktionsdata i träningsdatauppsättningen om du är säker på att de framtida värdena för dessa kolumner kommer att vara kända när du skapar förutsägelser.
Håll reda på vilka funktioner du kommer att använda som framtida funktioner, eftersom du måste välja dem som sådana i träningskonfigurationen.
Datavolym
Din datauppsättning måste innehålla tillräckligt med poster – datavolymen bestäms av det tidsintervall som delas av alla grupper. Endast data från denna överlappande period används för att träna experimentet.
Volymen på dina historiska data spelar en roll för att avgöra hur långt in i framtiden du kan förutsäga. Ditt önskade prognosfönster påverkar också hur mycket historiska data du behöver.
Generellt sett är mer historiska data bättre än mindre. Data måste dock vara av god kvalitet och fånga de önskade trenderna. Om data ger irrelevant information eller innehåller felaktigheter är det inte till någon hjälp att ha dem i modellen. Överväg en balans mellan att optimera volymen och att bibehålla kvalitet och relevans.
Exempel
Förbereda en tillämpningsdatamängd
Efter att du har distribuerat en tidsseriemodell behöver du ta fram en tillämpningsdatamängd som prognoser ska göras för.
Tillämpningsdatamängd – krav och validering
För tidsseriemodeller behöver tillämpningsdatamängden:
-
Kolumner och kolumnrubriker för alla kolumner som ingår i träningsdatasetet.
-
Samma tidssteg som träningsdatasetet.
-
Alla grupper och gruppvärden som fanns i träningsdatasetet.
Anteckning om informationOm nya gruppvärden finns i tillämpningsdatasetet (som inte fanns i träningsdata) genereras inga förutsägelser för dessa rader. Om förutsägelser krävs för dessa nya gruppvärden rekommenderas att du tränar om modellen med träningsdata som inkluderar dem. -
Lika många eller fler historiska dataposter (per mål och grupp) före bryttidpunkten för prognosen som antalet poster i tillämpningsfönstret för modellen. Dessa måste vara fullständiga poster som innehåller den historiskt observerade datum- eller tidsstämpeln, mål- och kovariatvärden. Tillämpningsfönstret bestäms av det prognosfönster och gap som konfigurerats under träningen – ju längre in i framtiden du behöver göra förutsägelser, desto mer historiska data behöver du i ditt tillämpningsdataset för att köra förutsägelser.
-
Poster för alla framtida tidssteg i din prognoshorisont. För dessa framtida poster ska du endast inkludera värdena för datumindexkolumnen, samt eventuella framtida funktioner. Lämna värdena för de andra kolumnerna tomma.
Illustrationer som visar de kolumner och data som krävs för tillämpningsdatamängder som används för att generera prognoser från tidsprognosmodeller. Scenarier utan grupper, med en grupp och med två grupper beskrivs.

Linjärt diagram som visar de komponenter och den tidslinje som behövs för en tillämpningsdatamängd som används för att generera prognoser med en tidsprognosmodell.
