掌桥专利:专业的专利平台
掌桥专利
首页

模型诊断装置以及模型诊断系统

文献发布时间:2023-06-19 11:32:36


模型诊断装置以及模型诊断系统

技术领域

本发明涉及模型诊断装置以及模型诊断系统。

背景技术

以往,已知为了控制车辆而使用根据预定的输入参数输出预定的输出参数的神经网络模型(neural network model)。例如,专利文献1中公开了使用已学习的(已训练好的)神经网络模型来推定被吸入到搭载于车辆的内燃机的燃烧室的吸入气体的流量。

现有技术文献

专利文献1:日本特开2012-112277号公报

发明内容

发明所要解决的问题

在这方面,为了使神经网络模型的精度提高,需要预先进行神经网络模型的学习。在神经网络模型的学习中,使用由输入参数的实测值和输出参数的实测值的组合形成的训练数据集(dataset)。

输入参数和输出参数的实测值可以在车辆实际的行驶中使用传感器等取得。因此,考虑在车辆中制作训练数据集并在车辆中进行神经网络模型的学习。通过将进行学习的结果所获得的已学习的神经网络模型发送给车辆外部的服务器,也能够将已学习的神经网络模型经由服务器发布(传送)给其他车辆。

然而,若与神经网络模型的学习有关的部件(组成部分)发生异常,则无法适当地进行神经网络模型的学习。其结果,可能会在车辆中进行使用异常的已学习的神经网络模型的控制。另外,可能会对其他车辆发布异常的已学习的神经网络模型。

于是,鉴于上述问题,本发明的目的在于提供一种能够诊断在车辆中所生成的已学习的神经网络模型的异常的模型诊断装置。

用于解决问题的技术方案

本公开的要旨概括如下。

(1)一种模型诊断装置,具备:通信装置,其能够与多个车辆通信,所述多个车辆进行神经网络模型的学习而生成已学习的神经网络模型;存储装置,其存储数据;以及控制装置,其判定所述已学习的神经网络模型的异常,所述控制装置将针对预定值的输入参数而从所述已学习的神经网络模型输出的输出参数的值存储于所述存储装置,并在经由所述通信装置从所述多个车辆中的一个车辆接收到新的已学习的神经网络模型或者针对所述预定值的输入参数而从该新的已学习的神经网络模型输出的输出参数的值时,对该输出参数的值进行统计处理,基于该统计处理的结果,判定所述新的已学习的神经网络模型的异常。

(2)根据上述(1)所述的模型诊断装置,所述控制装置在判定为所述新的已学习的神经网络模型异常的情况下,将该新的已学习的神经网络模型异常这一情况通知给所述一个车辆。

(3)根据上述(1)或(2)所述的模型诊断装置,所述控制装置在判定为所述新的已学习的神经网络模型异常的情况下,将在与所述一个车辆不同的车辆中生成的并且被判定为正常的已学习的神经网络模型发送给所述一个车辆。

(4)根据上述(1)至(3)中任一个所述的模型诊断装置,所述控制装置在判定为所述新的已学习的神经网络模型正常的情况下,将该新的已学习的神经网络模型存储于所述存储装置,在判定为该新的已学习的神经网络模型异常的情况下,不将该新的已学习的神经网络模型存储于所述存储装置。

(5)根据上述(1)至(4)中任一个所述的模型诊断装置,所述控制装置在存储于所述存储装置的输出参数的值不呈正态分布的情况下,将修正后的神经网络模型发送给所述多个车辆。

(6)一种模型诊断系统,具备服务器以及多个车辆,所述多个车辆分别具备:第1通信装置,其能够与所述服务器通信;以及第1控制装置,其通过进行神经网络模型的学习而生成已学习的神经网络模型,所述服务器具备:第2通信装置,其能够与所述多个车辆通信;存储装置,其存储数据;以及第2控制装置,其判定所述已学习的神经网络模型的异常,所述第2控制装置将针对预定值的输入参数而从所述已学习的神经网络模型输出的输出参数的值存储于所述存储装置,并在经由所述第2通信装置从所述多个车辆中的一个车辆接收到新的已学习的神经网络模型或者针对所述预定值的输入参数而从该新的已学习的神经网络模型输出的输出参数的值时,对该输出参数的值进行统计处理,基于该统计处理的结果,判定所述新的已学习的神经网络模型的异常。

(7)根据上述(6)所述的模型诊断系统,所述第2控制装置在判定为所述新的已学习的神经网络模型异常的情况下,将该新的已学习的神经网络模型异常这一情况通知给所述一个车辆。

(8)根据上述(7)所述的模型诊断系统,所述第1控制装置在被通知了所述新的已学习的神经网络模型异常的情况下,不采用该新的已学习的神经网络模型。

(9)根据上述(7)或(8)所述的模型诊断系统,所述第1控制装置在被通知了所述新的已学习的神经网络模型异常的情况下,将与所述神经网络模型的学习有关的部件的异常通知给驾驶员。

(10)根据上述(6)至(9)中任一个所述的模型诊断系统,所述第2控制装置在经由所述第2通信装置从所述多个车辆中的一个车辆接收到针对所述预定值的输入参数而从新的已学习的神经网络模型输出的输出参数的值时,对该输出参数的值进行统计处理,基于该统计处理的结果,判定所述新的已学习的神经网络模型的异常,并在判定为该新的已学习的神经网络模型正常的情况下,将该新的已学习的神经网络模型正常这一情况通知给所述一个车辆,所述第1控制装置在被通知了所述新的已学习的神经网络模型正常的情况下,将该新的已学习的神经网络模型发送给所述服务器。

发明效果

根据本发明,能提供能够诊断在车辆中所生成的已学习的神经网络模型的异常的模型诊断装置。

附图说明

图1是本发明的第一实施方式涉及的模型诊断系统的概略构成图。

图2是概略地表示图1的车辆的构成的一部分的图。

图3是表示具有简单结构(配置)的神经网络模型的一例的图。

图4是表示第一实施方式中的模型学习处理的控制例程(routine)的流程图。

图5是表示第一实施方式中的模型诊断处理的控制例程的流程图。

图6是表示正态分布的预定范围的一例的图。

图7是表示第二实施方式中的模型学习处理的控制例程的流程图。

图8是表示第二实施方式中的模型诊断处理的控制例程的流程图。

图9是表示第三实施方式中的模型诊断处理的控制例程的流程图。

标号说明

1模型诊断系统;2服务器;21通信接口(I/F);22储存装置(storage device);24处理器;3车辆;30电子控制单元(ECU);33处理器;36通信模块。

具体实施方式

以下,参照附图对本发明的实施方式进行详细说明。此外,在以下的说明中,对同样的构成要素赋予同一附图标记。

<第一实施方式>

首先,参照图1~图6,对本发明的第一实施方式进行说明。图1是本发明的第一实施方式涉及的模型诊断系统的概略构成图。模型诊断系统1具备服务器2以及多个车辆3。

如图1所示,服务器2设置在多个车辆3的外部,具备通信接口21、储存装置22、存储器23以及处理器24。此外,服务器2也可以还具备如键盘和鼠标这样的输入装置、如显示器这样的输出装置等。另外,服务器2也可以由多个计算机构成。服务器2是模型诊断装置的一例。

通信接口21能够与多个车辆3通信,使得服务器2能够与多个车辆3通信。具体而言,通信接口21具有用于将服务器2与通信网络5连接的接口电路。服务器2经由通信接口21、通信网络5以及无线基站6与多个车辆3通信。通信接口21是通信装置的一例。

储存装置22例如具有硬盘驱动器(HDD)、固态驱动器(SSD)或者光记录介质。储存装置22存储各种数据,例如存储车辆信息和用于处理器24执行各种处理的计算机程序等。储存装置22是存储装置的一例。

存储器23例如具有如随机存取存储器(RAM)这样的半导体存储器。存储器23例如存储由处理器24执行各种处理时所使用的各种数据等。

通信接口21、储存装置22以及存储器23经由信号线与处理器24连接。处理器24具有一个或多个CPU及其外围电路,执行各种处理。此外,处理器24也可以还具有如逻辑运算单元或者数值运算单元这样的运算电路。处理器24是控制装置的一例。

图2是概略地表示图1的车辆3的构成的一部分的图。车辆3具备电子控制单元(ECU(Electronic Control Unit))30。ECU30包括通信接口31、存储器32以及处理器33,执行车辆3的各种控制。此外,在本实施方式中,设置有一个ECU30,但也可以按功能设置多个ECU。

通信接口31具有用于将ECU30与遵循CAN(Controller Area Network,控制器局域网)等标准的车内网络连接的接口电路。ECU30经由通信接口31与其他车载设备通信。

存储器32例如具有易失性的半导体存储器(例如RAM)以及非易失性的半导体存储器(例如ROM)。存储器32存储由处理器33执行的程序、由处理器33执行各种处理时所使用的各种数据等。存储器32是存储装置的一例。

通信接口31以及存储器32经由信号线与处理器33连接。处理器33具有一个或多个CPU(Central Processing Unit)及其外围电路,执行各种处理。此外,处理器33也可以还具有如逻辑运算单元或者数值运算单元这样的运算电路。处理器33是控制装置的一例。

另外,车辆3具备能够与车辆的外部(例如服务器2)通信的通信模块36。通信模块36经由信号线与ECU30连接,例如构成为数据通信模块(DCM:Data communicationmodule)。车辆3经由通信模块36、无线基站6以及通信网络5与服务器2通信。通信模块36是通信装置的一例。

在本实施方式中,在车辆3中进行使用神经网络模型的控制。首先,参照图3,对神经网络模型的概要进行说明。图3是表示具有简单结构的神经网络模型的一例的图。

图3中的圆形记号表示人工神经元。人工神经元通常被称为节点(node)或者单元(unit)(在本说明书中称为“节点”)。在图3中,L=1表示输入层,L=2和L=3表示隐藏层,L=4表示输出层。此外,隐藏层也被称为中间层。

在图3中,x

在输入层的各节点,输入被原样输出。另一方面,对于隐藏层(L=2)的各节点,输入输入层的各节点的输出值x

接下来,该总输入值u

另外,对于输出层(L=4)的节点,输入隐藏层(L=3)的各节点的输出值z

神经网络模型根据多个输入参数输出至少一个输出参数。在本实施方式中,作为神经网络模型的输入参数和输出参数,使用与车辆3的状态有关的参数、与车辆3的行驶环境有关的参数等。

例如,作为输入参数,使用外部气温、纬度、经度、星期几、时间段以及刚刚的泊车时间(行驶前的泊车时间);作为输出参数,使用空调的设定温度。在使用星期几作为输入参数的情况下,星期几被数值化。例如对星期一~星期日分配1~7。

另外,在车辆具备内燃机作为动力源的情况下,例如,作为输入参数,使用内燃机转速、节气门的开度、进气量(新气量和EGR气体量的合计)或者进气压力、内燃机的冷却水的温度、凸轮轴的角度、进气温度、车速以及混合气的目标空燃比;作为输出参数,使用目标空燃比的校正量。

另外,在车辆3具备内燃机以及马达作为动力源的情况下,即车辆为混合动力车辆(HV)或者插电式混合动力车辆(PHV)的情况下,例如,作为输入参数,使用电池的充电率(SOC:state of charge)、车速、加速器开度、内燃机的冷却水的温度、电池的温度、由于空调等的使用而引起的电负荷、大气压或者高度、当前所在地的纬度、当前所在地的经度、星期几以及时间段;作为输出参数,使用HV模式下的电池的目标充放电量。此外,在HV模式下,驱动内燃机以及马达以使得电池的SOC成为目标值。

在车辆3中,根据输入参数和输出参数的种类,设置用于检测它们的实测值所需的传感器。另外,在车辆3中所使用的神经网络模型(具体而言是神经网络模型的配置信息)存储于ECU30的存储器32。神经网络模型的配置信息包含隐藏层的数量、各层中的节点的数量、权重w、偏置b等。

ECU30的处理器33通过将输入参数输入到神经网络模型而使神经网络模型输出输出参数。此时,作为各输入参数的值,例如可使用由设置于车辆3的传感器等检测出的值、由处理器33算出的值、根据从车辆3的外部发送到车辆3的信息所获得的值、由驾驶员输入的值等。通过使用神经网络模型,能够获得与预定值的输入参数对应的适当的输出参数的值。

为了使神经网络模型的精度提高,需要预先进行神经网络模型的学习。在本实施方式中,在多个车辆3的每一个中进行神经网络模型的学习而生成已学习的神经网络模型。具体而言,ECU30的处理器33进行神经网络模型的学习从而生成已学习的神经网络模型。即,在本实施方式中,并非在服务器2中而是在车辆3中进行神经网络模型的学习。

在神经网络模型的学习中,使用由多个输入参数的实测值、和与这些实测值对应的至少一个输出参数的实测值(正解数据)的组合形成的训练数据集。因此,ECU30的处理器33为了制作训练数据集而取得多个输入参数的实测值、和与这些实测值对应的至少一个输出参数的实测值。输入参数和输出参数的实测值例如作为由设置于车辆3的传感器等检测出的值、由处理器33算出的值、根据从车辆3的外部发送到车辆3的信息所获得的值、由驾驶员输入的值等来取得。通过将这些实测值组合而制作出的训练数据集存储于ECU30的存储器32。

处理器33使用大量的训练数据集进行神经网络模型的学习。例如,处理器33利用公知的误差反向传播法反复更新神经网络模型中的权重w以及偏置b以使得由神经网络模型输出的值与输出参数的实测值之差变小。其结果,神经网络模型被进行学习,生成已学习的神经网络模型。已学习的神经网络模型(具体而言是已学习的神经网络模型的配置信息)存储于ECU30的存储器32。已学习模型的配置信息包含隐藏层的数量、各层中的节点的数量、权重w、偏置b等。

已学习的神经网络模型(以下称为“已学习模型”)在车辆3中被用于车辆3的控制。通过使用已学习模型,能够在由传感器等检测输出参数的实测值前,预测与输入参数的值对应的输出参数的值。

在本实施方式中,当在车辆3中生成了已学习模型时,从车辆3将已学习模型发送到服务器2。即,在多个车辆3中所生成的已学习模型汇集到服务器2。此时,在车辆3中所生成的已学习模型存储于服务器2的储存装置22。

已学习模型根据需要从服务器2发布到其他车辆。通过这样,在不具有神经网络模型的学习功能的车辆或者尚未完成神经网络模型的学习的车辆中也能够使用已学习模型。

然而,若与神经网络模型的学习有关的部件(检测输入参数和输出参数的实测值的传感器、进行神经网络模型的学习的ECU30等)发生异常,则无法适当地进行神经网络模型的学习。其结果,可能会在车辆3中进行使用异常的已学习模型的控制。另外,异常的已学习模型可能会从服务器2发布到其他车辆。

因此,在本实施方式中,在服务器2中诊断已学习模型的异常,服务器2的处理器24判定已学习模型的异常。在已学习模型异常的情况下,权重w以及偏置b的值会从适当的范围偏离,从已学习模型输出不适当的输出参数的值。因此,在同一值作为输入参数输入到大量的已学习模型的情况下,从异常的已学习模型输出的输出参数的值在统计上很可能成为离群值(异常值)。

因此,通过将从已学习模型输出的输出参数的值进行统计处理,能够诊断已学习模型的异常。在统计处理中,需要大量的输出参数的值。另外,为了比较输出参数的值,在取得输出参数的值时需要将同一值的输入参数输入到已学习模型。

因此,服务器2的处理器24将针对预定值的输入参数而从已学习模型输出的输出参数的值存储于储存装置22。此时,输出参数的值通过将预定值的输入参数输入到已学习模型来取得。预定值是预先确定的一组值,且存储于储存装置22。例如,在已学习模型的输入参数的数量为六个的情况下,对于六个输入参数的每一个,预先设定有值。即,当在不同的车辆3中所生成的两个已学习模型中权重w以及偏置b被设定为同一值的情况下,针对预定值的输入参数而从两个已学习模型输出的输出参数的值成为同一值。

另外,处理器24在经由服务器2的通信接口21从多个车辆3中的一个车辆3接收到新的已学习模型时,对针对上述预定值的输入参数而从新的已学习模型输出的输出参数的值进行统计处理,基于统计处理的结果,判定新的已学习模型的异常。通过这样,能够分选出输出离群值作为输出参数的已学习模型,进而能够在短时间内精确地诊断已学习模型的异常。

例如,处理器24在从新的已学习模型输出的输出参数的值落在使用存储于储存装置22的输出参数的值作为总体(母体)所生成的正态分布的预定范围内时,判定为新的已学习模型正常。另一方面,处理器24在从新的已学习模型输出的输出参数的值落在正态分布的预定范围外时,判定为新的已学习模型异常。

另外,处理器24将新的已学习模型的异常诊断结果发送给向服务器2发送了新的已学习模型的车辆3。通过这样,能够判断是否在车辆3中使用新的已学习模型。

具体而言,处理器24在判定为新的已学习模型异常的情况下,将新的已学习模型异常这一情况通知给车辆3。另一方面,处理器24在判定为新的已学习模型正常的情况下,将新的已学习模型正常这一情况通知给车辆3。

另外,处理器24在将已学习模型发布给其他车辆的情况下,将判定为正常的已学习模型发送给其他车辆。通过这样,能够抑制在其他车辆中进行使用异常的已学习模型的控制。

设置于发送了新的已学习模型的车辆3的ECU30的处理器33在被通知了新的已学习模型正常的情况下采用新的已学习模型,在被通知了新的已学习模型异常的情况下,不采用新的已学习模型。通过这样,能够抑制在车辆3中进行使用异常的已学习模型的控制。

另外,ECU30的处理器33在被通知了新的已学习模型异常的情况下,将与神经网络模型的学习有关的部件(检测输入参数和输出参数的实测值的传感器、进行神经网络模型的学习的ECU30等)的异常通知给车辆3的驾驶员。通过这样,能够促使驾驶员对车辆3进行修理。

<模型学习处理>

以下,参照图4的流程图,详细说明在车辆3中进行的控制。图4是表示第一实施方式中的模型学习处理的控制例程的流程图。本控制例程由ECU30的处理器33反复执行。

首先,在步骤S101中,处理器33判定存储于存储器32的训练数据集的数量是否大于等于预定数量。预定数量是预先确定的,设定为足以提高学习精度的值。此外,在已经进行了神经网络模型的学习的情况下,判定没有用于学习的训练数据集的数量、即新取得的训练数据集的数量是否大于等于预定数量。

在步骤S101中判定为训练数据集的数量小于预定数量的情况下,本控制例程结束。另一方面,在步骤S101中判定为训练数据集的数量大于等于预定数量的情况下,本控制例程前进至步骤S102。

在步骤S102中,处理器33进行神经网络模型的学习。例如,处理器33利用公知的误差反向传播法反复更新神经网络模型中的权重w以及偏置b以使得由神经网络模型输出的值与输出参数的实测值之差减小。其结果,神经网络模型被进行学习,生成已学习模型。所生成的已学习模型存储于ECU30的存储器32。

接下来,在步骤S103中,处理器33经由通信模块36将已学习模型发送给服务器2。

接下来,在步骤S104中,处理器33判定在将已学习模型发送给服务器2后的预定时间以内是否从服务器2接收到异常诊断结果。预定时间是预先确定的,设定为比要在服务器2中诊断已学习模型的异常所需的时间长的时间。在步骤S104中判定为在预定时间以内没有接收到异常诊断结果的情况下,本控制例程结束。在该情况下,处理器33不采用已学习模型。

另一方面,在步骤S104中判定为在预定时间以内接收到了异常诊断结果的情况下,本控制例程前进至步骤S105。在步骤S105中,处理器33判定异常诊断结果是否为异常判定。即,处理器33判定是否被通知了已学习模型异常。在判定为异常诊断结果是异常判定的情况下,本控制例程前进至步骤S106。

在步骤S106中,处理器33不采用已学习模型,将与神经网络模型的学习有关的部件的异常通知给车辆3的驾驶员。例如,处理器33通过将设置于车辆3的警告灯点亮来将部件的异常通知给车辆3的驾驶员。此外,处理器33也可以通过从设置于车辆3的发声装置发出警告声来将部件的异常通知给车辆3的驾驶员。另外,在步骤S106中,处理器33也可以将已学习模型从存储器32中删除。在步骤S106之后,本控制例程结束。

另一方面,在步骤S105中判定为异常诊断结果是正常判定的情况下,本控制例程前进至步骤S107。在步骤S107中,处理器33采用已学习模型。其结果,在之后的车辆控制中使用已学习模型。在步骤S107之后,本控制例程结束。

此外,在步骤S104中判定为在预定时间以内没有接收到异常诊断结果的情况下,本控制例程也可以前进至步骤S107。即,只要没被通知已学习模型异常,处理器33也可以采用已学习模型。

<模型诊断处理>

以下,参照图5的流程图,详细说明在服务器2中进行的控制。图5是表示第一实施方式中的模型诊断处理的控制例程的流程图。本控制例程由服务器2的处理器24反复执行。

首先,在步骤S201中,处理器24判定是否从车辆3接收到新的已学习模型。在判定为没有从车辆3接收到新的已学习模型的情况下,本控制例程结束。另一方面,在判定为从车辆3接收到了新的已学习模型的情况下,本控制例程前进至步骤S202。

在步骤S202中,处理器24将针对预定值的输入参数而从已学习模型输出的输出参数的值存储于储存装置22。具体而言,处理器24将预定值的输入参数输入到已学习模型,将由已学习模型输出的输出参数的值存储于储存装置22。如上所述,预定值是预先确定的一组值,存储于储存装置22。

接下来,在步骤S203中,处理器24判定存储于储存装置22的输出参数的值的数量、即统计处理中使用的总体的数量是否大于等于预定数量。预定数量是预先确定的,设定为足以提高由统计处理进行的异常诊断的精度的值。在判定为总体的数量小于预定数量的情况下,本控制例程结束。另一方面,在判定为总体的数量大于等于预定数量的情况下,本控制例程前进至步骤S204。

在步骤S204中,处理器24判定从新的已学习模型输出的输出参数的值是否落在使用存储于储存装置22的输出参数的值作为总体所生成的正态分布的预定范围内。预定范围是预先确定的,例如设定为k-sigma区间[μ-kσ,μ+kσ]。k为预先确定的任意的自然数。μ为正态分布的平均,通过计算来算出。σ为正态分布的标准偏差,通过计算来算出。例如在k为2的情况下,即在预定范围为2-sigma区间的情况下,如图6所示,在输出参数的值不在μ±2σ的范围内时,判定为新的已学习模型异常。此外,也可以不使用从新的已学习模型输出的输出参数的值作为总体。

在步骤S204中判定为输出参数的值落在正态分布的预定范围内的情况下,本控制例程前进至步骤S205。在步骤S205中,处理器24判定为新的已学习模型正常。在该情况下,处理器24将新的已学习模型(具体而言是新的已学习模型的配置信息)存储于储存装置22。

在步骤S205之后,在步骤S207中,处理器24向发送了新的已学习模型的车辆3发送异常诊断结果。在该情况下,处理器24向发送了新的已学习模型的车辆3通知新的已学习模型是正常的。在步骤S207之后,本控制例程结束。

另一方面,在步骤S204中判定为输出参数的值落在正态分布的预定范围外的情况下,本控制例程前进至步骤S206。在步骤S206中,处理器24判定为新的已学习模型异常。在该情况下,处理器24不将新的已学习模型存储于储存装置22。即,处理器24将新的已学习模型删除。通过这样,能够抑制储存装置22的可用空间不够的情况。

在步骤S206之后,在步骤S207中,处理器24向发送了新的已学习模型的车辆3发送异常诊断结果。在该情况下,处理器24向发送了新的已学习模型的车辆3通知新的已学习模型是异常的。在步骤S207之后,本控制例程结束。

此外,在步骤S206中,处理器24也可以在判定为新的已学习模型异常的情况下,将从被判定为异常的新的已学习模型输出的输出参数的值删除,以使得总体中不包括离群值。通过这样,能够抑制异常诊断的精度降低。

另外,在步骤S206中,处理器24也可以在判定为新的已学习模型异常的情况下,向发送了新的已学习模型的车辆3发送正常的已学习模型。正常的已学习模型是在与发送了新的已学习模型的车辆3不同的车辆3中生成的并且被判定为正常的已学习模型。通过这样,能够在生成了异常的已学习模型的车辆3中进行使用正常的已学习模型的适当的控制。

<第二实施方式>

除了以下说明的点之外,第二实施方式涉及的模型诊断系统以及模型诊断装置的构成以及控制基本上与第一实施方式涉及的模型诊断系统以及模型诊断装置的构成以及控制是同样的。因此,以下以与第一实施方式不同的部分为中心,对本发明的第二实施方式进行说明。

如上所述,在已学习模型的异常诊断中,使用从已学习模型输出的输出参数的值,不使用已学习模型的配置信息。因此,在第二实施方式中,在车辆3中生成了已学习模型时,将针对预定值的输入参数而从已学习模型输出的输出参数的值发送到服务器2。即,从在多个车辆3中所生成的已学习模型输出的输出参数的值汇集到服务器2而存储于服务器2的储存装置22。输出参数的值通过将预定值的输入参数输入到已学习模型来取得。预定值是预先确定的一组值,存储于ECU30的存储器32。

服务器2的处理器24在经由服务器2的通信接口21从多个车辆3中的一个车辆3接收到针对上述预定值的输入参数而从新的已学习模型输出的输出参数的值时,对该输出参数的值进行统计处理,基于统计处理的结果,判定新的已学习模型的异常。通过这样,能够分选出输出离群值作为输出参数的已学习模型,进而能够在短时间内精确地诊断已学习模型的异常。

然而,为了从服务器2向其他车辆发布已学习模型,需要将在车辆3中所生成的已学习模型发送给服务器2。因此,ECU30的处理器33在被通知了新的已学习模型正常的情况下,将新的已学习模型发送给服务器2。通过这样,与每次生成了已学习模型时都将已学习模型发送给服务器2的情况相比,能够降低通信负荷。

<模型学习处理>

图7是表示第二实施方式中的模型学习处理的控制例程的流程图。本控制例程由ECU30的处理器33反复执行。

首先,在步骤S301中,与图4的步骤S101同样地,处理器33判定存储于存储器32的训练数据集的数量是否大于等于预定数量。在判定为训练数据集的数量小于预定数量的情况下,本控制例程结束。另一方面,在步骤S301中判定为训练数据集的数量大于等于预定数量的情况下,本控制例程前进至步骤S302。

接下来,在步骤S302中,与图4的步骤S102同样地,处理器33进行神经网络模型的学习,生成已学习模型。

接下来,在步骤S303中,处理器33将针对预定值的输入参数而从已学习模型输出的输出参数的值发送给服务器2。具体而言,处理器33将预定值的输入参数输入到已学习模型,并将由已学习模型输出的输出参数的值发送给服务器2。如上所述,预定值是预先确定的一组值,存储于存储器32。

之后,与图4的步骤S104~步骤S106同样地执行步骤S304~步骤S306。

另一方面,在步骤S305中判定为异常诊断结果是正常判定的情况下,本控制例程前进至步骤S307。在步骤S307中,与图4的步骤S107同样地,处理器33采用已学习模型。

接下来,在步骤S308中,处理器33将已学习模型(具体而言是已学习模型的配置信息)发送给服务器2。发送到服务器2的已学习模型存储于服务器2的储存装置22,并根据需要发布给其他车辆。因此,服务器2的处理器24在判定为新的已学习模型正常的情况下,将新的已学习模型存储于储存装置22。在步骤S308之后,本控制例程结束。

此外,本控制例程可以与图4的控制例程同样地进行变形。

<模型诊断处理>

图8是表示第二实施方式中的模型诊断处理的控制例程的流程图。本控制例程由服务器2的处理器24反复执行。

首先,在步骤S401中,处理器24判定是否从车辆3接收到输出参数的值。在判定为没有从车辆3接收到输出参数的值的情况下,本控制例程结束。另一方面,在判定为从车辆3接收到了输出参数的值的情况下,本控制例程前进至步骤S402。

在步骤S402中,处理器24将从车辆3发送来的输出参数的值存储于储存装置22。之后,与图5的步骤S203~步骤S207同样地执行步骤S403~步骤S407。

此外,在步骤S406中,处理器24也可以在判定为新的已学习模型异常的情况下,将从车辆3发送来的输出参数的值删除,以使得总体中不包括离群值。通过这样,能够抑制异常诊断的精度降低。

另外,在步骤S406中,处理器24也可以在判定为新的已学习模型异常的情况下,向发送了输出参数的值的车辆3发送正常的已学习模型。正常的已学习模型是在与发送了输出参数的值的车辆3不同的车辆3中生成的并且被判定为正常的已学习模型。通过这样,能够在生成了异常的已学习模型的车辆3中进行使用正常的已学习模型的适当的控制。

<第三实施方式>

除了以下说明的点之外,第三实施方式涉及的模型诊断系统以及模型诊断装置的构成以及控制基本上与第一实施方式涉及的模型诊断系统以及模型诊断装置的构成以及控制是同样的。因此,以下以与第一实施方式不同的部分为中心,对本发明的第三实施方式进行说明。

如上所述,若与神经网络模型的学习有关的部件发生异常,则无法适当地进行神经网络模型的学习,而会生成异常的已学习模型。然而,即使此种部件正常,在神经网络模型的配置(输入参数的数量以及种类、隐藏层的数量、各层的节点的数量等)不适当的情况下,也无法提高已学习模型的精度。

在已学习模型的精度低的情况下,在不同的车辆3中所生成的已学习模型之间,输出参数的值的波动(偏移)会增大。在该情况下,存储于储存装置22的输出参数的值很可能不呈正态分布。

因此,在第三实施方式中,服务器2的处理器24在存储于储存装置22的输出参数的值不呈正态分布的情况下,将修正后的神经网络模型发送给多个车辆3。通过这样,能够抑制在多个车辆3中继续生成精度低的已学习模型。

<模型诊断处理>

图9是表示第三实施方式中的模型诊断处理的控制例程的流程图。本控制例程由服务器2的处理器24反复执行。

首先,与图5的步骤S201~步骤S203同样地执行步骤S501~步骤S503。在步骤S503中,在判定为总体的数量大于等于预定数量的情况下,本控制例程前进至步骤S504。

在步骤S504中,处理器24判定由存储于储存装置22的输出参数的值形成的总体是否呈正态分布。例如,处理器24使用用于检验正态性的公知的检验方法(基于偏度的D检验(达戈斯提诺(D′Agostino)检验)、基于峰度的D检验、基于偏度及峰度的多项混合(Omnibus)检验、K-S检验(柯尔莫诺夫-斯米尔诺夫(Kolmogorov-Smirnov)检验)、S-W检验(夏皮罗-威尔克(Shapiro-Wilk)检验)等),判定总体是否呈正态分布。

在步骤S504中判定为总体呈正态分布的情况下,本控制例程前进至步骤S505,与图5的步骤S204~步骤S207同样地执行步骤S505~步骤S508。另一方面,在步骤S504中判定为总体不呈正态分布的情况下,本控制例程前进至步骤S509。

在步骤S509中,处理器24将修正后的神经网络模型发送给多个车辆3。修正后的神经网络模型的配置信息存储于储存装置22。在多个车辆3的每一个中,用于进行车辆3的控制的神经网络模型被替换成修正后的神经网络模型,进行修正后的神经网络模型的学习。

例如,修正后的神经网络模型比修正前的神经网络模型具有较多的隐藏层。此外,修正后的神经网络模型也可以比修正前的神经网络模型具有较多的隐藏层的节点数。基本上,隐藏层的数量以及隐藏层的节点的数量越多,神经网络模型的自由度越大,已学习模型的精度越高。神经网络模型的自由度表示神经网络模型中的权重w以及偏置b的总数。

接下来,在步骤S510中,处理器24将存储于储存装置22的所有的输出参数的值以及所有的已学习模型删除。在步骤S510之后,本控制例程结束。

此外,本控制例程可以与图5的控制例程同样地进行变形。另外,修正后的神经网络模型也可以具有与修正前的神经网络模型不同的输入参数的种类。另外,修正后的神经网络模型也可以具有从修正前的神经网络模型追加的输入参数。在这些情况下,神经网络模型的修正由人来进行。因此,在判定为总体不呈正态分布的情况下,处理器24将修正建议通知给服务器2的管理者,由管理者修正后的神经网络模型从服务器2发送到多个车辆3。

<其他实施方式>

以上,对本发明涉及的优选的实施方式进行了说明,但本发明并不限定于这些实施方式,可以在技术方案的记载范围内实施各种修正和变更。例如,神经网络模型的输入参数和输出参数的种类不限定于上述的例子,而可以包括能够在车辆3中取得的任意的参数。

另外,ECU30的存储器32所存储的各种信息也可以存储于设置在车辆3中的其他存储装置。另外,服务器2的储存装置22所存储的各种信息也可以存储于服务器2的存储器23。

另外,作为对已学习模型输入的预定值的输入参数,也可以使用多个组合。在该情况下,对针对多个组合的输入参数的每一个而从新的已学习模型输出的输出参数的值进行统计处理,例如在所有输出参数的值落在正态分布的预定范围内时,判定为新的已学习模型正常。

另外,在对输出参数的值进行统计处理时,也可以使用用于检测离群值的其他公知的统计方法(例如修剪平均(trimmean)、Smirnov-Grubbs检验、箱形图、聚类分析等)。

另外,上述的实施方式可以任意地组合而实施。在第二实施方式与第三实施方式组合的情况下,在图8的控制例程中,取代步骤S404~步骤S407而执行图9的步骤S504~步骤S510。

相关技术
  • 模型诊断装置以及模型诊断系统
  • 早期乳腺癌诊断模型及诊断系统
技术分类

06120112967881