DE112021000081T5 - Systems, methods and devices for hierarchical predictions - Google Patents
Systems, methods and devices for hierarchical predictions Download PDFInfo
- Publication number
- DE112021000081T5 DE112021000081T5 DE112021000081.0T DE112021000081T DE112021000081T5 DE 112021000081 T5 DE112021000081 T5 DE 112021000081T5 DE 112021000081 T DE112021000081 T DE 112021000081T DE 112021000081 T5 DE112021000081 T5 DE 112021000081T5
- Authority
- DE
- Germany
- Prior art keywords
- hierarchy
- prediction
- weight matrix
- node
- computer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Withdrawn
Links
- 238000000034 method Methods 0.000 title claims abstract description 36
- 239000011159 matrix material Substances 0.000 claims abstract description 109
- 238000007781 pre-processing Methods 0.000 claims abstract description 50
- 238000005457 optimization Methods 0.000 claims description 52
- 238000003860 storage Methods 0.000 claims description 22
- 238000005096 rolling process Methods 0.000 claims description 11
- 230000001419 dependent effect Effects 0.000 claims description 9
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000002776 aggregation Effects 0.000 description 6
- 238000004220 aggregation Methods 0.000 description 6
- 238000011156 evaluation Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000012804 iterative process Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000008520 organization Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000003442 weekly effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000004931 aggregating effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
- G06Q30/0202—Market predictions or forecasting for commercial activities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Marketing (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- Tourism & Hospitality (AREA)
- Game Theory and Decision Science (AREA)
- Quality & Reliability (AREA)
- Operations Research (AREA)
- Data Mining & Analysis (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Systeme und Verfahren für die Abstimmung einer Vorhersagen in einer Hierarchie, die ein Vorverarbeitungsmodul und ein Vorhersageabstimmungsmodul umfassen. Das Vorverarbeitungsmodul rekonstruiert die Struktur der Hierarchie und erfasst die Beziehung zwischen den Knoten der Hierarchie in einer Summationsmatrix S. Die Vorhersageabstimmungsmatrix verwendet die Summationsmatrix S, eine Gewichtungsmatrix W (die ein Gewichtungsschema zwischen den Knoten widerspiegelt) und eine Basisprognose, um den Gesamtvorhersagefehler unter Verwendung eines Verfahrens der kleinsten Quadrate zu optimieren. Die abgestimmte Vorhersage hat einen Konsistenzfehler von Null.Systems and methods for matching a prediction in a hierarchy, comprising a pre-processing module and a prediction matching module. The pre-processing module reconstructs the structure of the hierarchy and captures the relationship between the nodes of the hierarchy in a summation matrix S. The prediction matching matrix uses the summation matrix S, a weighting matrix W (reflecting a weighting scheme between the nodes) and a baseline prediction to calculate the overall prediction error using a to optimize the method of least squares. The matched prediction has a consistency error of zero.
Description
Hintergrundbackground
Unternehmen mit komplexen Lieferketten haben ein gesteigertes Interesse daran, ihren Bedarf für jedes Produkt einige Monate in der Zukunft vorherzusagen. Eine genaue Schätzung der Nachfrage hilft den Unternehmen, ihre Produktion im Voraus zu planen und gerade genug Produkte zu produzieren, um Über- und Unterbestände zu vermeiden. Es gibt inhärente Hierarchien in den Daten der Lieferkette, die genutzt und ausgenutzt werden können, um zu besseren Vorhersagen und Prognosen der Nachfrage zu gelangen. Beispielsweise werden Produkte von verschiedenen Kunden bestellt, und die Nachfrage für jede Produkt-Kunden-Kombination kann separat prognostiziert und zur Gesamtnachfrage nach Produkten aggregiert werden, also beispielsweise vereinigt werden. Alternativ kann die Gesamtnachfrage nach einem Produkt auch direkt aus den aggregierten historischen Nachfragen prognostiziert werden. In jedem Fall besteht die Aggregationsbedingung, dass die Summe der Nachfrage nach einem Produkt von verschiedenen Kunden der Gesamtnachfrage nach einem Produkt entsprechen muss. Wird jedoch die künftige Nachfrage auf den verschiedenen Hierarchieebenen getrennt prognostiziert, so addieren sich die Vorhersagen nicht korrekt. Aus diesem Grund prognostizieren die meisten Unternehmen ihre Nachfrage nur auf der am stärksten aufgeschlüsselten Ebene einer Hierarchie (z. B. für jede Produkt-Kunden-Kombination).Companies with complex supply chains have an increased interest in predicting their needs for each product several months into the future. Accurately estimating demand helps companies plan their production ahead of time and produce just enough product to avoid overstocking and understocking. There are inherent hierarchies in supply chain data that can be harnessed and exploited to better predict and forecast demand. For example, products are ordered by different customers, and the demand for each product-customer combination can be forecast separately and aggregated, e.g. combined, to form the total demand for products. Alternatively, the total demand for a product can also be forecast directly from the aggregated historical demand. In any case, the aggregation condition is that the sum of the demand for a product from different customers must equal the total demand for a product. However, if future demand is forecast separately at the various hierarchical levels, the forecasts do not add up correctly. For this reason, most companies only forecast their demand at the most detailed level of a hierarchy (e.g. for each product-customer combination).
Hierarchien können auf viele verschiedene Arten definiert werden und können viele Ebenen haben. Beispielsweise kann eine Hierarchie auf geografischen Regionen basieren - so dass die Gesamtnachfrage nach einem Produkt gleich der Summe der Nachfragen aus verschiedenen Ländern ist und die Nachfrage eines bestimmten Landes gleich der Summe der Nachfragen aus verschiedenen Regionen/Bezirken dieses Landes ist. Eine andere Möglichkeit, eine Hierarchie zu definieren, ist auf der Grundlage einer Produktfamilie. So ist beispielsweise die Gesamtnachfrage nach Fernsehgeräten in einem Elektronikunternehmen gleich der Summe der Nachfrage nach verschiedenen Größen oder Modellen von Fernsehgeräten. Hierarchien können auch auf der Grundlage von Zeitdimensionen definiert werden. So sollte beispielsweise die Summe der wöchentlichen Nachfrage der monatlichen oder vierteljährlichen Nachfrage entsprechen.Hierarchies can be defined in many different ways and can have many levels. For example, a hierarchy may be based on geographic regions - such that the total demand for a product is equal to the sum of demands from different countries, and the demand for a particular country is equal to the sum of demands from different regions/districts of that country. Another way to define a hierarchy is based on a product family. For example, the total demand for televisions in an electronics company is equal to the sum of the demand for different sizes or models of televisions. Hierarchies can also be defined based on time dimensions. For example, the sum of the weekly demand should equal the monthly or quarterly demand.
Aufgrund der komplizierten Natur des Problems prognostizieren die meisten Unternehmen ihre Nachfrage nur auf einer Ebene einer Hierarchie. In der Regel handelt es sich dabei um die Ebene, von der ein Unternehmen glaubt, dass sie am genauesten ist oder für das Unternehmen am sinnvollsten ist. Dennoch ist jede einzelne Vorhersage mit einem Fehler behaftet. Die Addition der einzelnen Vorhersagen innerhalb der Hierarchie führt zu einem kumulativen Fehler in der Gesamtvorhersage, der recht groß sein kann.Due to the complicated nature of the problem, most companies only forecast their demand at one level of a hierarchy. Typically, this is the level that a company believes is most accurate or makes the most sense for the company. However, every single prediction is flawed. The addition of the individual predictions within the hierarchy leads to a cumulative error in the overall prediction, which can be quite large.
Im Bereich der Zeitreihenvorhersage hat Hyndman den optimalen Abgleich von Vorhersagen in zeitlichen Hierarchien untersucht, einschließlich des optimalen Vorhersageabstimmung für hierarchische und gruppierte Zeitreihen durch Spurminimierung. Diese Studie lässt sich jedoch nicht ohne weiteres auf die Organisation von Vorhersagen für Lieferketten übertragen.In the field of time series prediction, Hyndman has studied optimal matching of predictions in temporal hierarchies, including optimal prediction matching for hierarchical and clustered time series by lane minimization. However, this study does not readily translate to the organization of supply chain forecasting.
Daher besteht die Notwendigkeit, die Gesamtvorhersageaktivität durch Minimierung des Gesamtvorhersagefehlers zu verbessern. Darüber hinaus besteht die Notwendigkeit, eine Vorhersageabstimmung für Nicht-Zeitreihen-Hierarchien, wie z. B. Lieferketten, bereitzustellen.Therefore, there is a need to improve overall prediction activity by minimizing overall prediction error. In addition, there is a need to perform forecast matching for non-time series hierarchies such as B. supply chains to provide.
Kurze ZusammenfassungShort Summary
Hierin werden Systeme und Verfahren beschrieben, die die Vorhersage auf verschiedenen Ebenen einer Hierarchie berücksichtigen und die Gesamtvorhersage durch Reduzierung des Gesamtvorhersagefehlers der Hierarchie verbessern können. In einigen Ausführungsformen werden Informationen über die Beziehungen innerhalb der Hierarchie verwendet, um inkonsistente Vorhersagen verschiedener Ebenen als Eingabe zu verwenden und die Vorhersagen so abzustimmen, dass sie vollständig konsistent werden, so dass sie sich korrekt addieren. Darüber hinaus wird die Gesamtgenauigkeit der Vorhersagen über die gesamte Hierarchie hinweg verbessert.Systems and methods are described herein that take into account prediction at different levels of a hierarchy and can improve the overall prediction by reducing the overall prediction error of the hierarchy. In some embodiments, information about the relationships within the hierarchy is used to take inconsistent predictions from different levels as input and tune the predictions to become fully consistent so that they add up correctly. In addition, the overall accuracy of predictions across the hierarchy is improved.
In einem Aspekt wird ein computerimplementiertes Verfahren zur Vorhersagebestimmung (auch als Verfahren zum Prognoseabgleich bezeichnet) in einer Hierarchie bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen von Daten, die sich auf die Hierarchie beziehen, durch ein Vorverarbeitungsmodul; Erzeugen der Hierarchie auf der Grundlage der Daten und einer Summationsmatrix, die sich auf eine Struktur der Hierarchie bezieht, durch das Vorverarbeitungsmodul; Empfangen einer Basisvorhersage der Hierarchie, der Summationsmatrix und einer Gewichtungsmatrix durch ein Vorhersageabstimmungsmodul, wobei die Gewichtungsmatrix ein Gewichtungsschema für jeden Knoten der Hierarchie widerspiegelt, wobei die Gewichtungsmatrix entweder durch das Vorverarbeitungsmodul oder das Vorhersageabstimmungsmodul erzeugt wird; Erzeugen, durch das Vorhersageabstimmungsmodul, einer abgestimmten Vorhersage auf der Grundlage einer Optimierungstechnik der kleinsten Quadrate zum Projizieren der Basisvorhersage auf eine unterste Ebene der Hierarchie, abhängig von einer Bedingung für jeden Knoten der untersten Ebene der Hierarchie.In one aspect, there is provided a computer-implemented method for forecast determination (also referred to as a method for forecast matching) in a hierarchy, the method comprising the steps of: receiving, by a pre-processing module, data related to the hierarchy; generating, by the pre-processing module, the hierarchy based on the data and a summation matrix relating to a structure of the hierarchy; receiving by a prediction matching module a baseline prediction of the hierarchy, the summation matrix and a weight matrix, the weight matrix reflecting a weighting scheme for each node of the hierarchy, the weight matrix being generated by either the pre-processing module or the prediction matching module; generating, by the prediction matching module, a matched prediction based on a least squares optimization technique for projecting the Baseline prediction to a bottom level of the hierarchy, dependent on a condition for each node of the bottom level of the hierarchy.
In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer nichtnegativen Kleinstquadrat-Optimierungstechnik. In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer iterativen Optimierung, bei der jeder Knoten der Vorhersage der untersten Ebene innerhalb eines entsprechenden Bereichs begrenzt wird. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf eine oder mehrere Metriken der Hierarchie; die Gewichtungsmatrix kann in einigen Fällen diagonal sein. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf einen Vorhersagefehler (auch als Prognosefehler bezeichnet) jedes Knotens der Hierarchie. In einigen Ausführungsformen führt das Vorverarbeitungsmodul mindestens einen der folgenden Schritte aus: i) Entfernen eines oder mehrerer Knoten der Hierarchie, die einen Nullwert oder einen Wert unter einem Schwellenwert aufweisen; ii) Auffüllen eines oder mehrerer fehlender Datensätze der Hierarchie auf der Grundlage von Geschwisterinformationen; und iii) Extrahieren von rollierenden Merkmalen auf allen Ebenen der Hierarchie.In some embodiments, the matched prediction is based on a non-negative least squares optimization technique. In some embodiments, the matched prediction is based on an iterative optimization where each node of the bottom-level prediction is constrained within a corresponding range. In some embodiments, each entry of the weight matrix relates to one or more metrics of the hierarchy; the weight matrix can be diagonal in some cases. In some embodiments, each entry of the weight matrix relates to a prediction error (also referred to as a prediction error) of each node of the hierarchy. In some embodiments, the pre-processing module performs at least one of the following steps: i) remove one or more nodes of the hierarchy that have a null value or a value below a threshold; ii) filling in one or more missing records of the hierarchy based on sibling information; and iii) extracting rolling features at all levels of the hierarchy.
In einem anderen Aspekt wird eine Rechenvorrichtung zur Vorhersageabstimmung in einer Hierarchie bereitgestellt, wobei die Rechenvorrichtung umfasst: einen Prozessor; und einen Speicher, der Anweisungen speichert, die, wenn sie von dem Prozessor ausgeführt werden, die Vorrichtung für die folgenden Schritte konfigurieren: Empfangen von Daten, die sich auf eine Hierarchie beziehen, durch ein Vorverarbeitungsmodul; Erzeugen der Hierarchie auf der Grundlage der Daten und einer Summationsmatrix, die sich auf eine Struktur der Hierarchie bezieht, durch das Vorverarbeitungsmodul; Empfangen einer Basisvorhersage der Hierarchie, der Summationsmatrix und einer Gewichtungsmatrix durch ein Vorhersageabstimmungsmodul, wobei die Gewichtungsmatrix ein Gewichtungsschema für jeden Knoten der Hierarchie widerspiegelt, wobei die Gewichtungsmatrix entweder durch das Vorverarbeitungsmodul oder das Vorhersageabstimmungsmodul erzeugt wird; Erzeugen, durch das Vorhersageabstimmungsmodul, einer abgestimmten Vorhersage auf der Grundlage einer Optimierungstechnik der kleinsten Quadrate zum Projizieren der Basisvorhersage auf eine unterste Ebene der Hierarchie, abhängig von einer Bedingung für jeden Knoten der untersten Ebene der Hierarchie.In another aspect, there is provided a computing device for prediction matching in a hierarchy, the computing device comprising: a processor; and a memory storing instructions that, when executed by the processor, configure the device for the following steps: receiving, by a pre-processing module, data related to a hierarchy; generating, by the pre-processing module, the hierarchy based on the data and a summation matrix relating to a structure of the hierarchy; receiving by a prediction matching module a baseline prediction of the hierarchy, the summation matrix and a weight matrix, the weight matrix reflecting a weighting scheme for each node of the hierarchy, the weight matrix being generated by either the pre-processing module or the prediction matching module; generating, by the prediction matching module, a matched prediction based on a least squares optimization technique for projecting the baseline prediction to a bottom level of the hierarchy dependent on a condition for each node of the bottom level of the hierarchy.
In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer nicht-negativen Kleinste-Quadrate-Optimierungstechnik. In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer iterativen Optimierung, bei der jeder Knoten der Vorhersage der untersten Ebene innerhalb eines entsprechenden Bereichs begrenzt wird. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf eine oder mehrere Metriken der Hierarchie; die Gewichtungsmatrix kann in einigen Fällen diagonal sein. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf einen Vorhersagefehler jedes Knotens der Hierarchie. In einigen Ausführungsformen führt das Vorverarbeitungsmodul mindestens einen der folgenden Schritte durch: i) Entfemen eines oder mehrerer Knoten der Hierarchie, die einen Nullwert oder einen Wert unter einem Schwellenwert aufweisen; ii) Auffüllen eines oder mehrerer fehlender Datensätze der Hierarchie auf der Grundlage von Geschwisterinformationen; und iii) Extrahieren von rollierenden Merkmalen auf allen Ebenen der Hierarchie.In some embodiments, the matched prediction is based on a non-negative least squares optimization technique. In some embodiments, the matched prediction is based on an iterative optimization where each node of the bottom-level prediction is constrained within a corresponding range. In some embodiments, each entry of the weight matrix relates to one or more metrics of the hierarchy; the weight matrix can be diagonal in some cases. In some embodiments, each entry of the weight matrix relates to a prediction error of each node of the hierarchy. In some embodiments, the pre-processing module performs at least one of the following steps: i) removing one or more nodes of the hierarchy that have a null value or a value below a threshold; ii) filling in one or more missing records of the hierarchy based on sibling information; and iii) extracting rolling features at all levels of the hierarchy.
In einem anderen Aspekt wird ein nicht-transitorisches, computerlesbares Speichermedium zur Vorhersageabstimmung in einer Hierarchie bereitgestellt, wobei das computerlesbare Speichermedium Anweisungen enthält, die, wenn sie von einem Computer ausgeführt werden, den Computer veranlassen: Empfangen von Daten, die sich auf eine Hierarchie beziehen, durch ein Vorverarbeitungsmodul; Erzeugen der Hierarchie auf der Grundlage der Daten und einer Summationsmatrix, die sich auf eine Struktur der Hierarchie bezieht, durch das Vorverarbeitungsmodul; Empfangen einer Basisvorhersage der Hierarchie, der Summationsmatrix und einer Gewichtungsmatrix durch ein Vorhersageabstimmungsmodul, wobei die Gewichtungsmatrix ein Gewichtungsschema für jeden Knoten der Hierarchie widerspiegelt, wobei die Gewichtungsmatrix entweder durch das Vorverarbeitungsmodul oder das Vorhersageabstimmungsmodul erzeugt wird; Erzeugen, durch das Vorhersageabstimmungsmodul, einer abgestimmten Vorhersage auf der Grundlage einer Optimierungstechnik der kleinsten Quadrate zum Projizieren der Basisvorhersage auf eine unterste Ebene der Hierarchie, abhängig von einer Bedingung für jeden Knoten der untersten Ebene der Hierarchie.In another aspect, there is provided a non-transitory, computer-readable storage medium for predictive matching in a hierarchy, the computer-readable storage medium containing instructions that, when executed by a computer, cause the computer to: receive data related to a hierarchy , by a pre-processing module; generating, by the pre-processing module, the hierarchy based on the data and a summation matrix relating to a structure of the hierarchy; receiving by a prediction matching module a baseline prediction of the hierarchy, the summation matrix and a weight matrix, the weight matrix reflecting a weighting scheme for each node of the hierarchy, the weight matrix being generated by either the pre-processing module or the prediction matching module; generating, by the prediction matching module, a matched prediction based on a least squares optimization technique for projecting the baseline prediction to a bottom level of the hierarchy dependent on a condition for each node of the bottom level of the hierarchy.
In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer nicht-negativen Kleinste-Quadrate-Optimierungstechnik. In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer iterativen Optimierung, bei der jeder Knoten der Vorhersage der untersten Ebene innerhalb eines entsprechenden Bereichs begrenzt wird. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf eine oder mehrere Metriken der Hierarchie; die Gewichtungsmatrix kann in einigen Fällen diagonal sein. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf einen Vorhersagefehler jedes Knotens der Hierarchie. In einigen Ausführungsformen führt das Vorverarbeitungsmodul mindestens einen der folgenden Schritte durch: i) Entfemen eines oder mehrerer Knoten der Hierarchie, die einen Nullwert oder einen Wert unter einem Schwellenwert aufweisen; ii) Auffüllen eines oder mehrerer fehlender Datensätze der Hierarchie auf der Grundlage von Geschwisterinformationen; und iii) Extrahieren von rollierenden Merkmalen auf allen Ebenen der Hierarchie.In some embodiments, the matched prediction is based on a non-negative least squares optimization technique. In some embodiments, the matched prediction is based on an iterative optimization where each node of the bottom-level prediction is constrained within a corresponding range. In some embodiments, each entry of the weight matrix relates to one or more metrics of the hierarchy; the weight matrix can be diagonal in some cases. In some embodiments, each entry of the weight matrix relates to a prediction error of each node of the hierarchy. In some versions For example, the pre-processing module performs at least one of the following steps: i) removing one or more nodes of the hierarchy that have a null value or a value below a threshold; ii) filling in one or more missing records of the hierarchy based on sibling information; and iii) extracting rolling features at all levels of the hierarchy.
In einem anderen Aspekt wird ein computerimplementiertes Verfahren zur Reduzierung eines Vorhersagefehlers in einer Hierarchie bereitgestellt, wobei das Verfahren die folgenden Schritte umfasst: Empfangen von Daten, die sich auf eine Hierarchie beziehen, durch ein Vorverarbeitungsmodul; Erzeugen der Hierarchie auf der Grundlage der Daten und einer Summationsmatrix, die sich auf eine Struktur der Hierarchie bezieht, durch das Vorverarbeitungsmodul; Empfangen einer Basisvorhersage der Hierarchie, der Summationsmatrix und einer Gewichtungsmatrix durch ein Vorhersageabstimmungsmodul, wobei die Gewichtungsmatrix ein Gewichtungsschema für jeden Knoten der Hierarchie widerspiegelt, wobei die Gewichtungsmatrix entweder durch das Vorverarbeitungsmodul oder das Vorhersageabstimmungsmodul erzeugt wird; Erzeugen, durch das Vorhersageabstimmungsmodul, einer abgestimmten Vorhersage auf der Grundlage einer Optimierungstechnik der kleinsten Quadrate zum Projizieren der Basisvorhersage auf eine unterste Ebene der Hierarchie, abhängig von einer Bedingung für jeden Knoten der untersten Ebene der Hierarchie.In another aspect, there is provided a computer-implemented method for reducing prediction error in a hierarchy, the method comprising the steps of: receiving, by a pre-processing module, data related to a hierarchy; generating, by the pre-processing module, the hierarchy based on the data and a summation matrix relating to a structure of the hierarchy; receiving by a prediction matching module a baseline prediction of the hierarchy, the summation matrix and a weight matrix, the weight matrix reflecting a weighting scheme for each node of the hierarchy, the weight matrix being generated by either the pre-processing module or the prediction matching module; generating, by the prediction matching module, a matched prediction based on a least squares optimization technique for projecting the baseline prediction to a bottom level of the hierarchy dependent on a condition for each node of the bottom level of the hierarchy.
In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer nicht-negativen Kleinste-Quadrate-Optimierungstechnik. In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer iterativen Optimierung, bei der jeder Knoten der Vorhersage der untersten Ebene innerhalb eines entsprechenden Bereichs begrenzt wird. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf eine oder mehrere Metriken der Hierarchie; die Gewichtungsmatrix kann in einigen Fällen diagonal sein. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf einen Vorhersagefehler jedes Knotens der Hierarchie. In einigen Ausführungsformen führt das Vorverarbeitungsmodul mindestens einen der folgenden Schritte durch: i) Entfemen eines oder mehrerer Knoten der Hierarchie, die einen Nullwert oder einen Wert unter einem Schwellenwert aufweisen; ii) Auffüllen eines oder mehrerer fehlender Datensätze der Hierarchie auf der Grundlage von Geschwisterinformationen; und iii) Extrahieren von Rollierende Merkmale auf allen Ebenen der Hierarchie.In some embodiments, the matched prediction is based on a non-negative least squares optimization technique. In some embodiments, the matched prediction is based on an iterative optimization where each node of the bottom-level prediction is constrained within a corresponding range. In some embodiments, each entry of the weight matrix relates to one or more metrics of the hierarchy; the weight matrix can be diagonal in some cases. In some embodiments, each entry of the weight matrix relates to a prediction error of each node of the hierarchy. In some embodiments, the pre-processing module performs at least one of the following steps: i) removing one or more nodes of the hierarchy that have a null value or a value below a threshold; ii) filling in one or more missing records of the hierarchy based on sibling information; and iii) extracting rolling features at all levels of the hierarchy.
In einem anderen Aspekt wird eine Rechenvorrichtung zum Reduzieren eines Vorhersagefehlers in einer Hierarchie bereitgestellt, wobei die Rechenvorrichtung umfasst: einen Prozessor; und einen Speicher, der Anweisungen speichert, die, wenn sie von dem Prozessor ausgeführt werden, die Vorrichtung für die folgenden Schritte konfigurieren Empfangen von Daten, die sich auf eine Hierarchie beziehen, durch ein Vorverarbeitungsmodul; Erzeugen der Hierarchie auf der Grundlage der Daten und einer Summationsmatrix, die sich auf eine Struktur der Hierarchie bezieht, durch das Vorverarbeitungsmodul; Empfangen einer Basisvorhersage der Hierarchie, der Summationsmatrix und einer Gewichtungsmatrix durch ein Vorhersageabstimmungsmodul, wobei die Gewichtungsmatrix ein Gewichtungsschema für jeden Knoten der Hierarchie widerspiegelt, wobei die Gewichtungsmatrix entweder durch das Vorverarbeitungsmodul oder das Vorhersageabstimmungsmodul erzeugt wird; Erzeugen, durch das Vorhersageabstimmungsmodul, einer abgestimmten Vorhersage auf der Grundlage einer Optimierungstechnik der kleinsten Quadrate zum Projizieren der Basisvorhersage auf eine unterste Ebene der Hierarchie, abhängig von einer Bedingung für jeden Knoten der untersten Ebene der Hierarchie.In another aspect, there is provided a computing device for reducing prediction error in a hierarchy, the computing device comprising: a processor; and a memory storing instructions that, when executed by the processor, configure the device for the following steps: receiving, by a pre-processing module, data related to a hierarchy; generating, by the pre-processing module, the hierarchy based on the data and a summation matrix relating to a structure of the hierarchy; receiving by a prediction matching module a baseline prediction of the hierarchy, the summation matrix and a weight matrix, the weight matrix reflecting a weighting scheme for each node of the hierarchy, the weight matrix being generated by either the pre-processing module or the prediction matching module; generating, by the prediction matching module, a matched prediction based on a least squares optimization technique for projecting the baseline prediction to a bottom level of the hierarchy dependent on a condition for each node of the bottom level of the hierarchy.
In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer nicht-negativen Kleinste-Quadrate-Optimierungstechnik. In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer iterativen Optimierung, bei der jeder Knoten der Vorhersage der untersten Ebene innerhalb eines entsprechenden Bereichs begrenzt wird. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf eine oder mehrere Metriken der Hierarchie; die Gewichtungsmatrix kann in einigen Fällen diagonal sein. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf einen Vorhersagefehler jedes Knotens der Hierarchie. In einigen Ausführungsformen führt das Vorverarbeitungsmodul mindestens einen der folgenden Schritte durch: i) Entfemen eines oder mehrerer Knoten der Hierarchie, die einen Nullwert oder einen Wert unter einem Schwellenwert aufweisen; ii) Auffüllen eines oder mehrerer fehlender Datensätze der Hierarchie auf der Grundlage von Geschwisterinformationen; und iii) Extrahieren von rollierenden Merkmalen auf allen Ebenen der Hierarchie.In some embodiments, the matched prediction is based on a non-negative least squares optimization technique. In some embodiments, the matched prediction is based on an iterative optimization where each node of the bottom-level prediction is constrained within a corresponding range. In some embodiments, each entry of the weight matrix relates to one or more metrics of the hierarchy; the weight matrix can be diagonal in some cases. In some embodiments, each entry of the weight matrix relates to a prediction error of each node of the hierarchy. In some embodiments, the pre-processing module performs at least one of the following steps: i) removing one or more nodes of the hierarchy that have a null value or a value below a threshold; ii) filling in one or more missing records of the hierarchy based on sibling information; and iii) extracting rolling features at all levels of the hierarchy.
In einem anderen Aspekt wird ein nicht-transitorisches computerlesbares Speichermedium zum Reduzieren eines Vorhersagefehlers in einer Hierarchie bereitgestellt, wobei das computerlesbare Speichermedium Anweisungen enthält, die, wenn sie von einem Computer ausgeführt werden, den Computer veranlassen Empfangen von Daten, die sich auf eine Hierarchie beziehen, durch ein Vorverarbeitungsmodul; Erzeugen der Hierarchie auf der Grundlage der Daten und einer Summationsmatrix, die sich auf eine Struktur der Hierarchie bezieht, durch das Vorverarbeitungsmodul; Empfangen einer Basisvorhersage der Hierarchie, der Summationsmatrix und einer Gewichtungsmatrix durch ein Vorhersageabstimmungsmodul, wobei die Gewichtungsmatrix ein Gewichtungsschema für jeden Knoten der Hierarchie widerspiegelt, wobei die Gewichtungsmatrix entweder durch das Vorverarbeitungsmodul oder das Vorhersageabstimmungsmodul erzeugt wird; Erzeugen, durch das Vorhersageabstimmungsmodul, einer abgestimmten Vorhersage auf der Grundlage einer Optimierungstechnik der kleinsten Quadrate zum Projizieren der Basisvorhersage auf eine unterste Ebene der Hierarchie, abhängig von einer Bedingung für jeden Knoten der untersten Ebene der Hierarchie.In another aspect, there is provided a non-transitory computer-readable storage medium for reducing prediction error in a hierarchy, the computer-readable storage medium containing instructions that, when executed by a computer, cause the computer to receive data related to a hierarchy , by a preprocessing mo du; generating, by the pre-processing module, the hierarchy based on the data and a summation matrix relating to a structure of the hierarchy; receiving by a prediction matching module a baseline prediction of the hierarchy, the summation matrix and a weight matrix, the weight matrix reflecting a weighting scheme for each node of the hierarchy, the weight matrix being generated by either the pre-processing module or the prediction matching module; generating, by the prediction matching module, a matched prediction based on a least squares optimization technique for projecting the baseline prediction to a bottom level of the hierarchy dependent on a condition for each node of the bottom level of the hierarchy.
In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer nichtnegativen Kleinstquadrat-Optimierungstechnik. In einigen Ausführungsformen basiert die abgestimmte Vorhersage auf einer iterativen Optimierung, bei der jeder Knoten der Vorhersage der untersten Ebene innerhalb eines entsprechenden Bereichs begrenzt wird. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf eine oder mehrere Metriken der Hierarchie; die Gewichtungsmatrix kann in einigen Fällen diagonal sein. In einigen Ausführungsformen bezieht sich jeder Eintrag der Gewichtungsmatrix auf einen Vorhersagefehler jedes Knotens der Hierarchie. In einigen Ausführungsformen führt das Vorverarbeitungsmodul mindestens einen der folgenden Schritte durch: i) Entfemen eines oder mehrerer Knoten der Hierarchie, die einen Nullwert oder einen Wert unter einem Schwellenwert aufweisen; ii) Auffüllen eines oder mehrerer fehlender Datensätze der Hierarchie auf der Grundlage von Geschwisterinformationen; und iii) Extrahieren von rollierenden Merkmalen auf allen Ebenen der Hierarchie.In some embodiments, the matched prediction is based on a non-negative least squares optimization technique. In some embodiments, the matched prediction is based on an iterative optimization where each node of the bottom-level prediction is constrained within a corresponding range. In some embodiments, each entry of the weight matrix relates to one or more metrics of the hierarchy; the weight matrix can be diagonal in some cases. In some embodiments, each entry of the weight matrix relates to a prediction error of each node of the hierarchy. In some embodiments, the pre-processing module performs at least one of the following steps: i) removing one or more nodes of the hierarchy that have a null value or a value below a threshold; ii) filling in one or more missing records of the hierarchy based on sibling information; and iii) extracting rolling features at all levels of the hierarchy.
Die Einzelheiten einer oder mehrerer Ausführungsformen des Gegenstands dieser Beschreibung sind in den beigefügten Zeichnungen und der nachstehenden Beschreibung dargelegt. Andere Merkmale, Aspekte und Vorteile des Gegenstandes werden aus der Beschreibung, den Zeichnungen und den Ansprüchen ersichtlich.The details of one or more embodiments of the subject matter of this description are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will be apparent from the description, drawings, and claims.
Gleiche Bezugsnummern und Bezeichnungen in den verschiedenen Zeichnungen bezeichnen gleiche Elemente.Like reference numbers and designations in the different drawings indicate like elements.
Figurenlistecharacter list
Um die Erörterung eines bestimmten Elements oder einer bestimmten Handlung leicht erkennen zu können, beziehen sich die höchstwertige(n) Ziffer(n) in einer Bezugsnummer auf die Nummer der Abbildung, in der dieses Element zuerst eingeführt wird.
-
1 zeigt eine Systemarchitektur in Übereinstimmung mit einer Ausführungsform. -
2 zeigt ein Blockdiagramm in Übereinstimmung mit einer Ausführungsform. -
3 zeigt ein Beispiel für eine Hierarchie gemäß einer Ausführungsform. -
4 zeigt eine Hierarchievorhersage gemäß einer Ausführungsform. -
5 zeigt eine Hierarchievorhersage gemäß einer Ausführungsform. -
6 zeigt eine Tabelle mit Symbolen. -
7 zeigt eine Vorhersageabstimmungsstruktur gemäß einer Ausführungsform. -
8 zeigt die Auswertung einer Projektionsmatrix gemäß einer Ausführungsform. -
9 zeigt die Auswertung einer Projektionsmatrix gemäß einer Ausführungsform. -
10 zeigt ein Flussdiagramm gemäß einer Ausführungsform. -
11 zeigt ein Flussdiagramm gemäß einer Ausführungsform. -
12 zeigt ein Flussdiagramm einer Vorhersageabstimmung gemäß einer Ausführungsform. -
13 zeigt einen Vergleich von Basisvorhersagefehlern und abgestimmten Vorhersagefehlern gemäß einer Ausführungsform. -
14 zeigt zwei Diagramme des Bedarfs in Abhängigkeit vom Datum gemäß einer Ausführungsform.
-
1 Figure 1 shows a system architecture in accordance with an embodiment. -
2 12 shows a block diagram in accordance with an embodiment. -
3 Figure 1 shows an example of a hierarchy according to one embodiment. -
4 12 shows a hierarchy prediction according to an embodiment. -
5 12 shows a hierarchy prediction according to an embodiment. -
6 shows a table with symbols. -
7 12 shows a prediction voting structure according to one embodiment. -
8th shows the evaluation of a projection matrix according to an embodiment. -
9 shows the evaluation of a projection matrix according to an embodiment. -
10 12 shows a flowchart according to an embodiment. -
11 12 shows a flowchart according to an embodiment. -
12 12 shows a flowchart of prediction tuning according to one embodiment. -
13 12 shows a comparison of baseline prediction errors and matched prediction errors, according to one embodiment. -
14 12 shows two graphs of demand versus date according to one embodiment.
Detaillierte BeschreibungDetailed description
Hierin werden Systeme und Verfahren für hierarchische Vorhersagen (auch als Prognosen bezeichnet) beschrieben, die Vorhersagen abgleichen und alle Vorhersagen über eine gesamte Hierarchie hinweg konsistent machen, wodurch das Problem der Inkonsistenz, das bei früheren Versuchen auftrat, gelöst wird. Darüber hinaus verwenden diese Systeme und Verfahren Informationen aus allen Ebenen der Hierarchie, um den Gesamtfehler über die gesamte Hierarchie zu reduzieren.Described herein are systems and methods for hierarchical predictions (also known as forecasts) that match predictions and make all predictions consistent across an entire hierarchy, thereby solving the problem of inconsistency encountered in previous attempts. In addition, these systems and procedures use information from all levels of the hierarchy to reduce overall error across the hierarchy.
In einigen Ausführungsformen umfasst das hierarchische Vorhersagesystem ein Vorverarbeitungsmodul 104 und ein Vorhersageabstimmungsmodul 106. Die beiden Module können in jede bestehende Vorhersage-Pipeline 108 eingefügt werden, wodurch beliebige Sätze von Vorhersagen konsistent und mit verbesserter Genauigkeit (durch Verringerung des gesamten Vorhersagefehlers) erstellt werden. Dies ermöglicht es den Unternehmen, bestehende maßgeschneiderte Vorhersagelösungen in Verbindung mit dem hierin offengelegten hierarchischen Vorhersagesystem und -verfahren zu verwenden.In some embodiments, the hierarchical prediction system includes a
Die Client-Datenquelle 102 liefert Informationen über die Struktur einer Hierarchie (von einem Client), so dass die Hierarchie rekonstruiert werden kann. In einigen Ausführungsformen baut das Vorverarbeitungsmodul 104 die Hierarchie und die Beziehungen zwischen den Knoten der Hierarchie sowie die Datenaggregation für höhere Ebenen der Hierarchie auf.The
In einigen Ausführungsformen entfernt das Vorverarbeitungsmodul 104 Knoten, die sehr kleine Werte (d. h. weniger als einen Schwellenwert) oder den Wert Null haben. Solche kleinen Mengen tragen nur wenig zur Abstimmung der Vorhersagen bei, machen die Struktur jedoch komplexer.In some embodiments, the
In einigen Ausführungsformen kann das Vorverarbeitungsmodul 104 fehlende Datensätze auf der Grundlage von Geschwisterinformationen auffüllen. Das heißt, das Vorverarbeitungsmodul 104 kann die Hierarchie ausnutzen, um fehlende Informationen aufzufüllen.In some embodiments, the
In einigen Ausführungsformen kann das Vorverarbeitungsmodul 104 rollierende Merkmale (engl. rolling features) auch als rollende oder wälzende Merkmale (d. h. auf Verzögerung basierende Merkmale, also Verzögerungsmerkmale) auf allen Ebenen der Hierarchie extrahieren. In einigen Ausführungsformen kann eine solche Extraktion unter Verwendung von Statistiken der rollierenden Merkmale der Kinder in den Eltern durchgeführt werden, wenn Daten für höhere Ebenen aggregiert werden.In some embodiments, the
Das Vorhersageabstimmungsmodul 106 stellt sicher, dass die Vorhersagen konsistent sind und einen insgesamt reduzierten Vorhersagefehler aufweisen. Das Vorhersageabstimmungsmodul 106 umfasst ein Optimierungsverfahren, welches die Vorhersagen konsistent und genauer macht. In einigen Ausführungsformen kann die Optimierung während des Vorhersageabstimmung eingeschränkt werden. Bei der Vorhersage eines Bedarfs in einer Lieferkette sollte beispielsweise eine negative Zahl in der Vorhersage nicht zulässig sein. In einigen Ausführungsformen können sowohl uneingeschränkte als auch eingeschränkte Formen der Vorhersageabstimmung von einem Benutzer auf der Grundlage der Geschäftsanforderungen des Unternehmens konfiguriert werden.The
In einigen Ausführungsformen kann ein allgemeines Gewichtungsschema für die Optimierung verwendet werden. In einigen Ausführungsformen kann das Gewichtungsschema einzelnen Knoten während der Optimierung einen Wichtigkeitswert zuweisen, der auf unternehmensspezifischen Wichtigkeitswerten oder Metriken basiert. In einigen Ausführungsformen umfassen diese Metriken/Werte die Kosten von Produkten, das Auftragsvolumen, die Fehlerquote von Vorhersagen usw. In solchen Fällen kann das Gewichtungsschema durch das Vorverarbeitungsmodul erstellt werden. In einigen Ausführungsformen kann das Gewichtungsschema dem Vorhersagefehler jedes Knotens einen Wichtigkeitswert zuweisen. In solchen Fällen wird das Gewichtungsschema im Anschluss an die Vorhersage-Pipeline 108 entwickelt, da die Vorhersage-Pipeline 108 die Fehlerschätzungen für jeden Knoten in der Hierarchie liefert.In some embodiments, a general weighting scheme can be used for the optimization. In some embodiments, the weighting scheme may assign an importance value to individual nodes during optimization based on enterprise-specific importance values or metrics. In some embodiments, these metrics/values include the cost of products, order volume, error rate of predictions, etc. In such cases, the weighting scheme may be created by the pre-processing module. In some embodiments, the weighting scheme may assign an importance value to each node's prediction error. In such cases, the weighting scheme is developed subsequent to the
Das Blockdiagramm 200 umfasst einen System-Server 202, eine Client-Datenquelle 216 und eine Client-Vorhersage-Pipeline 218. Der Systemserver 202 kann einen Speicher 210, eine Festplatte 204, einen Prozessor 212, ein Vorverarbeitungsmodul 208 und ein Vorhersageabstimmungsmodul 206 umfassen. Obwohl ein Prozessor 212 dargestellt ist, kann der Systemserver 202 einen oder mehrere Prozessoren umfassen. In einigen Ausführungsformen kann der Speicher 210 ein flüchtiger Speicher sein, während es sich bei der Festplatte 204 um einen nichtflüchtigen Speicher handeln kann. In einigen Ausführungsformen kann der Systemserver 202 mit der Client-Datenquelle 216 und der Client-Vorhersage-Pipeline 218 über das Netzwerk 214 kommunizieren.The block diagram 200 includes a
Das Blockdiagramm 200 kann auch zusätzliche Merkmale und/oder Funktionen enthalten. Zum Beispiel kann der System-Server 202 auch zusätzlichen Speicher (austauschbar und/oder nicht austauschbar) enthalten, einschließlich, aber nicht beschränkt auf magnetische oder optische Platten oder Bänder. Ein solcher zusätzliche Speicher ist in
Die Kommunikation zwischen dem System-Server 202, der Client-Datenquelle 216 und der Client-Vorhersagepipeline 218 über das Netzwerk 214 kann über verschiedene Netzwerktypen erfolgen. Nicht einschränkende Beispiel-Netzwerktypen können Fibre Channel, Small Computer System Interface (SCSI), Bluetooth, Ethernet, Wi-fi, Infrared Data Association (IrDA), Local Area Networks (LAN), Wireless Local Area Networks (WLAN), Wide Area Networks (WAN) wie das Internet, Serial und Universal Serial Bus (USB) umfassen. Im Allgemeinen kann die Kommunikation zwischen verschiedenen Komponenten des Blockdiagramms 200 über festverdrahtete, zellulare, Wi-Fi- oder Bluetooth-vernetzte Komponenten oder Ähnliches erfolgen. In einigen Ausführungsformen können ein oder mehrere elektronische Geräte des Systems 200 Cloud-basierte Funktionen enthalten, wie z.B. Cloud-basierte Speichermöglichkeiten.Communication between the
Die Client-Datenquelle 216 kann eine Vielzahl von Rohdaten von einem Client bereitstellen. Sie kann genügend Informationen enthalten, um eine Hierarchie zu rekonstruieren - einschließlich der Struktur der Hierarchie und der Beziehungen zwischen verschiedenen Knoten der Hierarchie.
Über das Netzwerk 214 kann der Systemserver 202 Daten von der Client-Datenquelle 216 abrufen und auf die Client-Vorhersagepipeline 218 zugreifen. Die abgerufenen Daten können im Speicher 210 oder auf der Festplatte 204 gespeichert werden. In einigen Fällen kann der Systemserver 202 auch einen Webserver umfassen und Ressourcen in einem Format formatieren, das für die Anzeige in einem Webbrowser geeignet ist.The
Während die Hierarchie 300 eine Kunden-Teile-Hierarchie darstellt, kann es verschiedene Formen einer Hierarchie geben.While
In einem nicht einschränkenden Beispiel ist die Hierarchie eine geografische Hierarchie, wobei die verschiedenen Ebenen der Hierarchie verschiedene geografische Regionen darstellen. Beispielsweise kann die unterste Ebene die wichtigsten Regionen eines Landes darstellen; die mittlere Ebene kann verschiedene Länder repräsentieren; und die oberste Ebene kann die Welt insgesamt darstellen. In einer Lieferkettenhierarchie sollte beispielsweise die Summe des prognostizierten Bedarfs aus jeder Region (des Landes A) an den Knoten A1, A2 und A3 dem prognostizierten Bedarf (für das Land A) am Knoten A entsprechen. Ebenso sollte die Summe des prognostizierten Bedarfs aus jeder Region (des Landes B) an den Knoten B1 und B2 dem prognostizierten Bedarf (für das Land B) am Knoten B entsprechen. Schließlich sollte die Summe der prognostizierten Nachfrage aus Land A an Knoten A und Land B an Knoten B der weltweiten prognostizierten Nachfrage auf Ebene 0 302 (Daten) entsprechen.In one non-limiting example, the hierarchy is a geographic hierarchy, with different levels of the hierarchy representing different geographic regions. For example, the lowest level can represent the major regions of a country; the middle level can represent different countries; and the top level can represent the world at large. For example, in a supply chain hierarchy, the sum of the forecast demand from each region (of country A) at nodes A1, A2, and A3 should equal the forecast demand (for country A) at node A. Likewise, the sum of the forecast demand from each region (of country B) at nodes B1 and B2 should equal the forecast demand (for country B) at node B. Finally, the sum of the forecast demand from country A at node A and country B at node B should equal the world forecast demand at
In einem nicht einschränkenden Beispiel ist die Hierarchie eine Produkthierarchie, wobei die verschiedenen Ebenen der Hierarchie verschiedene Typen (z. B. Größe, Marke, Modell) eines Produkts darstellen. Die Summe der Nachfrage nach verschiedenen Typen/Größen des Produkts sollte der gesamten Produktnachfrage entsprechen.In one non-limiting example, the hierarchy is a product hierarchy, with the different levels of the hierarchy representing different types (e.g., size, brand, model) of a product. The sum of demand for different types/sizes of product should equal total product demand.
In einem nicht einschränkenden Beispiel ist die Hierarchie eine ereigniszeitbasierte Hierarchie, bei der die verschiedenen Ebenen der Hierarchie verschiedene Zeiträume der Nachfrage darstellen. Die Summe der wöchentlichen Nachfrage (Ebene 2 306) sollte der monatlichen/quartalsweisen Nachfrage (Ebene 1 304) entsprechen, die wiederum der jährlichen Nachfrage (Ebene 0 302) entsprechen sollte.As a non-limiting example, the hierarchy is an event-time based hierarchy, where the different levels of the hierarchy represent different time periods of demand. The sum of the weekly demand (
Es wird eine ideale Vorhersage 402 gezeigt, bei der die Knoten die folgenden Vorhersagewerte haben: A1 = 20, A2 = 30 und A3 =50; B1 = 80 und B2 = 70; A = 100; B = 150; und Daten = 250. Zu bemerken ist in 402: A1 + A2 + A3 = A; B1 + B2 = B; und A + B = Daten. Das heißt, die Summe aller Vorhersagen für eine Gruppe von Zweigen auf einer Ebene entspricht der Vorhersage für den darüber liegenden Knoten; und die Summe aller Vorhersagen auf einer Ebene entspricht der Vorhersage für die darüber liegende Ebene.An
In der Realität addieren sich die Vorhersagen auf den verschiedenen Ebenen jedoch nicht immer, da die Vorhersagen auf den verschiedenen Ebenen unabhängig voneinander erstellt werden. Die reale Vorhersage 404 veranschaulicht dieses Phänomen. Zum Beispiel ist die Summe der Vorhersagen für die Knoten A1, A2 und A3: A1 + A2 + A3 = 100, während die Vorhersage für den Knoten A tatsächlich 110 beträgt. Es besteht eine Diskrepanz von +10, d.h. A - (A1 + A2 + A3) = 10. In ähnlicher Weise ist die Summe der Vorhersagen für die Knoten B1 und B2: B1 + B2 = 150, während die Vorhersage für den Knoten B tatsächlich 170 beträgt. Es besteht eine Diskrepanz von +20, d. h. B - (B1 + B2) = 20. Außerdem beträgt die Summe der Vorhersagen für die Knoten A und B: A + B = 280, während die Vorhersagen für Daten 230 beträgt. Es ergibt sich eine Diskrepanz von -50, d. h. Daten - (A + B) = -50.However, in reality, the predictions at the different levels do not always add up because the predictions at the different levels are made independently.
Die Diskrepanz auf jeder Ebene wird als „Konsistenzfehler“ bezeichnet. Dieser unterscheidet sich vom Vorhersagefehler, der der Fehler ist, der mit jeder Vorhersage (d.h. an jedem Knoten) verbunden ist. Beispiel: A1 hat eine Vorhersage von 20. Diese Vorhersage für A1 ist in
In den hier vorgestellten Systemen und Verfahren der hierarchischen Vorhersage werden die Vorhersagen auf jeder Ebene der Hierarchie so aufeinander abgestimmt, dass der Konsistenzfehler gleich Null ist. Eine optimale Vorhersage wird auf der untersten Ebene (d. h. der am stärksten zergliederten Ebene) ermittelt; diese optimalen Vorhersagen der untersten Ebene werden addiert, um die Vorhersagen der höheren Ebene zu berechnen, wobei ein Konsistenzfehler von Null zugrunde gelegt wird.In the hierarchical prediction systems and methods presented here, the predictions at each level of the hierarchy are matched to each other in such a way that the consistency error is equal to zero. An optimal prediction is found at the lowest level (i.e. the most dissected level); these optimal lowest-level predictions are added to calculate the higher-level predictions, assuming a zero consistency error.
Abgleich der Vorhersagenmatching the predictions
Da der Konsistenzfehler Null ist, sind die abgestimmten Vorhersagen 502 jedes der acht Knoten die Summe der untergeordneten Vorhersageknoten, wobei die Knoten der untersten Ebene eine optimale Vorhersage 506 für die unterste Ebene haben. Die unterste Ebene ist auch als bottom level bezeichnet. Die Beziehung zwischen den abgestimmten Vorhersagen 502 und der optimalen unterste Ebene Vorhersage 506 ist durch Gleichung 508 gegeben, in der die Summationsmatrix 504 auf die optimale unterste Ebene Vorhersage 506 angewendet wird, um die abgestimmten Vorhersagen 502 zu erhalten. Die Summationsmatrix 504 ist für das in der Hierarchie 500 dargestellte Beispiel eine 8x5-Matrix, während die optimale unterste Ebene Vorhersage 506 ein 5x1-Vektor und die abgestimmten Vorhersagen 502 ein 8x1-Vektor sind. Dies bedeutet:
Das Problem, die abgestimmten Vorhersagen zu finden, wird nun auf die Suche nach den optimalen Vorhersagen auf der untersten Ebene verlagert. In einigen Ausführungsformen können die Vorhersagen der untersten Ebene mit Hilfe einer Projektionsmatrix geschätzt werden, die die Vorhersagen aller Ebenen auf die unterste Ebene abbildet. Auf diese Weise werden alle Vorhersagen auf allen Ebenen verwendet, um die optimale Projektion auf die unterste Ebene zu finden:
In Gleichung (3) ist y ein Vektor, der die Basisvorhersagen darstellt (d. h. ein Vektor der Vorhersagen, die von der Vorhersage-Pipeline 108 von
Mit dieser Formel werden die Basisvorhersagen zunächst mit Hilfe der Projektion P auf die unterste Ebene abgebildet, und dann werden die Vorhersagen der untersten Ebene mit Hilfe der in
In Gleichung (1) werden die abgestimmten Vorhersagen (d. h. der Vektor der abgestimmten Vorhersagen an allen Knoten) durch die Basisvorhersagen (d. h. den Vektor der Vorhersagen an allen Knoten) ersetzt und das System der linearen Gleichungen für den Vektor der optimalen Vorhersagen auf der untersten Ebene (β) unter Verwendung eines OLS (Ordinary Last Squares) -Algorithmus gelöst, was Folgendes ergibt:
In Gleichung (4) ist ST die Transponierte der Summationsmatrix S. Vergleicht man Gleichung (2) und (4), so ergibt sich die Projektionsmatrix P wie folgt:
Die in P definierte Projektionsoperation ist eine lineare Transformation, was bedeutet, dass jede Vorhersage der untersten Ebene in β eine gewichtete lineare Kombination aller Vorhersagen ist. Nach der Berechnung der Projektionsmatrix P können alle Basisvorhersagen auf die unterste Ebene projiziert und wieder nach oben aggregiert werden. Dadurch kann der Algorithmus in Verbindung mit bestehenden Vorhersage-Pipelines verwendet werden.The projection operation defined in P is a linear transformation, which means that each bottom-level prediction in β is a weighted linear combination of all predictions. After computing the projection matrix P, all the baseline predictions can be projected to the lowest level and aggregated back up. This allows the algorithm to be used in conjunction with existing prediction pipelines.
Verallgemeinerte VorhersageübereinstimmungGeneralized Prediction Agreement
Die OLS-Lösung (siehe Gleichung (5)) kann zu einer gewichteten Optimierung verallgemeinert werden, bei der ein Gewicht für jeden der Knoten des Baums während der Optimierung berücksichtigt werden kann. In dieser verallgemeinerten Form kann die Projektionsmatrix P mit Hilfe eines Verfahrens der verallgemeinerten kleinsten Quadrate (engl. Generalized Least Squares (GLS)) gefunden werden:
Wenn W diagonal ist, wird die GLS als Weighted Least Squares (WLS) bezeichnet. Gl. (6) ist in
Die Hierarchie wird einmal aufgebaut und durch die Summationsmatrix S definiert. In der Beispielhierarchie 300 ist die Gewichtungsmatrix W eine 8x8-Matrix. In einigen Ausführungsformen ist W eine Diagonalmatrix (d. h. alle nichtdiagonalen Elemente sind 0 und nur die Diagonalelemente - 8 Elemente, die 8 Knoten entsprechen - sind ungleich Null). Beispiele hierfür sind die Umkehrung der Fehlerquote der Basisvorhersagen, das Auftragsvolumen in jedem Knoten, die Gesamtkosten/der Wert der Aufträge in jedem Knoten usw. Die nichtdiagonalen Elemente gewichten die Beziehung zwischen den Knoten.The hierarchy is built once and defined by the summation matrix S. In the
In einigen Ausführungsformen wird die Umkehrung der Fehlerquote der Basisvorhersagen als diagonale Einträge der Gewichtungsmatrix W verwendet, In solchen Ausführungsformen ist die Projektion auf die unterste Ebene der Hierarchie ein Best Linear Unbiased Estimate (BLUE).In some embodiments, the inverse error rate of the baseline predictions is used as the diagonal entries of the weight matrix W. In such embodiments, the projection to the bottom of the hierarchy is a Best Linear Unbiased Estimate (BLUE).
Dieses Gewichtungsschema kann so erweitert werden, dass ein Kunde einen beliebigen geschäftsspezifischen Wichtigkeitswert oder eine Metrik verwenden kann, die er wünscht. In einigen Ausführungsformen kann einem Knoten eine Bedeutung zugewiesen werden, die auf dem Auftragsvolumen in diesem Knoten basiert. In einigen Ausführungsformen kann die Bedeutung eines Knotens auf der Grundlage der Gesamtkosten der Artikel in diesem Knoten zugewiesen werden. In einigen Ausführungsformen kann die Wichtigkeit verschiedenen Ebenen der Hierarchie zugeordnet werden. Wie man sieht, kann die Wichtigkeit auch jeder anderen Metrik zugewiesen werden.This weighting scheme can be extended to allow a customer to use any business-specific importance value or metric that they desire. In some embodiments, a node may be assigned an importance based on the volume of orders at that node. In some embodiments, the importance of a node may be assigned based on the total cost of the items in that node. In some embodiments, importance can be assigned to different levels of the hierarchy. As you can see, the importance can also be assigned to any other metric.
Diese Gewichte bestimmen die Wichtigkeit der einzelnen Elemente in der Optimierung bei der Suche nach der Projektion. Wenn beispielsweise ein erstes Produkt zehnmal so oft bestellt wird wie ein zweites Produkt, dann hat das erste Produkt einen größeren Einfluss auf die Vorhersageabstimmung. In einigen Ausführungsformen wird eine Kombination aus Fehlerquote und Volumen/Kosten verwendet, so dass ein umsatzstärkstes Produkt mit niedriger Fehlerquote den größten Einfluss auf den Abgleich hat.These weights determine the importance of each element in the optimization in finding the projection. For example, if a first product is ordered 10 times as often as a second product, then the first product has a greater impact on the prediction vote. In some embodiments, a combination of error rate and volume/cost is used such that a top-selling product with a low error rate has the greatest impact on the reconciliation.
Beschränkte VorhersageabstimmungLimited prediction voting
Wie oben beschrieben, passt die GLS-Optimierung (Generalized Least Squares) die Vorhersagen so an, dass der Gesamtvorhersagefehler reduziert wird, und stellt sicher, dass sich die abgestimmten Vorhersagen korrekt addieren (d. h. der Konsistenzfehler ist Null). Dies führt jedoch dazu, dass einige der Vorhersagen einen negativen Wert haben. In verschiedenen Anwendungen gibt es jedoch bereichsspezifische Beschränkungen. Wenn zum Beispiel die Nachfrage nach Produkten prognostiziert wird, kann die abgestimmte vorhergesagte Nachfrage nicht negativ sein. Die Integration einer solchen Bedingung ist jedoch nicht trivial oder dem Optimierungsalgorithmus bekannt. Um dieses nicht triviale Problem zu lösen, werden während der Optimierung Nicht-Negativitätsbeschränkungen eingeführt. In diesem modifizierten Ansatz wird ein NNLS-Algorithmus (Non-Negative Least Squares) verwendet, um die abgestimmten Vorhersagen β auf unterster Ebene zu finden, wobei die Einschränkung gilt, dass sie nicht negativ sein dürfen:
Diese Form der Optimierung unterscheidet sich von der Methode der gewichteten kleinsten Quadrate dadurch, dass es keine geschlossene Form der Lösung gibt. Die OLS und die WLS haben beide geschlossene Lösungen, die direkt durch Lösen der Gleichungen (5) bzw. (6) erhalten werden können. Die eingeschränkte Form der Optimierung erfordert jedoch eine iterative Optimierung und numerische Lösungsverfahren.This form of optimization differs from the weighted least squares method in that there is no closed form of the solution. The OLS and the WLS both have closed solutions that can be obtained directly by solving equations (5) and (6), respectively. However, the restricted form of optimization requires iterative optimization and numerical solution methods.
Die NNLS in Gleichung (7) kann mit einer Methode der aktiven Menge gelöst werden, bei der die Menge der aktiven Nebenbedingungen bei jeder Kandidatenlösung beibehalten wird. Eine Nebenbedingung wird als aktiv bezeichnet, wenn die Kandidatenlösung genau auf dem Rand liegt, was bedeutet, dass geringfügige Änderungen der Lösung diese Nebenbedingungen verletzen können. Die aktive Menge bestimmt, welche Nebenbedingungen das Endergebnis der Optimierung beeinflussen. Die durch die eingeschränkte Optimierung gefundene Lösung ist möglicherweise nicht die optimale Antwort im Sinne eines minimalen Gesamtfehlers, aber sie garantiert, dass die Lösung alle Einschränkungen erfüllt und daher im machbaren Bereich des Suchraums optimal ist.The NNLS in Equation (7) can be solved using an active set method that preserves the set of active constraints for each candidate solution. A constraint is said to be active if the candidate solution lies exactly on the boundary, which means that minor changes in the solution can violate these constraints. The active set determines which constraints affect the final result of the optimization. The solution found by the constrained optimization may not be the optimal answer in terms of minimum overall error, but it guarantees that the solution satisfies all constraints and is therefore optimal within the feasible range of the search space.
In einigen Ausführungsformen kann jede beliebige Form einer Ungleichheitsbedingung für jeden Knoten im Baum verwendet werden. Wenn beispielsweise eine vorhergesagte Größe zwischen einer Untergrenze und einer Obergrenze liegen muss, kann eine BVLS-Optimierung (Bounded-Variable Least Squares) verwendet werden:
In einigen Ausführungsformen kann jeder Knoten in der Hierarchie seine eigene untere und obere Schrankenbedingung haben. Die Methode der begrenzten variablen kleinsten Quadrate (Bounded-Variable Least Squares, BVLS) ist ebenfalls eine iterative Optimierung, die numerische Lösungsverfahren erfordert. Ähnlich wie NNLS verwendet auch BVLS eine Active-Set-Strategie, mit dem Unterschied, dass es zwei Sätze aktiver Beschränkungen unterhält: einen für aktive untere und einen für aktive obere Beschränkungen. Auf diese Weise ist bei jeder Iteration der Optimierung bekannt, welche Beschränkungen wahrscheinlich verletzt werden, so dass die Optimierung entsprechend gelenkt werden kann.In some embodiments, each node in the hierarchy may have its own lower and upper bound condition. The method Bounded-variable least squares (BVLS) is also an iterative optimization that requires numerical solution methods. Similar to NNLS, BVLS also uses an active set strategy, except that it maintains two sets of active constraints: one for active lower constraints and one for active upper constraints. In this way, with each iteration of the optimization, it is known which constraints are likely to be violated, so that the optimization can be directed accordingly.
Diese Art der beschränkten Optimierung mit willkürlichen Beschränkungen ist für viele Anwendungen in der Lieferkette nützlich. Wenn ein Untemehmen beispielsweise weiß, dass die tatsächliche Lieferung eines Produkts nicht höher sein kann als eine Zahl, die auf der Produktionskapazität oder den Fertigungsbeschränkungen basiert, kann diese Information in die Optimierung einbezogen werden, indem die Obergrenze für die vorhergesagten Werte festgelegt wird.This type of constrained optimization with arbitrary constraints is useful for many supply chain applications. For example, if a company knows that the actual shipment of a product cannot exceed a figure based on production capacity or manufacturing constraints, this information can be incorporated into the optimization by capping the predicted values.
In einigen Ausführungsformen kann die NNLS-Optimierung auch mit der BVLS gelöst werden, indem die untere Grenze auf Null und die obere Grenze auf unendlich gesetzt wird. Da die BVLS jedoch rechnerisch etwas langsamer ist als die NNLS, weil bei jeder Iteration zwei Sätze von Beschränkungen beibehalten und überprüft werden müssen, wird die Variante mit nichtnegativen Beschränkungen mit der NNLS-Optimierung gelöst. Die entwickelten Lösungen für hierarchische Vorhersagen bestimmen die richtige Optimierungstechnik auf der Grundlage der Benutzerkonfiguration, so dass der Benutzer keine Kenntnisse über den zugrundeliegenden Mechanismus und die Optimierung haben muss.In some embodiments, the NNLS optimization can also be solved with the BVLS by setting the lower bound to zero and the upper bound to infinity. However, since the BVLS is computationally slightly slower than the NNLS because two sets of constraints must be maintained and checked at each iteration, the variant with non-negative constraints is solved with the NNLS optimization. The developed hierarchical prediction solutions determine the right optimization technique based on the user configuration, so the user does not need to have any knowledge about the underlying mechanism and optimization.
Zusammenfassend lässt sich sagen, dass die hier vorgestellten Methoden und Systeme der hierarchischen Vorhersage den Konsistenzfehler vollständig beseitigen und gleichzeitig eine Verringerung des gesamten Vorhersagefehlers garantieren.In summary, the hierarchical prediction methods and systems presented here completely eliminate the consistency error while guaranteeing a reduction in the overall prediction error.
In Schritt 1204 werden die Summationsmatrix S, die Gewichtungsmatrix W und die Basisvorhersage y^, in der Zeichnung teilweise als auch y mit Dach gekennzeichnet, eingegeben. Die Summationsmatrix S wird aus der Hierarchie gebildet. Die Gewichtungsmatrix W wird auf der Grundlage der Kundenpräferenz erstellt; sie kann vor der Vorhersagepipeline erstellt werden. Wenn W die Basisvorhersagefehler enthält, wird sie alternativ nach der Vorhersagepipeline konstruiert, da die Vorhersagepipeline die Basisvorhersagefehler erzeugt.In
Die Summationsmatrix S ist eine m × n-Matrix; die Gewichtungsmatrix W ist eine m × m-Matrix, und y hat ist ein m × 1-Vektor, wobei „m“ die Gesamtzahl der Knoten in der Hierarchie und „n“ die Gesamtzahl der Knoten in der untersten Ebene der Hierarchie bezeichnet.The summation matrix S is an m × n matrix; the weight matrix W is an m × m matrix and y hat is an m × 1 vector, where "m" denotes the total number of nodes in the hierarchy and "n" denotes the total number of nodes in the lowest level of the hierarchy.
In Schritt 1206 findet die Initialisierung der Iteration statt. Zu Beginn wird die Menge der passiven Nebenbedingungen Q, ein n x 1-Vektor, auf leer gesetzt; die Kandidatenlösung C wird auf Null gesetzt, ebenso wie die abgestimmten Vorhersagen β (die ein nx1-Vektor sind). Die Menge der aktiven Nebenbedingungen R, ein nx1-Vektor, wird für die ‚n‘ untersten Knoten in der Hierarchie definiert. Der Fehlervektor ‚e‘ ist ein nx1-Vektor. Die Komponenten bezeichnen den Projektionsfehler an jedem der untersten Knoten in der Hierarchie. Anfänglich ist e = STW y^.In
Von Schritt 1208 bis Schritt 1214 wird der Satz aktiver und passiver Beschränkungen berechnet; bei Entscheidung 1216 wird ein Teil der Lösung auf Negativität geprüft. Wenn es keine Negativität gibt, dann werden ein neuer iterierter Fehlervektor e und ein abgestimmter Vorhersagevektor β in Schritt 1218 berechnet. In Schritt 1208 werden die duale Bedingung eines nicht-nullen Satzes aktiver Beschränkungen R und der maximale Fehler für mit R verbundene Knoten getestet. Wenn die Testbedingung in 1208 nicht erfüllt ist, endet der iterative Prozess mit der in Schritt 1228 berechneten abgestimmten Vorhersage. Wenn beide Bedingungen, wie in Schritt 1208 gezeigt, erfüllt sind, wird der Schritt 1210 bis zur Entscheidung 1216 wiederholt.From
Wenn bei der Entscheidung 1216 ein Teil der Kandidatenlösung CQ negativ ist, werden die Schritte 1220 und 1222 durchgeführt, um die Negativität zu beseitigen; die Menge der passiven Bedingungen Q und die Menge der aktiven Bedingungen R werden bei Schritt 1224 aktualisiert. Die Kandidatenlösung C wird berechnet, gefolgt von der Berechnung eines neuen iterierten Fehlervektors e und des abgestimmten Vorhersagevektors β in Schritt 1218. Wenn die Testbedingung in Schritt 1208 nicht erfüllt ist, endet der iterative Prozess mit der in Schritt 1228 berechneten abgestimmten Vorhersage. Wenn beide Bedingungen, die in Schritt 1208 angegeben sind, erfüllt sind, wird der Schritt 1210 bis zur Entscheidung 1216 wiederholt.If, at
Das iterative Verfahren wird so lange wiederholt, bis die in Schritt 1208 festgelegte Bedingung nicht mehr erfüllt ist; die abgestimmte Vorhersage wird dann in Schritt 1228 berechnet und liefert die Ausgabe in Schritt 1230.The iterative process is repeated until the condition set in
Die Linie 1302 mit einer Steigung von 1 zeigt an, wo sich der abgestimmte Vorhersagefehler gegenüber dem Basisvorhersagefehler verbessert hat. Die hierarchische Vorhersageabstimmung hat die Vorhersagegenauigkeit für die Kreise unterhalb der Linie 1302 verbessert (d. h. den Fehler verringert) und die Genauigkeit für die Kreise oberhalb der Linie 1302 verringert (d. h. den Fehler erhöht). Aus dem in
In Diagramm 1402 ist die historische Nachfrage 1406 von Juli 2017 bis Juli 2018 dargestellt. Ein Pipeline-Vorhersageprogramm (z. B. die Vorhersage-Pipeline 108 in
Im Diagramm 1404 wird die tatsächliche Nachfrage 1412 ab Juli 2018 im Verhältnis zur abgestimmten Vorhersage 1410 und der Basisvorhersage 1408 dargestellt. Wie aus 1204 ersichtlich, ist die abgestimmte Vorhersage 1410 eine deutliche Verbesserung der vorhergesagten Nachfrage (ab Juli 2018) gegenüber der Basisvorhersage 1408 der Nachfrage.
Obwohl die oben beschriebenen Algorithmen, einschließlich derer, die sich auf die vorstehenden Flussdiagramme beziehen, separat beschrieben wurden, können zwei oder mehr der hierin offengelegten Algorithmen in jeder beliebigen Kombination kombiniert werden. Alle hier beschriebenen Methoden, Module, Algorithmen, Implementierungen oder Prozeduren können maschinenlesbare Befehle zur Ausführung durch (a) einen Prozessor, (b) einen Computer, (c) einen Rechner oder (d) einen Computer enthalten: (a) einem Prozessor, (b) einem Controller und/oder (c) einem anderen geeigneten Verarbeitungsgerät. Jeder hier offengelegte Algorithmus, jede Software oder jedes hier offengelegte Verfahren kann in einer Software verkörpert sein, die auf einem nicht-transitorischen, greifbaren Medium gespeichert ist, wie z. B. einem Flash-Speicher, einer CD-ROM, einer Diskette, einer Festplatte, einer Digital Versatile Disk (DVD) oder anderen Speichervorrichtungen, aber Personen, die über gewöhnliche Fachkenntnisse verfügen, werden leicht erkennen, dass der gesamte Algorithmus und/oder Teile davon alternativ von einer anderen Vorrichtung als einem Controller ausgeführt und/oder in Firmware oder dedizierter Hardware in bekannter Weise verkörpert werden könnten (z. B, er kann von einer anwendungsspezifischen integrierten Schaltung (ASIC), einem programmierbaren Logikbaustein (PLD), einem feldprogrammierbaren Logikbaustein (FPLD), diskreter Logik usw. ausgeführt werden). Obwohl spezifische Algorithmen unter Bezugnahme auf die hier dargestellten Flussdiagramme beschrieben werden, werden Personen, die sich mit der Materie auskennen, leicht erkennen, dass viele andere Methoden zur Implementierung der beispielhaften maschinenlesbaren Anweisungen alternativ verwendet werden können. Zum Beispiel kann die Reihenfolge der Ausführung der Blöcke geändert werden und/oder einige der beschriebenen Blöcke können geändert, eliminiert oder kombiniert werden.Although the algorithms described above, including those relating to the flowcharts above, have been described separately, two or more of the algorithms disclosed herein may be combined in any combination. Any method, module, algorithm, implementation, or procedure described herein may include machine-readable instructions for execution by (a) a processor, (b) a computer, (c) a calculator, or (d) a computer: (a) a processor, ( b) a controller and/or (c) another suitable processing device. Any algorithm, software, or method disclosed herein may be embodied in software stored on a non-transitory tangible medium, such as a computer. a flash memory, CD-ROM, floppy disk, hard disk, Digital Versatile Disk (DVD) or other storage device, but persons of ordinary skill in the art will readily recognize that the entire algorithm and/or parts alternatively, it could be implemented on a device other than a controller and/or embodied in firmware or dedicated hardware in a known manner (e.g., it may be an application specific integrated circuit (ASIC), a programmable logic device (PLD), a field programmable logic device (FPLD), discrete logic, etc.). Although specific algorithms are described with reference to the flowcharts presented herein, those skilled in the art will readily appreciate that many other methods of implementing the example machine-readable instructions may alternatively be used. For example, the order of execution of the blocks may be changed and/or some of the blocks described may be changed, eliminated, or combined.
Es sollte beachtet werden, dass die hier dargestellten und diskutierten Algorithmen verschiedene Module haben, die bestimmte Funktionen ausführen und miteinander interagieren. Es sollte verstanden werden, dass diese Module lediglich zum Zweck der Beschreibung nach ihrer Funktion unterteilt sind und Computerhardware und/oder ausführbaren Softwarecode darstellen, der auf einem computerlesbaren Medium zur Ausführung auf geeigneter Computerhardware gespeichert ist. Die verschiedenen Funktionen der unterschiedlichen Module und Einheiten können als Hardware und/oder Software, die auf einem nicht-transitorischen computerlesbaren Medium gespeichert sind, wie oben als Module in beliebiger Weise kombiniert oder getrennt werden und können separat oder in Kombination verwendet werden.It should be noted that the algorithms presented and discussed here have different modules that perform specific functions and interact with each other. It should be understood that these modules are divided by function for purposes of description only and represent computer hardware and/or executable software code stored on a computer readable medium for execution on suitable computer hardware. The various functions of the different modules and units can be combined or separated as modules in any way as hardware and/or software stored on a non-transitory computer readable medium as above and can be used separately or in combination.
Besondere Ausführungsformen des Gegenstands sind beschrieben worden. Andere Ausführungsformen fallen in den Anwendungsbereich der folgenden Ansprüche. Beispielsweise können die in den Ansprüchen genannten Vorgänge in einer anderen Reihenfolge ausgeführt werden und dennoch die gewünschten Ergebnisse erzielen. Die in den beigefügten Abbildungen dargestellten Prozesse müssen nicht unbedingt in der dargestellten Reihenfolge ablaufen, um die erwünschten Ergebnisse zu erzielen. Bei bestimmten Implementierungen können Multitasking und parallele Verarbeitung von Vorteil sein.Particular embodiments of the article have been described. Other embodiments are within the scope of the following claims. For example, the operations recited in the claims can be performed in a different order and still achieve the desired results. The processes shown in the attached figures do not necessarily have to be in the order shown run to achieve the desired results. In certain implementations, multitasking and parallel processing can be beneficial.
Claims (20)
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CA2021/051049 WO2023004488A1 (en) | 2021-07-27 | 2021-07-27 | Systems, methods and apparatus for hierarchical forecasting |
Publications (1)
Publication Number | Publication Date |
---|---|
DE112021000081T5 true DE112021000081T5 (en) | 2023-03-23 |
Family
ID=85025225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE112021000081.0T Withdrawn DE112021000081T5 (en) | 2021-07-27 | 2021-07-27 | Systems, methods and devices for hierarchical predictions |
Country Status (4)
Country | Link |
---|---|
CA (1) | CA3148578A1 (en) |
DE (1) | DE112021000081T5 (en) |
GB (1) | GB2616253A (en) |
WO (1) | WO2023004488A1 (en) |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8068731B2 (en) * | 2009-04-07 | 2011-11-29 | Chunghwa Telecom Co., Ltd. | Dynamic bandwidth allocation method of Ethernet passive optical network |
US8352215B2 (en) * | 2009-10-23 | 2013-01-08 | Sas Institute Inc. | Computer-implemented distributed iteratively reweighted least squares system and method |
US20120197900A1 (en) * | 2010-12-13 | 2012-08-02 | Unisys Corporation | Systems and methods for search time tree indexes |
US9147218B2 (en) * | 2013-03-06 | 2015-09-29 | Sas Institute Inc. | Devices for forecasting ratios in hierarchies |
US10453026B2 (en) * | 2015-03-06 | 2019-10-22 | Walmart Apollo, Llc | System and method for forecasting high-sellers using multivariate bayesian time series |
US10997532B2 (en) * | 2017-02-03 | 2021-05-04 | The Dun And Bradstreet Corporation | System and method for assessing and optimizing master data maturity |
CN109034905A (en) * | 2018-08-03 | 2018-12-18 | 四川长虹电器股份有限公司 | The method for promoting sales volume prediction result robustness |
-
2021
- 2021-07-27 WO PCT/CA2021/051049 patent/WO2023004488A1/en unknown
- 2021-07-27 GB GB2201676.0A patent/GB2616253A/en active Pending
- 2021-07-27 DE DE112021000081.0T patent/DE112021000081T5/en not_active Withdrawn
- 2021-07-27 CA CA3148578A patent/CA3148578A1/en active Pending
Also Published As
Publication number | Publication date |
---|---|
CA3148578A1 (en) | 2023-01-27 |
WO2023004488A1 (en) | 2023-02-02 |
GB2616253A (en) | 2023-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE112019004260T5 (en) | ANALYSIS AND CORRECTION OF THE SUPPLY CHAIN DESIGN THROUGH MACHINE LEARNING | |
Smeekes et al. | Macroeconomic forecasting using penalized regression methods | |
DE202017007517U1 (en) | Aggregate characteristics for machine learning | |
DE102018129424A1 (en) | SYSTEM AND METHOD FOR LEARNING THE STRUCTURE OF DEEP NEURONAL NETWORKS | |
DE112019004261T5 (en) | Analysis and correction of the supply chain design through machine learning | |
DE112018006047T5 (en) | DEFENSE OF FUNCTIONAL FUNCTIONS IN QUANTUM APPROXIMATION OPTIMIZATION | |
DE112016001796T5 (en) | FINE-BITE IMAGE CLASSIFICATION BY EXPLORING LABELS FROM A BIPARTITE GRAPH | |
DE112011101559T5 (en) | Dynamic adaptive detection of processes and their compliance | |
DE10035043A1 (en) | Building multi-dimensional indexing structure for use with linear optimising requests involves forming two convex envelopes of input data sets, some representing envelope apex points | |
WO2004017258A2 (en) | Method, data processing device and computer program product for processing data | |
DE102020126569A1 (en) | SYSTEMS AND PROCEDURES FOR DYNAMIC DEMAND ACQUISITION | |
DE102020126568A1 (en) | SYSTEMS AND PROCEDURES FOR FEATURE ENGINEERING | |
DE112013003205T5 (en) | Method and apparatus for processing database data in a distributed database system | |
DE112013005993T5 (en) | Method, apparatus and computer readable medium for optimal determination of data subsets | |
DE112019003910T5 (en) | INFORMATION PROCESSING METHOD, INFORMATION PROCESSING DEVICE AND INFORMATION PROCESSING PROGRAM | |
DE112021001986T5 (en) | Method and system for processing data records | |
DE10239292A1 (en) | Conflict detection and resolution in connection with a data assignment | |
DE112020002344T5 (en) | FEATURE ENGINEERING FOR THE OPTIMIZATION OF NEURAL NETWORKS | |
DE10394036T5 (en) | System and method for performing a risk analysis | |
DE102020101275A1 (en) | Computing device for training an artificial neural network model, method for training the artificial neural network model, and storage system for storing the same | |
DE202016009077U1 (en) | Segmentation and stratification of composite portfolios of investment securities | |
DE112021000645T5 (en) | Method and system for optimizing a discrete constraint target | |
DE112021004958T5 (en) | SCALABLE MODELING ON LARGE COLLECTIONS OF TIME SERIES | |
AT412678B (en) | METHOD FOR COMPUTER-ASSISTED PREPARATION OF PROGNOSES FOR OPERATIONAL SYSTEMS AND SYSTEM FOR CREATING PROGNOSES FOR OPERATIONAL SYSTEMS | |
DE112018007909T5 (en) | PROCEDURES AND SYSTEM OF STRATEGIC OPERATIONAL OR ORGANIZATIONAL MANAGEMENT |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R081 | Change of applicant/patentee |
Owner name: KINAXIS INC., OTTAWA, CA Free format text: FORMER OWNER: KINAXIS INC., OTTAWA, ONTARIO, CA |
|
R119 | Application deemed withdrawn, or ip right lapsed, due to non-payment of renewal fee |