模型训练程序、模型训练方法以及信息处理装置与流程

文档序号:33227458发布日期:2023-02-14 15:16阅读:50来源:国知局
模型训练程序、模型训练方法以及信息处理装置与流程

1.本发明涉及模型训练程序、模型训练方法以及信息处理装置。


背景技术:

2.ai(artificial intelligence:人工智能)技术普及,不能够盲目地判断黑盒模型,希望显示出对人来说能够解释的判断的根据等可说明的机器学习模型的需要正在增加。据此,也进行预先使用规则列表、决策树、线形模型等白盒模型,但仅使用白盒模型,并不一定是对人来说能够解释的模型。
3.因此,近年来,进行通过重复进行模型生成与对人的反馈的对话型研究,生成人能够理解、精度较好的模型。例如,向用户显示“预测模型针对某输入的输出”任务,通过反应时间评价解释可能性。而且,按照评价,变更优化模型时的参数来更新模型。进行通过重复进行这样的处理来生成人能够理解且精度较好的模型。
4.非专利文献1:isaac lage,et al.,“human-in-the-loop interpretability prior”,in proceedings of the 32nd international conference on neural information processing systems(nips

18),pages 10180-10189,2018。
5.然而,上述技术以决策树、规则列表等人通过追踪分支能够预测输出的模型为对象,难以应用于线形模型。例如,在100个数据项目出现在当前模型中的情况下,用户浏览全部100个数据项目来概算模型的预测值对用户来说负担较大,是不现实的。
6.另外,由于线形模型的解释可能性由作为输出的说明而提示的数据项目的解释容易度决定,所以根据对上述任务的响应时间的长度无法评价解释可能性。


技术实现要素:

7.在一个方面,其目的在于提供能够实现模型的容易解释的提高的模型训练程序、模型训练方法以及信息处理装置。
8.在第1方案中,模型训练程序使计算机执行如下的处理:选择判定模型的训练所使用的训练数据集所包含的多个训练数据中的能够由上述判定模型正确地判定的训练数据。模型训练程序使计算机执行如下的处理:向用户提示选择出的上述训练数据所包含的数据项目中的有助于判定的数据项目和判定结果,受理对提示的上述数据项目的解释的容易度的评价。模型训练程序使计算机执行如下的处理:以基于评价结果调整的损失函数为基础,使用上述训练数据集来执行上述判定模型的训练处理。
9.根据一实施方式,能够实现模型的解释的容易度的提高。
附图说明
10.图1是对实施例1所涉及的信息处理装置进行说明的图。
11.图2是对一般技术的问题点进行说明的图。
12.图3是表示实施例1所涉及的信息处理装置的功能构成的功能框图。
13.图4是对训练数据集的一个例子进行说明的图。
14.图5是对损失函数进行说明的图。
15.图6是对数据项目的推荐进行说明的图。
16.图7是对具体例的循环第一次进行说明的图。
17.图8是对查询画面例进行说明的图。
18.图9是对具体例的循环第二次进行说明的图。
19.图10是对具体例的循环第二次进行说明的图。
20.图11是对具体例的循环第三次进行说明的图。
21.图12是对具体例的循环第三次进行说明的图。
22.图13是对具体例的循环第四次进行说明的图。
23.图14是对具体例的循环第四次进行说明的图。
24.图15是对具体例的循环第五次进行说明的图。
25.图16是对具体例的循环第五次进行说明的图。
26.图17是表示处理的流程的流程图。
27.图18是对硬件构成例进行说明的图。
具体实施方式
28.以下,基于附图,详细地对本发明所涉及的模型训练程序、模型训练方法以及信息处理装置的实施例进行说明。此外,并不是通过该实施例限定该发明。另外,各实施例能够在没有矛盾的范围内适当地组合。
29.实施例1
30.[信息处理装置的说明]
[0031]
图1是对实施例1所涉及的信息处理装置10进行说明的图。图1所示的信息处理装置10是生成解释可能性较高的判定模型的计算机装置。该信息处理装置10通过与用户(人)的对话,重复进行人的评价的反馈和模型生成,生成尽量不让人费事、人能够理解且精度良好的模型。实施例1所涉及的信息处理装置10作为可说明的机器学习模型,以作为白盒模型的一个例子的线形模型为例进行说明。
[0032]
此处,作为线形模型的一个例子,考虑基于对式(1)所示的损失函数进行最小化而获得的回归方程(参照式(2))的判定模型(学习模型)。此外,损失函数是包括训练数据、分类误差(判定误差)以及权重惩罚的目标函数的一个例子,回归方程示出数据项目假定为有d个的例子。回归方程是在m(x)>0时判定为正例,在此以外判定为负例的模型。
[0033]
[数1]
[0034][0035]
[数2]
[0036]
回归方程m(x)=a1x1+a2x2+

+adxd…
式(2)
[0037]
一般而言,在训练而得的判定模型中,将与输入数据一致且权重不是“0”的数据项
目作为说明提示给用户。例如,在判定模型为m(x)=7x1-2x3-6x5时,输入了输入x=(0,1,1,0,1)的情况下,基于判定模型的预测值m(x)为“-8”。此时,由于x3和x5而判断为负例,特别是“x
5”能够作为重要而提示给用户。这样,若通过交互式的研究进行训练,则由于损失函数内的惩罚的调整,权重为“0”的数据项目增加,成为简洁的说明,但说明的简洁性和判定精度处于折衷的关系。
[0038]
图2是对一般技术的问题点进行说明的图。如图2所示,如果增加数据项目则判定精度提高,但由于回归方程变长,用户“预测对某输入的模型的输出”的任务所涉及的时间变长。换句话说,判定用户是否能够解释各数据项目,获取到用户的评价为止的时间变长,判定模型的生成花费时间。另一方面,若缩短回归方程,则也会大多使用用户难以解释的数据项目x2、x5、x8(解释容易度=
×
)等,也不一定能够缩短用户对任务处理时间。
[0039]
因此,实施例1所涉及的信息处理装置10为各数据项目准备模型生成时的惩罚系数,根据“评价所提示的数据项目”的任务的结果来更新惩罚系数。而且,信息处理装置10通过使用更新后的惩罚系数来执行模型的优化,从而执行损失函数的更新和模型的训练。
[0040]
具体而言,信息处理装置10选择判定模型的训练所使用的训练数据集所包含的训练数据中的、能够由判定模型正确地判定的训练数据。而且,信息处理装置10向用户提示选择出的训练数据所包含的数据项目中的有助于判定的数据项目和判定结果,受理对提示的数据项目的解释的容易度的评价。之后,信息处理装置10以基于评价结果调整的损失函数为基础,使用训练数据集来执行上述判定模型的训练。
[0041]
换句话说,如图1所示,信息处理装置10使用训练完毕的线形模型(判定模型)来执行推荐给用户的数据项目的搜索,并将搜索到的数据项目推荐给用户。而且,信息处理装置10获取对推荐的数据项目的用户评价,考虑用户评价来执行判定模型(线形模型)的训练,并提示给用户。另外,信息处理装置10获取对建议的判定模型的用户评价,再次执行向用户建议的数据项目的搜索。
[0042]
换句话说,信息处理装置10通过在基于训练历史将数据项目推荐给用户时,减少数据项目数使任务简单化,重复进行用户评价和基于该评价的训练,从而实现考虑到数据项目的解释容易度的模型生成。这样一来,信息处理装置10能够实现模型的解释的容易度的提高。此外,在本实施例中所使用的“数据项目容易解释”与“在模型中出现容易度”同义。
[0043]
[功能构成]
[0044]
图3是表示实施例1所涉及的信息处理装置10的功能构成的功能框图。如图3所示,信息处理装置10具有:通信部11、显示部12、存储部13、控制部20。
[0045]
通信部11是控制与其它装置之间的通信的处理部,例如通过通信接口来实现。例如,通信部11从管理者终端等接收训练数据集、处理开始等各种指示,并将训练后的判定模型发送至管理者终端。
[0046]
显示部12是输出由控制部20生成的各种信息的处理部,例如通过显示器、触摸面板等来实现。
[0047]
存储部13是存储各种数据、控制部20执行的程序等的存储装置的一个例子,例如通过存储器、硬盘来实现。该存储部13存储训练数据集14和判定模型15。
[0048]
训练数据集14是判定模型15的训练所使用的训练数据。图4是对训练数据集14的一个例子进行说明的图。如图4所示,训练数据集14由将作为说明变量的多个数据项目和作
为目标变量的正解信息(标签)建立对应的多个训练数据构成。
[0049]
具体而言,如图4所示,作为训练数据的一个例子的数据a、b、c、d、e、f分别由表示特征的数据项目xi(i=1~8)和标签构成。例如,对于数据a,作为“数据项目x1、x2、x3、x4、x5、x6、x7、x
8”,设定“1、0、0、0、0、0、1、1”,设定“正例”作为标签。
[0050]
判定模型15是使用训练数据集14所训练而得的训练完毕的模型。例如,判定模型15是式(3)等所示的线形模型m(x),如果对输入的预测值m(x)大于0,则被判定(分类)为“正例”,如果预测值m(x)在0以下,则被判定(分类)为“负例”。其中,判定模型15由后述的训练部21生成。
[0051]
[数3]
[0052]
m(x)=x
1-2x
2-x5+2x8…
式(3)
[0053]
控制部20是管理整个信息处理装置10的处理部,例如通过处理器等来实现。该控制部20具有训练部21、对话处理部22、输出部26。此外,训练部21、对话处理部22、输出部26也能够实现为处理器等电子电路,也能够实现为处理器执行的工序。
[0054]
训练部21是执行判定模型15的训练(学习)的处理部。具体而言,训练部21使用训练数据集14来训练判定模型15,若训练完成,则将训练完毕的判定模型15储存至存储部13。
[0055]
此处,对使用于训练的损失函数和分类模型进行说明。式(4)所示的损失函数l由分类误差(判定误差)与权重惩罚的和定义。此处,x是训练数据的说明变量,y是训练数据的目标变量(标签)。另外,ρi是针对d个各数据项目所设定的系数,初始值由用户指定的一个实数值参数统一。此外,在数据项目i容易解释的情况下,用γρi更新ρi以使得容易在模型中出现,在数据项目i难以解释的情况下,用δρi更新ρi以使得难以在模型中出现,以执行训练。此处,γ以及δ是用户能够设定的实数值参数,例如0<γ<1,1<δ。
[0056]
[数4]
[0057][0058]
图5是对损失函数进行说明的图。如图5所示,训练部21对损失函数l的“x”代入将训练数据集14的各数据的说明变量(数据项目)作为行的6行8列的矩阵。例如,在x的第一行设定数据a的“x1、x2、x3、x4、x5、x6、x7、x8=1、0、0、0、0、0、1、1”,在第二行设定数据b的“x1、x2、x3、x4、x5、x6、x7、x8=1、1、1、1、0、0、1、1”,在第三行设定数据c的“x1、x2、x3、x4、x5、x6、x7、x8=0、0、0、0、1、1、1、1”,在第四行设定数据d的“x1、x2、x3、x4、x5、x6、x7、x8=1、1、1、1、0、0、0、0”,在第五行设定数据e的“x1、x2、x3、x4、x5、x6、x7、x8=0、1、1、1、1、1、0、0”,在第六行设定数据f的“x1、x2、x3、x4、x5、x6、x7、x8=0、1、1、1、1、1、1、1”。
[0059]
另外,在损失函数l的“y”代入将训练数据集14的各数据的标签作为行的6行1列的矩阵。例如,在y的第一行设定数据a的“标签=正例”,在第二行设定数据b的“标签=正例”,在第三行设定数据c的“标签=正例”,在第四行设定数据d的“标签=负例”,在第五行设定数据e的“标签=负例”,在第六行设定数据f的“标签=负例”。计算上,正例被变换为“1”,负例被变换为“0”。
[0060]
另外,ρi是按每个数据项目设定的值(权重),由各数据项目的解释容易度定。例如,对数据项目x1设定ρ1,对数据项目x2设定ρ2,对数据项目x3设定ρ3,对数据项目ρ4设定ρ4,
对数据项目x5设定ρ5,对数据项目x6设定ρ6,对数据项目x7设定ρ7,对数据项目x8设定ρ8,计算损失函数的最优化(最小化)。此外,在训练部21训练时,对ρi对设定任意的值。
[0061]
而且,训练部21如上述那样执行对各变量设定值的损失函数l的优化,生成使用了优化而获得的ai的式(2)所示的判定模型m(x)。即,训练部21生成基于对损失函数l进行最小化而获得的回归方程的判定模型,并作为判定模型15储存至存储部13。此外,此处,示出数据项目数为d个的例子,但在实施例1中,d=8。
[0062]
对话处理部22具有推荐部23、再训练部24、画面显示部25,是执行对基于与用户的对话研究的数据项目的用户评价的获取、以及考虑到用户评价的判定模型15的再训练的处理部。
[0063]
具体而言,对话处理部22管理训练数据集14的各训练数据所包含的各数据项目的评价次数,从训练数据中按照规定的优先基准将一个训练数据决定为推荐对象。而且,对话处理部22从推荐对象的训练数据内的数据项目中的与输入(标签)一致的数据项目将任意的k个提示给用户,并受理对提示的数据项目的评价。
[0064]
之后,对话处理部22在根据用户评价来更新损失函数的权重惩罚的基础上,执行使用了训练数据集14的判定模型15的再训练,以执行判定模型15的优化。换句话说,对话处理部22通过反映了数据项目的推荐、用户评价的损失函数重复进行再训练、判定模型15的生成,有效地布置任务,从而以较少的任务次数实现判定模型15的优化。
[0065]
推荐部23是使用训练完毕的判定模型15和训练数据集14,从训练数据具有的多个数据项目搜索用户的评价对象的数据项目,并提示(推荐)给用户的处理部。
[0066]
此处,对数据项目的推荐详细进行说明。图6是对数据项目的推荐进行说明的图。如图6所示,推荐部23对从作为训练数据的各数据a~数据f,除了“数据项目和标签”以外,还管理“预测值”、“平均评价次数”、“惩罚”、“评价次数”。
[0067]“预测值”是在将训练数据输入到判定模型15时判定模型15输出的输出值。“平均评价次数”是模型所包含的各数据项目被评价的次数、比例,在每次再训练判定模型15时更新。“惩罚”是对损失函数的权重惩罚的“ρ
i”设定的值,例如初始值为“1.0”,通过用户评价来更新。“评价次数”是各数据项目被评价的次数。例如,推荐部23针对d个数据项目的每个项目分别初始化为c1、c2、c3…cd
,在数据项目i被用户选择时,用“c
i+1”更新“c
i”。
[0068]
通过管理这样的信息,在每次再训练判定模型15时,推荐部23决定推荐的数据项目并向用户提示。例如,首先,推荐部23缩小推荐对象的数据项目。具体而言,推荐部23从训练数据中选择判定模型15的判定结果正确、平均评价次数最小、且判定模型15的预测值的绝对值最大的训练数据作为对用户的推荐对象。换句话说,推荐部23优选将正确地训练而得的训练数据中的评价次数较少、权重较大、数据项目较多的训练数据推荐给用户。此外,在不存在符合的训练数据的情况下,推荐部23随机选择。
[0069]
接下来,推荐部23将从与输入一致的数据项目按照规定的优先基准选择的k个数据项目提示并推荐给用户。具体而言,推荐部23选择权重的符号与标签一致、评价次数较少、权重的绝对值较大的k个数据项目,并推荐给用户。换句话说,推荐部23优先将有助于判定结果、评价次数较少、权重较大的数据项目提示给用户。而且,推荐部23从用户受理提示的数据项目符合“容易解释”、“难以解释”或者“都可以”中的哪个的评价。
[0070]
再训练部24是考虑由推荐部23得到的用户的评价来执行判定模型15的再训练的
处理部。具体而言,再训练部24通过与训练部21同样的方法,使用训练数据集14和式(4)来生成基于对损失函数l进行最小化而获得的回归方程的判定模型15。
[0071]
此时,再训练部24使损失函数的“ρ
i”反映由推荐部23获取到的用户评价来执行最小化。具体而言,再训练部24根据用户评价,在数据项目i被评价为“容易解释”的情况下,用“γρ
i”更新与数据项目i对应的“ρ
i”,执行损失函数的优化。另一方面,再训练部24根据用户评价,在数据项目i被评价为“难以解释”的情况下,用“δρ
i”更新与数据项目i对应的“ρ
i”,执行损失函数的优化。
[0072]
例如,若以γ=1/2,δ=0.5,各ρi的初始值为1.0的状态为例进行说明,则在数据项目x3被评价为“容易解释”的情况下,再训练部24将“ρ3”从“1.0”更新为“1.0
×
1/2=0.5”,对于其它数据项目的“ρ
i”,计算设定“1.0”的损失函数的最小化。另一方面,在数据项目x3被评价为“难以解释”的情况下,再训练部24将“ρ3”从“1.0”更新为“1.0
×
2=2.0”,对于其它数据项目的“ρ
i”,计算设定“1.0”的损失函数的最小化。
[0073]
而且,再训练部24向用户提示基于对使“ρ
i”反映用户评价的损失函数进行最小化而获得的回归方程的判定模型15,使其评价判定模型15其本身是否容易解释。
[0074]
此处,在判定模型15其本身被评价为容易解释的情况下,此时的判定模型15被决定为最终得到的判定模型。另一方面,在判定模型15其本身被评价为难以解释的情况下,再次执行推荐部23对数据项目的搜索以及推荐和再训练部24的再训练。
[0075]
返回到图3,画面显示部25是生成用于受理用户的评价的查询画面并向用户显示的处理部。例如,画面显示部25生成用于查询由推荐部23搜索出的数据项目是“容易解释”、“难以解释”、“都可以”的查询画面,并向用户显示。另外,画面显示部25生成用于查询由再训练部24生成的判定模型15是“容易解释”还是“难以解释”的查询画面,并向用户显示。
[0076]
此外,推荐部23、再训练部24在由画面显示部25生成的查询画面上受理用户评价。另外,画面显示部25也能够使查询画面在信息处理装置10的显示部12显示画面,也能够发送至用户终端。
[0077]
输出部26是输出最终判定为容易解释的判定模型15的处理部。例如,在由画面显示部25生成的查询画面上正在显示的判定模型15被判断为“容易解释”的情况下,输出部26将正在显示的判定模型15储存至存储部13,或输出至用户终端,或输出至任意的输出目的地。
[0078]
[具体例]
[0079]
接下来,使用图7至图16,对考虑到用户评价的判定模型15的再训练的具体例进行说明。此处,k=2,γ=1/2,δ=2。
[0080]
(循环第一次)
[0081]
图7是对具体例的循环第一次进行说明的图。如图7所示,对话处理部22将图4所示的训练数据集14代入式(4),执行再训练,从而生成判定模型15“m(x)=x1-2x2-x5+2x
8”。其中,图7所示的“潜在评价”是表示各数据项目的潜在的解释容易度的事项,在具体例中,为了容易明白说明而记载,但在实际的处理中是不明的信息。
[0082]
在该状态下,对话处理部22执行数据项目的用户提示。例如,对于各数据a~数据f,标签与预测值一致,所以对话处理部22判定为所有判定正确。接着,对话处理部22选择预测值正确的数据中的平均评价次数较小的数据,判定为是循环第一次,平均评价次数全部
相等。而且,对话处理部22确定平均评价次数较小的数据中的预测值的绝对值较大的数据a和数据e,并随机选择数据a。
[0083]
之后,对话处理部22确定数据a的各数据项目x1~x8中的判定模型15“m(x)=x1-2x2-x5+2x
8”所包含的“x1、x2、x5、x
8”中的与数据a一致并且权重与标签一致的数据项目x1和数据项目x8。例如,对话处理部22确定判定模型15所包含的“x1、x2、x5、x
8”中的数据a的数据项目设定“1”的数据项目x1和数据项目x8。而且,由于与确定出的数据项目x1对应的判定模型15的权重为“1”,与数据项目x8对应的判定模型15的权重为“2”,均与数据a的标签“正例”一致,所以对话处理部22将数据项目x1以及x8决定为推荐对象。即,对话处理部22推断为数据a由于(有助于)数据项目x1以及x8而被判定为正例。
[0084]
而且,对话处理部22生成显示当前的判定模型15和推荐对象的数据项目的查询画面,并向用户提示。图8是对查询画面例进行说明的图。如图8所示,对话处理部22生成具有表示当前的模型的区域51、受理数据项目的评价的区域52以及数据详细的区域53的查询画面50,并向用户显示。
[0085]
具体而言,对话处理部22在表示当前的模型的区域51显示当前时刻的判定模型15(m(x)),并且显示供选择是否输出模型的按钮。另外,对话处理部22在受理数据项目的评价的区域52显示被决定为推荐对象的“数据项目”,并且显示供选择该数据项目是“容易解释”还是“难以解释”或是“都可以”的按钮等。另外,对话处理部22在数据详细的区域53显示训练数据集14。
[0086]
此外,在该具体例中,对话处理部22针对推荐的数据项目x1,从用户获取“都可以”这个评价,针对数据项目x8,从用户获取“难以解释”这个评价。另外,对于判定模型15“m(x)=x1-2x2-x5+2x
8”,对话处理部22没有从用户受理到“输出模型”的选择,判定为不是容易解释的模型。此外,此处,通过同时查询模型和数据项目两方的例子进行说明,但也能够在询问模型的评价并评价为“难以解释”后,执行数据项目的推荐。
[0087]
(循环2)
[0088]
图9和图10是对具体例的循环第二次进行说明的图。如图9所示,由于数据项目x1和数据项目x8被推荐给用户,所以对话处理部22使评价次数增加1,将每个评价次数变更为“1”。另外,由于数据项目x8被评价为“难以解释”,所以对话处理部22基于“δρ
i”将数据项目x8的惩罚“ρ8”变更为“当前值(1.0)
×
2=2.0”。之后,对话处理部22使用设定了各数据项目xi的惩罚“ρ
i”的值的损失函数,执行判定模型15的再训练,生成判定模型15“m(x)=x1-2x2-x5+2x
7”。
[0089]
而且,对话处理部22更新查询画面50的表示当前的模型的区域51,显示再训练后的判定模型15“m(x)=x1-2x2-x5+2x
7”,查询用户评价。此处,对于判定模型15,对话处理部22没有从用户受理到“输出模型”的选择,判定为不是容易解释的模型。
[0090]
在再训练后的模型难以解释的情况下,如图10所示,对话处理部22执行平均评价次数的更新。具体而言,对于数据a,在存在于判定模型15的数据项目“x
1”、“x
2”、“x
5”、“x
7”中的与数据a吻合的两个数据项目x1和x7中对数据项目x1用户评价完毕,所以对话处理部22将平均评价次数计算为“1/2=0.5”并设定。此外,吻合是指在判定模型15中登场的数据项目中的在数据a中设定“1”的数据项目。
[0091]
同样地,对于数据b,在存在于判定模型15的数据项目“x
1”、“x
2”、“x
5”、“x
7”中的与
数据b吻合的三个数据项目x1和x5和x7中的对数据项目x1用户评价完毕,所以对话处理部22将平均评价次数计算为“1/3=0.33”并设定。
[0092]
另外,对于数据c,存在于判定模型15的数据项目中的与数据c吻合的两个数据项目x5和x7为未评价,所以对话处理部22将平均评价次数计算为“0/2=0”并设定。同样地,对于数据d,存在于判定模型15的数据项目中的与数据d吻合的两个数据项目x1和x2中对数据项目x1用户评价完毕,所以对话处理部22将平均评价次数计算为“1/2=0.5”并设定。
[0093]
另外,对于数据e,存在于判定模型15的数据项目中的与数据e吻合的两个数据项目x2和x5中均为未评价,所以对话处理部22将平均评价次数计算为“0/2=0”并设定。同样地,对于数据f,存在于判定模型15的数据项目中的与数据f吻合的三个数据项目x2、x5以及x7中均为未评价,所以对话处理部22将平均评价次数计算为“0/2=0”并设定。
[0094]
在该状态下,对话处理部22执行数据项目的用户提示。例如,对于各数据a~数据f,由于标签与预测值一致,所以对话处理部22判定为所有判定正确。接着,对话处理部22确定预测值正确的数据中的平均评价次数较小的数据亦即数据c、数据e、数据f。而且,对话处理部22选择平均评价次数较小的数据中预测值的绝对值较大的数据e。
[0095]
之后,对话处理部22确定数据e的各数据项目x1~x8中的判定模型15“m(x)=x1-2x2-x5+2x
7”所包含的“x1、x2、x5、x
7”中的与数据e吻合,并且标签与权重一致的数据项目x2和数据项目x5。例如,与确定出的数据项目x2对应的判定模型15的权重为“-2”,与数据项目x7对应的判定模型15的权重为“-1”,均与数据e的标签“负例”一致,并且一致的数量在k(=2)以下,所以对话处理部22将数据项目x2以及x5决定为推荐对象。即,对话处理部22推断为数据e由于数据项目x2以及x5而判定为负例。
[0096]
而且,对话处理部22更新查询画面50,并向用户提示显示推荐对象的数据项目的查询画面50。此处,针对推荐的数据项目x2和数据项目x5的每个项目,对话处理部22从用户获取到“难以解释”这个评价。
[0097]
(循环3)
[0098]
图11和图12是对具体例的循环第三次进行说明的图。如图11所示,由于数据项目x2和数据项目x5被推荐给用户,所以对话处理部22使评价次数增加1,将每个评价次数变更为“1”。另外,由于数据项目x2以及x8两方被评价为“难以解释”,所以对话处理部22基于“δρ
i”将数据项目x2的惩罚“ρ2”和数据项目x8的惩罚“ρ8”变更为“当前值(1.0)
×
2=2.0”。之后,对话处理部22使用设定了各数据项目xi的惩罚“ρ
i”的值的损失函数,执行判定模型15的再训练,生成判定模型15“m(x)=x1-2x3-x6+2x
7”。
[0099]
而且,对话处理部22更新查询画面50的表示当前的模型的区域51,显示再训练后的判定模型15“m(x)=x1-2x3-x6+2x
7”来查询用户评价。此处,对于判定模型15,对话处理部22没有从用户受理到“输出模型”的选择,判定为不是容易解释的模型。
[0100]
在再训练后的模型难以解释的情况下,如图12所示,对话处理部22执行平均评价次数的更新。具体而言,对于数据a,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
3”、“x
6”、“x
7”中的与数据a吻合的两个数据项目x1和x7。而且,由于确定出的两个数据项目x1和x7中的数据项目x1包含在到当前为止评价完毕的数据项目x1、x8、x2、x5中,所以对话处理部22将平均评价次数计算为“1/2=0.5”,并在数据a中设定。
[0101]
同样地,对于数据b,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
3”、“x
6”、“x
7”中的与数据b吻合的三个数据项目x1、x3以及x7。而且,由于确定出的三个数据项目x1、x3以及x7中的数据项目x1包含在到当前为止评价完毕的数据项目x1、x8、x2、x5中,所以对话处理部22将平均评价次数计算为“1/3=0.33”,并在数据b中设定。
[0102]
另外,对于数据c,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
3”、“x
6”、“x
7”中的与数据c吻合的两个数据项目x6和x7。而且,由于它们不包含在到当前为止评价完毕的数据项目x1、x8、x2、x5中,所以对话处理部22将平均评价次数计算为“0/2=0”,并在数据c中设定。
[0103]
另外,对数据d,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
3”、“x
6”、“x
7”中的与数据d吻合的两个数据项目x1和x3。而且,由于确定出的两个数据项目x1和x3中的数据项目x1包含在到当前为止评价完毕的数据项目x1、x8、x2、x5中,所以对话处理部22将平均评价次数计算为“1/2=0.5”,并在数据d中设定。
[0104]
另外,对于数据e,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
3”、“x
6”、“x
7”中的与数据e吻合的两个数据项目x3和x6。而且,由于它们不包含在到当前为止评价完毕的数据项目x1、x8、x2、x5中,所以对话处理部22将平均评价次数计算为“0/2=0”,并在数据e中设定。
[0105]
另外,对于数据f,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
3”、“x
6”、“x
7”中的与数据f吻合的三个数据项目x3、x6以及x7。而且,由于它们不包含在到当前为止评价完毕的数据项目x1、x8、x2、x5中,所以对话处理部22将平均评价次数计算为“0/3=0”,并在数据f中设定。
[0106]
在该状态下,对话处理部22执行数据项目的用户提示。例如,对于各数据a~数据f,标签与预测值一致,对话处理部22判定为所有的判定正确。接着,对话处理部22确定预测值正确的数据中的平均评价次数较小的数据亦即数据c、数据e、数据f。而且,对话处理部22选择平均评价次数较小的数据中的预测值的绝对值较大的数据e。
[0107]
之后,对话处理部22判定数据e的各数据项目x1~x8中的模型15“m(x)=x1-2x3-x6+2x
7”所包含的“x1、x3、x6、x
7”中的与数据e吻合并且标签与权重一致的数据项目x3和数据项目x6。例如,与确定出的数据项目x3对应的判定模型15的权重为“-2”,与数据项目x6对应的判定模型15的权重为“-1”,均与数据e的标签“负例”一致,并且一致的数量在k(=2)以下,所以对话处理部22将数据项目x3以及x6决定为推荐对象。即,对话处理部22推断为数据e由于数据项目x3以及x6而被判定为负例。
[0108]
而且,对话处理部22更新查询画面50,向用户提示显示推荐对象的数据项目的查询画面。此处,对于推荐的数据项目x3,对话处理部22从用户获取“难以解释”这个评价,对于数据项目x6,从用户获取“都可以”这个评价。
[0109]
(循环4)
[0110]
图13和图14是对具体例的循环第四次进行说明的图。如图13所示,由于数据项目x3和数据项目x6被推荐给用户,所以对话处理部22使评价次数增加1,将每个评价次数变更为“1”。另外,由于数据项目x3被评价为“难以解释”,所以对话处理部22基于“δρ
i”将数据项目x3的惩罚“ρ3”变更为“当前值(1.0)
×
2=2.0”。之后,对话处理部22使用设定了各数据项目xi的惩罚“ρ
i”的值的损失函数来执行判定模型15的再训练,生成判定模型15“m(x)=x1-2x4-x6+2x
7”。
[0111]
而且,对话处理部22更新查询画面50的表示当前的模型的区域51,显示再训练后的判定模型15“m(x)=x1-2x4-x6+2x
7”来查询用户评价。此处,对于判定模型15,对话处理部22没有从用户受理到“输出模型”的选择,判定为不是容易解释的模型。
[0112]
在再训练后的模型难以解释的情况下,如图14所示,对话处理部22执行平均评价次数的更新。具体而言,对于数据a,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
4”、“x
6”、“x
7”中的与数据a吻合的两个数据项目x1和x7。而且,由于确定出的两个数据项目x1和x7中数据项目x1包含在到当前为止评价完毕的数据项目x1、x8、x2、x5、x3、x6中,所以对话处理部22将平均评价次数计算为“1/2=0.5”,并在数据a中设定。
[0113]
同样地,对于数据b,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
4”、“x
6”、“x
7”中的与数据b吻合的三个数据项目x1、x4以及x7。而且,由于确定出的三个数据项目x1、x4以及x7中的数据项目x1包含在到当前为止评价完毕的数据项目x1、x8、x2、x5、x3、x6中,所以对话处理部22将平均评价次数计算为“1/3=0.33”,并在数据b中设定。
[0114]
另外,对于数据c,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
4”、“x
6”、“x
7”中的与数据c吻合的两个数据项目x6和x7。而且,由于确定出的两个数据项目x6和x7中的数据项目x6包含在到当前为止评价完毕的数据项目x1、x8、x2、x5、x3、x6中,所以对话处理部22将平均评价次数计算为“1/2=0.5”,并在数据c中设定。
[0115]
另外,对于数据d,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
4”、“x
6”、“x
7”中的与数据d吻合的两个数据项目x1和x4。而且,由于确定出的两个数据项目x1和x4中的数据项目x1包含在到当前为止评价完毕的数据项目x1、x8、x2、x5、x3、x6中,所以对话处理部22将平均评价次数计算为“1/2=0.5”,并在数据d中设定。
[0116]
另外,对于数据e,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
4”、“x
6”、“x
7”中的与数据e吻合的两个数据项目x4、x6。而且,由于确定出的两个数据项目x4、x6中的数据项目x6包含在到当前为止评价完毕的数据项目x1、x8、x2、x5、x3、x6中,所以对话处理部22将平均评价次数计算为“1/2=0.5”,并在数据e中设定。
[0117]
另外,对于数据f,对话处理部22确定存在于判定模型15的数据项目“x
1”、“x
4”、“x
6”、“x
7”中的与数据f吻合的三个数据项目x4、x6、x7。而且,由于确定出的三个数据项目x4、x6、x7中的数据项目x6包含在到当前为止评价完毕的数据项目x1、x8、x2、x5、x3、x6中,所以对话处理部22将平均评价次数计算为“1/3=0.33”,并在数据e中设定。
[0118]
在该状态下,对话处理部22执行数据项目的用户提示。例如,由于各数据a~数据f标签与预测值一致,所以对话处理部22判定为所有的判定正确。接着,对话处理部22确定预测值正确的数据中的平均评价次数较小的数据亦即数据b、数据f。而且,由于平均评价次数较小的数据b、数据f的预测值的绝对值相等,所以对话处理部22随机选择数据b。
[0119]
之后,对话处理部22确定数据b的各数据项目x1~x8中的判定模型15“m(x)=x1-2x4-x6+2x
7”所包含的“x1、x4、x6、x
7”中与数据b吻合并且标签与权重一致的数据项目x1、x7。例如,与确定出的数据项目x1对应的判定模型15的权重为“1”,与数据项目x4对应的判定模型15的权重为“-2”,与数据项目x7对应的判定模型15的权重为“2”,对话处理部22确定这些中与数据b的标签“正例”一致的数据项目x1和x7。而且,由于确定出的数据项目的数量在k(=2)以下,所以对话处理部22将数据项目x1以及x7决定为推荐对象。即,对话处理部22推断为数据b由于数据项目x1以及x7而被判定为正例。
[0120]
而且,对话处理部22更新查询画面50,向用户提示显示推荐对象的数据项目的查询画面50。此处,对于推荐的数据项目x1,对话处理部22从用户获取到“都可以”这个评价,对于数据项目x7,从用户获取到“容易解释”这个评价。
[0121]
(循环5)
[0122]
图15和图16是对具体例的循环第五次进行说明的图。如图15所示,由于数据项目x1和数据项目x7被推荐给用户,所以对话处理部22使评价次数增加1,将每个评价次数变更为“2”和“1”。另外,由于数据项目x7被评价为“容易解释”,所以对话处理部22基于“γρ
i”将数据项目x7的惩罚“ρ7”变更为“当前值(1.0)
×
1/2=0.5”。之后,对话处理部22使用设定了各数据项目xi的惩罚“ρ
i”的值的损失函数,执行判定模型15的再训练,生成判定模型15“m(x)=x1-2.5x4-x6+3x
7”。
[0123]
之后,如图16所示,对话处理部22更新查询画面50的表示当前的模型的区域51,显示再训练后的判定模型15“m(x)=x1-2.5x4-x6+3x
7”来查询用户评价。此处,对于判定模型15,对话处理部22从用户受理到“输出模型”的选择,所以判定为生成容易解释的模型,输出当前的判定模型15“m(x)=x1-2.5x4-x6+3x
7”。此外,通过与循环1~循环4同样的方法更新图16所示的各平均评价次数。
[0124]
[处理的流程]
[0125]
接下来,对上述的模型生成的处理进行说明。图17是表示处理的流程的流程图。如图17所示,训练部21执行模型(判定模型)的训练,并储存于存储部13(s101)。接着,对话处理部22执行用于模型的再训练所使用的惩罚更新的系数设定、推荐的数据项目数的设定等初始化(s102)。
[0126]
而且,对话处理部22选择推荐对象的数据项目,并向用户提示(s103),获取对提示的数据项目的用户评价(s104)。接着,对话处理部22使用反映了用户评价的损失函数来执行模型的再训练(s105)。
[0127]
之后,对话处理部22向用户提示再训练后的模型,并在判定为模型满足用户的条件的情况下(s106:是),输出当前的模型(s107)。另一方面,在判定为模型不满足用户的条件的情况下(s106:否),对话处理部22执行用户评价的获取以及模型的再训练(s108),重复执行s103以后的处理。
[0128]
[效果]
[0129]
如上述那样,信息处理装置10在对人委任“评价有助于模型对某输入的输出的数据项目”这个任务时,能够减少在任务中人必须看到的数据项目数,使任务简单化。另外,信息处理装置10能够根据经由任务的人的评价来测量各数据项目的解释容易度并调整在模型的出现容易度,考虑各数据项目的解释容易度来对模型进行最优化。其结果,信息处理装置10能够以对人来说较少的负担生成解释可能性较高的分类模型。
[0130]
实施例2
[0131]
另外,至此对本发明的实施例进行了说明,但本发明除了上述的实施例以外,还可以以各种不同的形态实施。
[0132]
[数值等]
[0133]
在上述实施例所使用的数值例、损失函数、数据项目数、训练数据数等只是一个例子,能够任意地变更。另外,模型的生成所使用的损失函数并不限于式(4)所示的,也能够采
用包括根据“容易解释”或者“难以解释”而变化的权重惩罚的其它目标函数。另外,处理的流程也能够在不矛盾的范围内适当地变更。另外,也能够通过不同的装置实现执行训练部21的装置和执行对话处理部22以及输出部26的装置。
[0134]
[模型等]
[0135]
在上述实施例中,说明了针对经一次训练的模型,反映用户评价来进行再训练的例子,但并不限于此,也能够针对训练前的模型,通过上述实施例的方法反映用户评价来训练。另外,结束线形模型的生成(再训练)的时机并不限于用户评价,在执行了规定次数的情况下等,能够任意设定。另外,在上述实施例中,通过使用损失函数(损失函数)作为目标函数的一个例子的例子进行了说明,但并不限于此,能够采用成本函数等其它目标函数。
[0136]
[系统]
[0137]
对于在上述文书中、附图中示出的处理顺序、控制顺序、具体的名称、包括各种数据或参数的信息,除了特别记载的情况以外,可以任意变更。此外,推荐部23是选择部、提示部以及受理部的一个例子,再训练部24是执行部的一个例子。另外,受理用户评价的处理是用户要件的一个例子,也能够预先定义用户要件,自动受理用户评价。
[0138]
另外,图示的各装置的各构成要素是功能概念性的要素,并不一定要求物理性的如图示那样构成。即,各装置的分散、整合的具体方式并不限定于图示内容。换句话说,能够根据各种负荷、使用状况等,以任意单位,对其全部或者一部分进行功能性的或者物理性的分散、整合而构成。
[0139]
并且,在各装置进行的各处理功能其全部或者任意的一部分可以通过cpu以及由该cpu解析执行的程序来实现,或者实现为基于布线逻辑的硬件。
[0140]
[硬件]
[0141]
接下来,对信息处理装置10的硬件构成例进行说明。图18是对硬件构成例进行说明的图。如图18所示,信息处理装置10具有:通信装置10a、hdd(hard disk drive)10b、存储器10c、处理器10d。另外,图19所示的各部通过总线等相互连接。
[0142]
处理器10d从hdd10b等读出执行与图3所示的各处理部同样的处理的程序并展开至存储器10c,从而使执行在图3等中说明的各功能的工序动作。例如,该工序执行与信息处理装置10具有的各处理部同样的功能。具体而言,处理器10d从hdd10b等读出具有与训练部21、对话处理部22、输出部26等同样的功能发程序。而且,处理器10d执行执行与训练部21、对话处理部22、输出部26等同样的处理的工序。
[0143]
这样,信息处理装置10作为通过读出程序并执行而执行模型生成方法的信息处理装置进行动作。另外,信息处理装置10通过利用介质读取装置从记录介质读出上述程序,并执行读出的上述程序,也能够实现与上述的实施例同样的功能。此外,在该其它实施例中所说的程序并不限于由信息处理装置10执行。例如,在其它计算机或者服务器执行程序的情况下、它们配合执行程序的情况下,也能够同样地应用本发明。
[0144]
附图标记的说明
[0145]
10 信息处理装置
[0146]
11 通信部
[0147]
12 显示部
[0148]
13 存储部
[0149]
14 训练数据集
[0150]
15 判定模型
[0151]
20 控制部
[0152]
21 训练部
[0153]
22 对话处理部
[0154]
23 推荐部
[0155]
24 再训练部
[0156]
25 画面显示部
[0157]
26 输出部
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1