(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022181786
(43)【公開日】2022-12-08
(54)【発明の名称】情報処理装置、および情報処理プログラム
(51)【国際特許分類】
G06Q 50/10 20120101AFI20221201BHJP
G06N 20/00 20190101ALI20221201BHJP
【FI】
G06Q50/10
G06N20/00
【審査請求】未請求
【請求項の数】10
【出願形態】OL
(21)【出願番号】P 2021088947
(22)【出願日】2021-05-27
(71)【出願人】
【識別番号】000001270
【氏名又は名称】コニカミノルタ株式会社
(74)【代理人】
【識別番号】110000671
【氏名又は名称】八田国際特許業務法人
(72)【発明者】
【氏名】小幡 朋和
【テーマコード(参考)】
5L049
【Fターム(参考)】
5L049CC11
(57)【要約】
【課題】サービスの利用者全体に対しても、個々の利用者に対しても、急激な変化とならないように情報を提供できる情報処理装を提供する。
【解決手段】入力された入力情報に基づき、複数の出力情報を生成する情報生成部11と、情報生成部11から複数の出力情報を取得し、少なくとも1つの出力情報を出力する情報出力部12と、情報出力部12から出力される出力情報を段階的に更新する情報管理部13と、を有する情報処理装置100。
【選択図】
図4
【特許請求の範囲】
【請求項1】
入力された入力情報に基づき、複数の出力情報を生成する情報生成部と、
前記情報生成部から複数の前記出力情報を取得し、少なくとも1つの前記出力情報を出力する情報出力部と、
前記情報出力部から出力される前記出力情報を段階的に更新する情報管理部と、
を有する情報処理装置。
【請求項2】
前記情報生成部は、少なくとも一つの前記入力情報に対して第1情報および第2情報を生成し、
前記情報管理部は、前記情報出力部から出力される前記出力情報を、前記第1情報から前記第2情報へ更新する、請求項1に記載の情報処理装置。
【請求項3】
前記情報生成部は、機械学習モデルを有し、
前記機械学習モデルが更新された場合に、前記入力情報として入力された入力データに対して、更新前の前記機械学習モデルによって処理されて得られた出力データを前記第1情報とし、更新後の前記機械学習モデルによって処理されて得られた出力データを前記第2情報として生成する、請求項2に記載の情報処理装置。
【請求項4】
前記情報管理部は、前記第1情報から前記第2情報へ、所定の割合で変化させて更新する、請求項2または3に記載の情報処理装置。
【請求項5】
前記情報管理部は、重み付けを変化させつつ、前記第1情報と前記第2情報の加重平均を算出して、算出結果を前記出力情報とする、請求項2または3に記載の情報処理装置。
【請求項6】
入力された入力情報に基づき、複数の出力情報を生成する段階(a)と、
生成された複数の前記出力情報の中から、出力する前記出力情報を段階的に更新しつつ、少なくとも1つの前記出力情報を出力する段階(b)と、
を有する情報処理プログラム。
【請求項7】
前記段階(a)は、少なくとも一つの前記入力情報に対して第1情報および第2情報を生成し、
前記段階(b)は、前記出力情報を、前記第1情報から前記第2情報へ更新する、請求項6に記載の情報処理プログラム。
【請求項8】
前記段階(a)は、機械学習モデルによる処理を実行し、
前記機械学習モデルが更新された場合に、前記入力情報として入力された入力データに対して、更新前の前記機械学習モデルによって処理されて得られた出力データを前記第1情報とし、更新後の前記機械学習モデルによって処理されて得られた出力データを前記第2情報として生成する、請求項7に記載の情報処理プログラム。
【請求項9】
前記段階(b)は、前記第1情報から前記第2情報へ、所定の割合で変化させて更新する、請求項7または8に記載の情報処理プログラム。
【請求項10】
前記段階(b)は、重み付けを変化させつつ、前記第1情報と前記第2情報の加重平均を算出して、算出結果を前記出力情報とする、請求項7または8に記載の情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、および情報処理プログラムに関する。
【背景技術】
【0002】
様々なサービスを実施する事業者(以下、単に事業者ともいう)は、利用者に対してサービスに必要な情報を提供する。提供される情報の中には、たとえば、利用者が使用するソフトウェア(プログラム)や、データ、作業手順など、また、事業者が作成した機械学習モデルによる処理結果などがある。
【0003】
これらの情報は、事業者側から適宜、更新されて利用者に提供される。更新後の情報は、一度に多くの利用者に提供してしまうと、情報に不具合があった場合、その影響が大きくなる。そこで、不具合があった場合の影響を少なくするために、更新後の情報は、一部の利用者に先行して提供し、そこで不具合が検知されなければ、または検知された不具合を直してから、他の利用者に提供することがある。このような2段階または多段階の情報の提供は、カナリアリリースと称されている(特許文献1、非特許文献1など)。
【先行技術文献】
【特許文献】
【0004】
【非特許文献】
【0005】
【非特許文献1】[3分でわかる カナリアリリース]中山秀夫、日経xTECH、2019年8月21日リリース、URL=https://xtech.nikkei.com/atcl/nxt/keyword/18/00002/081900087/
【発明の概要】
【発明が解決しようとする課題】
【0006】
カナリアリリースは、利用者全体を見ると、情報の変化により影響を受ける利用者の割合が段階的に変化することになる。このため、カナリアリリースは、サービスの利用者全体に対しては、緩やかな変化ということになる。
【0007】
しかし、更新後の情報が先行して提供された個々の利用者にとっては、これまでとは異なる情報を受け取ることになり、急激な変化になる。
【0008】
そこで、本発明の目的は、サービスの利用者全体に対しても、個々の利用者に対しても、急激な変化とならないように。情報を提供できる情報処理装置、および情報処理プログラムを提供することである。
【課題を解決するための手段】
【0009】
本発明の上記目的は、下記の手段によって達成される。
【0010】
(1)入力された入力情報に基づき、複数の出力情報を生成する情報生成部と、
前記情報生成部から複数の前記出力情報を取得し、少なくとも1つの前記出力情報を出力する情報出力部と、
前記情報出力部から出力される前記出力情報を段階的に更新する情報管理部と、
を有する情報処理装置。
【0011】
(2)前記情報生成部は、少なくとも一つの前記入力情報に対して第1情報および第2情報を生成し、
前記情報管理部は、前記情報出力部から出力される前記出力情報を、前記第1情報から前記第2情報へ更新する、上記(1)に記載の情報処理装置。
【0012】
(3)前記情報生成部は、機械学習モデルを有し、
前記機械学習モデルが更新された場合に、前記入力情報として入力された入力データに対して、更新前の前記機械学習モデルによって処理されて得られた出力データを前記第1情報とし、更新後の前記機械学習モデルによって処理されて得られた出力データを前記第2情報として生成する、上記(2)に記載の情報処理装置。
【0013】
(4)前記情報管理部は、前記第1情報から前記第2情報へ、所定の割合で変化させて更新する、上記(2)または(3)に記載の情報処理装置。
【0014】
(5)前記情報管理部は、重み付けを変化させつつ、前記第1情報と前記第2情報の加重平均を算出して、算出結果を前記出力情報とする、上記(2)または(3)に記載の情報処理装置。
【0015】
(6)入力された入力情報に基づき、複数の出力情報を生成する段階(a)と、
生成された複数の前記出力情報の中から、出力する前記出力情報を段階的に更新しつつ、少なくとも1つの前記出力情報を出力する段階(b)と、
を有する情報処理プログラム。
【0016】
(7)前記段階(a)は、少なくとも一つの前記入力情報に対して第1情報および第2情報を生成し、
前記段階(b)は、前記出力情報を、前記第1情報から前記第2情報へ更新する、上記(6)に記載の情報処理プログラム。
【0017】
(8)前記段階(a)は、機械学習モデルによる処理を実行し、
前記機械学習モデルが更新された場合に、前記入力情報として入力された入力データに対して、更新前の前記機械学習モデルによって処理されて得られた出力データを前記第1情報とし、更新後の前記機械学習モデルによって処理されて得られた出力データを前記第2情報として生成する、上記(7)に記載の情報処理プログラム。
【0018】
(9)前記段階(b)は、前記第1情報から前記第2情報へ、所定の割合で変化させて更新する、上記(7)または(8)に記載の情報処理プログラム。
【0019】
(10)前記段階(b)は、重み付けを変化させつつ、前記第1情報と前記第2情報の加重平均を算出して、算出結果を前記出力情報とする、上記(7)または(8)に記載の情報処理プログラム。
【発明の効果】
【0020】
本発明は、個々の利用者に対して情報を提供する際に、生成された複数の情報の中から少なくとも一つの情報を出力することとし、この出力する情報を段階的に更新することとした。これにより、本発明は、提供される情報が変化した場合に、情報の提供を受ける利用者に対して急激な変化とならないようにできる。
【図面の簡単な説明】
【0021】
【
図1】情報提供システムを説明するための概略図である。
【
図2】情報処理装置のハードウェア構成の一例を示すブロック図である。
【
図3】ユーザー端末のハードウェアの一例を示すブロック図である。
【
図4】情報処理装置の機能を説明するためのブロック図である。
【
図5】所定の割合で情報を更新する場合の手順を示すフローチャートである。
【
図6】所定の割合で情報を更新する場合の更新例を説明するためのデータ図である。
【
図7】加重平均により情報を更新する場合の手順を示すフローチャートである。
【
図8】加重平均により情報を更新する場合の更新例を説明するためのデータ図である。
【
図9】更新処理の効果を説明するための概念図である。
【発明を実施するための形態】
【0022】
以下、図面を参照して、本発明の実施形態を詳細に説明する。なお、図面の説明において同一の要素には同一の符号を付し、重複する説明を省略する。また、図面の寸法比率は、説明の都合上誇張されており、実際の比率とは異なる場合がある。
【0023】
(情報提供システム)
まず、情報を提供する事業者と、情報を受け取る利用者とを接続する情報提供システムについて説明する。
図1は、情報提供システムを説明するための概略図である。
【0024】
図1に示すように、このシステムは、情報を提供する事業者の情報処理装置100と、情報の提供を受ける利用者(ユーザー)のユーザー端末300(301~303)がネットワーク200によって接続されている。
【0025】
(情報処理装置)
情報処理装置100は、コンピューターである。情報処理装置100は、様々なソフトウェア(プログラム)や、データ、作業手順(マニュアル)、また、人工知能(AI)による機械学習モデルの処理結果などを情報としてユーザー端末300へ提供する。
【0026】
図2は、情報処理装置100のハードウェア構成の一例を示すブロック図である。
【0027】
情報処理装置100は、
図2に示すように、CPU(Central Processing Unit)110、ROM(Read Only Memory)120、RAM(Random Access Memory)130、ストレージ140、通信インターフェース150、および操作表示部160を有する。各構成は、バス190を介して相互に通信可能に接続されている。
【0028】
CPU110は、ROM120やストレージ140に記録されているプログラムを実行することで、後述する各部の機能を実行する。
【0029】
ROM120は、各種プログラムや各種データを記憶する。
【0030】
RAM130は、作業領域として一時的にプログラムやデータを記憶する。
【0031】
ストレージ140は、オペレーティングシステムを含む各種プログラムや、各種データを記憶する。本実施形態においてストレージ140は、特に、後述する手順に沿って作成された情報更新のための情報処理プログラムを記憶している。
【0032】
ストレージ140は、情報処理装置100の場合、主に、HDD(Hard Disk Drive)などの大容量の記憶媒体が使用される。また、ストレージ140は、eMMC(embedded Multi Media Card)やSSD(Solid State Drive)などの半導体記憶媒体が、HDDとともに、またはHDDに代えて用いられてもよい。
【0033】
通信インターフェース150は、ユーザー端末300との間のデータの送受信(通信)を実行する。通信インターフェース150は、接続されたネットワーク200と通信するために、たとえば、イーサネット(登録商標)、SATA、PCI Express、USB、IEEE1394などの規格によるネットワークインターフェース、Bluetooth(登録商標)、IEEE802.11などの無線通信インターフェースなどが使用される。
【0034】
操作表示部160は、たとえば、タッチパネル式のディスプレイであり、各種情報を表示するとともに、各種入力を受け付ける。また、操作表示部160としては、キーボードやマウスなどの入力機器とモニターなどが接続されていてもよい。
【0035】
(ネットワーク)
ネットワーク200は、上述した通信規格のいずれかに基づいて、情報処理装置100とユーザー端末300を接続する。したがって、ネットワーク200は有線でもよし、無線でもよい。また、ネットワーク200は、インターネットなど広域のネットワークであってもよい。
【0036】
(ユーザー端末)
ユーザー端末300は、たとえば、スマートフォンやタブレットコンピューターなどのユーザーが携帯可能な携帯端末301、可搬式のノートコンピューター302、固定型のデスクトップコンピューター303などである。
【0037】
携帯端末301は、たとえば、ユーザーが個別に携帯し、事業者が提供する情報を受け取る。
【0038】
ノートコンピューター302は、ユーザーが個別に、または複数のユーザーからなるグループで利用され、事業者が提供する情報を受け取る。
【0039】
デスクトップコンピューター303は、ユーザーが個別に、または複数のユーザーからなるグループで利用され、事業者が提供する情報を受け取る。
【0040】
なお、実施形態の説明において、携帯端末301、ノートコンピューター302、およびデスクトップコンピューター303は、特に区別する必要がない場合、ユーザー端末300と記載する。
【0041】
図3は、ユーザー端末300のハードウェアの一例を示すブロック図である。
【0042】
ユーザー端末300は、コンピューターである。ユーザー端末300は、
図3に示すように、CPU310、ROM320、RAM330、ストレージ140、通信インターフェース350、操作表示部360を有する。各構成は、バス390を介して相互に通信可能に接続されている。これら各部の基本的な構成は、上述した情報処理装置100のコンピューターと同様であるので詳細な説明は省略する。本実施形態において、ユーザー端末300は、主に、情報処理装置100から提供された情報に基づいて、様々な処理を実行し、また、提供された情報を表示する。
【0043】
なお、ユーザー端末300は、
図1において、3台(3種類)示したが、実際のサービスにおいては、より多くのユーザー端末300が使用される。また、使用されるユーザー端末300は、同じ種類であっても良いし、異なる種類であってもよい。
【0044】
(情報処理装置の機能)
次に、情報処理装置100の機能について説明する。
【0045】
図4は、情報処理装置100の機能を説明するためのブロック図である。
【0046】
情報処理装置100は、その機能として、情報生成部11、情報出力部12、および情報管理部13を有する。
【0047】
情報生成部11は、入力された入力情報(入力データ)に基づき、複数の出力情報(出力データ)を生成する。情報生成部11が生成する複数の情報は、たとえば、機械学習モデルなどによって作成される。機械学習モデルが更新されると、同じ入力データであっても、更新前と後とでは、その結果が異なることがある。本実施形態では、更新前の機械学習モデル(旧モデル、以下同様)によって作成された情報を第1情報とし、更新後の機械学習モデル(新モデル、以下同様)によって作成された情報を第2情報とする。したがって、情報生成部11は、少なくとも、旧モデルによる処理結果の第1情報と、新モデルによる処理結果の第2情報とを生成する。
【0048】
なお、情報生成部11は、機械学習モデルに限定されない。情報生成部11は、単純に入力データに対して、何らかの計算を実行して出力データを生成するような処理でもよい。この場合、計算式が変更されることがあると、変更前の算出結果が第1情報、計算式変更後の算出結果が第2情報となる。
【0049】
このような情報生成部11によって生成される情報は、事業者が実施しているサービスによって異なる。
【0050】
情報出力部12は、情報生成部11が生成した複数の情報(第1情報および第2情報)の中から少なくとも一つの情報を出力する。出力先は、複数のユーザー端末300の中の、少なくとも一つのユーザー端末300である。出力先となるユーザー端末300は、事業者側であらかじめ決められている。出力先となるユーザー端末300は、たとえば、従来のカナリアリリース同様に、複数のユーザー端末300の中の一部である。また、出力先となるユーザー端末300は、たとえば、ユーザー側からのリクエストに基づいて決定されてもよい。特にユーザーからのリクエストに基づいて出力先となるユーザー端末300が決定される場合、情報の更新(リリース)は、その特定のユーザー向けにカスタム化された情報であってもよい。なお、カスタム化された情報は、あらかじめ特定のユーザー向けに情報生成部11によって生成される。
【0051】
情報管理部13は、情報生成部11が生成した複数の情報の中から、情報出力部12に出力させる情報を段階的に、第1情報から第2情報となるように更新する。具体的には、たとえば、所定の割合で、複数回に分けて、第1情報から第2情報へ更新する(詳細後述)。また、たとえば、第1情報と第2情報の重み付き平均(加重平均)を、重み付けを変えながら算出し、第1情報が徐々に第2情報となるように更新する(詳細後述)。
【0052】
(情報更新手順)
情報の更新(リリース)の手順について説明する。まず、所定の割合で更新する例について説明する。情報の更新は、CPU110によって、この手順に沿って作成された情報処理プログラムが実行されることで、上述した各部の機能が実施される。
【0053】
図5は、所定の割合で情報を更新する場合の手順を示すフローチャートである。
【0054】
まず、CPU110は、情報生成部11の機能として、入力データ(入力情報)を受信する(S101)。
【0055】
続いて、CPU110は、情報生成部11の機能として、入力データに対して所定の処理を実行して結果を出力する(S102~S105)。ここでは、機械学習モデルが更新(変更)された場合を例に説明する。機械学習モデルの場合、CPU110は、更新後の機械学習モデル(新モデル)による処理を実行し(S102)、その結果を出力データ(出力情報(第2情報))として出力する(S103)。また、CPU110は、更新前の機械学習モデル(旧モデル)による処理を実行し(S104)、その結果を出力データ(出力情報(第1情報))として出力する(S105)。本実施形態では、入力情報に対して複数の出力情報が生成される。入力情報は、一つでもよいし、複数でもよく、機械学習モデルの処理内容によって異なる。すなわち、複数の出力情報は、一つの入力情報から生成される場合もあるし、複数の入力情報から生成される場合もある。
【0056】
続いて、CPU110は、情報管理部13の機能として、生成された新、旧モデルの出力データの中から、所定の割合に基づき、新モデルの出力データと旧モデルの出力データのどちらを出力させるか判断する(S106)。
【0057】
ここで所定の割合は、パラメーターとして設定される。パラメーターは、たとえば、日数、減少率、増加率などであり、実施されるサービスに合わせて設定される。設定されたパラメーターは、ストレージ140(記憶部)に記憶される。具体的には、たとえば、パラメーターとして日数が設定される場合、同時に一度に更新する出力データの数(更新割合)も設定される。CPU110は、パラメーターをストレージ140から読み出し(RAM130に読み出しておいてもよい)、設定された日数が経過したなら、新、旧モデルの出力データの中から、新モデルの出力データの数が、設定されている更新割合となるように、出力データを選択する。このとき、選択される新モデルの出力データは、たとえば、各出力データの出力番号順に(昇番、降番、一つおき、二つおきなど)、更新割合の数だけ選択される。
【0058】
なお、パラメーターは、たとえば、減少率または増加率などでもよい。減少率や増加率が設定された場合、旧モデルの出力データに対して新モデルの出力データが、あらかじめ決められた減少率または増加率に到達している出力データを選択する。
【0059】
続いて、CPU110は、情報出力部12の機能として、選択された出力データをユーザー端末300へ出力する(S107)。出力先となるユーザー端末300は、既に説明したように、あらかじめ決められている。
【0060】
続いて、CPU110は、情報管理部13の機能として、出力データが全て新モデルの出力データに変わったか否かを判断する(S108)。ここで、出力データが全て新モデルの出力データに変わっていなければ(S108:NO)、S101のステップへ戻り、一連の処理が継続される。一方、全て新モデルの出力データに変わっていれば(S108:YES)、CPU110は、処理を終了(エンド)する。
【0061】
図6は、所定の割合で情報を更新する場合の更新例を説明するためのデータ図である。
【0062】
図6に示した更新例は、機械学習モデルが更新された際の情報処理である。機械学習モデルは、1つの入力データに対して、1から4の数値が出力データとして出力される。
図6中、更新前の機械学習モデルによる出力データは新モデル値と称し、更新後の機械学習モデルによる出力データは旧モデル値と称する。また、機械学習モデルは、1度の処理で15個の出力データ(出力番号1~15)が生成される。
【0063】
この更新例は、パラメーターとして、一回(1日分)のごとに20%ずつ更新する。また、更新は、出力番号4番ごとに更新する。
図6に示すように、1日目は、15個の出力データのうち、20%分が新モデル値に更新される。ここでは、出力番号4、8、および12の実出力が新モデル値となる。2日目は、15個の出力データのうち、40%分(前回更新分+20%)が新モデル値に更新される。ここでは、出力番号4番ごとに更新することとしたので、その中間の番号を更新することとした。したがって、出力番号2、6、10、および14の実出力が新モデル値となる。そして、最後の更新日である5日目は、15個の出力データの全て(100%)が新モデル値に更新される。更新間隔は、たとえば、数日おき、または数週おき、数月おきなど、サービスの内容に合わせて任意に決定すればよい。
【0064】
次に、他の情報更新の手順として、加重平均を用いた例について説明する。
図7は、加重平均により情報を更新する場合の手順を示すフローチャートである。
【0065】
まず、CPU110は、
図5に示したS101からS105のステップと同様に、出力データの生成を実行する。
【0066】
続いて、CPU110は、旧モデルの出力データと新モデルの出力データとの加重平均を算出する(S116)。加重平均の算出式は、(w1x1+w2x2)/(w1+w2)である。ただし、w1はx1の重み(重要度)、w2はx2の重みである。本実施形態では、加重平均を算出する際の重みは、第1情報から第2情報に変化するように設定する。
【0067】
図8は、加重平均により情報を更新する場合の更新例を説明するためのデータ図である。
図8の例は、
図6の例と同様に、機械学習モデルが更新された場合である。そして、
図8の例は、旧モデル値(第1情報)から段階的に新モデル値(第2情報)に変化するように重み付けを20%刻みで変化させた場合である。
【0068】
このような例においては、CPU110は、第1回の更新で、重み付けを旧モデル:新モデル=w1:w2=80:20とする。したがって、出力番号1番では、旧モデル値がx1=1で、新モデル値がx2=1であるので(80×1+20×1)/(80+20)=1となる。また、出力番号2番では、旧モデル値がx1=2で、新モデル値がx2=(なし)であるので、このような場合は、データなし=0として、(80×1+20×0)/(80+20)=0.8となる。CPU110は、出力番号15番まで、同様に算出する。
【0069】
第2回の更新では、CPU110は、重み付けを旧モデル:新モデル=w1:w2=60:40とする。したがって、出力番号1番では、旧モデル値がx1=1で、新モデル値がx2=1であるので(60×1+40×1)/(60+40)=1となる。また、出力番号2番では、旧モデル値がx1=4で、新モデル値がx2=1であるので、(60×4+40×1)/(60+40)=2.8となる。CPU110は、出力番号15番まで、同様に算出する。
【0070】
そして、最後の第5回の更新では、CPU110は、重み付けを旧モデル:新モデル=w1:w2=0:100とする。したがって、出力番号1番では、旧モデル値がx1=2で、新モデル値がx2=1であるので(0×2+100×1)/(0+100)=1となる。また、出力番号2番では、旧モデル値がx1=2で、新モデル値がx2=1であるので、(0×2+100×1)/(0+100)=1となる。CPU110は、出力番号15番まで、同様に算出する。
【0071】
ここで更新は、
図6と同様に特定期間ごとに行ってもよいが、たとえば、情報処理装置100がユーザー端末300から更新のリクエストを受信するごとに行うこととしてもよい。その場合、情報処理装置100からユーザー端末300へは、全ての更新が終了するまで、更新データが残っていることを通知してもよい。
【0072】
続いて、CPU110は、情報出力部12の機能として、算出された加重平均の値をユーザー端末300へ出力する(S117)。
【0073】
続いて、CPU110は、情報管理部13の機能として、出力データが全て新モデルの出力データに変わったか否かを判断する(S108)。ここで、出力データが全て新モデルの出力データに変わっていなければ(S108:NO)、S101のステップへ戻り、一連の処理が継続される。一方、全て新モデルの出力データに変わっていれば(S108:YES)、CPU110は、処理を終了(エンド)する。
【0074】
(効果)
図9は、本実施形態による情報更新の効果を説明するための概念図である。
【0075】
図9に示すように、従来の更新方法であるカナリアリリース(特許文献1または非特許文献1)は、時間(期間)の経過に伴い、ユーザー全体に対しては、緩やかに更新度が上がる。しかし、カナリアリリースは、個別のユーザーに対しては、リリース期に一気に更新度が上がってしまう。
【0076】
一方、本実実施形態は、時間(期間)の経過に伴い、ユーザー全体に対しても、個別のユーザーに対しても、リリース期において緩やかに更新度が上がる。したがって、本実施形態は、事業者から情報が提供(リリース)される際に、ユーザー全体に対しても、個別のユーザーに対しても、急激な変化とならないようにできる。
【0077】
(適用事例)
次に、本実施形態の適用事例について説明する。
【0078】
(事例1)
事例1は、ヘルスケア分野への適用である。ヘルスケア分野への適用としては、たとえば、複数人の医師が利用する“X線撮像画像をもとにした疾患位置特定モデル”を新モデルに置き換えるケースがある(参考URL=https://www.siemens-healthineers.com/jp/press-room/press-releases/pr-20200629-ai-rad-chest-ct.html)。
【0079】
ヘルスケア分野における従来のカナリアリリースでの課題は、下記のとおりである。
【0080】
(1)カナリアリリースでは、モデル自体が不適だった場合に先行利用した医師数名が間違った判断材料を利用することになる。
【0081】
(2)また、カナリアリリースでは、更新されたモデルによる結果が表示されることになり、個別ユーザー(医師)においては、モデル出力の急激な変化によって違和感を覚える。
【0082】
本実施形態を適用した場合、下記のとおり改善される。
【0083】
(a)本実施形態では、新モデルの検証を段階的に行えるため、新モデルに問題があった場合でも影響範囲が少ない段階で、不具合などを発見できる。
【0084】
(b)また、本実施形態では、個別のユーザーにおいても、モデル出力が緩やかに変化するため、違和感を覚えない。
【0085】
(c)また、本実施形態は、CT(Computed Tomography)、検査結果、MRI(Magnetic Resonance Imaging)検査結果などの医療データを用いた疾患位置特定モデルにも適用可能である。
【0086】
(d)また、本実施形態は、診断用の画像だけでなく、血液検査結果や尿検査結果などの構造化データによる疾患確率予測モデルなど、人口知能(AI)や機械学習などを用いた検査などにも適用可能である。
【0087】
(事例2)
事例2は、行動監視分野への適用である。行動監視分野への適用としては、たとえば、複数箇所に設置されている監視カメラで人物の危険行動を検知するモデルを新しく置き換えるケースがある(参考URL=https://robotstart.info/2020/01/31/mji-sec-ai.html)。
【0088】
行動監視分野における従来のカナリアリリースでの課題は、下記のとおりである。
【0089】
(1)行動監視分野は、それぞれの監視カメラにおいて、動作している環境(明るさ、コントラスト、人までの距離など)が異なる。そのような状況において、カナリアリリースが実行されると、先行して新モデルが適用された監視カメラは、新モデルが適用されていない監視カメラと異なる環境で動作することがある。新モデルとしてリリースされた適用モデルが不適だった場合、適用監視カメラにおいては、危険行動の未検出/誤検出のリスクが上がる。
【0090】
本実施形態を適用した場合、下記のとおり改善される。
【0091】
(a)新モデルの検証を段階的に行えるため、上記のような行動監視分野において、新モデルに対して不適な監視カメラが含まれていても、緩やかに新モデルを適用されることになるため、影響範囲が少ない段階で、不具合を発見できる。
【0092】
(b)また、本実施形態は、危険行動の検出だけでなく、物体検出、人の関節点検出、セグメンテーションにおいても適用可能である。
【0093】
(事例3)
事例3は、事例2同様に監視カメラを用いた見守りシステムへの適用である。見守りシステムへの適用は、たとえば、高齢者施設における見守りセンサーの転倒検知機能をユーザーごとにカスタムするケースがある(参考URL=https://www.konicaminolta.com/jp-ja/care-support/index.html)。
【0094】
見守りシステムにおける従来のカナリアリリースでの課題は、下記のとおりである。
【0095】
(1)見守りシステムでは、見守り対象となる特定の利用者(特定の個人または特定のグループでもよい)に対してカスタム化した機能をリリースしたいが、カナリアリリースは、そのような特定の利用者を対象としたリリースができない。
【0096】
(2)見守りシステムでは、先行して新モデルがリリースされたユーザーに対して、見守りの内容が適さなくなる場合がある。
【0097】
本実施形態を適用した場合、下記のとおり改善される。
【0098】
(a)本実施形態は、見守り対象となる特定の利用者に対して、段階的にリリースが可能になる。
【0099】
例1:これまでの見守り内容から、特定の利用者を対象として一部の判定機能(例えば1日の中の判定)をカスタム化してリリースする場合に、カスタム化した部分を段階的に置き換えて、最終的に全ての機能(一日の中の判定)をカスタム化した機能に置き換えることができる。
【0100】
例2:通常機能が算出した転倒確率とカスタム化した機能が算出した転倒確率との重み付き平均を出力し、カスタム化した機能に更新されるように、重みを徐々に増やして行く。
【0101】
(b)また、本実施形態は、段階的なリリースによって、カスタム化した転倒検知機能適用によるリスクを抑えることができる。
【0102】
(c)また、本実施形態は、転倒判定だけでなく、転落、歩行、座り込み、立ち上がりなど他の行動を検知する機能に対しても適用可能である。なお、これらの判定は、人工知能や機械学習モデルによる判定であってもよい。
【0103】
(事例4)
事例4は、産業機器への適用である。産業機器への適用は、たとえば、特定の金型に対してモデルが最適化されており、経年劣化によって特定の金型への適用モデルを新モデルへと置き換える必要があるケースがある(参考URL=https://ai.brainpad.co.jp/case-study/194/)。
【0104】
産業機器における従来のカナリアリリースでの課題は、下記のとおりである。
【0105】
(1)カナリアリリースは、特定の金型一つに対して適用することができない。
【0106】
本実施形態を適用した場合、下記のとおり改善される。
【0107】
(a)本実施形態は、特定の金型に対して段階的なリリースが可能になる。
【0108】
(b)また、本実施形態は、段階的なリリースによって、劣化金型に対する新モデルの適用のリスクを抑えることができる。
【0109】
(c)また、本実施形態は、従来のシステムで機械学習モデルを含んでいない場合に、新たに機械学習モデルに置き換える際にも適用できる。このような場合、本実施形態では、機械学習モデルを含まない従来システムでの値から、機械学習モデルによる値に徐々に置き換えることができる。特に、本実施形態は、システムやモデルの出力結果を比較しているだけなので、新旧でシステムやモデルの内部の構成が異なっていても適用できる。
【0110】
(d)産業機器の検査としては、金型だけでなく、様々な工場で生産する物品、たとえば、食品などの検査工程における異常検知などにも適用可能である。
【0111】
以上本発明を適用した実施形態とそれを適用する事例について説明したが、本発明は、このような実施形態や事例に限定されない。
【0112】
上述した実施形態や事例は、新、旧の機械学習モデルによる処理の結果を出力情報として更新する場合を例に説明した。しかし、本発明は、機械学習モデルによる処理結果に限らず、事業者から様々なソフトウェア(プログラム)やデータ、または作業手順(マニュアル)などを提供し、それらを更新する際にも適用可能である。
【0113】
また、本実施形態では、情報生成部11を情報処理装置100内に配置している。しかし、本発明は、これに限定されず、たとえば、機械学習モデルを実施するコンピューターを別途用意して、そのコンピューターによる機械学習モデルによる処理結果を複数の出力情報として受け取ることとしてもよい。この場合、別途用意されたコンピューターが情報生成部11となる。
【0114】
また、本発明に係る情報処理プログラムは、専用のハードウェア回路によって実現することも可能である。また、情報処理プログラムは、USB(Universal Serial Bus)メモリーやDVD(Digital Versatile Disc)-ROM(Read Only Memory)などのコンピューター読み取り可能な記録媒体によって提供したり、記録媒体によらず、インターネットなどのネットワーク200を介してオンラインで提供したりすることも可能である。オンラインで提供される場合、この情報処理プログラムは、ネットワーク200に接続されたコンピューター内の磁気ディスクなどの記録媒体(ストレージ)に記録される。
【0115】
また、本発明は、特許請求の範囲に記載された構成に基づき様々な改変が可能であり、それらについても本発明の範疇である。
【符号の説明】
【0116】
11 情報生成部、
12 情報出力部、
13 情報管理部、
100 情報処理装置、
110 CPU、
150 通信インターフェース、
160 操作表示部、
200 ネットワーク、
300 ユーザー端末。