RU2679225C2 - Способ и устройство для определения градиента основанной на данных функциональной модели - Google Patents

Способ и устройство для определения градиента основанной на данных функциональной модели Download PDF

Info

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
Application number
RU2014148490A
Other languages
English (en)
Other versions
RU2014148490A3 (ru
RU2014148490A (ru
Inventor
Михаэль ХАНЗЕЛЬМАНН
Ян Матиас КЁЛЕР
Хайнер МАРКЕРТ
Original Assignee
Роберт Бош Гмбх
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Роберт Бош Гмбх filed Critical Роберт Бош Гмбх
Publication of RU2014148490A publication Critical patent/RU2014148490A/ru
Publication of RU2014148490A3 publication Critical patent/RU2014148490A3/ru
Application granted granted Critical
Publication of RU2679225C2 publication Critical patent/RU2679225C2/ru

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/26Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using computer, e.g. microprocessor
    • F02D41/28Interface circuits
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1401Introducing closed-loop corrections characterised by the control or regulation method
    • F02D41/1402Adaptive control
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/2406Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using essentially read only memories
    • F02D41/2425Particular ways of programming the data
    • F02D41/2429Methods of calibrating or learning
    • F02D41/2438Active learning methods
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/24Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means
    • F02D41/2406Electrical control of supply of combustible mixture or its constituents characterised by the use of digital means using essentially read only memories
    • F02D41/2425Particular ways of programming the data
    • F02D41/2429Methods of calibrating or learning
    • F02D41/2477Methods of calibrating or learning characterised by the method used for learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/11Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/17Function evaluation by approximation methods, e.g. inter- or extrapolation, smoothing, least mean square method
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • FMECHANICAL ENGINEERING; LIGHTING; HEATING; WEAPONS; BLASTING
    • F02COMBUSTION ENGINES; HOT-GAS OR COMBUSTION-PRODUCT ENGINE PLANTS
    • F02DCONTROLLING COMBUSTION ENGINES
    • F02D41/00Electrical control of supply of combustible mixture or its constituents
    • F02D41/02Circuit arrangements for generating control signals
    • F02D41/14Introducing closed-loop corrections
    • F02D41/1401Introducing closed-loop corrections characterised by the control or regulation method
    • F02D2041/1433Introducing 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. Байесовская регрессия -это основанный на данных метод, в основе которого лежит модель. Для построения модели необходимы точки измеренных обучающих данных, а также относящиеся к ним выходные данные моделируемой выходной переменной. Построение модели выполняют с применением данных опорных точек, полностью или частично соответствующих обучающим данным или генерируемых на их основе. Кроме того, задают абстрактные гиперпараметры, которые параметризуют пространство функций модели и по сути взвешивают влияние отдельных точек измеренных обучающих данных на результат последующего прогнозирования с помощью модели.
Абстрактные гиперпараметры определяют методом оптимизации. Одна возможность такого метода оптимизации заключается в оптимизации маргинального правдоподобия
Figure 00000001
. Маргинальное правдоподобие
Figure 00000001
описывает правдоподобие измеренных значений у обучающих данных, представленных вектором Y при данных параметрах Н модели и значениях х обучающих данных. В процессе обучения модели максимизируют
Figure 00000001
, для чего ищут подходящие гиперпараметры, приводящие к определенной форме функции модели, определяемой гиперпараметрами и обучающими данными, и максимально точно отображающие обучающие данные. Для упрощения вычисления максимизируют логарифм
Figure 00000001
, поскольку логарифм не меняет непрерывности функция правдоподобия.
Вычисление модели гауссовского процесса производится в соответствии с шагами, схематически представленными на фиг. 2. Сначала входные значения
Figure 00000002
для контрольной точки х (вектор входных переменных) могут быть отнормированы, а именно по следующей формуле:
Figure 00000003
При этом mx соответствует функции, дающей среднее значение входных значений данных опорных точек, sx соответствует дисперсии входных значений данных опорных точек, a d соответствует индексу размерности D контрольной точки х.
В результате построения непараметрической, основанной на данных функциональной модели получают:
Figure 00000004
Полученное таким образом значение v модели нормируют с помощью выходного нормирования, а именно по формуле:
Figure 00000005
При этом v соответствует нормированному значению модели (выходное значение) в нормированной контрольной точке х (вектор входных переменных, имеющий размерность D),
Figure 00000006
соответствует (ненормированному) значению модели (выходное значение) в (ненормированной) контрольной точке
Figure 00000007
(вектор входных переменных, имеющий размерность 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.
Figure 00000008
Figure 00000009
Таким образом, данные, необходимые для вычисления основанной на данных функциональной модели, включают гиперпараметры и опорные точки, сохраняемые в относящейся к соответствующей основанной на данных функциональной модели области запоминающего устройства. Соответственно приведенному выше псевдокоду, переменные для вычисления основанных на данных функциональных моделей включают: определенные для каждой размерности параметры нормирования 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 необходимо вычислить значение хр, при котором
Figure 00000010
.
Поскольку функция y(x), как правило, не является обратимой, для решения обратной задачи может использоваться метод определения нулей, в частности метод Ньютона. Метод Ньютона предусматривает отыскание нулей функции
Figure 00000011
.
Для нахождения нулей действительнозначной функции метод Ньютона предусматривает итерационный процесс, в котором n соответствует n-ой итерации:
Figure 00000012
За счет этого на n-ой итерации достигается актуализация
Figure 00000013
. Таким образом во входной точке
Figure 00000014
анализируется функция f(x) и ее производная f'(*). При вычислении значения функции основанной на данных функциональной модели и первой производной основанной на данных функциональной модели на входном векторе x можно выделить три случая.
Первый случай относится к ситуации, в которой множества опорных точек X(k) и Y(k) для k-ой основанной на данных функциональной подмодели не нормализованы. Исходя из конкретного примера с линейной функцией, дающей среднее значение, и двумя основанными на данных функциональными подмоделями (моделями гауссовского процесса) вычисляют градиент основанной на данных функциональной модели. Этот порядок действий можно произвольным образом распространить на более чем две функциональные подмодели. Основанная на данных функциональная модель описывается следующим образом:
Figure 00000015
где gi(x) и hj(x) соответствуют основанным на данных функциональным подмоделям,
Figure 00000016
соответствуют гиперпараметрам или производным от них параметрам k-ой модели гауссовского процесса, y a соответствует целевому значению, m1(x)=a 1x1+a 2x2+a 3x3 + с соответствует функции, дающей среднее значение, а х(k) соответствует данным опорных точек. Первая частная производная f'(x) при хр имеет вид:
Figure 00000017
Во втором случае наборы обучающих данных нормализованы. Сложность при использовании нормализованных данных для обучения общей модели, состоящей из отдельных моделей гауссовского процесса, заключается в том, что для каждой такой подмодели параметры нормализации, т.е. стандартное отклонение
Figure 00000018
и среднее значение данных
Figure 00000019
для различных моделей k различны, что ведет различиям в нормализации. Поэтому проводить весь процесс вычислений в нормализованном пространстве значений, а затем преобразовать результат вычислений обратно невозможно, поскольку для всех измеренных данных
Figure 00000020
опорных точек не существует единых σX, σY или
Figure 00000021
Поскольку модели гауссовского процесса обучают нормализованными данными, вычисления необходимо выполнять в нормализованном пространстве значений, так как их гиперпараметры были обучены для нормализованных данных. При различных параметрах нормализации для каждой модели гауссовского процесса х(k) указывает, что входной вектор х нормализован с использованием
Figure 00000018
и
Figure 00000022
При использовании для обучения модели гауссовского процесса ненормализованных данных получают значение
Figure 00000023
. При использовании для обучения модели гауссовского процесса нормализованных данных значение функции f(x) вычисляют путем обратной нормализации каждого значения функции модели гауссовского процесса с помощью ее соответствующих параметров нормализации. Линейная функция, дающая среднее значение, не использует нормализованные данные, поэтому обратная нормализация для нее не требуется. Таким образом, для значения функции f(x) получают:
Figure 00000024
Здесь различие между y2(х) и y2(x(2)) заключается в том, что первое из этих выражений означает, что первая модель гауссовского процесса имеет ненормализованный входной вектор x, и эта модель была обучена на ненормализованных данных, тогда как второе выражение означает, что входной вектор x(2) нормализован с использованием параметров нормализации
Figure 00000025
. Соответствующая модель гауссовского процесса обучена с использованием нормализованных данных, а результат y2(x(2)) является нормализованным оценочным значением.
Тогда первая производная f'(x) имеет вид:
Figure 00000026
Входы обеих моделей x(2) и x(3) гауссовского процесса различаются, поскольку каждая модель гауссовского процесса имеет свою собственную нормализацию. Поскольку вектор X является D-мерным, стандартное отклонение размерности р второй функциональной подмодели определяется выражением
Figure 00000027
.
В третьем случае набор обучающих данных преобразован в отношении выходов по методу Бокса-Кокса функцией b(y), а X нормализован. В третьем случае вычисление также может выполняться с любым числом основанных на данных функциональных подмоделей.
Функция f(x) в этом случае имеет вид:
Figure 00000028
.
Аддитивные модели гауссовского процесса обучались с использованием нормализованных и преобразованных по методу Бокса-Кокса обучающих данных. Линейная функция m1(х), дающая среднее значение, в качестве входа использует ненормализованный входной вектор х. Это приводит к выражению:
Figure 00000029
При этом
Figure 00000030
соответствуют стандартному отклонению и среднему значению данных
Figure 00000031
, преобразованных по методу Бокса-Кокса. Первая производная зависит от преобразования Бокса-Кокса
Figure 00000032
и обратного ему преобразования
Figure 00000033
и поэтому не может быть представлена в общей форме. По этой причине производную f'(x) получают для различных преобразований Бокса-Кокса. В дальнейшем не нормализуют только x, тогда как другие данные x(2) и x(3) нормализуют соответственно их параметрам нормализации. Функции
Figure 00000034
обучают с помощью нормализованных X и преобразованного по методу Бокса-Кокса и нормализованного Y.
В результате получают:
Figure 00000035
при
Figure 00000036
Это соответствует преобразованию Бокса-Кокса с log(y). Для других преобразований Бокса-Кокса f'(x) берут аналогично.
Для алгоритма Ньютона вычислению подлежат два существенных выражения, а именно f(x) и f'(x). Для первого случая, в котором данные опорных точек X и Y не нормализованы, вычисление f(x) возможно путем вычисления в узле 3 вычисления модели интегрального модуля 1 управления. Нужно лишь вычесть y a , т.е. заданное значение y a для обратной задачи. В качестве альтернативы уа можно включить в параметры а и с модели средних значений, уменьшив с на y a .
Формула
Figure 00000037
соответствует формуле для вычисления производной значения функции, включающей в себя линейную функцию, дающую среднее значение, и две аддитивных модели гауссовского процесса. Для каждой основанной на данных функциональной подмодели (модель ошибок) производная может вычисляться путем выполняемого в узле 3 вычисления модели взвешенного вычисления модели ошибок в контрольной точке х, причем используемые при этом весы (весовые коэффициенты) зависят от х. Вектор параметров Qy отражает произведение матрицы, обратной ковариационной матрице обучающих данных с приложенными по диагонали шумами, и вектора соответствующих выходных значений, и при необходимости может быстро подставляться в процессе вычислений в узле 3 вычисления модели. Поэтому для вычисления производной (в случае двух аддитивных основанных на данных функциональных подмоделей) может использоваться следующая формула:
Figure 00000038
Каждый из членов (*) и (**) приведенного выше выражения может вычисляться узлом 3 вычисления модели. Между этими вычислениями необходимо лишь подгонять вектор параметров
Figure 00000039
k-ой основанной на данных функциональной подмодели, причем
Figure 00000040
имеется в g1(х) или в hj(x). Для этого i-ую запись вектора параметров
Figure 00000041
адаптируют, умножая ее на весовой коэффициент wi(x), причем:
Figure 00000042
Поскольку wi(x) зависит от x, а р-ая компонента x меняется в процессе итераций, wi(x), а значит, и вектор параметров
Figure 00000043
, нужно изменять на каждом шаге i вычислений. Вследствие этого необходимо, чтобы вектор параметров
Figure 00000044
во время вычисления можно было быстро изменять. Таким образом, для вычисления в узле 3 вычисления модели получаем:
Figure 00000045
причем вычисление проводят с помощью изменяющихся векторов параметров
Figure 00000046
.
Если (выполняемая "на лету") актуализация вектора параметров
Figure 00000047
невозможна, то вычисление может быть проведено путем переписывания формулы
Figure 00000048
в следующее выражение
Figure 00000049
При этом, как показано на фиг. 2, в узле 3 вычисления модели происходят два вычисления, выполняемые следующим образом. Ниже рассматривается вычисление для первой модели ошибок. Вычисления для других моделей ошибок проходят аналогично:
За первым вычислением (шаг S1)
Figure 00000050
в одном вычислительных ядер 31, 32 следуют выполняемое программными средствами умножение на -хр в главном вычислительном узле 2 (шаг S2)
Figure 00000051
и последующее вычисление (шаг S3) в узле 3 вычисления модели с измененным вектором параметров
Figure 00000052
, который находят путем поэлементного умножения существующего вектора параметров
Figure 00000053
на
Figure 00000054
:
Figure 00000055
Вычисления в узле 3 вычисления модели необходимы для выполнения вычислительного шага. Благодаря этому не требуется изменять параметры модели в процессе выполнения вычисления.
При вычислении по методу Ньютона вычисление f(x) проводят для каждой итерации. Поэтому член
Figure 00000056
требует лишь умножения и не требует дополнительного вычисления в узле 3 вычисления модели. Поскольку возможны два вычисления модели, вычисления f(x) и f'(x) могут выполняться для каждой итерации в вычислительных ядрах 31, 32 параллельно.
Для второго случая, в котором обучающие данные Х(k), Y(k) нормализованы, формула
Figure 00000057
может вычисляться, как пояснялось выше, посредством
Figure 00000058
При этом коэффициент wi(x) вычисляется под нормализованное значение х, т.е. под X(2) в приведенной форме записи, в частности путем вычисления с использованием
Figure 00000059
. Таким образом параметр денормализации используется, чтобы умножить полученный результат на соответствующий коэффициент.
Если актуализация параметров вычисления модели в реальном времени (онлайн-актуализация) невозможна, то, переписав приведенную выше формулу в следующее выражение:
Figure 00000060
вычисление можно провести аналогично тому, как пояснялось выше, с единственным отличием умножения на
Figure 00000061
или подходящий член выражения для других моделей гауссовского процесса. Вычисление выполняют для каждой основанной на данных функциональной подмодели с помощью двух вычислений согласно шагам вычислений, схематически представленным на фиг. 3 и рассматриваемым ниже. Нижеследующее представление шагов вычислений относится к первой модели ошибок, вычисление других моделей ошибок происходит аналогично:
Figure 00000062
вычисление в первом вычислительном ядре 31 (шаг S11)
Figure 00000063
умножение в главном вычислительном узле 2 (шаг S12)
Figure 00000064
вычисление во втором вычислительном ядре 32 с измененным Qy (шаг S13)
Figure 00000065
умножение результата на этот коэффициент программными средствами (шаг S14)
Для третьего случая, в котором для каждой основанной на данных функциональной подмодели выходы у обучающих данных преобразованы по методу Бокса-Кокса с использованием b(y), а выходы обучающих данных X нормализованы, выражения для f(x) и f'(x) имеют вид:
Figure 00000066
при
Figure 00000067
причем преобразование Бокса-Кокса соответствует b(y)=log(y). Функцию f(x) вычисляют следующим образом:
А вычисление в первом вычислительном ядре 31
ехр(A) вычисление в главном вычислительном узле 2 программными средствами
(ах+с) вычисление функции, дающей среднее значение, в главном вычислительном узле 2 программными средствами
Градиент f'(x) функциональной модели вычисляют, как схематически представлено на фиг. 4, следующим образом:
А вычисление в первом вычислительном ядре 31 (шаг S21)
ехр(А) вычисление в главном вычислительном узле 2 программными средствами (шаг S22)
(ах+с) вычисление функции, дающей среднее значение, в главном вычислительном узле 2 программными средствами (шаг S23)
Figure 00000068
умножение результата на этот коэффициент программными средствами (шаг S24)
Поскольку в частности, член А используют для вычисления как 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.
RU2014148490A 2013-12-03 2014-12-02 Способ и устройство для определения градиента основанной на данных функциональной модели RU2679225C2 (ru)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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 開発支援装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
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