以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された内容を不当に限定するものではない。また本実施形態で説明される構成の全てが必須構成要件であるとは限らない。
1.概要
電子機器において用いられる消耗品の需要予測を行う手法が種々開示されている。電子機器は、例えば図1及び図13を用いて後述するプリンター20である。或いは電子機器は、スキャナー、ファクシミリ装置又はコピー機であってもよい。電子機器は、複数の機能を有する複合機(MFP:Multifunction Peripheral)であってもよく、印刷機能を有する複合機もプリンター20の一例である。消耗品とは、電子機器の動作によって量又は数が減少する消費材であり、例えばインクジェットプリンターにおけるインクや、レーザープリンターにおけるトナーである。ただし、消耗品は、電子機器の動作によって耐久性が低下する部材であって、耐久性の低下を抑制するための制御の対象となる部材、或いは耐久性の低下に伴う交換が必要となる部材に拡張して考えてもよい。以下、電子機器がインクジェットプリンターであり、消耗品がインクである例を中心に説明を行うが、電子機器及び消耗品はこれに限定されず、種々の変形実施が可能である。
消耗品の需要予測結果は、電子機器に関する種々の処理に利用可能である。例えば、インクの需要予測の結果に基づいて、インクの消費量を制御することが可能になる。例えば図1を用いて後述するように、印刷画像データの印刷に用いるインクの量を少なくすることによって、印刷に要するコストを低減できる。或いは図13を用いて後述するように、インクの需要予測の結果に基づいて、インクカートリッジ等の自動発注処理を行うことによって、ユーザーの利便性向上が可能になる。
ただし、これらの処理を適切に行うためには、需要予測の精度が高い必要がある。予測精度が低い場合、例えば、インク消費量の抑制が必要である場面において抑制不要であると誤判定することによって、適切にコストを低減できないおそれがある。或いは、インク消費量の抑制が不要な場面において抑制が必要であると誤判定することによって、無駄に印刷品質を落としてしまうおそれがある。また予測精度が低い場合、インクが不足するタイミングの予測を誤ってしまう。そのため、インクの発注が遅れることによって印刷がストップしてしまう、或いは、在庫があるのに追加の発注をしてしまうといったおそれがある。
特許文献1等の従来手法においては、消耗品の需要予測を高い精度で行うことが難しかった。例えば特許文献1の手法は、ユーザーのスケジュールに基づいて印刷枚数、インク消費量を予測した後、予測したインク消費量に対して、イベントに基づく補正を行う。特許文献1の手法は、各ユーザーについて、過去の使用履歴がそのまま予測期間におけるインク使用量であるとの推定を行う。しかし、ユーザーのインク消費量は状況に応じて変化するものであり、履歴期間と同じ量が消費されるとは限らない。特許文献1においては、イベント情報を用いることによってインク消費量を補正するものの、当該補正を行うためにはイベント種類と、各イベントについての補正量を対応付けたテーブルを作成、記憶しておく必要がある。また、柔軟な補正を行うためには、イベントの種類を増やしたり、1つのイベントについて複数の補正値を対応付けたりといった必要が生じる。即ち、特許文献1の手法は、インク消費量の予測精度が十分ではなく、且つ、精度向上を図る場合、テーブル作成等に関するユーザー負担が膨大となる。
そこで本実施形態においては、機械学習を用いて消耗品の需要予測を行う。機械学習を用いることによって、将来的なインク消費量を精度よく推定することが可能になる。また、プリンター20における具体的な稼働履歴、具体的にはインク消費量の履歴を用いた機械学習を繰り返すことによって、学習結果である学習済モデルを逐次更新していくことも可能である。即ち、ユーザー負担を過剰に増大させることなく、高精度の需要予測を実現することが可能である。
2.消費制御システム
まず、需要予測結果を用いたシステムとして、消費制御システム1について説明する。消費制御システム1とは、消耗品の消費量を制御するシステムであって、具体的には消耗品の消費量を抑制することによって、消耗品に関するコストを目標コスト内に抑制するためのシステムである。
以下、システム構成例を説明した後、学習装置100と情報処理装置200における処理を詳細に説明する。学習装置100は学習処理を行う。学習処理とは、訓練データに基づく機械学習を行うことによって、学習結果を取得する処理である。学習結果とは、具体的には学習済モデルである。情報処理装置200は推論処理を行う。推論処理とは、学習処理によって生成された学習済モデルを用いて、入力に基づく何らかの推論結果を出力する処理である。ここでの推論結果は、インクの需要予測結果である。また需要予測結果を用いた消費量制御、具体的にはコスト予測処理及びコスト低減処理についても説明する。
2.1 システム構成
図1は、本実施形態にかかる消費制御システム1の構成を示す図である。消費制御システム1は、印刷システム10と、プリンター20と、学習装置100と、情報処理装置200を含む。
印刷システム10は、ユーザー1による操作を受け付けることによって、プリンター20に対して印刷画像データを出力する。印刷システム10は、例えばPC(Personal Computer)やスマートフォン等の端末装置である。端末装置は、プロセッサーとメモリーを含み、当該メモリーはプリンタードライバーを記憶する。プリンタードライバーは、端末装置のOS上で動作するソフトウェアである。端末装置のプロセッサーがプリンタードライバーに従って動作することによって、当該端末装置は印刷システム10の機能を実行する。なお、図1においては省略されているが、印刷システム10は、印刷画像データとともに、印刷設定データを出力する。印刷設定データとは、用紙種類、用紙サイズ、カラー/モノクロ、レイアウト等の印刷に関する設定を特定するためのデータである。
また印刷システム10は、プリンター20の稼働状態を表す稼働情報の収集を行ってもよい。印刷システム10は、例えばSNMP(Simple Network Management Protocol)に則った通信を行うことによって、プリンター20からMIB(Management Information Base)情報を受信する。MIB情報は、プリンター20の稼働情報を含む。稼働情報は、例えば時間情報と消費量情報とを対応付けた情報を含む。消費量情報とは、消耗品の消費度合いを表す情報であり、詳細については図3等を用いて後述する。
プリンター20は、プロセッサーと印刷部とを含む。プロセッサーは、メインCPU、サブCPUなどの複数のCPUや、MPU(Micro-processing unit)を含む。メインCPUは、プリンター20の各部の制御や全体的な制御を行う。サブCPUは、印刷部の制御を行う。なお、プリンター20に含まれるプロセッサーは1つであってもよい。印刷部は、印刷媒体への画像の印刷を実行する機械的構成である印刷エンジンを含む。印刷エンジンは、例えば搬送機構やインクジェット方式の吐出ヘッド、当該吐出ヘッドを含むキャリッジの駆動機構等を含む。印刷エンジンは、搬送機構により搬送される印刷媒体に対して、吐出ヘッドからインクを吐出することによって、印刷媒体に画像を印刷する。印刷媒体は、紙や布等、種々の媒体を利用できる。またプリンター20は、通信インターフェース、ディスプレイ、操作インターフェース等の種々の構成を含んでもよい。また、プリンター20の具体的構成はここで例示したものに限られず、種々の変形実施が可能である。
プリンター20は、自身の稼働情報を収集し、収集した稼働情報をMIB情報として記憶する。プリンター20は、稼働情報を定期的に印刷システム10に送信する。稼働情報の送信は、プリンター20が能動的に行ってもよいし、印刷システム10からのリクエストに対するレスポンスとして行ってもよい。なお、稼働情報はSNMPとは異なるプロトコルを用いて送受信されてもよい。
学習装置100は、消費量情報の時系列データに基づいて機械学習を行うことによって、学習結果である学習済モデルを生成する。消費量情報の時系列データとは、それぞれ異なるタイミングにおいて取得された複数の消費量情報の集合である。情報処理装置200は、学習済モデルに基づいてインクの需要予測を行う。また情報処理装置200は、需要予測結果に基づいて、インク消費量を制御する。学習装置100及び情報処理装置200の詳細については後述する。
図1に示すように、消費制御システム1に関係するユーザーとして、ユーザー1及びユーザー2が考えられる。ユーザー1は印刷物を取得したい一般ユーザーを想定しており、印刷システム10に対して印刷画像データを与える。ユーザー2は職場の管理者を想定しており、職場の印刷コストを適正な範囲に制御する。ここでの印刷コストとは、所定期間におけるインク消費量である。インク等の消耗品は、何ml当たり何円といったように、消費量と購入コストが相関する。そのため、インク消費量を印刷コストと考えることは合理的といえる。なお、平均インク消費量を印刷コストとする等、印刷コストを他の情報に変更してもよい。平均インク消費量とは、1枚の原稿の印刷に用いられるインク消費量の、所定期間における平均値を表す情報である。
ユーザー2は、所与の期間における目標コストを設定する。目標コストとは、当該所与の期間において許容される最大コストであり、実際の印刷コストが目標コスト以下となれば、印刷コストに関する目標が達成されたと判定される。情報処理装置200は、ユーザー2から目標コストを受け付け、所与の期間における印刷コストが目標コスト以下となるように、印刷画像データの印刷におけるインク消費量を制御する。その際、情報処理装置200は、上記所与の期間におけるインクの需要予測を行うことによって、予測コストを推定する。以下、具体的な処理について説明する。
2.2 学習装置の詳細
2.2.1 学習装置の構成例
図1に示したとおり、学習装置100は、学習に用いられる訓練データを取得する取得部110と、当該訓練データに基づいて機械学習を行う学習部120を含む。
取得部110は、例えば訓練データを他の装置から取得する通信インターフェースである。或いは取得部110は、学習装置100が保持する訓練データを取得してもよい。例えば、学習装置100は不図示の記憶部を含み、取得部110は当該記憶部から訓練データを読み出すためのインターフェースである。本実施形態における学習は、例えば教師あり学習である。教師あり学習における訓練データは、入力データと正解ラベルとを対応付けたデータセットである。
学習部120は、取得部110が取得した訓練データに基づく機械学習を行い、学習済モデルを生成する。なお、本実施形態の学習部120は、下記のハードウェアにより構成される。ハードウェアは、デジタル信号を処理する回路及びアナログ信号を処理する回路の少なくとも一方を含むことができる。例えば、ハードウェアは、回路基板に実装された1又は複数の回路装置や、1又は複数の回路素子で構成することができる。1又は複数の回路装置は例えばIC等である。1又は複数の回路素子は例えば抵抗、キャパシター等である。
また学習部120は、下記のプロセッサーにより実現されてもよい。本実施形態の学習装置100は、情報を記憶するメモリーと、メモリーに記憶された情報に基づいて動作するプロセッサーと、を含む。情報は、例えばプログラムと各種のデータ等である。プロセッサーは、ハードウェアを含む。プロセッサーは、CPU、GPU(Graphics Processing Unit)、DSP(Digital Signal Processor)等、各種のプロセッサーを用いることが可能である。メモリーは、SRAM(Static Random Access Memory)、DRAM(Dynamic Random Access Memory)などの半導体メモリーであってもよいし、レジスターであってもよいし、ハードディスク装置等の磁気記憶装置であってもよいし、光学ディスク装置等の光学式記憶装置であってもよい。例えば、メモリーはコンピューターにより読み取り可能な命令を格納しており、当該命令がプロセッサーにより実行されることで、学習装置100の各部の機能が処理として実現されることになる。ここでの命令は、プログラムを構成する命令セットの命令でもよいし、プロセッサーのハードウェア回路に対して動作を指示する命令であってもよい。
より具体的には、取得部110は、電子機器において用いられる消耗品の消費量又は残量を表す消費量情報の時系列データを取得する。学習部120は、消費量情報の時系列データに基づいて、消耗品の需要予測の条件を機械学習する。このようにすれば、時系列の消費量情報に基づいて、将来の消費量情報の予測、即ち消耗品の需要予測を精度よく行うことが可能になる。
なお学習装置100は、PC等の端末装置であってもよいし、スマートフォンやタブレット端末等の携帯端末装置であってもよいし、サーバーシステムであってもよい。また図1においては、学習装置100と印刷システム10、プリンター20を分けて表記したが、学習装置100は印刷システム10又はプリンター20に含まれてもよい。
2.2.2 ニューラルネットワーク
機械学習の具体例として、ニューラルネットワークを用いた機械学習について説明する。図2は、ニューラルネットワークの基本的な構造例である。ニューラルネットワークは、脳機能を計算機上でシミュレーションする数学モデルである。図2の1つの円をノード又はニューロンと呼ぶ。図2の例では、ニューラルネットワークは、入力層と、2つの中間層と、出力層を有する。入力層がIであり、中間層がH1及びH2であり、出力層がOである。また図2の例においては、入力層のニューロン数が3、中間層のニューロン数がそれぞれ4、出力層のニューロン数が1である。ただし、中間層の層数や、各層に含まれるニューロンの数は種々の変形実施が可能である。入力層に含まれるニューロンは、それぞれ第1中間層であるH1のニューロンと結合される。第1中間層に含まれるニューロンはそれぞれ第2中間層であるH2のニューロンと結合され、第2中間層に含まれるニューロンはそれぞれ出力層のニューロンと結合される。なお中間層は隠れ層と言い換えてもよい。
入力層は、それぞれ入力値を出力するニューロンである。図2の例では、ニューラルネットワークはx1,x2,x3を入力として受け付け、入力層の各ニューロンは、それぞれx1,x2,x3を出力する。なお、入力値に対して何らかの前処理を行い、入力層の各ニューロンは、前処理後の値を出力してもよい。
中間層以降の各ニューロンでは、脳の中で電気信号として情報が伝達される様子を模した演算が行われる。脳では、シナプスの結合強度に応じて情報の伝わりやすさが変わるため、ニューラルネットワークでは当該結合強度を重みWで表現する。図2のW1は、入力層と第1中間層の間の重みである。W1は入力層に含まれる所与のニューロンと、第1中間層に含まれる所与のニューロンとの間の重みの集合を表す。入力層のp番目のニューロン数と、第1中間層のq番目のニューロンの間の重みをw1 pqと表現した場合、図2のW1は、w1 11〜w1 34の12個の重みを含む情報である。より広義には、重みW1は、入力層のニューロン数と第1中間層のニューロン数の積だけの個数の重みからなる情報である。
第1中間層のうち、1番目のニューロンでは、下式(1)に示した演算が行われる。1つのニューロンでは、当該ニューロンに接続される1つ前の層の各ニューロンの出力を積和し、さらにバイアスを加算する演算を行う。下式(1)におけるバイアスはb1である。
また、上式(1)に示したように、1つのニューロンでの演算では、非線形関数である活性化関数fが用いられる。活性化関数fは、例えば下式(2)に示すReLU関数が用いられる。ReLU関数は、変数が0以下であれば0であり、0より大きければ変数自体の値となる関数である。ただし、活性化関数fは種々の関数を利用可能であることが知られており、シグモイド関数を用いてもよいし、ReLU関数を改良した関数を用いてもよい。上式(1)では、h1についての演算式を例示したが、1つめの中間層の他のニューロンでも同様の演算を行えばよい。
また、これ以降の層についても同様である。例えば、第1中間層と第2中間層の間の重みをW2とした場合、第2中間層のニューロンでは、第1中間層の出力と重みW2を用いた積和演算を行い、バイアスを加算し、活性化関数を適用する演算を行う。出力層のニューロンでは、その1つ前の層の出力を重み付け加算し、バイアスを加算する演算を行う。図2の例であれば、出力層の1つ前の層とは、第2中間層である。ニューラルネットワークは、出力層での演算結果を、当該ニューラルネットワークの出力とする。
以上の説明からわかるように、入力から所望の出力を得るためには、適切な重みとバイアスを設定する必要がある。なお、以下では重みを重み付け係数と表記し、複数の重み付け係数の集合を重み付け係数情報と表記する。また重み付け係数にはバイアスが含まれてもよいものとする。学習では、所与の入力xと、当該入力での正しい出力とを対応付けたデータセットを用意しておく。正しい出力は正解ラベルである。ニューラルネットワークの学習処理とは、当該データセットに基づいて、最も確からしい重み付け係数情報を求める処理と考えることが可能である。なお、ニューラルネットワークの学習処理では、誤差逆伝播法(Backpropagation)等の学習手法が種々知られている。本実施形態においては、それらの学習手法を広く適用可能であるため、詳細な説明は省略する。
また、ニューラルネットワークは、図2に示した構成には限定されない。例えば本実施形態の学習処理、及び後述する推論処理において、時系列データを入力として利用可能なRNN(Recurrent Neural Network)、或いはRNNを発展させた形式のニューラルネットワークが用いられてもよい。RNNについては公知であるため詳細な説明は省略する。
なお、以上では学習済モデルがニューラルネットワークを用いたモデルである例について説明した。しかし本実施形態における機械学習はニューラルネットワークを用いる手法に限定されない。例えば本実施形態の手法には、SVM(support vector machine)等、広く知られた種々の方式の機械学習、或いはそれらの方式を発展させた方式の機械学習を適用することが可能である。
2.3 訓練データの例と学習処理の詳細
図3は、プリンター20において取得される稼働情報のうち、消費量情報に関するデータの例を説明する図である。プリンター20は、例えば図3のA1に示したとおり、印刷ジョブごとに、当該印刷ジョブの実行タイミングを表す情報と、消費量情報とが対応付けられた情報を取得する。ここでの印刷ジョブとは、プリンター20における印刷動作の一単位を表し、具体的には1つの印刷画像データの印刷動作、及び当該印刷動作に必要な情報の集合である。印刷を実行する際には、印刷ジョブは、当該印刷ジョブを一意に識別するための識別情報、印刷対象となる印刷画像データ、印刷設定データ等を含む。
また図3における消費量情報は、印刷ジョブの実行において消費された消耗品の量を表す情報である。消費量情報とは、消耗品の消費量を特定可能な情報であり、消費量そのものであってもよいし、残量を表す情報であってもよい。また、消費量は、対象となるジョブ単体での消費量であってもよいし、所与の基準タイミングからの累計の消費量であってもよい。基準タイミングは、各月の1日0時00分等のタイミングであってもよいし、インクカートリッジが交換されたタイミング、或いはインクタンクにインクが補充されたタイミングであってもよい。これらの各種情報は、相互に変換することが容易である。即ち、本実施形態における消費量情報は、消費量を特定可能な情報であればよく、具体的な形式は種々の変形実施が可能である。
例えばa1は、「ジョブ1」という印刷ジョブを実行した際のインク消費量を表す。例えばプリンター20は、インクタンク内又はインクカートリッジ内のインク量を検出するセンサーを含む。そしてプリンター20は、センサー出力に基づいて、インク残量を検出する。上述したように、消費量情報は残量そのものであってもよいし、他の形式に変換された情報であってもよい。或いはプリンター20は、印刷ヘッドのノズルから吐出されるインク滴の数をカウントしてもよい。インク滴の数と、1滴当たりのインク量とを乗算することによって、対象ジョブにおけるインク消費量が算出される。またプリンター20は、他の手法を用いて消費量情報を取得してもよい。以下では、a1等が、対象とするジョブにおいて消費されたインクの量を表す情報であるものとして説明を行う。
印刷ジョブ単位で取得された消費量情報は、図3のA2に示す1日単位の消費量情報に変換される。例えばプリンター20又は印刷システム10がA1からA2への変換処理を行い、取得部110は変換後の情報を取得する。或いは、取得部110はA1に示す情報を取得し、取得部110がA1からA2への変換処理を行ってもよい。ここでの変換処理とは、同じ日に含まれる行を特定し、特定された行の消費量情報に基づいて、1日当たりの消費量情報を求める処理である。a1等が1ジョブ当たりのインク消費量である場合、変換処理とは、同じ日に含まれる消費量情報の合計を求める処理である。例えば図3においてx1=a1+a2+a3である。
図4は、本実施形態におけるニューラルネットワークのモデルを示す一例である。ニューラルネットワークは、消費量情報の時系列データを入力として受け付けて、消費量情報の予測値を出力データとして出力する。消費量情報の時系列データとは、例えば図3のA2に示したように、xiからxi+jまで、1日に1つ取得される消費量情報が、取得順にj+1(jは0以上の整数)日分だけ並べられた情報である。出力データは、xi+jの次の日の消費量情報の予測値であるxi+j+1である。
図5は、訓練データの具体例を示す図である。ここでは、取得部110が、消費量情報の時系列データとしてn日分の消費量情報であるx1〜xnを取得した場合を考える。nは2以上の整数であるが、学習精度を考慮すればnは大きい値であることが望ましい。例えば図5の例においては、nは少なくとも100より大きい整数である。図5に示したように、入力データは固定長であってもよい。図5は、100入力のニューラルネットワークを用いる場合の訓練データの例であり、連続する100個の消費量情報が入力データであり、その次の1つの消費量情報が当該入力データに対する正解ラベルである。
訓練データに基づく学習処理は以下の流れに従って行われる。まず学習部120は、ニューラルネットワークに入力データを入力し、そのときの重み付け係数情報を用いて順方向の演算を行うことによって、出力データを取得する。図5に示す訓練データを用いる場合、入力データは100個の消費量情報からなる時系列データである。順方向の演算によって求められる出力データは、上述したように、次のタイミングにおける消費量情報の予測値である。
学習部120は、求められた出力データと、正解ラベルとに基づいて誤差関数を演算する。例えば(x1,x2,…,x100)が入力データである場合、正解ラベルはx101である。よって学習部120は、順方向の演算結果とx101の相違度を誤差関数として算出し、誤差が小さくなる方向に重み付け係数情報を更新する。なお誤差関数は種々の形式が知られており、本実施形態においてはそれらを広く適用可能である。また重み付け係数情報の更新は例えば誤差逆伝播法を用いて行われるが、他の手法を用いてもよい。
以上が1つの訓練データに基づく学習処理の概要である。学習処理においては、他の訓練データについても同様の処理を繰り返すことによって、適切な重み付け係数情報を学習する。また学習部120は、取得されたデータの一部を訓練データとし、残りをテストデータとしてもよい。テストデータは、評価データ、検証データと言い換えてもよい。そして学習部120は、訓練データによって生成された学習済モデルに対してテストデータを適用し、正解率が所定閾値以上であるか否かを判定する。正解率が所定閾値未満である場合、学習部120は、未学習の訓練データを用いてさらなる学習処理を行い、学習済モデルを更新する。正解率が所定閾値以上である場合、学習部120は学習処理を終了し、学習結果である学習済モデルを出力する。ニューラルネットワークを用いる場合、学習済モデルとは、ネットワーク構成を特定する情報、及び、重み付け係数情報を含む。
図6は、訓練データの他の具体例を示す図である。図5と同様に、取得部110が、消費量情報の時系列データとしてn日分の消費量情報であるx1〜xnを取得した場合を考える。図6に示したように、入力データは可変長であってもよい。例えば、図4に示すニューラルネットワークは上述したRNN等の、可変長入力が可能なニューラルネットワークである。或いは、固定長入力のニューラルネットワークにおいて、入力データが不足する場合にNULLデータを補完することによって、擬似的に可変長入力が実現されてもよい。この場合、1個又は連続する複数個の消費量情報が入力データであり、その次の1つの消費量情報が当該入力データに対する正解ラベルである。
学習処理の流れは図5の場合と同様であり、入力データに基づく順方向の演算、演算結果と正解ラベルに基づく誤差関数の演算、誤差関数に基づく重み付け係数情報の更新、の各処理が実行される。
なお以上で説明したように、電子機器は、印刷部を含むプリンター20であってもよい。そして消耗品は、印刷部における印刷画像データの印刷に用いられる印刷材を含む。印刷剤は、インクであってもよいしトナーであってもよい。このようにすれば、印刷材の需要予測を高い精度で行うための学習処理及び推論処理が可能になる。
1つのプリンター20において複数の印刷材が用いられる場合がある。例えばプリンター20は、C,M,Y,Kの4色を用いて印刷を行う。Cはシアンを表し、Mはマゼンタを表し、Yはイエローを表し、Kはブラックを表す。また、印刷材の色はこれに限定されずライトマゼンタ等の他の色が用いられてもよい。また印刷材がインクである場合、インクには顔料インクと染料インクとが存在する。例えばプリンター20は、顔料ブラックインクと染料ブラックインクを、印刷設定データに応じて使い分ける印刷装置であってもよい。この場合、印刷材の需要予測は、印刷材の色に関する種別ごとに行われることが望ましい。色に関する種別とは、具体的にはC,M,Y,K等の色種別、及び、顔料染料等の色材種別を含む。以下、色に関する種別の具体例として色種別について説明する。
図7は、稼働情報及び1日当たりの消費量情報を表す他の例である。図7のB1に示すように、消費量情報は印刷ジョブごと、及び印刷材の色ごとに求められてもよい。例えば、プリンター20は、C,M,Y,Kの各インクタンクに対応する4つのセンサーを含み、各センサーの出力に基づいて色ごとにインク残量を検出する。或いはプリンター20は、各色に対応する印刷ヘッドごとに、インク滴の吐出数をカウントすることによってインク消費量を算出する。図7の例であれば、ac1はジョブ1の印刷において消費されたシアンインクの量を表す。aM1はジョブ1の印刷において消費されたマゼンタインクの量を表す。aY1はジョブ1の印刷において消費されたイエローインクの量を表す。aK1はジョブ1の印刷において消費されたブラックインクの量を表す。図7のB2に示すxC1,xM1,xY1,xK1等についても同様であり、それぞれ1日で消費された各色のインク量を表す。
図8は、この場合のニューラルネットワークの構成例を示す図である。図8に示すように、学習部120は、シアンインクに関する消費量情報の時系列データに基づいて、シアンインクの需要予測を行うシアン用ニューラルネットワークの重み付け係数情報を機械学習する。その他のインクについても同様であり、学習部120は、色ごとに取得された消費量情報の時系列データに基づいて、イエロー用ニューラルネットワークの重み付け係数情報、マゼンタ用ニューラルネットワークの重み付け係数情報、ブラック用ニューラルネットワークの重み付け係数情報を機械学習する。
また印刷画像データには、文書、写真、地図等、種々の種類のデータが含まれる。消耗品の消費量情報は、印刷画像データの種類に応じて変化傾向が異なると考えられる。例えば、毎月締め日付近においては文書である証憑画像が多く印刷される、或いは週末にはプライベートな写真が多く印刷されるといった種類ごとの差異が考えられる。図3のA1及びA2に示すように、種類を考慮せずに消費量情報等を求めた場合、種類ごとの変化傾向が考慮されないため、需要予測精度が低下する場合がある。よって消耗品の需要予測は、印刷画像データの種類ごとに行われてもよい。
図9は、稼働情報及び1日当たりの消費量情報を表す他の例である。図9のC1及びC2に示すように、学習部120は、印刷ジョブに含まれる印刷画像データに基づいて、当該印刷画像データの種類を判別する。ここでの印刷画像データとは印刷対象となる画像を表すデータである。なお、印刷画像データは印刷画像そのものであってもよいし、サムネイル画像等の情報量が削減されたデータであってもよい。画像の種類を判別する手法は種々知られており、本実施形態においてはそれらを広く適用可能である。例えば学習部120は、広く知られた畳み込みニューラルネットワーク(CNN:Convolutional neural network)を用いて画像の分類を行ってもよい。
学習部120は、C2の分類結果に基づいて、C3に示すとおり、種類ごと及び1日ごとの消費量情報を演算する。ここでは画像の種類がm種類である例を示している。mは2以上の整数である。
図10は、この場合のニューラルネットワークの構成例を示す図である。図10に示すように、学習部120は、種類1の印刷画像データに関する消費量情報の時系列データに基づいて、種類1に関する需要予測を行う種類1用ニューラルネットワークの重み付け係数情報を機械学習する。その他の種類についても同様であり、学習部120は、印刷画像データの種類ごとに取得された消費量情報の時系列データに基づいて、各種類用ニューラルネットワークの重み付け係数情報を機械学習する。所与のタイミングにおける総消費量は、各ニューラルネットワークの出力であるx1i+j+1,x2i+j+1,…,xmi+j+1の総和によって求められる。
また、以上では消耗品種別ごとの需要予測、及び印刷画像データの種類ごとの需要予測について説明したが、これらを組み合わせることも可能である。具体的には、学習部120は、消耗品種別ごと、且つ種類ごとの消費量情報の時系列データに基づいて、学習処理を行ってもよい。例えば取得部110は、所与の1タイミングについて、インク色数と、印刷画像データの種類数を乗算した数だけの消費量情報を取得する。図7〜図10の例であれば、取得部110は、4×m通りの消費量情報の時系列データを取得する。そして学習部120は、4×m個のニューラルネットワークについて、それぞれ重み付け係数情報を求める処理を行ってもよい。
以上のように、学習部120は、機械学習によって学習済モデルを生成する。学習済モデルは、電子機器において用いられる消耗品の需要予測を行うための学習済モデルである。学習済モデルは、入力層と中間層と出力層とを有し、消費量情報の時系列データに基づき、重み付け係数情報が設定されている。重み付け係数情報は、入力層と中間層との間の第1重み付け係数、及び中間層と出力層との間の第2重み付け係数を含む。重み付け係数情報は、所与の中間層と、次の中間層との間の重み付け係数を含んでもよい。学習済モデルは、入力として受け付けた消費量情報を入力層に入力し、設定された重み付け係数情報に基づく演算を行い、出力層から、消耗品の需要予測の結果を表すデータを出力するよう、コンピューターを機能させる。消耗品の需要予測の結果を表すデータは、例えば入力データに対して1タイミング後の消費量情報である。ただし需要予測の結果を表すデータはこれに限定されず、将来の消費量情報を含む他のデータであってもよい。この学習済モデルは、図1に示すように、情報処理装置200の記憶部230に記憶される。また、本実施形態の手法は、学習済モデルに適用されてもよい。
なお、以上では時系列の消費量情報が、等間隔に取得される情報である例について説明した。具体的には、1日を1単位として消費量情報が取得される例について説明した。この場合、各消費量情報の順序は保持される必要があるが、具体的な日付自体を省略した処理を行うことが可能である。
ただし、本実施形態においては、時間に関する情報を明示的に用いた学習処理を行ってもよい。例えば、図3のA2における1行の情報は、第1軸を月日とし、第2軸を消費量情報とする2次元平面における1つの点として表現される。本実施形態における学習処理は、当該2次元平面にプロットされた多数の点の回帰曲線を求める処理と考えることが可能である。
また、時間情報を用いて学習を行う場合、時系列の消費量情報は、不定期に取得される情報に拡張が可能である。第1軸における各点の間隔が等間隔とならなくなるが、この場合も、回帰曲線を求める処理は実行可能である。例えば、図3のA1に示すように、時分まで含めた時間情報をそのまま学習処理に用いてもよい。
2.4 情報処理装置の詳細
2.4.1 情報処理装置の構成例
図1に示したとおり、本実施形態の推論装置である情報処理装置200は、受付部210と、処理部220と、記憶部230を含む。処理部220は、需要予測部221と、コスト予測部222と、コスト低減部223を含む。ただし、情報処理装置200は図1の構成に限定されず、これらの一部の構成要素を省略してもよいし、他の構成要素を追加してもよく、種々の変形実施が可能である。
記憶部230は、電子機器において用いられる消耗品の消費量又は残量を表す消費量情報の時系列データに基づいて、消耗品の需要予測の条件を機械学習した学習済モデルを記憶する。処理部220は、学習済モデルに基づいて、消耗品の需要予測を行う。具体的には、受付部210が消費量情報の時系列データを受け付け、処理部220は受け付けた時系列データと学習済モデルに基づいて需要予測を行う。また処理部220は、消耗品の需要予測の結果に基づいて、消耗品の消費制御処理を行う。
このようにすれば、機械学習の結果に基づいて、消耗品の需要予測を行うことが可能になる。そのため、ユーザー負担を過剰に増大させることなく、需要予測精度を向上させることが可能になる。また高い精度で需要予測を行えるため、消耗品の消費制御を適切に実行することが可能になる。例えば、印刷コストを適切に、且つ効率的に削減することが可能になる。
なお学習済モデルは、人工知能ソフトウェアの一部であるプログラムモジュールとして利用される。処理部220は、記憶部230に記憶された学習済モデルからの指令に従って、消耗品の需要予測の結果を表すデータを出力する。
情報処理装置200の処理部220は、学習装置100の学習部120と同様に、デジタル信号を処理する回路及びアナログ信号を処理する回路の少なくとも一方を含むハードウェアにより構成される。また処理部220は、下記のプロセッサーにより実現されてもよい。本実施形態の情報処理装置200は、情報を記憶するメモリーと、メモリーに記憶された情報に基づいて動作するプロセッサーと、を含む。プロセッサーは、CPU、GPU、DSP等、各種のプロセッサーを用いることが可能である。メモリーは、半導体メモリーであってもよいし、レジスターであってもよいし、磁気記憶装置であってもよいし、光学式記憶装置であってもよい。
なお、学習済モデルに従った処理部220おける演算、即ち、入力データに基づいて出力データを出力するための演算は、ソフトウェアによって実行されてもよいし、ハードウェアにより実行されてもよい。換言すれば、上式(1)等の積和演算、或いは、RNNにおける演算等は、ソフトウェア的に実行されてもよい。或いは上記演算は、FPGA(field-programmable gate array)等の回路装置によって実行されてもよい。また、上記演算は、ソフトウェアとハードウェアの組み合わせによって実行されてもよい。このように、記憶部230に記憶された学習済モデルからの指令に従った処理部220の動作は、種々の態様によって実現可能である。
なお情報処理装置200は、PC等の端末装置であってもよいし、スマートフォンやタブレット端末等の携帯端末装置であってもよいし、サーバーシステムであってもよい。また図1においては、情報処理装置200と印刷システム10、プリンター20を分けて表記したが、情報処理装置200は印刷システム10又はプリンター20に含まれてもよい。
また以上では、学習装置100と情報処理装置200を分けて説明した。しかし本実施形態の手法はこれに限定されない。例えば情報処理装置200は、図11に示すとおり、消費量情報の時系列データを取得する取得部110と、時系列データに基づいて、消耗品の需要予測の条件を機械学習する学習部120を含んでもよい。換言すれば、情報処理装置200は、図1の構成に加えて、学習装置100に対応する構成を含む。このようにすれば、学習処理と推論処理を同じ装置において効率的に実行することが可能になる。
2.4.2推論処理及びコスト低減処理
図12は、情報処理装置200における処理を説明するフローチャートである。この処理が開始されると、まず処理部220は、消費量情報の時系列データを取得する(S101)。例えば、受付部210は、所与の間隔で消費量情報を取得する。ここでの間隔は例えば1日であり、消費量情報は月日を表す時間情報と対応付けられた情報である。図1においては、受付部210が、学習装置100の取得部110から消費量情報を受け付ける例を示したが、受付部210は、印刷システム10又はプリンター20から1日当たりの消費量情報を受け付けてもよい。処理部220は、受付部210が過去に受け付けた消費量情報と、最新の消費量情報とを合わせたデータを、消費量情報の時系列データとする。
また処理部220は、期間情報を取得する(S102)。期間情報とは、印刷コストの予測対象となる期間であり、需要予測を実行すべき期間に対応する。例えば、受付部210は管理者であるユーザー2からの期間情報の入力を受け付け、受け付けた期間情報を処理部220に出力する。そして処理部220は、学習済モデルに基づいて、期間情報によって表される期間における消耗品の消費量情報を推定する処理を、消耗品の需要予測として行う。
図4に示したニューラルネットワークを用いた場合、出力は1タイミング未来の消費量情報である。また機械学習によって時間情報と消費量情報を対応付ける回帰曲線を求めた場合、時間情報を入力することによって、当該時間情報に対応する消費量情報が出力される。いずれにせよ、学習済モデルを用いた推論処理は、直接的には所与のタイミングにおける消費量情報を予測する処理である。しかし、需要予測結果を用いた処理、具体的には消費制御処理を行う場合、どの期間において消費量を制御するのかを決定する必要がある。また後述する発注システム2においては、配送までに要する期間から、発注タイミングを決定する必要がある。期間情報を取得することによって、需要予測を行う期間を適切に決定すること、及び需要予測結果を用いた処理を適切に実行することが可能になる。
処理部220の需要予測部221は、消費量情報の時系列データに基づいて、消耗品の需要予測を行う(S103)。具体的には、処理部220は時系列のj+1個の消費量情報を入力データとして、記憶部230に記憶された学習済モデルに基づく処理を行うことによって、1日先の消費量情報を予測する。なお、入力となる消費量情報が1つであることは妨げられない。ただし処理部220は、異なるタイミングにおける複数の消費量情報を入力として取得し、学習済モデルと、複数の消費量情報に基づいて、消耗品の消費量情報を推定することが望ましい。このように、入力となる消費量情報の数を増やすことによって、需要予測の精度を向上させることが可能になる。
上述したとおり、処理部220は、期間情報によって表される期間における消耗品の需要予測を行う必要がある。例えば、期間情報によって表される期間が、翌日から10日後までの場合、処理部220は、1タイミング先の消費量情報だけでなく、2〜10タイミング先の消費量情報を予測する必要がある。
例えば処理部220は、実測された消費量情報の時系列データと、上記処理によって予測された1タイミング未来の消費量情報とを入力データとして、学習済モデルに基づく演算を行う。この場合、入力データのうち、最も新しい消費量情報の次のタイミングの消費量情報が予測されるため、出力は2タイミング未来の消費量情報となる。以下同様であり、予測された消費量情報を入力データに加えて再度演算を行うことによって、2タイミング以上先の消費量情報を予測できる。或いは、ニューラルネットワークの構成を変更し、あらかじめ複数タイミングの消費量情報を出力可能な学習済モデルを取得しておいてもよい。この場合、処理部220は、時系列データと学習済モデルに基づく演算を行うことによって、2タイミング以上先の消費量情報を予測する。需要予測部221は、需要予測結果をコスト予測部222に出力する。
次に処理部220のコスト予測部222は、需要予測結果に基づいて、コスト予測処理を行う(S104)。印刷コストは、上述したように所定期間におけるインク消費量である。例えば処理部220は、期間情報によって表される期間において、1日ごとに予測された消費量情報の合計を、予測コストとして求める処理を行う。コスト予測部222は、求めた予測コストをコスト低減部223に出力する。
なお以上では、期間情報が需要予測部221に入力され、需要予測部221が、期間情報に基づいて需要予測を行う期間を設定する例を説明した。ただし本実施形態の処理はこれに限定されない。例えば、需要予測部221は、想定される期間情報よりも長い期間について需要予測を行った後、需要予測結果をコスト予測部222に出力する。コスト予測部222は、期間情報を取得し、取得した期間情報に基づいて適切な範囲の需要予測結果を抽出する。そしてコスト予測部222は、抽出した需要予測結果に基づいて予測コストを求める処理を行ってもよい。
処理部220のコスト低減部223は、コスト低減処理を行う。具体的には、処理部220は、予測コストと目標コストの比較処理を行う(S105)。目標コストは、管理者であるユーザー2によって入力される情報であり、所定期間において許容される印刷コストの上限を表す。例えば受付部210は目標コストを受け付け、当該目標コストをコスト低減部223に出力する。予測コストが目標コストより大きい場合(S105でYes)、印刷画像データを通常のインク消費量設定に従って印刷した場合、印刷コストが目標コストを超えると予測されたことになる。よって処理部220は、印刷コストの低減処理を実行する(S106)。
ただし、インク消費量を抑制した場合、印刷品質、具体的には画質が劣化してしまう。よってコスト低減部223は、画質劣化許容量に基づいて、インク消費量の抑制度合いを調整する。画質劣化許容量は、管理者であるユーザー2によって入力される情報であり、許容される画質劣化量の上限を表す。画質劣化量とは、例えば、ユーザー1が得たいとしている印刷結果と、インク消費量を抑制した場合に得られる印刷結果との、色差ΔEである。処理部220は、記憶部230からICCプロファイルを読み出す。ICCプロファイルとは、CMYKの色空間と、RGBの色空間の関係性を定義するデータである。CYMKの各色のインク消費量が決まれば、当該インク消費量に対応するRGB色空間での座標が決定される。ICCプロファイルを用いることによって、インク消費量を抑制しない場合の色味と、インク消費量を抑制した場合の色味とを適切に比較することが可能になる。処理部220は、ICCプロファイルに基づいて、インク消費量を抑制しない場合と抑制した場合との色差ΔEを演算する。求めた色差ΔEが、画質劣化許容量に対応する許容最大色差ΔE0以下である場合、インク消費量を抑制しても、画質の劣化度合いが許容範囲に収まると判定される。コスト低減部223は、色差ΔEが、許容最大色差ΔE0以下となるという条件を満たす範囲において、印刷コストを低減する処理を行う。
また、予測コストが目標コスト以下である場合(S105でNo)、印刷コストが目標コストを超えることがないと判定されるため、コスト低減処理は行われない。
なお、学習済モデルは、消耗品種別ごとの消費量情報の時系列データに基づいて、機械学習されていてもよい。この場合、処理部220は、消耗品種別ごとの需要予測を行うことによって、消費制御処理を行う。
例えば、第1種別の消耗品の消費量が非常に多く、第2種別の消耗品の消費量が少ない場合を考える。この場合、第2種別の消耗品の使用量を抑制したとしても、消耗品に関するコスト全体を考慮した場合、コスト低減効果が低い。一方、第1種別の消耗品の使用量を抑制した場合、効率的にコスト低減が可能である。或いは、第1種別の消耗品と第2種別の消耗品とで単価が異なる場合、同じ量だけ消費量を抑制した場合であっても、種別に応じてコスト低減効果が異なる。種別ごとに消費制御処理を行うことによって、種別ごとのコスト低減効果を考慮した効率的な消費制御が可能になる。
また電子機器は、印刷部を含むプリンター20であってもよい。消耗品は、印刷部における印刷画像データの印刷に用いられる印刷材であり、消耗品種別は、図7及び図8を用いて上述したとおり、印刷材の色に関する種別を含む。印刷材の色に関する種別は、例えばインクの色種別又は色材種別である。なお、ここでの印刷材はトナーであってもよい。このようにすれば、インク色又はトナー色を考慮した効率的な消費制御処理が可能になる。
また、学習済モデルは、図9及び図10を用いて上述したとおり、印刷画像データの種類ごとの消費量情報の時系列データに基づいて、機械学習されていてもよい。処理部220は、印刷画像データの種類ごとに、消耗品の需要予測を行う。上述したように、印刷画像データの種類に応じて消費量情報の変化傾向が異なる可能性がある。しかし、種類を考慮せずに1つの消費量情報として処理を行うことによって、上記変化傾向に関する情報が損なわれてしまう。その点、需要予測を印刷画像データの種類ごとに行うことによって、需要予測精度を高くすることが可能になる。
なお処理部220は、図10に示したように、印刷画像データの種類ごとに行われた消耗品の需要予測に基づいて、消耗品の総消費量を予測する処理を行ってもよい。このようにすれば、総消費量の予測精度を高くすることが可能になる。
印刷画像データの種類ごとに行われる需要予測は、総消費量の予測精度を高めるための処理であって、コスト低減処理は総消費量情報を用いて行われてもよい。或いは処理部220は、印刷画像データの種類を考慮したコスト低減処理を行ってもよい。例えばコスト低減部223は、印刷システム10から取得した印刷画像データの種類を判別し、当該種類の需要予測結果に基づいて、消費制御処理を行ってもよい。
2.5 学習処理の実行タイミング
本実施形態にかかる学習装置100は、定期的に学習処理を行うことによって、学習済モデルを更新してもよい。例えば、取得部110は、1日に1回、印刷システム10から消費量情報を取得する。図5及び図6を用いて上述したように、最新の消費量情報を正解ラベルとし、過去に取得された消費量情報の時系列データを入力データとすることによって、新たな訓練データが取得される。例えば、消費量情報の時系列データとしてx1〜xnが取得済である状態において、新たにxn+1が取得された場合を考える。図6の例であれば、x1〜xnを入力データとし、xn+1を当該入力データに対応する正解ラベルとする訓練データが取得される。学習部120は、取得された訓練データを用いて、1日に1回、学習処理を行うことによって学習済モデルを更新する。このようにすれば、実測された消費量情報に基づいて、逐次、学習済モデルが更新されるため、需要予測精度を高くすることが可能になる。
ただし本実施形態の手法はこれに限定されない。例えば、学習部120による学習処理は、消費量情報の取得頻度に比べて低い頻度で行われてもよい。例えば、10日分の消費量情報を蓄積した上で、10日に1回、まとめて学習処理を行うといった変形実施が可能である。
また、学習段階と推論段階を明確に区別し、推論段階においては学習処理を行わなくてもよい。例えば、学習段階において十分な量の訓練データを蓄積しておき、学習部120は当該訓練データに基づいて学習済モデルを生成する。推論段階においては、情報処理装置200は、生成された学習済モデルを継続して使用する。
3.発注システム
図13は、本実施形態にかかる発注システム2の構成を示す図である。発注システム2は、印刷システム10と、プリンター20と、学習装置100と、情報処理装置200を含む。情報処理装置200の処理部220は、需要予測部221と、発注処理部224と、配送処理部225を含む。ただし、情報処理装置200は図13の構成に限定されず、これらの一部の構成要素を省略してもよいし、他の構成要素を追加してもよく、種々の変形実施が可能である。
印刷システム10、プリンター20及び学習装置100については、消費制御システム1と同様であるため詳細な説明は省略する。
情報処理装置200は、消費制御システム1と同様に、学習済モデルを記憶する記憶部230と、学習済モデルに基づいて、消耗品の需要予測を行う処理部220を含む。学習済モデルについても消費制御システム1と同様であり、電子機器において用いられる消耗品の消費量又は残量を表す消費量情報の時系列データに基づいて、消耗品の需要予測の条件を機械学習した学習済モデルである。処理部220は、消耗品の需要予測の結果に基づいて、消耗品の交換時期又は補充時期の予測処理を行う。
電子機器がインクジェットプリンターである場合、印刷処理、及びフラッシングやクリーニング等の保全処理によってインクが消費される。このため、プリンター20は本体に一定量のインクを内蔵しており、インクが無くなれば印刷ができなくなる。そこで、定期的にインクタンクへのインクの補充や、インクカートリッジの交換が必要になる。
従来、補充インク又はインクカートリッジの発注処理を自動化する手法が開示されている。インクカートリッジ等の物理的な輸送には時間がかかるため、発注から到着までに一定のタイムラグを生じることとなるし、このタイムラグは使用者の居住地域によって大きくばらつく。インクに残量がある段階において交換すべきと判断することによって、インクカートリッジの輸送中にも印刷を継続することが可能である。しかし閾値の取り方次第で、インクが不足するユーザーと、インクに残量があるにもかかわらずインクカートリッジが配送されるユーザーとが発生する課題があった。
学習済モデルを用いた需要予測結果に基づいて、消耗品の交換時期又は補充時期の予測処理を行うことによって、精度の高い予測が可能になる。そのため、インクカートリッジ等の過不足を適切に解消できる。なお処理部220は、消耗品の需要予測の結果に基づいて、消耗品の交換時期又は補充時期の予測処理を行い、予測処理に基づいて、消耗品の発注処理を行ってもよい。このように発注処理を自動化することによって、ユーザーの利便性向上が可能になる。
図14は、発注システム2に含まれる情報処理装置200における処理を説明するフローチャートである。この処理が開始されると、まず処理部220は、消費量情報の時系列データを取得する(S201)。S201の処理は、図12のS101と同様である。
次に処理部220は、期間情報を取得する。発注システム2においては、すぐに発注処理を行った場合、発注したインクカートリッジが到着するまでにインクが枯渇するか否かが重要である。換言すれば、発注から到着までに要する時間を表す配送時間におけるインクの需要予測が重要となる。よって処理部220は、配送時間を表す期間情報を取得する。例えば配送処理部225は、IPアドレスに基づくジオロケーションによって、配送時間を表す期間情報を求める。IPアドレステーブルは、例えばインターネット等のネットワークを介して情報処理装置200と通信可能なサーバーシステム等に保持される。ただし、IPアドレステーブルは記憶部230等に記憶されてもよい。
需要予測部221は、消費量情報の時系列データに基づいて、期間情報によって表される期間における消耗品の需要予測を行う(S203)。発注処理部224は、需要予測部221から需要予測結果を取得し、需要予測結果に基づいてインク残量の予測処理を行うことによって、予測残量を求める(S204)。予測残量とは、例えば、即座に発注処理を行った場合におけるインクカートリッジの到着タイミングにおけるインク残量の予測値である。インクカートリッジの到着タイミングとは、具体的には配送時間が経過したタイミングに対応する。発注処理部224は、例えば現在を始点とし、配送時間経過後を終点とする期間内でのインクの予測消費量を求め、現在のインク残量の実測値から、予測消費量を減算することによって、予測残量を求める。ただし、予測残量を求める処理は種々の変形実施が可能である。
予測残量が所与の閾値以上である場合(S205でYes)、インク残量には余裕があり、発注処理を即座に行う必要がない。そのため、発注処理部224は、発注処理を行わずに処理を終了する。予測残量が所与の閾値未満である場合(S205でNo)、発注処理を行わないとインク不足によって印刷が停止するおそれがある。換言すれば、消耗品の交換時期又は補充時期になったと判定される。よって発注処理部224は、発注処理を実行する(S206)。発注処理とは、配送処理部225への配送要求の送信処理である。配送処理部225は、具体的な配送処理を行う。実際の配送処理は、配送方法の決定、配送業者の手配等の処理を含む。
なお、消耗品種別ごとの消費量情報を用いた処理が行われてもよい点は、消費制御システム1と同様である。例えば学習済モデルは、消耗品種別ごとの消費量情報の時系列データに基づいて、機械学習されていてもよい。処理部220は、消耗品種別ごとの需要予測を行うことによって、交換時期又は補充時期の予測処理を行う。具体的には、消耗品は印刷材であり、消耗品種別は印刷材の色に関する種別を含む。
消耗品の交換や補充は、各消耗品の消費度合いに応じて行う必要がある。インクの例であれば、シアンインクが不足している場合、シアンインクの補充を行うべきであり、マゼンタ等の他の色の補充を行ったとしても意味がない。ブラックインクについては、シアン、マゼンタ、イエローの混色によって代用することも可能であるが、ブラックインク自体を補充することが効率的である。種別ごとに交換時期、補充時期を予測することによって、適切な消耗品を対象として交換又は補充を行うことが可能になる。
また、印刷画像データの種類ごとに、消費量情報を用いた処理が行われてもよい点についても、消費制御システム1と同様である。例えば、学習済モデルは、図9及び図10を用いて上述したとおり、印刷画像データの種類ごとの消費量情報の時系列データに基づいて、機械学習されていてもよい。処理部220は、印刷画像データの種類ごとに、消耗品の需要予測を行う。印刷画像データの種類ごとに処理を行うことによって、需要予測精度を高くできるため、適切なタイミングにおいて消耗品の交換又は補充を行うことが可能になる。
以上のように、本実施形態の情報処理装置は、電子機器において用いられる消耗品の消費量又は残量を表す消費量情報の時系列データに基づいて、消耗品の需要予測の条件を機械学習した学習済モデルを記憶する記憶部と、学習済モデルに基づいて、消耗品の需要予測を行う処理部を含む。処理部は、消耗品の需要予測の結果に基づいて、消耗品の交換時期又は補充時期の予測処理、又は、消耗品の消費制御処理を行う。
本実施形態の手法によれば、機械学習を用いることによって消耗品の需要予測を精度よく行うことが可能になる。そのため、予測処理や消費制御処理等、需要予測を用いた処理を適切に実行することが可能になる。
また電子機器は、印刷部を含み、消耗品は、印刷部における印刷画像データの印刷に用いられる印刷材を含んでもよい。
このようにすれば、プリンターにおける印刷材について、予測処理又は消費制御処理を行うことが可能になる。
また学習済モデルは、消耗品種別ごとの消費量情報の時系列データに基づいて機械学習されていてもよい。処理部は、消耗品種別ごとの需要予測を行うことによって、予測処理又は消費制御処理を行う。
このように、消耗品の種別を考慮した需要予測を行うことによって、予測処理や消費制御処理を適切に実行することが可能になる。
また消耗品種別は、印刷材の色に関する種別であってもよい。
このようにすれば、印刷材の色や色材等を考慮した予測処理又は消費制御処理を行うことが可能になる。
また学習済モデルは、印刷画像データの種類ごとに、消費量情報の時系列データに基づいて機械学習されていてもよい。処理部は、印刷画像データの種類ごとに、消耗品の需要予測を行う。
このように、印刷画像データの種類ごとに需要予測を行うことによって、需要予測精度を高くすることが可能になる。
また処理部は、印刷画像データの種類ごとに行われた消耗品の需要予測に基づいて、消耗品の総消費量を予測する処理を行ってもよい。
このようにすれば、総消費量を精度よく予測することが可能になる。
また処理部は、期間情報を取得し、学習済モデルに基づいて、期間情報によって表される期間における消耗品の消費量情報を推定する処理を、消耗品の需要予測として行ってもよい。
このようにすれば、適切な期間を対象として消耗品の需要予測を行うことが可能になる。
また処理部は、異なるタイミングにおける複数の消費量情報を入力として取得し、学習済モデルと、複数の消費量情報に基づいて、消耗品の消費量情報を推定してもよい。
このように、複数の消費量情報を入力として用いることによって、需要予測精度を高くすることが可能になる。
また処理部は、消耗品の需要予測の結果に基づいて、消耗品の交換時期又は補充時期の予測処理を行い、予測処理に基づいて、消耗品の発注処理を行ってもよい。
このようにすれば、適切なタイミングにおいて消耗品を自動発注できるため、ユーザーの利便性向上が可能になる。
また情報処理装置は、消費量情報の時系列データを取得する取得部と、時系列データに基づいて、消耗品の需要予測の条件を機械学習する学習部と、を含んでもよい。
このようにすれば、学習処理と推論処理を同じ装置において効率的に実行することが可能になる。
また学習済モデルは、入力層と中間層と出力層とを有し、消費量情報の時系列データに基づき、入力層と中間層との間の第1重み付け係数、及び中間層と出力層との間の第2重み付け係数を含む重み付け係数情報が設定されていてもよい。学習済モデルは、入力として受け付けた消費量情報を入力層に入力し、設定された重み付け係数情報に基づく演算を行い、出力層から、消耗品の需要予測の結果を表すデータを出力するよう、コンピューターを機能させる。
このように、学習処理によって重み付け係数情報を学習することによって、消耗品の需要を適切に予測可能な学習済モデルを生成することが可能になる。より具体的には、ニューラルネットワークを用いた学習済モデルを生成することが可能になる。
また本実施形態の学習装置は、電子機器において用いられる消耗品の消費量又は残量を表す消費量情報の時系列データを取得する取得部と、消費量情報の時系列データに基づいて、消耗品の需要予測の条件を機械学習する学習部と、を含む。
本実施形態の手法によれば、消費量情報の時系列データに基づいて機械学習が行われる。機械学習を行うことによって、予測処理や消費制御処理等、需要予測を用いた処理を適切に実行することが可能になる。
また本実施形態の学習済モデルは、電子機器において用いられる消耗品の需要予測を行うための学習済モデルである。学習済モデルは、入力層と中間層と出力層とを有し、消耗品の消費量又は残量を表す消費量情報の時系列データに基づき、入力層と中間層との間の第1重み付け係数、及び中間層と出力層との間の第2重み付け係数を含む重み付け係数情報が設定されている。学習済モデルは、入力として受け付けた消費量情報を入力層に入力し、設定された重み付け係数情報に基づく演算を行い、出力層から、消耗品の需要予測の結果を表すデータを出力するよう、コンピューターを機能させる。
なお、上記のように本実施形態について詳細に説明したが、本実施形態の新規事項および効果から実体的に逸脱しない多くの変形が可能であることは当業者には容易に理解できるであろう。従って、このような変形例はすべて本開示の範囲に含まれるものとする。例えば、明細書又は図面において、少なくとも一度、より広義または同義な異なる用語と共に記載された用語は、明細書又は図面のいかなる箇所においても、その異なる用語に置き換えることができる。また本実施形態及び変形例の全ての組み合わせも、本開示の範囲に含まれる。また学習装置、情報処理装置、及びそれらの装置を含むシステムの構成及び動作等も、本実施形態で説明したものに限定されず、種々の変形実施が可能である。