RU2679225C2 - Способ и устройство для определения градиента основанной на данных функциональной модели - Google Patents
Способ и устройство для определения градиента основанной на данных функциональной модели Download PDFInfo
- Publication number
- RU2679225C2 RU2679225C2 RU2014148490A RU2014148490A RU2679225C2 RU 2679225 C2 RU2679225 C2 RU 2679225C2 RU 2014148490 A RU2014148490 A RU 2014148490A RU 2014148490 A RU2014148490 A RU 2014148490A RU 2679225 C2 RU2679225 C2 RU 2679225C2
- Authority
- RU
- Russia
- Prior art keywords
- data
- model
- functional model
- calculation
- function
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 70
- 238000004364 calculation method Methods 0.000 claims abstract description 81
- 238000012821 model calculation Methods 0.000 claims abstract description 16
- 230000008520 organization Effects 0.000 claims abstract description 5
- 230000006870 function Effects 0.000 claims description 67
- 239000013598 vector Substances 0.000 claims description 35
- 230000001419 dependent effect Effects 0.000 claims description 4
- 238000004590 computer program Methods 0.000 claims 1
- 239000002574 poison Substances 0.000 claims 1
- 231100000614 poison Toxicity 0.000 claims 1
- 238000005303 weighing Methods 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 2
- 239000000126 substance Substances 0.000 abstract 1
- 230000008569 process Effects 0.000 description 31
- 230000014509 gene expression Effects 0.000 description 10
- 238000010606 normalization Methods 0.000 description 10
- 230000009466 transformation Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 238000012886 linear function Methods 0.000 description 4
- 239000000654 additive Substances 0.000 description 3
- 230000000996 additive effect Effects 0.000 description 3
- 230000002441 reversible effect Effects 0.000 description 3
- 230000003068 static effect Effects 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000002485 combustion reaction Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000000844 transformation Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/24—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
- F02D41/26—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
- F02D41/28—Interface circuits
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/02—Circuit arrangements for generating control signals
- F02D41/14—Introducing closed-loop corrections
- F02D41/1401—Introducing closed-loop corrections characterised by the control or regulation method
- F02D41/1402—Adaptive control
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/24—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
- F02D41/2406—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using essentially read only memories
- F02D41/2425—Particular ways of programming the data
- F02D41/2429—Methods of calibrating or learning
- F02D41/2438—Active learning methods
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/24—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
- F02D41/2406—Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using essentially read only memories
- F02D41/2425—Particular ways of programming the data
- F02D41/2429—Methods of calibrating or learning
- F02D41/2477—Methods of calibrating or learning characterised by the method used for learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/17—Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
-
- 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
-
- F—MECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
- F02—COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
- F02D—CONTROLLING COMBUSTION ENGINES
- F02D41/00—Electrical control of supply of combustible mixture or its constituents
- F02D41/02—Circuit arrangements for generating control signals
- F02D41/14—Introducing closed-loop corrections
- F02D41/1401—Introducing closed-loop corrections characterised by the control or regulation method
- F02D2041/1433—Introducing closed-loop corrections characterised by the control or regulation method using a model or simulation of the system
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mechanical Engineering (AREA)
- Combustion & Propulsion (AREA)
- Chemical & Material Sciences (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Algebra (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Geometry (AREA)
- Evolutionary Computation (AREA)
- Operations Research (AREA)
- Business, Economics & Management (AREA)
- Entrepreneurship & Innovation (AREA)
- Economics (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Complex Calculations (AREA)
- Feedback Control In General (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Группа изобретений относится к вычислительной технике и может быть использована для вычисления градиента. Техническим результатом является обеспечение вычисления градиента основанной на данных функциональной модели. Устройство содержит главный вычислительный узел (2) и аппаратный узел (3) вычисления модели, выполненный для аппаратного вычисления значений функции основанной на данных функциональной модели, включающей экспоненциальную функцию, по меньшей мере одну функцию суммирования и по меньшей мере одну функцию умножения, за две операции организации цикла, причем узел (3) вычисления модели имеет вычислительное ядро, обеспечивающее аппаратное вычисление значения функции основанной на данных функциональной модели, и вычислительное ядро, обеспечивающее вычисление градиента основанной на данных функциональной модели для требуемого значения заданной входной переменной, причем одно вычислительное ядро выполняет вычисление значения функции основанной на данных функциональной модели параллельно с вычислением градиента основанной на данных функциональной модели другим вычислительным ядром. 5 н. и 5 з.п. ф-лы, 4 ил.
Description
Изобретение относится к способу определения градиента основанной на данных функциональной модели, в частности с использованием модуля управления, имеющего аппаратный узел, жестко (на аппаратном уровне) запрограммированный для вычисления основанной на данных функциональной модели.
Для реализации функциональных моделей в блоках управления, прежде всего в блоках управления для двигателей внутреннего сгорания, могут предусматриваться основанные на данных функциональные модели. Основанные на данных функциональные модели также называют непараметрическими моделями, и такие модели можно строить без использования специальных заданных значений и установок, по обучающим данным, т.е. по определенному множеству точек таких обучающих данных.
Из уровня техники известны модули управления, имеющие главный вычислительный узел и отдельный узел вычисления модели для вычисления основанных на данных функциональных моделей в блоке управления. Так, например, в публикации DE 102010028259 А1 раскрыт блок управления с дополнительной логической схемой, используемой в качестве узла вычисления модели, выполненного для вычисления экспоненциальных функций, чтобы поддерживать выполнение байесовских регрессионных методов, необходимых, в частности, для вычисления моделей гауссовского процесса.
Узел вычисления модели в целом рассчитан на выполнение математических процессов для того, чтобы вычислять, или выполнять, основанную на данных функциональную модель, исходя из параметров и опорных точек, т.е. обучающих данных. В частности, для эффективного вычисления экспоненциальных функций и функций суммирования функции узла вычисления модели реализованы чисто аппаратными средствами, т.е. только на аппаратном уровне, что позволяет вычислять модели гауссовского процесса с более высокой скоростью, чем это может происходить в главном вычислительном узле, работающим под управлением программного обеспечения.
Для многих случаев применения в блоках управления, в частности в блоках управления для двигателей внутреннего сгорания, вычисление значений функций основанных на данных функциональных моделей является достаточным. Однако известны случаи применения, в которых необходим градиент основанной на данных функциональной модели, в частности, чтобы таким образом вычислить модель, обратную основанной на данных функциональной модели.
Предложены способ определения (нахождения) градиента основанной на данных функциональной модели, прежде всего модели гауссовского процесса, охарактеризованный в пункте 1 формулы изобретения, а также устройство, охарактеризованное в другом независимом пункте формулы изобретения.
Частные случаи осуществления изобретения охарактеризованы в зависимых пунктах формулы.
Одним объектом изобретения является способ вычисления градиента основанной на данных функциональной модели, включающей одну или несколько аккумулированных основанных на данных функциональных подмоделей, характеризующийся тем, что используют аппаратный узел вычисления модели, имеющий первое и второе вычислительные ядра, одно из которых используют для аппаратного вычисления значения функции основанной на данных функциональной модели, включающей экспоненциальную функцию, по меньшей мере одну функцию суммирования и по меньшей мере одну функцию умножения, за две операции организации цикла, а другое - для вычисления градиента основанной на данных функциональной модели для требуемого значения заданной входной переменной, причем вычисление значения функции основанной на данных функциональной модели и вычисление градиента основанной на данных функциональной модели в соответствующих вычислительных ядрах выполняют параллельно.
Идея, положенная в основу описанного выше способа, заключается в том, чтобы выполнять вычисление градиента основанной на данных функциональной модели, используя в основном существующие аппаратно реализованные алгоритмы вычисления значения функции основанной на данных функциональной модели. Это позволяет проводить вычисление градиента для основанной на данных функциональной модели в аппаратном узле вычисления модели, в котором алгоритм вычисления основанной на данных функциональной модели по существу жестко зашит, т.е. реализован аппаратными средствами. Упрощенное вычисление градиента основанной на данных функциональной модели позволяет вычислять, в частности с помощью итерационного метода Ньютона, обратную (инверсную) модель, в которой для данного целевого значения в отношении заданной входной размерности может локально выполняться численное обращение.
Далее может быть предусмотрен вариант осуществления изобретения, в котором основанная на данных функциональная модель определена данными опорных точек, гиперпараметрами и вектором параметров, содержащим число элементов, соответствующее числу опорных точек, причем для вычисления градиента основанной на данных функциональной модели для требуемого значения заданной входной переменной основанную на данных функциональную модель модифицируют, прикладывая к вектору параметров зависящий от данных опорных точек вектор взвешивания.
В еще одном варианте осуществления изобретения градиент основанной на данных функциональной модели может вычисляться в узле вычисления модели как значение функции модифицированной основанной на данных функциональной модели для требуемого значения заданной входной переменной и может прибавляться значение смещения.
Далее, когда опорные точки нормированы, для получения градиента основанной на данных функциональной модели результат суммирования значения функции модифицированной основанной на данных функциональной модели и значения смещения может умножаться на коэффициент, основывающийся на стандартном отклонении данных опорных точек в отношении выходных данных.
Во время вычисления модифицированной основанной на данных функциональной модели приложение зависящего от данных опорных точек вектора взвешивания к вектору параметров может выполняться повторно.
В одном варианте осуществления изобретения основанная на данных функциональная модель определена данными опорных точек, гиперпараметрами и вектором параметров, содержащим число элементов, соответствующее числу опорных точек, причем для вычисления градиента основанной на данных функциональной модели в отношении заданной входной переменной основанную на данных функциональную модель модифицируют, вычисляя в узле вычисления модели для требуемого значения заданной входной переменной значение функции основанной на данных функциональной модели, умножая результат вычисления на требуемое значение заданной входной переменной и затем выполняя в узле вычисления модели повторное вычисление основанной на данных функциональной модели с измененным вектором параметров.
Еще одним объектом изобретения является способ выполнения итерационного метода Ньютона для основанной на данных функциональной модели в модуле управления, содержащем главный вычислительный узел и узел вычисления модели, выполненный для аппаратного вычисления значений функции основанной на данных функциональной модели, включающей экспоненциальную функцию, по меньшей мере одну функцию суммирования и по меньшей мере одну функцию умножения, за две операции организации цикла, предусматривающий определение градиента основанной на данных функциональной модели и вычисление основанную на данных функциональную модель с помощью узла вычисления модели описанным выше способом.
Далее, градиент основанной на данных функциональной модели может вычисляться в первом вычислительном ядре узла вычисления модели, а значение функции основанной на данных функциональной модели - во втором вычислительном ядре узла вычисления модели.
Еще одним объектом изобретения является модуль управления, в частности для осуществления описанного выше способа, содержащий главный вычислительный узел и аппаратный узел вычисления модели, выполненный для аппаратного вычисления значений функции основанной на данных функциональной модели, включающей экспоненциальную функцию, по меньшей мере одну функцию суммирования и по меньшей мере одну функцию умножения, за две операции организации цикла, причем узел вычисления модели имеет вычислительное ядро, обеспечивающее аппаратное вычисление значения функции основанной на данных функциональной модели, и вычислительное ядро, обеспечивающее вычисление градиента основанной на данных функциональной модели для требуемого значения заданной входной переменной, причем одно вычислительное ядро выполняет вычисление значения функции основанной на данных функциональной модели параллельно с вычислением градиента основанной на данных функциональной модели другим вычислительным ядром.
Ниже варианты осуществления изобретения рассматриваются более подробно со ссылкой на чертежи, на которых показано:
на фиг. 1 - схематическое изображение интегрального модуля управления с главным вычислительным узлом и отдельным узлом вычисления модели;
на фиг. 2 - блок-схема, иллюстрирующая выполнение способа определения градиента основанной на данных функциональной модели;
на фиг. 3 - блок-схема, иллюстрирующая выполнение альтернативного способа определения градиента основанной на данных функциональной модели; и
на фиг. 4 - блок-схема, иллюстрирующая выполнение альтернативного способа определения градиента основанной на данных функциональной модели.
На фиг. 1 схематически представлена архитектура аппаратных средств интегрального модуля 1 управления, который выполнен, например, в виде микроконтроллера и в состав которого интегрально входят главный вычислительный узел 2 и отдельный узел 3 вычисления модели, предназначенный для чисто аппаратного вычисления основанной на данных функциональной модели. Главный вычислительный узел 2 и узел 3 вычисления модели связаны между собой внутренним соединением 4, обеспечивающим возможность передачи сигналов, например системной шиной.
В принципе, узел 3 вычисления модели является по существу жестко запрограммированным и соответственно этому не рассчитан на то, чтобы выполнять программный код, как главный вычислительный узел 2. В качестве альтернативы возможно решение, согласно которому для вычисления основанной на данных функциональной модели узел 3 вычисления модели располагает ограниченным высокоспециализированным набором команд. Узел 3 вычисления модели как специализированное вычислительное устройство рассчитан только на выполнение заранее заданных вычислительных процессов. Это создает возможность для оптимизированной в плане ресурсоемкости реализации подобного узла 3 вычисления модели или оптимизированной по занимаемой площади структуре в интегральной компоновке.
Узел 3 вычисления модели имеет несколько вычислительных ядер, так, например, в показанном на фиг. 1 варианте он имеет первое вычислительное ядро 31 и второе вычислительное ядро 32, каждое из которых чисто аппаратными средствами реализует вычисление заданного алгоритма. Узел 3 вычисления модели также может содержать локальное статическое запоминающее устройство 33 с произвольной выборкой для хранения конфигурационных данных. Узел 3 вычисления модели также может содержать локальный блок 34 прямого доступа к памяти. Посредством локального блока 34 прямого доступа к памяти можно обращаться к встроенным ресурсам модуля 1 управления, в частности к внутреннему запоминающему устройству 5.
Модуль 1 управления может содержать внутреннее запоминающее устройство 5 и дополнительный блок 6 прямого доступа к памяти. Внутреннее запоминающее устройство 5 и дополнительный блок 6 прямого доступа к памяти связаны между собой соответствующим образом, например внутренним соединением 4, обеспечивающим возможность передачи сигналов. Внутреннее запоминающее устройство 5 может включать в себя общее (для главного вычислительного узла 2, узла 3 вычисления модели, а при необходимости, и для других узлов) статическое запоминающее устройство с произвольной выборкой, а также флэш-память для конфигурационных данных (параметров и данных опорных точек).
Применение непараметрических, основанных на данных функциональных моделей основывается на методе байесовской регрессии. Основы байесовской регрессии изложены, например, в публикации С.Е. Rasmussen и др. "Gaussian Processes for Machine Learning" (Гауссовские процессы для обучения машин), MIT Press 2006. Байесовская регрессия -это основанный на данных метод, в основе которого лежит модель. Для построения модели необходимы точки измеренных обучающих данных, а также относящиеся к ним выходные данные моделируемой выходной переменной. Построение модели выполняют с применением данных опорных точек, полностью или частично соответствующих обучающим данным или генерируемых на их основе. Кроме того, задают абстрактные гиперпараметры, которые параметризуют пространство функций модели и по сути взвешивают влияние отдельных точек измеренных обучающих данных на результат последующего прогнозирования с помощью модели.
Абстрактные гиперпараметры определяют методом оптимизации. Одна возможность такого метода оптимизации заключается в оптимизации маргинального правдоподобия . Маргинальное правдоподобие описывает правдоподобие измеренных значений у обучающих данных, представленных вектором Y при данных параметрах Н модели и значениях х обучающих данных. В процессе обучения модели максимизируют , для чего ищут подходящие гиперпараметры, приводящие к определенной форме функции модели, определяемой гиперпараметрами и обучающими данными, и максимально точно отображающие обучающие данные. Для упрощения вычисления максимизируют логарифм , поскольку логарифм не меняет непрерывности функция правдоподобия.
Вычисление модели гауссовского процесса производится в соответствии с шагами, схематически представленными на фиг. 2. Сначала входные значения для контрольной точки х (вектор входных переменных) могут быть отнормированы, а именно по следующей формуле:
При этом mx соответствует функции, дающей среднее значение входных значений данных опорных точек, sx соответствует дисперсии входных значений данных опорных точек, a d соответствует индексу размерности D контрольной точки х.
В результате построения непараметрической, основанной на данных функциональной модели получают:
Полученное таким образом значение v модели нормируют с помощью выходного нормирования, а именно по формуле:
При этом v соответствует нормированному значению модели (выходное значение) в нормированной контрольной точке х (вектор входных переменных, имеющий размерность D), соответствует (ненормированному) значению модели (выходное значение) в (ненормированной) контрольной точке (вектор входных переменных, имеющий размерность D), xi соответствует одной из опорных точек, N соответствует числу опорных точек, D соответствует размерности пространства входных/обучающих данных, или опорных точек, a ld и σf соответствуют гиперпараметрам из процесса обучения модели, а именно масштабам длин и амплитудному коэффициенту. Вектор Qy представляет собой величину, вычисленную на основании гиперпараметров и обучающих данных. Далее, my соответствует функции, дающей среднее значение выходных значений опорных точек, a sy соответствует дисперсии выходных значений опорных точек.
Входное и выходное нормирование выполняется, поскольку вычисление модели гауссовского процесса обычно происходит в нормированном пространстве.
Для начала вычисления вычислительное устройство 2 может, в частности, дать команду локальному блоку 34 прямого доступа к памяти или дополнительному блоку 6 прямого доступа к памяти на передачу в узел 3 вычисления модели конфигурационных данных, относящихся к вычисляемой функциональной модели, и на запуск вычисления, которое выполняется с помощью конфигурационных данных. Конфигурационные данные включают в себя гиперпараметры модели гауссовского процесса, а также данные опорных точек, указываемые преимущественно с помощью указателя адреса, ссылающегося на выделенную узлу 3 вычисления модели адресную область внутреннего запоминающего устройства 5. Для этого, в частности, также может использоваться статическое запоминающее устройство 33 с произвольной выборкой для узла 3 вычисления модели, которое может быть расположено, в частности, в узле 3 вычисления модели или у него. Кроме того, внутреннее запоминающее устройство 5 и статическое запоминающее устройство 33 с произвольной выборкой могут использоваться в сочетании друг с другом.
Процесс вычисления в узле 3 вычисления модели осуществляется в архитектуре аппаратных средств узла 3 вычисления модели, реализованной приведенным ниже псевдокодом и соответствующей рассмотренному выше правилу вычисления. Из этого псевдокода видно, что вычисления выполняются во внутреннем цикле и внешнем цикле, и их частичные (промежуточные) результаты аккумулируются (накапливаются). В начале вычисления модели типичным значением параметра запуска счетчика является Nstart 0.
Таким образом, данные, необходимые для вычисления основанной на данных функциональной модели, включают гиперпараметры и опорные точки, сохраняемые в относящейся к соответствующей основанной на данных функциональной модели области запоминающего устройства. Соответственно приведенному выше псевдокоду, переменные для вычисления основанных на данных функциональных моделей включают: определенные для каждой размерности параметры нормирования s_x (соответствует sx), m_x (соответствует mx), s_y (соответствует sy), m_y (соответствует my), вектор параметров Q_y (соответствует Qy), нормализованные обучающие данные X, число N опорных точек, число D размерностей входных переменных, начальное значение nStart внешнего цикла, индекс цикла vInit при возобновлении вычисления внутреннего цикла (обычно = 0), а также масштабы длин l для каждой из размерностей входных переменных.
В интегральных модулях управления вычисляются, как правило, значения функции модели гауссовского процесса, определенной гиперпараметрами и данными опорных точек. Далее, в зависимости от функции, реализованной в интегральном модуле 1 управления, может потребоваться вычисление обращенной (инвертированной) функции, причем для данного выходного значения y a и заданных входных данных x1, x2, …, xp-1, xp+i, …, xD необходимо вычислить значение хр, при котором
Поскольку функция y(x), как правило, не является обратимой, для решения обратной задачи может использоваться метод определения нулей, в частности метод Ньютона. Метод Ньютона предусматривает отыскание нулей функции
Для нахождения нулей действительнозначной функции метод Ньютона предусматривает итерационный процесс, в котором n соответствует n-ой итерации:
За счет этого на n-ой итерации достигается актуализация . Таким образом во входной точке анализируется функция f(x) и ее производная f'(*). При вычислении значения функции основанной на данных функциональной модели и первой производной основанной на данных функциональной модели на входном векторе x можно выделить три случая.
Первый случай относится к ситуации, в которой множества опорных точек X(k) и Y(k) для k-ой основанной на данных функциональной подмодели не нормализованы. Исходя из конкретного примера с линейной функцией, дающей среднее значение, и двумя основанными на данных функциональными подмоделями (моделями гауссовского процесса) вычисляют градиент основанной на данных функциональной модели. Этот порядок действий можно произвольным образом распространить на более чем две функциональные подмодели. Основанная на данных функциональная модель описывается следующим образом:
где gi(x) и hj(x) соответствуют основанным на данных функциональным подмоделям, соответствуют гиперпараметрам или производным от них параметрам k-ой модели гауссовского процесса, y a соответствует целевому значению, m1(x)=a 1x1+a 2x2+a 3x3 + с соответствует функции, дающей среднее значение, а х(k) соответствует данным опорных точек. Первая частная производная f'(x) при хр имеет вид:
Во втором случае наборы обучающих данных нормализованы. Сложность при использовании нормализованных данных для обучения общей модели, состоящей из отдельных моделей гауссовского процесса, заключается в том, что для каждой такой подмодели параметры нормализации, т.е. стандартное отклонение и среднее значение данных для различных моделей k различны, что ведет различиям в нормализации. Поэтому проводить весь процесс вычислений в нормализованном пространстве значений, а затем преобразовать результат вычислений обратно невозможно, поскольку для всех измеренных данных опорных точек не существует единых σX, σY или Поскольку модели гауссовского процесса обучают нормализованными данными, вычисления необходимо выполнять в нормализованном пространстве значений, так как их гиперпараметры были обучены для нормализованных данных. При различных параметрах нормализации для каждой модели гауссовского процесса х(k) указывает, что входной вектор х нормализован с использованием и
При использовании для обучения модели гауссовского процесса ненормализованных данных получают значение . При использовании для обучения модели гауссовского процесса нормализованных данных значение функции f(x) вычисляют путем обратной нормализации каждого значения функции модели гауссовского процесса с помощью ее соответствующих параметров нормализации. Линейная функция, дающая среднее значение, не использует нормализованные данные, поэтому обратная нормализация для нее не требуется. Таким образом, для значения функции f(x) получают:
Здесь различие между y2(х) и y2(x(2)) заключается в том, что первое из этих выражений означает, что первая модель гауссовского процесса имеет ненормализованный входной вектор x, и эта модель была обучена на ненормализованных данных, тогда как второе выражение означает, что входной вектор x(2) нормализован с использованием параметров нормализации . Соответствующая модель гауссовского процесса обучена с использованием нормализованных данных, а результат y2(x(2)) является нормализованным оценочным значением.
Тогда первая производная f'(x) имеет вид:
Входы обеих моделей x(2) и x(3) гауссовского процесса различаются, поскольку каждая модель гауссовского процесса имеет свою собственную нормализацию. Поскольку вектор X является D-мерным, стандартное отклонение размерности р второй функциональной подмодели определяется выражением .
В третьем случае набор обучающих данных преобразован в отношении выходов по методу Бокса-Кокса функцией b(y), а X нормализован. В третьем случае вычисление также может выполняться с любым числом основанных на данных функциональных подмоделей.
Функция f(x) в этом случае имеет вид:
Аддитивные модели гауссовского процесса обучались с использованием нормализованных и преобразованных по методу Бокса-Кокса обучающих данных. Линейная функция m1(х), дающая среднее значение, в качестве входа использует ненормализованный входной вектор х. Это приводит к выражению:
При этом соответствуют стандартному отклонению и среднему значению данных , преобразованных по методу Бокса-Кокса. Первая производная зависит от преобразования Бокса-Кокса и обратного ему преобразования и поэтому не может быть представлена в общей форме. По этой причине производную f'(x) получают для различных преобразований Бокса-Кокса. В дальнейшем не нормализуют только x, тогда как другие данные x(2) и x(3) нормализуют соответственно их параметрам нормализации. Функции обучают с помощью нормализованных X и преобразованного по методу Бокса-Кокса и нормализованного Y.
В результате получают:
Это соответствует преобразованию Бокса-Кокса с log(y). Для других преобразований Бокса-Кокса f'(x) берут аналогично.
Для алгоритма Ньютона вычислению подлежат два существенных выражения, а именно f(x) и f'(x). Для первого случая, в котором данные опорных точек X и Y не нормализованы, вычисление f(x) возможно путем вычисления в узле 3 вычисления модели интегрального модуля 1 управления. Нужно лишь вычесть y a , т.е. заданное значение y a для обратной задачи. В качестве альтернативы уа можно включить в параметры а и с модели средних значений, уменьшив с на y a .
Формула
соответствует формуле для вычисления производной значения функции, включающей в себя линейную функцию, дающую среднее значение, и две аддитивных модели гауссовского процесса. Для каждой основанной на данных функциональной подмодели (модель ошибок) производная может вычисляться путем выполняемого в узле 3 вычисления модели взвешенного вычисления модели ошибок в контрольной точке х, причем используемые при этом весы (весовые коэффициенты) зависят от х. Вектор параметров Qy отражает произведение матрицы, обратной ковариационной матрице обучающих данных с приложенными по диагонали шумами, и вектора соответствующих выходных значений, и при необходимости может быстро подставляться в процессе вычислений в узле 3 вычисления модели. Поэтому для вычисления производной (в случае двух аддитивных основанных на данных функциональных подмоделей) может использоваться следующая формула:
Каждый из членов (*) и (**) приведенного выше выражения может вычисляться узлом 3 вычисления модели. Между этими вычислениями необходимо лишь подгонять вектор параметров k-ой основанной на данных функциональной подмодели, причем имеется в g1(х) или в hj(x). Для этого i-ую запись вектора параметров адаптируют, умножая ее на весовой коэффициент wi(x), причем:
Поскольку wi(x) зависит от x, а р-ая компонента x меняется в процессе итераций, wi(x), а значит, и вектор параметров , нужно изменять на каждом шаге i вычислений. Вследствие этого необходимо, чтобы вектор параметров во время вычисления можно было быстро изменять. Таким образом, для вычисления в узле 3 вычисления модели получаем:
Если (выполняемая "на лету") актуализация вектора параметров невозможна, то вычисление может быть проведено путем переписывания формулы
в следующее выражение
При этом, как показано на фиг. 2, в узле 3 вычисления модели происходят два вычисления, выполняемые следующим образом. Ниже рассматривается вычисление для первой модели ошибок. Вычисления для других моделей ошибок проходят аналогично:
За первым вычислением (шаг S1)
в одном вычислительных ядер 31, 32 следуют выполняемое программными средствами умножение на -хр в главном вычислительном узле 2 (шаг S2)
и последующее вычисление (шаг S3) в узле 3 вычисления модели с измененным вектором параметров , который находят путем поэлементного умножения существующего вектора параметров на :
Вычисления в узле 3 вычисления модели необходимы для выполнения вычислительного шага. Благодаря этому не требуется изменять параметры модели в процессе выполнения вычисления.
При вычислении по методу Ньютона вычисление f(x) проводят для каждой итерации. Поэтому член
требует лишь умножения и не требует дополнительного вычисления в узле 3 вычисления модели. Поскольку возможны два вычисления модели, вычисления f(x) и f'(x) могут выполняться для каждой итерации в вычислительных ядрах 31, 32 параллельно.
Для второго случая, в котором обучающие данные Х(k), Y(k) нормализованы, формула
может вычисляться, как пояснялось выше, посредством
При этом коэффициент wi(x) вычисляется под нормализованное значение х, т.е. под X(2) в приведенной форме записи, в частности путем вычисления с использованием . Таким образом параметр денормализации используется, чтобы умножить полученный результат на соответствующий коэффициент.
Если актуализация параметров вычисления модели в реальном времени (онлайн-актуализация) невозможна, то, переписав приведенную выше формулу в следующее выражение:
вычисление можно провести аналогично тому, как пояснялось выше, с единственным отличием умножения на или подходящий член выражения для других моделей гауссовского процесса. Вычисление выполняют для каждой основанной на данных функциональной подмодели с помощью двух вычислений согласно шагам вычислений, схематически представленным на фиг. 3 и рассматриваемым ниже. Нижеследующее представление шагов вычислений относится к первой модели ошибок, вычисление других моделей ошибок происходит аналогично:
Для третьего случая, в котором для каждой основанной на данных функциональной подмодели выходы у обучающих данных преобразованы по методу Бокса-Кокса с использованием b(y), а выходы обучающих данных X нормализованы, выражения для f(x) и f'(x) имеют вид:
причем преобразование Бокса-Кокса соответствует b(y)=log(y). Функцию f(x) вычисляют следующим образом:
А вычисление в первом вычислительном ядре 31
ехр(A) вычисление в главном вычислительном узле 2 программными средствами
(ах+с) вычисление функции, дающей среднее значение, в главном вычислительном узле 2 программными средствами
Градиент f'(x) функциональной модели вычисляют, как схематически представлено на фиг. 4, следующим образом:
А вычисление в первом вычислительном ядре 31 (шаг S21)
ехр(А) вычисление в главном вычислительном узле 2 программными средствами (шаг S22)
(ах+с) вычисление функции, дающей среднее значение, в главном вычислительном узле 2 программными средствами (шаг S23)
Поскольку в частности, член А используют для вычисления как f(x), так и f'(x), вычисление в узле 3 вычисления модели достаточно выполнить лишь однократно.
Claims (10)
1. Способ вычисления градиента основанной на данных функциональной модели, включающей одну или несколько аккумулированных основанных на данных функциональных подмоделей, характеризующийся тем, что используют аппаратный узел (3) вычисления модели, имеющий первое и второе вычислительные ядра, одно из которых используют для аппаратного вычисления значения функции основанной на данных функциональной модели, включающей экспоненциальную функцию, по меньшей мере одну функцию суммирования и по меньшей мере одну функцию умножения, за две операции организации цикла, а другое - для вычисления градиента основанной на данных функциональной модели для требуемого значения заданной входной переменной, причем вычисление значения функции основанной на данных функциональной модели и вычисление градиента основанной на данных функциональной модели в соответствующих вычислительных ядрах выполняют параллельно.
2. Способ по п. 1, характеризующийся тем, что каждая из основанных на данных функциональных подмоделей основанной на данных функциональной модели определена данными опорных точек, гиперпараметрами и вектором параметров с числом элементов, соответствующим числу опорных точек этой основанной на данных функциональной подмодели, причем для вычисления градиента основанной на данных функциональной модели ее модифицируют, прикладывая к вектору параметров зависящий от данных опорных точек вектор взвешивания.
3. Способ по п. 2, характеризующийся тем, что градиент основанной на данных функциональной модели вычисляют как значение функции модифицированной основанной на данных функциональной модели для требуемого значения заданной входной переменной и прибавляют значение смещения.
4. Способ по п. 2, характеризующийся тем, что опорные точки нормированы, а для получения градиента основанной на данных функциональной модели сумму значения функции модифицированной основанной на данных функциональной модели и значения смещения умножают на коэффициент, основывающийся на стандартном отклонении данных опорных точек в отношении выходных данных.
5. Способ по одному из пп. 2-4, характеризующийся тем, что во время вычисления модифицированной основанной на данных функциональной модели приложение зависящего от данных опорных точек вектора взвешивания к вектору параметров выполняют повторно.
6. Способ по п. 1, характеризующийся тем, что каждая из основанных на данных функциональных подмоделей основанной на данных функциональной модели определена данными опорных точек, гиперпараметрами и вектором параметров, содержащим число элементов, соответствующее числу опорных точек, причем для вычисления градиента основанной на данных функциональной модели в отношении заданной входной переменной основанную на данных функциональную модель модифицируют, вычисляя в узле (3) вычисления модели для требуемого значения заданной входной переменной значение функции основанной на данных функциональной модели, умножая результат вычисления на требуемое значение заданной входной переменной и затем выполняя в узле (3) вычисления модели повторное вычисление основанной на данных функциональной модели с измененным вектором параметров.
7. Способ выполнения итерационного метода Ньютона для основанной на данных функциональной модели в модуле (1) управления, содержащем главный вычислительный узел (2) и узел (3) вычисления модели, выполненный для аппаратного вычисления значений функции основанной на данных функциональной модели, включающей экспоненциальную функцию, по меньшей мере одну функцию суммирования и по меньшей мере одну функцию умножения, за две операции организации цикла, характеризующийся тем, что способом по одному из пп. 1-6 определяют градиент основанной на данных функциональной модели и с помощью узла (3) вычисления модели вычисляют основанную на данных функциональную модель.
8. Модуль (1) управления, содержащий главный вычислительный узел (2) и аппаратный узел (3) вычисления модели, выполненный для аппаратного вычисления значений функции основанной на данных функциональной модели, включающей экспоненциальную функцию, по меньшей мере одну функцию суммирования и по меньшей мере одну функцию умножения, за две операции организации цикла, причем узел (3) вычисления модели имеет вычислительное ядро, обеспечивающее аппаратное вычисление значения функции основанной на данных функциональной модели, и вычислительное ядро, обеспечивающее вычисление градиента основанной на данных функциональной модели для требуемого значения заданной входной переменной, причем одно вычислительное ядро выполняет вычисление значения функции основанной на данных функциональной модели параллельно с вычислением градиента основанной на данных функциональной модели другим вычислительным ядром.
9. Электронный носитель данных, в котором хранится компьютерная программа, при выполнении которой осуществляются все шаги способа по одному из пп. 1-7.
10. Электронный блок управления, содержащий электронный носитель данных по п. 9.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102013224694.3A DE102013224694A1 (de) | 2013-12-03 | 2013-12-03 | Verfahren und Vorrichtung zum Ermitteln eines Gradienten eines datenbasierten Funktionsmodells |
DE102013224694.3 | 2013-12-03 |
Publications (3)
Publication Number | Publication Date |
---|---|
RU2014148490A RU2014148490A (ru) | 2016-06-27 |
RU2014148490A3 RU2014148490A3 (ru) | 2018-08-10 |
RU2679225C2 true RU2679225C2 (ru) | 2019-02-06 |
Family
ID=53058513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2014148490A RU2679225C2 (ru) | 2013-12-03 | 2014-12-02 | Способ и устройство для определения градиента основанной на данных функциональной модели |
Country Status (5)
Country | Link |
---|---|
US (1) | US10402509B2 (ru) |
KR (1) | KR102257530B1 (ru) |
CN (1) | CN104699658B (ru) |
DE (1) | DE102013224694A1 (ru) |
RU (1) | RU2679225C2 (ru) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106776641B (zh) * | 2015-11-24 | 2020-09-08 | 华为技术有限公司 | 一种数据处理方法及装置 |
DE102016216954A1 (de) * | 2016-09-07 | 2018-03-08 | Robert Bosch Gmbh | Modellberechnungseinheit und Steuergerät zur Berechnung einer partiellen Ableitung eines RBF-Modells |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102009000783A1 (de) * | 2008-08-27 | 2010-03-04 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Simulation dynamischer Systeme |
US20110257949A1 (en) * | 2008-09-19 | 2011-10-20 | Shrihari Vasudevan | Method and system of data modelling |
US20110282517A1 (en) * | 2010-04-27 | 2011-11-17 | Felix Streichert | Microcontroller having a computing unit and a logic circuit, and method for carrying out computations by a microcontroller for a regulation or a control in a vehicle |
RU2012102394A (ru) * | 2009-06-25 | 2013-07-27 | Асахи Гласс Компани, Лимитед. | Способ вычисления физического значения, способ численного анализа, программа вычисления физического значения, программа численного анализа, устройство вычисления физического значения и устройство численного анализа |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2969115B1 (ja) | 1998-11-25 | 1999-11-02 | 株式会社日立製作所 | 半導体装置 |
US6870183B2 (en) * | 2002-11-04 | 2005-03-22 | Advanced Micro Devices, Inc. | Stacked organic memory devices and methods of operating and fabricating |
DE10317650A1 (de) * | 2003-04-17 | 2004-11-04 | Robert Bosch Gmbh | Programmgesteuerte Einheit und Verfahren |
WO2006053173A2 (en) | 2004-11-10 | 2006-05-18 | Nvidia Corporation | Multipurpose multiply-add functional unit |
JP4208085B2 (ja) * | 2005-08-30 | 2009-01-14 | インターナショナル・ビジネス・マシーンズ・コーポレーション | アプリケーションプログラムの制御方法およびその装置 |
DE102007010771A1 (de) * | 2007-03-06 | 2008-10-30 | Robert Bosch Gmbh | Verfahren zur Bestimmung einer asymmetrischen Signalverzögerung eines Signalpfades innerhalb einer integrierten Schaltung |
US7925602B2 (en) * | 2007-12-07 | 2011-04-12 | Microsoft Corporation | Maximum entropy model classfier that uses gaussian mean values |
KR100960797B1 (ko) * | 2008-05-09 | 2010-06-01 | 연세대학교 산학협력단 | 입력 데이터의 형식에 기반하여 고정 소수점 연산 또는부동 소수점 연산을 수행하는 재구성 가능한 연산 유닛 |
CN201291002Y (zh) * | 2008-11-04 | 2009-08-19 | 深圳市蓝韵实业有限公司 | 一种频率相位控制器 |
DE102010028266A1 (de) * | 2010-04-27 | 2011-10-27 | Robert Bosch Gmbh | Steuergerät und Verfahren zur Berechnung einer Ausgangsgröße für eine Steuerung |
DE102010062653A1 (de) * | 2010-12-08 | 2012-06-14 | Robert Bosch Gmbh | Steuermodul und Verfahren zu seiner Herstellung |
JP2012208843A (ja) | 2011-03-30 | 2012-10-25 | Keihin Corp | 開発支援装置 |
-
2013
- 2013-12-03 DE DE102013224694.3A patent/DE102013224694A1/de active Pending
-
2014
- 2014-11-28 KR KR1020140167948A patent/KR102257530B1/ko active IP Right Grant
- 2014-12-02 US US14/558,544 patent/US10402509B2/en active Active
- 2014-12-02 RU RU2014148490A patent/RU2679225C2/ru active
- 2014-12-02 CN CN201410721221.8A patent/CN104699658B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102009000783A1 (de) * | 2008-08-27 | 2010-03-04 | Robert Bosch Gmbh | Verfahren und Vorrichtung zur Simulation dynamischer Systeme |
US20110257949A1 (en) * | 2008-09-19 | 2011-10-20 | Shrihari Vasudevan | Method and system of data modelling |
RU2012102394A (ru) * | 2009-06-25 | 2013-07-27 | Асахи Гласс Компани, Лимитед. | Способ вычисления физического значения, способ численного анализа, программа вычисления физического значения, программа численного анализа, устройство вычисления физического значения и устройство численного анализа |
US20110282517A1 (en) * | 2010-04-27 | 2011-11-17 | Felix Streichert | Microcontroller having a computing unit and a logic circuit, and method for carrying out computations by a microcontroller for a regulation or a control in a vehicle |
Also Published As
Publication number | Publication date |
---|---|
US10402509B2 (en) | 2019-09-03 |
US20150154329A1 (en) | 2015-06-04 |
CN104699658B (zh) | 2019-09-24 |
CN104699658A (zh) | 2015-06-10 |
RU2014148490A3 (ru) | 2018-08-10 |
DE102013224694A1 (de) | 2015-06-03 |
RU2014148490A (ru) | 2016-06-27 |
KR102257530B1 (ko) | 2021-05-31 |
KR20150064673A (ko) | 2015-06-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3504666B1 (en) | Asychronous training of machine learning model | |
EP3446260B1 (en) | Memory-efficient backpropagation through time | |
KR101959376B1 (ko) | 멀티 코어 최적화된 순환 신경망을 위한 시스템 및 방법 | |
US8818922B2 (en) | Method and apparatus for predicting application performance across machines with different hardware configurations | |
US10146248B2 (en) | Model calculation unit, control unit and method for calibrating a data-based function model | |
US20210312261A1 (en) | Neural network search method and related apparatus | |
CN114897173B (zh) | 基于变分量子线路确定PageRank的方法及装置 | |
WO2021113668A1 (en) | System and method for efficient parallel execution of physical simulations | |
CN110689045A (zh) | 一种深度学习模型的分布式训练方法及装置 | |
US9934197B2 (en) | Method and device for providing a sparse Gaussian process model for calculation in an engine control unit | |
RU2679225C2 (ru) | Способ и устройство для определения градиента основанной на данных функциональной модели | |
Duff et al. | Numerical computation and new output bounds for time-limited balanced truncation of discrete-time systems | |
EP4009239A1 (en) | Method and apparatus with neural architecture search based on hardware performance | |
KR102134682B1 (ko) | 실시간 시계열 데이터를 위한 예측 모형 생성 시스템 및 방법 | |
Buchaca et al. | Sequence-to-sequence models for workload interference prediction on batch processing datacenters | |
Sima et al. | High-performance numerical algorithms and software for subspace-based linear multivariable system identification | |
EP3871157A1 (en) | Extending finite rank deep kernel learning to forecasting over long time horizons | |
Aliaga et al. | Solving dense generalized eigenproblems on multi-threaded architectures | |
CN104570757B (zh) | 用于运行集成控制组件的方法和装置 | |
Viebke et al. | Performance modelling of deep learning on intel many integrated core architectures | |
Liu et al. | Recurrent kernel online sequential extreme learning machine with kernel adaptive filter for time series prediction | |
CN118152894B (zh) | 一种电力系统宽频振荡识别方法、装置、终端及介质 | |
US20230206094A1 (en) | Inferring device, inferring method and non-transitory computer readable medium | |
WO2023149838A2 (en) | Machine learning with periodic data | |
Vandebril et al. | A Levinson-like algorithm for symmetric strongly nonsingular higher order semiseparable plus band matrices |