JP7441682B2 - データ処理システムおよびデータ圧縮方法 - Google Patents

データ処理システムおよびデータ圧縮方法 Download PDF

Info

Publication number
JP7441682B2
JP7441682B2 JP2020038808A JP2020038808A JP7441682B2 JP 7441682 B2 JP7441682 B2 JP 7441682B2 JP 2020038808 A JP2020038808 A JP 2020038808A JP 2020038808 A JP2020038808 A JP 2020038808A JP 7441682 B2 JP7441682 B2 JP 7441682B2
Authority
JP
Japan
Prior art keywords
data
compression
learning
region
model
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2020038808A
Other languages
English (en)
Other versions
JP2021140554A (ja
Inventor
貴洋 成子
弘明 圷
彬史 鈴木
功人 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2020038808A priority Critical patent/JP7441682B2/ja
Priority to US17/642,843 priority patent/US11842055B2/en
Priority to PCT/JP2021/008346 priority patent/WO2021177394A1/ja
Publication of JP2021140554A publication Critical patent/JP2021140554A/ja
Application granted granted Critical
Publication of JP7441682B2 publication Critical patent/JP7441682B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0626Reducing size or complexity of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、概して、データ量の削減に関する。
データ量を削減するストレージシステムが知られている(特許文献1参照)。その種のストレージシステムは、一般に、圧縮によりデータ量を削減する。既存の圧縮方法の1つとして、ランレングス法のように、所定のブロック単位内で出現頻度の高い文字列を辞書化し、より小さなサイズの符号に置換する方法が知られている。
ランレングス法のような可逆圧縮よりも、データ量を削減する技術として、非可逆圧縮技術が知られている。例えば、特許文献2に記載された技術は、ニューラルネットワークを圧縮伸長器に用いた圧縮技術である。データが有する規則性を、ニューラルネットワークでモデル化することにより、データを圧縮する。
特開2007-199891号公報 特開2019-095913号公報
データの蓄積コストの削減の観点から、IoT(Internet-of-Things)機器が生成する大規模なデータの蓄積には、圧縮率の高い非可逆圧縮が必要である。さらに、蓄積したデータを、ニューラルネットワーク(以下、「AI(Artificial Intelligence)と記す)を用いるユーザアプリケーションで利用可能とするためには、圧縮伸長後のデータがAIの求める品質を満たす必要がある。
この場合、データを構成するテンソル上で、AIの結果に大きな影響を与える領域、つまりAIが注視する領域(以下、AI注視領域)以外は、高圧縮による品質の劣化を許容できる。しかしながら、特許文献2に記載の技術では、AI注視領域であるか否かにかかわらず、全領域を同程度の圧縮率で圧縮するため、圧縮率が悪くなってしまう。
本発明は、以上の点を考慮してなされたもので、データ量を適切に削減し得るデータ処理システム等を提案しようとするものである。
かかる課題を解決するため本発明においては、プロセッサと、記憶装置と、を備え、データを圧縮および伸長する学習済みの圧縮伸長器を用いてデータを入出力するデータ処理システムにおいて、学習データを用いて、データモデルが注視する領域を推定する推定部と、前記注視する領域に基づいて各領域を重み付けした評価関数と、前記圧縮伸長器が前記学習データを圧縮および伸長した結果とに基づいて、前記圧縮伸長器を学習させる学習部と、を備えるようにした。
上記構成では、上記構成では、データモデルが注視する領域に応じて学習が行われるので、例えば、当該領域以外の領域の圧縮率を当該領域の圧縮率よりも高くすることができ、データモデルが動作可能な品質を保ちつつ、データモデルが用いるデータの圧縮率を改善することができる。
本発明によれば、データ量を適切に削減することができる。
第1の実施の形態による構成の一例を示す図である。 第1の実施の形態による構成の一例を示す図である。 第1の実施の形態による画面の一例を示す図である。 第1の実施の形態による画面の一例を示す図である。 第1の実施の形態によるRAMに係る構成の一例を示す図である。 第1の実施の形態によるRAMに係る構成の一例を示す図である。 第1の実施の形態によるテーブルの一例を示す図である。 第1の実施の形態によるテーブルの一例を示す図である。 第1の実施の形態による処理の一例を示す図である。 第1の実施の形態による処理の一例を示す図である。 第1の実施の形態による処理の一例を示す図である。 第1の実施の形態による処理の一例を示す図である。 第1の実施の形態による処理の一例を示す図である。 第1の実施の形態による処理の一例を示す図である。 第2の実施の形態による構成の一例を示す図である。 第3の実施の形態によるテーブルの一例を示す図である。 第3の実施の形態による処理の一例を示す図である。 第4の実施の形態による構成の一例を示す図である。
(1)第1の実施の形態
本実施の形態は、データ量の削減に関するものである。本実施の形態では、AI向けの非可逆圧縮器を備えるストレージシステムを例に挙げて説明する。
従来の技術において、領域に応じて圧縮率を制御することも考えられるが、領域に応じて圧縮率を制御できない理由として、大きくは2点存在する。1点目は、AI注視領域は、AIごとに異なるため、どのAIのAI注視領域に従って圧縮率を制御すればよいか、圧縮器において不明であるためである。2点目は、仮に対象とするAIが定まる場合でも、圧縮器において、当該AIのAI注視領域を特定する手段がないためである。
この点、本実施の形態に示すストレージシステムでは、AI注視領域以外を高い圧縮率で圧縮できるため、全領域を同程度の圧縮率で圧縮する場合と比較して、圧縮率が改善する。
例えば、本ストレージシステムは、上位で動作するAI処理基盤と協調して動作する。AI処理基盤は、例えば、各ユーザアプリケーションについて、ユーザアプリケーションで使用されるニューラルネットワークのモデル(構造およびパラメタであり、以下、「AIモデル」と記す)と、当該モAIデルの入力となるデータの生成源(以下、「データ生成源」と記す)を、ユーザに指定させる第1のインターフェースと、指定させた情報を管理する第1のテーブルとを備える。
本ストレージシステムは、例えば、AI処理基盤に、第1のテーブルに記憶された情報を問い合わせる第2のインターフェースと、AIモデルを要求する第3のインターフェースとを備える。
また、本ストレージシステムは、例えば、第2のインターフェースと第3のインターフェースとにより問い合わせた情報に基づいて、データのデータ生成源ごとに、当該データが入力となるAIモデルを計算し、データ生成源とAIモデルとの対応関係を第2のテーブルにて管理する。
また、本ストレージシステムは、例えば、ニューラルネットワークを用いた圧縮伸長器を備える。本ストレージシステムは、圧縮伸長器の学習データのデータ生成源に対応するAIモデルを第2のテーブルから取得し、学習データにおける当該AIモデルのAI注視領域を推定し、推定結果を重みとして、圧縮前の学習データと、圧縮伸長後のデータとの間の加重誤差を算出する関数を、圧縮伸長器を構成するニューラルネットワークのロス関数に設定し、圧縮伸長器を学習する。
本ストレージシステムは、例えば、学習した圧縮伸長器を用いて、データを圧縮し、記憶ドライブに記憶する。
本ストレージシステムによれば、データ量を適切に削減することができる。
なお、以下では、データの圧縮率については、データを圧縮した際に、圧縮後のデータが元のデータのどのくらいの情報量に減ったかを表す割合として説明する。付言するならば、割合を100倍したパーセンテージで表してもよいし、削減された情報量の元の情報量に対する割合として表してもよい。また、例えば、相対的に少ない情報量に圧縮された(よく圧縮できた)状態を「圧縮率が高い」、相対的に多い情報量に圧縮された(あまり圧縮できなかった)状態を「圧縮率が低い」と記すことがある。また、圧縮率が最も高い状態(例えば、「0」)は、情報が切り捨てられた状態であってもよい。
また、以下の説明では、同種の要素を区別しないで説明する場合には、枝番を含む参照符号のうちの共通部分(枝番を除く部分)を使用し、同種の要素を区別して説明する場合は、枝番を含む参照符号を使用することがある。例えば、データ生成源を特に区別しないで説明する場合には、「データ生成源110」と記載し、個々のデータ生成源を区別して説明する場合には、「データ生成源110-1」、「データ生成源110-2」のように記載することがある。
次に、本発明の実施の形態を図面に基づいて説明する。ただし、本発明は、実施の形態に限定されるものではない。
(1-1)概要
図1において、100は全体として第1の実施の形態によるデータ処理システムを示す。
データ処理システム100は、データ生成源110と、管理端末120と、AI処理基盤130(AI Processing Platform)と、ストレージシステム140(Storage System)とを含んで構成される。
データ生成源110は、データを生成する1以上の主体であり、例えば、センサ、カメラ、システムログ等である。
管理端末120は、AI処理基盤130がユーザに各種の設定をさせるための、入出力装置を備えた端末である。
AI処理基盤130は、データ生成源110が生成するデータ、当該データをストレージシステム140に蓄積したデータ等を入力として、AIを実行するための、装置、システム等である。
AI処理基盤130は、AIモデルDB131とアプリケーション管理テーブル132とを備える。AIモデルDB131は、AIモデルを管理するためのデータベース(DB)である。アプリケーション管理テーブル132は、各ユーザアプリケーション(アプリケーションプログラム)について、ユーザアプリケーションで使用されるAIモデルの名前(以下、「AIモデル名」と記す)と、AIモデルの入力となるデータ生成源110の名前(以下、「入力データ名」と記す)との対応を管理するためのテーブルである。
なお、AIモデルについては、予めAIモデルDB131に初期設定しておいてもよいし、管理端末120を介してユーザに登録させてもよいし、それらの組み合わせで設定されていてもよい。
ストレージシステム140は、データ生成源110が生成するデータを蓄積するシステムである。ストレージシステム140は、AI処理基盤130にアプリケーション管理テーブル132の情報を問い合わせ、各入力データ名について、蓄積対象のデータが入力となるAIモデル名を計算し、当該AIモデルをAI処理基盤130に要求し、入力データ名とAIモデルとの対応関係を、AIモデル管理テーブル141で管理する。
ストレージシステム140は、ニューラルネットワークにより構成された圧縮器142および伸長器143を備え、これらを構成するニューラルネットワークを、データ生成源110が生成するデータ等を学習データとして学習する。
ストレージシステム140は、各学習データについて、各学習データに対応するAIモデルをAIモデル管理テーブル141から取得し、学習データにおけるAI注視領域を、AI注視領域推定器144により推定する。
ストレージシステム140は、推定したAI注視領域に相対的に高い重みを付して、学習データと、当該学習データの圧縮伸長後のデータとの間の加重誤差を、品質指標関数145により計算し、ニューラルネットワークの学習におけるロス関数に設定する。
ストレージシステム140は、データ生成源110が生成するデータを、学習した圧縮器142により圧縮し、記憶ドライブ146に記憶する。
(1-2)システム構成
ストレージシステム140に係る構成について、図2を用いて説明する。図2は、ストレージシステム140に係る構成の一例を示す図である。
図2に示すセンササーバ210は、プロセッサ、メモリ、ネットワークインターフェース等のハードウェア資源と、データ生成源110のドライバ等のソフトウェア資源とを備えたコンピュータである。センササーバ210は、データ生成源110が出力するデータ(信号)を、csv(comma-separated values)、バイナリ、PNG(Portable Network Graphics)等のファイルフォーマット等、AI処理基盤130およびストレージシステム140が受領するファイルフォーマットに変換し、スイッチ220を介して、変換したデータの書き込みをストレージシステム140に要求する。
なお、センササーバ210は、データ生成源110と異なる装置であってもよいし、データ生成源110が有する機能として実装されてもよい。また、センササーバ210は、1つに限定されるものではなく、2つ以上あってもよい。
スイッチ220は、センササーバ210、管理端末120、およびAI処理基盤130を接続する。
AI処理基盤130は、フロントエンドインターフェース231(Front-end Interface )、プロセッサ232(Processor)、RAM233(RAM:Random Access Memory)、バックエンドインターフェース234(Back-end Interface )、記憶ドライブ235(HDD:Hard Disk Drive / SSD:Solid State Drive)、およびスイッチ236(Switch)を備える。
フロントエンドインターフェース231は、AI処理基盤130と、センササーバ210、管理端末120等とを接続するためのインターフェースである。プロセッサ232は、スイッチ236を介して、RAM233に記憶されたプログラム237(Program)、および、管理情報238(Metadata)を基に、AI処理基盤130全体を制御する。プロセッサ232は、CPU(Central Processing Unit)のような、汎用的な演算処理器のほかに、GPU(Graphical Processing Unit)、FPGA(Field Programmable Gate Array)のようなアクセラレータであってもよく、また、それらの組み合わせであってもよい。
バックエンドインターフェース234は、AI処理基盤130と、ストレージシステム140とを接続する。記憶ドライブ235は、HDD、SSD等の記憶装置であって、AIモデルDB131に登録されたAIモデル(AIモデルの構造情報、パラメタ値等)を記憶する。
ストレージシステム140は、フロントエンドインターフェース241(Front-end Interface)、プロセッサ242(Processor)、RAM243(RAM)、スイッチ244(Switch)、および記憶ドライブ146(HDD / SSD)を備える。
フロントエンドインターフェース241は、ストレージシステム140と、AI処理基盤130とを接続する。プロセッサ242は、スイッチ244を介して、RAM243に記憶されたプログラム245(Program)および管理情報246(Metadata)を基に、ストレージシステム140全体を制御する。プロセッサ242は、CPUのような汎用的な演算処理器のほかに、GPU、FPGAのようなアクセラレータであってもよく、また、それらの組み合わせであってもよい。記憶ドライブ146は、HDD、SSD等の記憶装置であって、データ生成源110が生成するデータを圧縮したデータを記憶する。
AI処理基盤130およびストレージシステム140は、以上で説明した構成要素を実装した個別のIC(Integrated Circuit)を相互に接続した構成であってもよいし、そのいくつかが、ASIC(Application Specific Integrated Circuit)、FPGA等として、1つの半導体素子により実装される構成であってもよい。AI処理基盤130とストレージシステム140とは、異なるハードウェア装置あってもよいし、同一のコンピュータで動作する異なるVM(Virtual Machine)であってもよいし、同一のOS(Operating
System)上で動作する異なるアプリケーションであってもよい。
(1-3)管理画面
管理端末120は、管理端末120が通信可能に接続された出力装置に、第1のアプリケーション登録画面300、第2のアプリケーション登録画面400、または、その両方を表示する。いずれの画面もユーザに指定させる情報は等価であるが、指定させる方法が異なる。
図3は、第1のアプリケーション登録画面300の一例を示す図である。
アプリケーション名設定フィールド310は、ユーザにアプリケーションの名前(以下、「アプリケーション名」と記す)を設定させるためのフィールドである。例えば、アプリケーションを識別するための固有の文字列をユーザに指定させる。なお、AI処理基盤130が内部で固有なアプリケーション名を自動で割り振ることにより、アプリケーション名設定フィールド310を省略してもよい。
AI設定フィールド320は、AIモデル毎に、AIモデルの入力となるデータの入力データ名を、ユーザに指定させるフィールドである。AI設定フィールド320のうち、AIモデル名指定フィールド321では、ユーザにAIモデル名を指定させる。入力データ名指定フィールド322は、左隣のAIモデル名指定フィールド321で指定されたAIモデル名のAIモデルについて、当該AIモデルで用いるデータの入力データ名を、ユーザに指定させるフィールドである。
なお、指定の方法としては、上述したように文字列を入力させてもよいし、ドロップダウンリストから選択させてもよいし、その他の任意の手段であってもよい。
行追加ボタン323は、AI設定フィールド320の末尾に、新たな行を追加する場合に、ユーザにクリックさせるボタンである。第1のアプリケーション登録画面300に、行追加ボタン323を用意する代わりに、AI設定フィールド320に予め十分な数の行を用意してもよい。
登録ボタン330は、アプリケーション名設定フィールド310とAI設定フィールド320との入力が完了した際に、ユーザにクリックさせるボタンである。
第1のアプリケーション登録画面300には、以上で説明したフィールドおよびボタンの他に、あらゆるフィールドやボタン等が追加されてもよい。
図4は、第2のアプリケーション登録画面400の一例を示す図である。
第2のアプリケーション登録画面400に示すアプリケーション名設定フィールド310と登録ボタン330とは、第1のアプリケーション登録画面300と同一の機能を有する。
データフロー指定フィールド420は、データ生成源を表す入力データ名ノード421と、AIモデルを表すAIモデル名ノード422との間を結ぶエッジ423を、管理端末120の入力装置により操作できるカーソル401を用いて、ユーザに描かせるフィールドである。
管理端末120は、描画された有向グラフから、AIモデル名と、当該AIモデル名のAIモデルで用いるデータの入力データ名との対応関係を取得する。なお、データフロー指定フィールド420に描画できるノードは、入力データ名ノード421およびAIモデル名ノード422に限定されるものではなく、他の種類の機能ブロックを表すノードが追加されてもよい。
第2のアプリケーション登録画面400には、以上で説明したフィールドおよびボタンの他に、あらゆるフィールドやボタン等が追加されてもよい。
(1-4)RAM構成
図5および図6を用いて、データ処理システム100が備える主な機能について説明し、図7および図8を用いてデータ処理システム100が備える主な情報について説明する。
図5は、AI処理基盤130のRAM233に係る構成の一例を示す図である。
RAM233は、プロセッサ232が実行するプログラム237を記憶する制御プログラム領域510と、プロセッサ232がプログラム237に従って読み書きする管理情報238を記憶する管理情報領域520とを含んで構成される。
制御プログラム領域510には、アプリケーション管理テーブル更新プログラム511と、データベースプログラム512とが含まれる。
アプリケーション管理テーブル更新プログラム511は、第1のアプリケーション登録画面300、第2のアプリケーション登録画面400、または、その両方を介してユーザに指定させた、アプリケーション名と入力データ名とAIモデル名との対応関係を、アプリケーション管理テーブル132に記憶させるプログラムである。
データベースプログラム512は、記憶ドライブ235に対して、AIモデルを読み書きするための機能とAPI(Application Programming Interface)を提供するプログラムである。データベースは、例えば、AIモデル名の文字列に対して、AIモデルを読み書きするリレーショナルデータベース(Relational Database)であるが、これに限定されるものではない。データベースとしては、AIモデルを識別する情報から、AIモデルを読み書きする機能とAPIとを備えれば、いかなるデータベースが用いられてもよい。
管理情報領域520には、アプリケーション管理テーブル132が含まれる。
図7は、アプリケーション管理テーブル132の一例を示す図である。
アプリケーション管理テーブル132は、第1のアプリケーション登録画面300、第2のアプリケーション登録画面400、または、その両方を介してユーザに指定させた、アプリケーション名と入力データ名とAIモデル名との対応関係を記憶するテーブルである。
アプリケーション名列701は、アプリケーション名設定フィールド310に設定された、アプリケーション名を記憶する。AIモデル名列702は、AIモデル名指定フィールド321またはAIモデル名ノード422に対応するAIモデル名を記憶する。入力データ名列703は、入力データ名指定フィールド322または入力データ名ノード421に対応する入力データ名を記憶する。
アプリケーション管理テーブル132の各行は、アプリケーション名列701に記憶されたアプリケーション名のアプリケーションにおいて、AIモデル名列702に記憶されたAIモデル名のAIモデルは、入力データ名列703に記憶された入力データ名のデータ生成源110のデータを入力として用いることを表す。なお、アプリケーション管理テーブル132は、テーブルの他、ハッシュテーブル、木構造等、いかなるデータ構造で実装されてもよい。
図6は、ストレージシステム140のRAM243に係る構成の一例を示す図である。
RAM243は、プロセッサ242が実行するプログラム245を記憶する制御プログラム領域610と、プロセッサ242がプログラム245に従って読み書きする管理情報246を記憶する管理情報領域620とを含む。
制御プログラム領域610には、AIモデル管理テーブル更新プログラム611、圧縮伸長器学習プログラム612、AI注視領域推定プログラム613、品質計算プログラム614、データ書き込みプログラム615、およびデータ読み出しプログラム616が含まれる。
AIモデル管理テーブル更新プログラム611は、ストレージシステム140がAI処理基盤130に、アプリケーション管理テーブル132に記憶された情報を問い合わせ、AIモデル管理テーブル141を更新するプログラムである。
圧縮伸長器学習プログラム612は、圧縮器142と伸長器143とに含まれるニューラルネットワークの学習を行うプログラムである。
AI注視領域推定プログラム613は、AI注視領域推定器144に対応し、AIモデルと、当該AIモデルが用いるデータとを入力として、当該データを当該AIモデルのAIに適用した場合のAI注視領域を推定し、ヒートマップを出力するプログラムである。
品質計算プログラム614は、品質指標関数145に対応し、第1のデータと、第2のデータと、重み情報とを入力として、第1のデータと第2のデータとの間の、重み情報に基づく加重誤差を出力するプログラムである。例えば、二乗平均誤差において、平均の計算を加重平均の計算に置き換えた指標を計算するプログラムである。品質計算プログラム614が計算する指標は、これに限定されるものではなく、その他、2つのデータと、重みとを入力として、スカラ値を計算する、いかなる関数を計算するプログラムであってもよい。
データ書き込みプログラム615は、データ生成源110が生成するデータを、圧縮器142で圧縮し、記憶ドライブ146に書き込むプログラムである。
データ読み出しプログラム616は、データの読み出し要求に対して、要求されたデータを記憶ドライブ146から読み出し、伸長器143で伸長したのち、応答するプログラムである。
管理情報領域620には、AIモデル管理テーブル141が含まれる。AIモデル管理テーブル141は、AI処理基盤130のアプリケーション管理テーブル132に記憶された情報に基づいて、各入力データ名について、入力データ名のデータが入力となり得るAIモデル名と、当該AIモデル名のAIモデルとを記憶するテーブルである。
図8は、AIモデル管理テーブル141の一例を示す図である。
入力データ名列801は、アプリケーション管理テーブル132の入力データ名列703に対応する入力データ名を記憶する。AIモデル名列802は、アプリケーション管理テーブル132のAIモデル名列702に対応するAIモデル名を記憶する。AIモデル列803は、AIモデル名列802に記憶されたAIモデル名に対応する、AIモデルの構造、パラメタ等のAIモデル本体を記憶する。なお、AIモデル本体は、記憶ドライブ146に記憶し、AIモデル列803には、AIモデル本体へのポインタのみを記憶してもよい。
AIモデル管理テーブル141の各行は、入力データ名列801に記憶された入力データ名のデータ生成源110のデータが、AIモデル名列に記憶されたAIモデル名のAIモデルの入力として利用され、当該AIモデルがAIモデル列803に記憶されていることを示している。なお、AIモデル管理テーブル141は、テーブルの他、ハッシュテーブル、木構造等、いかなるデータ構造で実装されてもよい。
(1-5)アプリケーション管理テーブルの更新処理
図9を用いて、AI処理基盤130がアプリケーション管理テーブル132を更新する処理(アプリケーション管理テーブル更新処理)について説明する。
図9は、アプリケーション管理テーブル更新処理の一例を示す図である。
AI処理基盤130のプロセッサ232は、アプリケーション管理テーブル更新処理を、ユーザによる指示(所定のボタンの押下)を契機として開始してもよいし、一定の時間間隔毎に開始してもよいし、その他の任意の契機で開始してもよい(ステップS900)。
ステップS901では、プロセッサ232は、フロントエンドインターフェース231を介して、管理端末120の出力装置に、第1のアプリケーション登録画面300、第2のアプリケーション登録画面400、または、その両方を表示させる。なお、ステップS901については、管理端末120に、第1のアプリケーション登録画面300、第2のアプリケーション登録画面400、または、その両方を、常に表示させることにより、省略してもよい。
ステップS902では、プロセッサ232は、フロントエンドインターフェース231を介して、管理端末120に登録ボタン330の押下状態を問い合わせ、押下済みの状態となるまで待機する。プロセッサ232は、押下済みの状態が応答されるまで、管理端末120に状態を定期的に問い合わせてもよいし、登録ボタン330の押下時に、管理端末120にメッセージを送信させ、その受領をもって待機を解除してもよい。
ステップS903では、プロセッサ232は、フロントエンドインターフェース231を介して、管理端末120に、アプリケーション名設定フィールド310に指定されたアプリケーション名を要求する。
ステップS904は、プロセッサ232は、フロントエンドインターフェース231を介して、管理端末120に、AIモデル名指定フィールド321またはAIモデル名ノード422により指定させた、AIモデル名の集合を要求する。
ステップS905~ステップS910は、ステップS904で取得したAIモデル名の各々について、ループするステップ群である(ループA)。
ステップS906では、プロセッサ232は、フロントエンドインターフェース231を介して、管理端末120に、ループAが指すAIモデルの入力データ名の集合を要求する。管理端末120は、入力データ名指定フィールド322または入力データ名ノード421に入力させた入力データ名のうち、プロセッサ232に指定されたAIモデル名に対応付けられたものを抽出し、応答する。
ステップS907~ステップS909は、ステップS906で取得した各入力データ名について、ループするステップ群である(ループB)。
ステップS908では、プロセッサ232は、アプリケーション管理テーブル132の、アプリケーション名列701と、AIモデル名列702と、入力データ名列703とに、ステップS903で取得したアプリケーション名と、ループAが指すAIモデル名と、ループBが指す入力データ名とを、それぞれ記憶する。
ループAの終了後、プロセッサ232は、アプリケーション管理テーブル更新処理を終了する(ステップS911)。
(1-6)AIモデル管理テーブルの更新処理
図10を用いて、ストレージシステム140がAIモデル管理テーブル141を更新する処理(AIモデル管理テーブル更新処理)について説明する。
図10は、AIモデル管理テーブル更新処理の一例を示す図である。
ストレージシステム140のプロセッサ242は、AIモデル管理テーブル更新処理を、データの読み書きを契機として開始してもよいし、一定の時間間隔毎に開始してもよいし、アプリケーション管理テーブル132の更新を契機として開始してもよいし、その他の任意の契機で開始してもよい(ステップS1000)。
ステップS1001では、プロセッサ242は、フロントエンドインターフェース241を介して、AI処理基盤130に、アプリケーション管理テーブル132に記憶された全ての情報を要求する。
ステップS1002~ステップS1009は、ステップS1001で取得したアプリケーション管理テーブル132の各行について、ループするステップ群である(ループA)。
ステップS1003~ステップS1005は、AIモデル管理テーブル141の各行について、ループするステップ群である(ループB)。
ステップS1004では、プロセッサ242は、ループAが指す行のAIモデル名列702のAIモデル名と、ループBが指す行のAIモデル名列802のAIモデル名とが一致し、かつ、ループAが指す行の入力データ名列703の入力データ名と、ループBが指す行の入力データ名列801の入力データ名とが一致するかを条件判定する。プロセッサ242は、条件が真である場合、当該AIモデル名と当該入力データ名との組み合わせは、すでにAIモデル管理テーブル141に登録済みであるため、ループBを抜け(break)し、ループAの次の行について処理を行う(ループAの次のIterationに進む)。他方、条件が偽である場合、プロセッサ242は、ループBの次の行について処理を行う(ループBの次のIterationに進む)。
ループBがステップS1004によりbreakせずに終了した場合、プロセッサ242は、ステップS1006の処理を実行する。
ステップS1006では、プロセッサ242は、AIモデル管理テーブル141の末尾行の入力データ名列801とAIモデル名列802とに、ループAが指す行の、入力データ名列703の入力データ名とAIモデル名列702のAIモデル名とを、それぞれ記憶する。
ステップS1007では、プロセッサ242は、フロントエンドインターフェース241を介して、AI処理基盤130に、ループAが指す行のAIモデル名列702に記憶されているAIモデル名に対応するAIモデルを要求する。
ステップS1008では、プロセッサ242は、ステップS1007で取得したAIモデルを、AIモデル管理テーブル141の末尾行のAIモデル列803に記憶する。
ループAの終了後、プロセッサ242は、AIモデル管理テーブル更新処理を終了する(ステップS1010)。
以上では、ストレージシステム140において、AIモデル管理テーブル141を更新する処理を説明した。この他にも、AI処理基盤130において、AIモデル管理テーブル141の複製を更新し、ストレージシステム140のAIモデル管理テーブル141にコピーする方法が採られてもよい。
(1-7)圧縮伸長器の学習処理
図11を用いて、ストレージシステム140が圧縮器142および伸長器143を学習する処理(圧縮伸長器学習処理)について説明する。
図11は、圧縮伸長器学習処理の一例を示す図である。
ストレージシステム140のプロセッサ242は、圧縮伸長器学習処理を、データ生成源110のデータ書き込み契機で開始してもよいし、一定の時間間隔毎に開始してもよいし、ストレージシステム140の初期化時に開始してもよいし、管理端末120を介してユーザに指示させたタイミングで開始してもよいし、その他の任意の契機で開始してもよい(ステップS1100)。
なお、以下では、データ生成源110ごとに圧縮器142および伸長器143(圧縮伸長器)を用意するケースを例に挙げて説明する。つまり、データ生成源110の数と同数の圧縮伸長器が存在する場合において、圧縮伸長器学習プログラム612の引数として与えられた入力データ名に対応する1種のデータ生成源110向けの圧縮伸長器を学習する処理を説明する。しかしながら、本実施の形態は、そのような場合に限定されるものではなく、複数のデータ生成源110のデータを同時に圧縮するように(例えば、複数のデータを組み合わせて1つのデータとみなして)、1個の圧縮伸長器を学習してもよいし、その組み合わせであってもよい。
ステップS1101~ステップS1108は、引数で与えられた入力データ名の学習データについて、ループするステップ群である(ループA)。
学習データは、データ生成源110が生成するデータと類似のものであれば、どのようなデータであってもよい。例えば、データ生成源110がデータを生成する度に、当該データを学習データとして、圧縮伸長器を学習してもよい。また、例えば、サンプルとして予め用意したデータ生成源110のデータを学習データとして、ストレージシステム140の初回起動時に、圧縮伸長器を学習してもよい。ループAのIterationの粒度は、学習データを構成する画像等のファイル単位であってもよいし、複数のファイルから構成されるバッチ単位であってもよいし、その他の任意の粒度でもよい。
ステップS1102では、プロセッサ242は、AI注視領域推定プログラム613をサブルーチンとして起動する(AI注視領域推定処理を行う)。AI注視領域推定処理において、プロセッサ242は、ループAが指す学習データについて、学習データを入力として用いるAIモデルのAI注視領域を推定し、ヒートマップとして得る。なお、AI注視領域推定処理については、図12を用いて後述する。
ステップS1103では、プロセッサ242は、ステップS1102で計算したAI注視領域のヒートマップに基づき、品質計算プログラム614の入力とするための重みを計算する。例えば、プロセッサ242は、AI注視領域を表すヒートマップをそのまま重みとしてもよいし、ヒートマップの値を、適当な閾値で二値化したものを重みとしてもよいし、その他、ヒートマップに任意の関数を適用して重みを計算してよい。なお、閾値で二値化する場合、閾値、二値化後に設定する2種類の値については、ストレージシステム140にプリセットされた値を用いてもよいし、管理端末120を介してユーザに指定させてもよい。
ステップS1104では、プロセッサ242は、圧縮器142により、学習データを圧縮し、圧縮データを得る。
ステップS1105では、プロセッサ242は、伸長器143により、ステップS1104で得た圧縮データを伸長し、伸長データを得る。
ステップS1106では、プロセッサ242は、品質計算プログラム614をサブルーチンとして起動し、ステップS1003で計算した重みにより、学習データと、伸長データとの間の加重誤差を計算する。
例えば、学習データxと、伸長データyとの対応する各データ点x,y毎に、対応する重みwで加重した二乗平均誤差を品質とすることができる(下記の式(1))。
また、AI注視領域に「1」、その他の領域に「0」を設定した重みを用いて、AI注視領域の二乗平均誤差と、その他の領域の二乗平均誤差を計算し、各々について、目標値tと目標値tとを減算し、「0」とmax演算を取った値を、加算した式(下記の式(2))を品質としてもよい。この場合、例えば、目標値tが目標値tよりも小さい値となるように設定すれば、AI注視領域でない領域の二乗平均誤差がtに達した後は、同誤差の減少がLoss関数の減少に寄与しなくなるため、AI注視領域の二乗平均誤差を優先して削減するように、圧縮伸長器が学習される。
目標値tと目標値tとは、ストレージシステム140にプリセットされた値を用いてもよいし、管理端末120を介してユーザに指定させてもよい。また、誤差の計算方法は、二乗平均誤差に限定されるものではなく、その他、学習データx、伸長データy、重みwを入力として、スカラ値を出力する任意の関数でよい。例えば、画像データに対して、二乗平均誤差よりも、より人間の知覚に近い品質指標であると知られているMS-SSIM(Multi-Scale Structural Similarity)において、入力として、画像の他に、重みwを与え、各スケールにおけるStructural Similarity値の平均計算を、重みwに基づく加重平均に置き換えて計算した値を、品質としてもよい。また、上記の式(2)を構成する各項に、適当な係数が設定されてもよい。
ステップS1107は、プロセッサ242は、ステップS1106で計算した加重誤差をLoss関数として、圧縮器142と伸長器143とに含まれるニューラルネットワークの学習パラメタを更新する。例えば、プロセッサ242は、逆誤差伝播法により、学習パラメタを更新する。
学習パラメタの更新アルゴリズムについては、逆誤差伝播法に限定されるものではなく、例えば、SGD(Stochastic Gradient Descent)、Adam(Adaptive moment estimation)等のアルゴリズムが用いられてもよい。
また、圧縮後のデータのエントロピーを、ニューラルネットワークにより推定し、圧縮伸長器のLoss関数として、当該推定値と品質とを加算した関数を用いることで、圧縮率と品質との両方を改善するように、圧縮伸長器を学習させる技術が存在する。この場合、Loss関数として、ステップS1106で計算した加重誤差の他に、圧縮率を表す項、圧縮伸長器を構成するニューラルネットワークの学習パラメタを正則化するための項等が追加されてもよい。この場合、品質、圧縮率、正則化等を表す各項を、予め定められた定数により加算したものをLoss関数としてもよいし、積算したものをLoss関数としてもよいし、その他、各項から1つのスカラ値を計算する任意の関数を適用してLoss関数としてもよい。
ループAの終了後、プロセッサ242は、圧縮伸長器学習処理を終了する(ステップS1109)。
なお、学習パラメタの更新が収束するまで、同一の学習データに対して、上記の処理は複数回実行されてもよい。
図12は、AI注視領域推定処理の一例を示す図である。
プロセッサ242は、圧縮伸長器学習プログラム612のサブルーチンとして、AI注視領域推定処理を開始する(ステップS1200)。このとき、プロセッサ242は、AI注視領域推定処理の引数として、学習データと、学習データの入力データ名とを設定する。
ステップS1201~ステップS1205は、AIモデル管理テーブル141の各行についてループするステップ群である(ループA)。
ステップS1202では、プロセッサ242は、ループAが指す行の入力データ名列801に記憶された入力データ名と、引数として与えられた入力データ名とが一致するか、条件判定する。条件が真である場合、プロセッサ242は、ステップS1203に処理を移す。条件が偽である場合、プロセッサ242は、ループAの次の行について処理を行う(次のIterationに進む)。
ステップS1203は、プロセッサ242は、ループAが指す行のAIモデル列803からAIモデルを取得する。
ステップS1204では、プロセッサ242は、引数で与えられた学習データを、取得したAIモデルに入力した場合のAI注視領域を推定する。
AI注視領域の推定処理として、プロセッサ242は、例えば、Grad-CAM、Guided Backpropagation等のアルゴリズムを実行する。また、例えば、プロセッサ242は、AIモデル自体が、内部でマスクを計算し、特徴量テンソルのマスク処理等を行っている場合、当該マスクをAI注視領域として利用してもよい。また、例えば、プロセッサ242は、画像データを入力として、特定の物体を検出し、当該物体の位置をBounding Box、セグメンテーション画像等の形式で出力するAIについては、物体が検出された領域を、AI注視領域として利用してもよい。
なお、AI注視領域の推定処理は、これらに限定されるものではなく、どのようなアルゴリズムで推定されてもよい。また、AIモデルは、ニューラルネットワークに限定されるものではなく、SVM(Support Vector Machine)等の他の機械学習アルゴリズムであってもよいし、機械学習以外のアルゴリズムであってもよい。
ステップS1206では、プロセッサ242は、ループA内で推定したAI注視領域を包含するヒートマップを生成する。例えば、プロセッサ242は、ループAによりAI注視領域を表す複数のヒートマップが得られた場合、これらのデータ点毎の最大値を計算して、新たなヒートマップを生成する。この処理により、学習データに関連付けられた1以上のAIモデルについてAI注視領域となっている領域には、生成されたヒートマップにおいて相対的に高い値が設定される。ヒートマップの生成処理は、これに限定されるものではなく、複数のAI注視領域の推定結果から、ヒートマップを計算する任意のアルゴリズムが用いられてよい。
ステップS1206の処理の後、プロセッサ242は、ステップS1206の結果として得たヒートマップを戻り値として、AI注視領域推定処理を終了する(ステップS1207)。
なお、AI注視領域に加え、人間の注視点を推定するモデルを使用することにより、人間の注視領域にも高い値を設定したヒートマップを戻り値としてもよい。
(1-8)データ書き込み処理
図13を用いて、ストレージシステム140がデータを書き込む処理(データ書き込み処理)について説明する。
図13は、データ書き込み処理の一例を示す図である。
プロセッサ242は、データ書き込み処理を、フロントエンドインターフェース241におけるデータ書き込み要求の受領を契機として開始する(ステップS1300)。なお、センササーバ210とストレージシステム140との間の経路は、AI処理基盤130が中継する経路でもよいし、ストレージシステム140のフロントエンドインターフェース241をスイッチ220に接続するネットワークトポロジとして、センササーバ210とストレージシステム140とを直接接続する経路でもよい。
ステップS1301では、プロセッサ242は、フロントエンドインターフェース241にて受領した書き込み対象のデータを、当該データのデータ生成源110に対応する圧縮器142により圧縮する。
ステップS1302では、プロセッサ242は、圧縮データを記憶ドライブ146に記憶する。なお、記憶ドライブ146でデータを管理する方法は、ファイルシステム、リレーショナルデータベース等、任意の手段を用いてよい。
ステップS1302の処理の後、プロセッサ242は、データ書き込み処理を終了する(ステップS1303)。
(1-9)データ読み出し処理
図14を用いて、ストレージシステム140がデータを読み出す処理(データ読み出し処理)について説明する。
図14は、データ読み出し処理の一例を示す図である。
プロセッサ242は、データ読み出し処理を、フロントエンドインターフェース241におけるデータ読み出し要求の受領を契機として開始する(ステップS1400)。なお、データ読み出し要求は、管理端末120、AI処理基盤130等が発行する。データ読み出し要求の発行主体(発行元)については、これらに限定されるものではなく、その他の任意の装置がデータ読み出し要求を発行してもよい。
また、管理端末120とストレージシステム140との間の経路は、AI処理基盤130が中継する経路でもよいし、ストレージシステム140のフロントエンドインターフェース241をスイッチ220に接続するネットワークトポロジとして、管理端末120とストレージシステム140とを直接接続する経路でもよい。
ステップS1401では、プロセッサ242は、フロントエンドインターフェース241にて受領したデータ読み出し要求に対応する圧縮データを、記憶ドライブ146から読み出す。
ステップS1402では、プロセッサ242は、ステップS1401にて読み出した圧縮データを、圧縮データに対応するデータ生成源110の伸長器143により伸長する。
ステップS1403では、プロセッサ242は、ステップS1402にて伸長データを、フロントエンドインターフェース241を介して、データ読み出し要求の発行元に応答する。
ステップS1403の処理の後、プロセッサ242は、データ読み出し処理を終了する(ステップS1404)。
なお、データの読み出し要求に対して、データの伸長をストレージシステム140の伸長器143により伸長する以外にも、管理端末120等のデータ読み出し要求の発行元に圧縮データを応答し、当該発行元に伸長処理をさせてもよい。
本実施の形態によれば、AIが動作可能な品質を保ちつつ、圧縮率を改善することができる。
(2)第2の実施の形態
本実施の形態の概要について、図15を用いて説明する。なお、本実施の形態では、第1の実施の形態と同じ構成については、同じ符号を用いてその説明を適宜省略する。
本実施の形態では、ストレージシステム140は、データ生成源110が生成したデータの書き込み要求に対し、当該データのAI注視領域を、AI注視領域推定器144により推定し、推定結果をJPEG2000等、特定の領域(例えば、興味領域)に多くの符号量を割り当てることができるRoI(Region of Interest)機能を有する圧縮器1501の興味領域として設定し、当該データを圧縮器1501により圧縮し、記憶ドライブ146に記憶する。
圧縮器1501は、JPEG2000に限定されるものではなく、RoI機能を有する任意の圧縮アルゴリズムでよい。その他、アプリケーション管理テーブル更新処理、AIモデル管理テーブル更新処理、AI注視領域推定処理等、説明を省略した処理については、第1の実施の形態と同一である。
なお、データの読み出し要求に対して、データの伸長をストレージシステム140の伸長器1502により伸長する以外にも、管理端末120等のデータ読み出し要求の発行元に圧縮データを応答し、当該発行元に伸長処理をさせてもよい。
本実施の形態によれば、AIが動作可能な品質を保ちつつ、圧縮率を改善することができる。
(3)第3の実施の形態
本実施の形態では、ストレージシステム140は、管理端末120を介してユーザに指定させた、品質指標、AI注視領域の品質目標、およびAI注視領域外の品質目標に基づいて品質を計算する。なお、本実施の形態では、第1の実施の形態と同じ構成については、同じ符号を用いてその説明を適宜省略する。
図16は、本実施の形態におけるAIモデル管理テーブル1600の一例を示す図である。
AIモデル管理テーブル1600は、第1の実施の形態におけるAIモデル管理テーブル141の列に加え、品質指標列1601、AI注視領域品質目標列1602、AI注視領域外品質目標列1603を備える。これらのフィールドには、例えば、管理端末120を介して、ユーザに指定させた値が設定される。
品質指標列1601は、入力データ名列801毎に、当該データの品質を指標化するための関数を管理する。AI注視領域品質目標列1602は、AI注視領域における品質の目標値を管理する。AI注視領域外品質目標列1603は、AI注視領域以外の領域における品質の目標値を管理する。
本実施の形態においては、AI注視領域推定処理のヒートマップ生成処理において、複数AIモデルのヒートマップをマージする処理(ステップS1206)を行わず、各AIモデルについて、AI注視領域の推定結果を返す。つまり、AI注視領域推定処理は、当該データに紐づくAIモデルの数に等しい枚数のヒートマップを返す。
図17は、本実施の形態における圧縮伸長器学習処理の一例を示す図である。
ステップS1700~ステップS1705は、AIモデル管理テーブル1600の行のうち、入力データ名列801に、引数で指定された入力データ名が記憶されている各行について、ループするステップ群である(ループB)。
ステップS1701では、プロセッサ242は、ループBが指す行のAIモデル名列802に対応するAI注視領域のヒートマップを、ステップS1102の引数から選択し、ヒートマップを基に重みを計算する。重みは、例えば、ヒートマップのうち、ストレージシステム140にプリセットされた閾値を上回るデータ点には「1」を、その他のデータ点には「0」を設定することで二値化することにより生成できる。閾値、二値化後に設定する値は、管理端末120を介してユーザに指定させてもよい。その他、ヒートマップを任意の関数に適用することで、重みを計算してもよい。
ステップS1702およびステップS1703は、第1の実施の形態における圧縮伸長学習処理のステップS1104およびステップS1105と同一である。
ステップS1704では、プロセッサ242は、ループBが指す行の品質指標列1601、AI注視領域品質目標列1602、AI注視領域外品質目標列1603に記憶された値を基に、学習データと伸長データとの間の品質を計算する。
プロセッサ242は、例えば、上記の式(2)において、二乗平均誤差の計算式を、品質指標列1601で指定された品質指標の計算式に、tをAI注視領域品質目標列1602に指定された値に、tをAI注視領域外品質目標列1603に設定された値に、それぞれ置き換えた式により、品質を計算する。なお、式(2)を構成する各項に、適当な係数が設定されてもよい。品質の計算式については、式(2)に限定されるものではなく、学習データ、伸長データ、重み、AI注視領域品質目標、AI注視領域外品質目標の4つを入力として、スカラ値を計算する任意の関数であってよい。
ステップS1706では、プロセッサ242は、ステップS1202で計算した品質の和をLoss関数として、圧縮器142と伸長器143とに含まれるニューラルネットワークの学習パラメタを更新する。例えば、プロセッサ242は、逆誤差伝播法により、学習パラメタを更新する。学習パラメタの更新アルゴリズムについては、逆誤差伝播法に限定されるものではなく、例えば、SGD、Adam等のアルゴリズムが用いられてもよい。
また、プロセッサ242は、品質の和を計算する際に、各品質を適当な係数により重み付けしてもよい。また、Loss関数として、ステップS1106で計算した加重誤差の他に、圧縮率を表す項、圧縮伸長器を構成するニューラルネットワークの学習パラメタを正則化するための項等が追加されてもよい。この場合、品質、圧縮率、正則化等を表す各項を、予め定められた定数により加算したものをLoss関数としてもよいし、積算したものをLoss関数としてもよいし、その他、各項から1つのスカラ値を計算する任意の関数を適用してLoss関数としてもよい。
上記の方法により品質を計算する方法以外にも、品質指標列1601が同一の、2つのAIモデル「AI1」、「AI2」について、AI注視領域が重複する領域が存在する場合、重複領域の品質、「AI1」のみのAI注視領域の品質、「AI2」のみのAI注視領域の品質、いずれのAIモデルのAI注視領域でもない領域の品質をそれぞれ計算し、それぞれの目標値として、max(tp1,tp2),max(tp1,tn2),max(tn1,tp2),max(tn1,tn2)として、上記の式(2)と同様に計算してもよい。ただし、tp1,tn1,tp2,tn2は、それぞれ、「AI1」のAI注視領域品質目標列1602、「AI1」のAI注視領域外品質目標列1603、「AI2」のAI注視領域品質目標列1602、「AI2」のAI注視領域外品質目標列1603である。また、AIモデルの数が3以上の場合について、同様に計算した品質を用いてもよい。
本実施の形態によれば、データ生成源およびAIモデル毎に目標値が設定可能となるので、各AIモデルに求められる品質をより精緻に満たすことが可能となるため、圧縮率をより改善することができる。
(4)第4の実施の形態
図18は、本実施の形態の概要を表す。第1の実施の形態~第3の実施の形態では、AI注視領域に基づいて画質を制御するように、圧縮器142を学習させている。これは、圧縮器142が、内部的にAI注視領域の推定が行われるように学習されることを意味する。しかしながら、圧縮器142で行われるAI注視領域の推定は、誤差を伴う可能性がある。特に、本来、AI注視領域であるにも関わらず、AI注視領域以外であると判定される領域が存在すると、当該領域の品質が低下する可能性がある。
この点、本実施の形態では、圧縮器142を構成するニューラルネットワークとして、ベイジアンニューラルネットワークを用いることで、圧縮データに加え、各データ点におけるAI注視領域の推定の不確かさ(Uncertainty)を出力するように、圧縮器142を学習させる。なお、本実施の形態では、第1の実施の形態と同じ構成については、同じ符号を用いてその説明を適宜省略する。
領域抽出部1800は、データの書き込み時に、圧縮器142により、AI注視領域の推定の不確かさを計算し、不確かさが閾値以上の領域の書き込みデータのオリジナルの値を抽出し、圧縮データと合わせて、記憶ドライブ146に記憶する。閾値は、ストレージシステム140にプリセットされた値であってもよいし、管理端末120を介してユーザに指定させた値であってもよい。
オリジナルの値を抽出して記憶する以外にも、圧縮率、品質が異なる複数の圧縮器を予め学習させておき、不確かさが高い領域が存在する場合には、より高品質の圧縮器で圧縮し直し、当該圧縮器による圧縮データを記憶ドライブ146に記憶してもよい。
読み出し時には、記憶ドライブ146から読み出した圧縮データを伸長器143で伸長した後、記憶ドライブ146からオリジナルの値を読み出し、オリジナルの値があるデータ点については、伸長データを当該オリジナル値で置き換えたデータを、読み出し要求元に応答する。
本実施の形態によれば、不確かさが閾値以上の領域についてはオリジナル値が保持され、読み出し時に置換されるので、AI注視領域の推定ミスに伴う品質の低下を回避することができる。
以上、本発明が適用されるAI処理基盤とストレージシステムとについて説明した。
(5)付記
上述の実施の形態には、例えば、以下のような内容が含まれる。
上述の実施の形態においては、本発明をデータ処理システムに適用するようにした場合について述べたが、本発明はこれに限らず、この他種々のシステム、装置、方法、プログラムに広く適用することができる。
AI処理基盤の機能(アプリケーション管理テーブル更新プログラム511、データベースプログラム512等の機能)は、例えば、プロセッサ232がプログラム237をRAM233に読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路等のハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。また、AI処理基盤の機能の一部は、AI処理基盤と通信可能な他のコンピュータにより実現されてもよい。
ストレージシステム140の機能(AIモデル管理テーブル更新プログラム611、圧縮伸長器学習プログラム612、AI注視領域推定プログラム613、品質計算プログラム614、データ書き込みプログラム615、データ読み出しプログラム616等の機能)は、例えば、プロセッサ242がプログラム245をRAM243に読み出して実行すること(ソフトウェア)により実現されてもよいし、専用の回路等のハードウェアにより実現されてもよいし、ソフトウェアとハードウェアとが組み合わされて実現されてもよい。また、ストレージシステム140の機能の一部は、ストレージシステム140と通信可能な他のコンピュータにより実現されてもよい。
また、上述の実施の形態において、各テーブルの構成は一例であり、1つのテーブルは、2以上のテーブルに分割されてもよいし、2以上のテーブルの全部または一部が1つのテーブルであってもよい。
また、上述の実施の形態において、説明の便宜上、XXテーブル、XXファイルを用いて各種のデータを説明したが、データ構造は限定されるものではなく、XX情報等と表現してもよい。
また、上記の説明において、各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD等の記憶装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。
上述した実施の形態は、例えば、以下の特徴的な構成を有する。
プロセッサ(例えば、プロセッサ242)と、記憶装置(RAM243、記憶ドライブ146等)と、を備え、データを圧縮および伸長する学習済みの圧縮伸長器(例えば、圧縮器142および伸長器143)を用いてデータを入出力するデータ処理システム(例えば、データ処理システム100)において、学習データを用いて、データモデル(例えば、AIモデル)が注視する領域を推定する推定部(AI注視領域推定器144、AI注視領域推定プログラム613等)と、前記注視する領域に基づいて各領域を重み付けした評価関数(例えば、LOSS関数)と、前記圧縮伸長器が前記学習データを圧縮および伸長した結果とに基づいて、前記圧縮伸長器を学習させる学習部(例えば、圧縮伸長器学習プログラム612)と、を備える。
上記構成では、データモデルが注視する領域に応じて学習が行われるので、例えば、当該領域以外の領域の圧縮率を当該領域の圧縮率よりも高くすることができ、データモデルが動作可能な品質を保ちつつ、データモデルが用いるデータの圧縮率を改善することができる。
前記学習部は、前記圧縮および伸長前の学習データと圧縮および伸長後の学習データとの前記領域ごとの差分と、前記領域ごとの評価関数と、に基づいて、前記圧縮伸長器のパラメタを変更することで、学習させる。
データを生成する生成源(例えば、データ生成源110)と、上記データを用いるデータモデルと、が対応付けられた管理情報(例えば、AIモデル管理テーブル141)を管理する管理部(例えば、AIモデル管理テーブル更新プログラム611)を備え、上記推定部は、上記生成源の学習データについて、上記管理情報をもとに上記学習データに対応するデータモデルを特定し、特定したデータモデルが注視する領域を推定し(例えば、図12参照)、上記学習部は、上記学習データと、上記生成源に対応する圧縮器および伸長器が用いられて上記学習データが圧縮されてから伸長されたデータと、上記学習データについて上記推定部により推定された領域の重みとを用いて計算した指標を評価関数として上記圧縮伸長器を学習する(例えば、ステップS1106、ステップS1107参照)。
上記生成源は、データを生成する1以上の主体である。例えば、上記生成源は、センサであってもよいし、複数のセンサのデータを処理して出力する装置であってもよい。
上記構成では、生成源に対応付けられているデータモデルが注視する領域に重み付けした指標を評価関数として圧縮伸長器が学習されるので、例えば、生成源に対応付けられている全てのデータモデルが動作可能な品質を保ちつつ、生成源からのデータの圧縮率を改善することができる。また、例えば、上記構成では、データモデルが注視する領域がデータモデルごとに異なっていたとしても、管理情報をもとに、どのデータモデルの領域に従って圧縮率を制御すればよいかが特定できるようになる。
データを生成する生成源(例えば、データ生成源110)と、上記データを用いるデータモデルとを指定可能なインターフェース部(第1のアプリケーション登録画面300、第2のアプリケーション登録画面400等)と、データモデル(例えば、AIモデル)を有し、上記データモデルを実行する処理基盤(例えば、AI処理基盤130)から、上記インターフェース部により指定されたデータモデルを取得する取得部と、上記推定部と、上記管理部とを含んで構成されるストレージシステム(例えば、ストレージシステム140)と、を備え、上記管理部は、上記インターフェース部により指定された生成源と上記取得部により取得されたデータモデルとを対応付けて上記管理情報を生成する(例えば、図10参照)。
上記管理情報では、データを生成する生成源(例えば、生成源110)と、上記データを用いるデータモデル(例えば、AIモデル)と、上記データモデルが注視する領域の品質の目標値(例えば、AI注視領域品質目標列1602の値)と、上記領域以外の領域の品質の目標値(例えば、AI注視領域外品質目標列1603の値)とが対応付けられ、上記学習部は、上記学習データと、上記生成源に対応する圧縮伸長器が用いられて上記学習データが圧縮されてから伸長されたデータと、上記学習データについて上記推定部により推定された領域の重みと、上記領域の品質の目標値と、上記領域以外の領域の品質の目標値とを用いて計算した指標を評価関数として上記圧縮伸長器を学習する(例えば、ステップS1704、ステップS1705参照)。
上記構成では、例えば、領域の品質の目標値tが当該領域以外の領域の品質の目標値tよりも小さい値となるように設定すれば、当該領域以外の領域の誤差がtに達した後は、同誤差の減少が評価関数の減少に寄与しなくなるため、当該領域の誤差を優先して削減するように、圧縮伸長器が学習される。上記構成によれば、生成源およびデータモデル毎に目標値が設定可能となるので、各データモデルに求められる品質をより精緻に満たすことができ、圧縮率が改善する。
上記圧縮伸長器は、圧縮器と伸長器とを有し、上記領域の推定の不確かさを計算し、不確かさが閾値以上の領域を特定し、特定した領域に対応する上記データにおける領域データまたは上記圧縮器より高品質の圧縮器で上記データを圧縮した圧縮データを置換用データとして保持する保持部(例えば、領域抽出部1800)と、上記データの読み出しに対し、上記データの圧縮データを伸長器で伸長し、伸長データを上記置換用データで置換した置換済みデータを、上記データの要求元に応答する応答部(例えば、データ読み出しプログラム)と、を備える。
上記圧縮部は、ストレージシステム(例えば、ストレージシステム140)に設けられていてもよいし、ストレージシステム外(例えば、AI処理基盤130)に設けられていてもよい。
上記構成では、例えば、不確かさが閾値以上の領域については置換用データが保持され、読み出し時に置換されるので、不確かさが閾値以上の領域における品質の低下を回避することができる。
RoI(Region of Interest)機能を有する圧縮伸長器(例えば、圧縮器1501)を用いる。
上記構成によれば、例えば、圧縮伸長器の学習をすることなく、データモデルが動作可能な品質を保ちつつ、データモデルが用いるデータの圧縮率を改善することができる。
また上述した構成については、本発明の要旨を超えない範囲において、適宜に、変更したり、組み替えたり、組み合わせたり、省略したりしてもよい。
100……データ処理システム、142……圧縮器、143……伸長器、144……AI注視領域推定器。

Claims (10)

  1. プロセッサと、
    記憶装置と、
    を備え、
    データを圧縮および伸長する学習済みの圧縮伸長器を用いてデータを入出力するデータ処理システムにおいて、
    学習データを用いて、データモデルが注視する領域を推定する推定部と、
    前記注視する領域に基づいて各領域を重み付けした評価関数と、前記圧縮伸長器が前記学習データを圧縮および伸長した結果とに基づいて、前記圧縮伸長器を学習させる学習部と、
    データを生成する生成源と、前記データを用いるデータモデルと、が対応付けられた管理情報を管理する管理部と、
    を備え、
    前記推定部は、前記生成源の学習データについて、前記管理情報をもとに前記学習データに対応するデータモデルを特定し、特定したデータモデルが注視する領域を推定し、
    前記学習部は、前記学習データと、前記生成源に対応する圧縮伸長器が用いられて前記学習データが圧縮されてから伸長されたデータと、前記学習データについて前記推定部により推定された領域の重みとを用いて計算した指標を評価関数として前記圧縮伸長器を学習する、
    データ処理システム。
  2. データを生成する生成源と、前記データを用いるデータモデルとを指定可能なインターフェース部と、
    データモデルを有し、前記データモデルを実行する処理基盤から、前記インターフェース部により指定されたデータモデルを取得する取得部と、前記推定部と、前記管理部とを含んで構成されるストレージシステムと、
    を備え、
    前記管理部は、前記インターフェース部により指定された生成源と前記取得部により取得されたデータモデルとを対応付けて前記管理情報を生成する、
    請求項1に記載のデータ処理システム。
  3. 前記管理情報では、データを生成する生成源と、前記データを用いるデータモデルと、前記データモデルが注視する領域の品質の目標値と、前記領域以外の領域の品質の目標値とが対応付けられ、
    前記学習部は、前記学習データと、前記生成源に対応する圧縮伸長器が用いられて前記学習データが圧縮されてから伸長されたデータと、前記学習データについて前記推定部により推定された領域の重みと、前記領域の品質の目標値と、前記領域以外の領域の品質の目標値とを用いて計算した指標を評価関数として前記圧縮伸長器を学習する、
    請求項1に記載のデータ処理システム。
  4. プロセッサと、
    記憶装置と、
    を備え、
    データを圧縮および伸長する学習済みの圧縮伸長器を用いてデータを入出力するデータ処理システムにおいて、
    学習データを用いて、データモデルが注視する領域を推定する推定部と、
    前記注視する領域に基づいて各領域を重み付けした評価関数と、前記圧縮伸長器が前記学習データを圧縮および伸長した結果とに基づいて、前記圧縮伸長器を学習させる学習部と、
    を備え、
    前記圧縮伸長器は、圧縮器と伸長器とを有し、
    前記領域の推定の不確かさを計算し、不確かさが閾値以上の領域を特定し、特定した領域に対応する前記データにおける領域データまたは前記圧縮器より高品質の圧縮器で前記データを圧縮した圧縮データを置換用データとして保持する保持部と、
    前記データの読み出しに対し、前記データの圧縮データを伸長器で伸長し、伸長データを前記置換用データで置換した置換済みデータを、前記データの要求元に応答する応答部と、
    を備える、
    データ処理システム。
  5. RoI(Region of Interest)機能を有する圧縮伸長器を用いる、
    請求項1に記載のデータ処理システム。
  6. プロセッサと、
    記憶装置と、
    を備え、
    データを圧縮および伸長する学習済みの圧縮伸長器を用いてデータを入出力するデータ処理システムにおけるデータ圧縮方法であって、
    推定部が、学習データを用いて、データモデルが注視する領域を推定することと、
    学習部が、前記注視する領域に基づいて各領域を重み付けした評価関数と、前記圧縮伸長器が前記学習データを圧縮および伸長した結果とに基づいて、前記圧縮伸長器を学習させることと、
    管理部が、データを生成する生成源と、前記データを用いるデータモデルと、が対応付けられた管理情報を管理することと、
    を含み、
    前記推定部は、前記生成源の学習データについて、前記管理情報をもとに前記学習データに対応するデータモデルを特定し、特定したデータモデルが注視する領域を推定し、
    前記学習部は、前記学習データと、前記生成源に対応する圧縮伸長器が用いられて前記学習データが圧縮されてから伸長されたデータと、前記学習データについて前記推定部により推定された領域の重みとを用いて計算した指標を評価関数として前記圧縮伸長器を学習する、
    データ圧縮方法。
  7. プロセッサと、
    記憶装置と、
    を備え、
    データを圧縮および伸長する学習済みの圧縮伸長器を用いてデータを入出力するデータ処理システムにおけるデータ圧縮方法であって、
    前記圧縮伸長器は、圧縮器と伸長器とを有し、
    推定部が、学習データを用いて、データモデルが注視する領域を推定することと、
    学習部が、前記注視する領域に基づいて各領域を重み付けした評価関数と、前記圧縮伸長器が前記学習データを圧縮および伸長した結果とに基づいて、前記圧縮伸長器を学習させることと、
    保持部が、前記領域の推定の不確かさを計算し、不確かさが閾値以上の領域を特定し、特定した領域に対応する前記データにおける領域データまたは前記圧縮器より高品質の圧縮器で前記データを圧縮した圧縮データを置換用データとして保持することと、
    応答部が、前記データの読み出しに対し、前記データの圧縮データを伸長器で伸長し、伸長データを前記置換用データで置換した置換済みデータを、前記データの要求元に応答することと、
    を含む、
    データ圧縮方法。
  8. プロセッサと、
    記憶装置と、
    を備え、
    データを圧縮および伸長する学習済みの圧縮伸長器を用いてデータを入出力するコンピュータにおいて、
    学習データを用いて、データモデルが注視する領域を推定し、
    前記注視する領域に基づいて各領域を重み付けした評価関数と、前記圧縮伸長器が前記学習データを圧縮および伸長した結果とに基づいて、前記圧縮伸長器を学習させ、
    データを生成する生成源と、前記データを用いるデータモデルと、が対応付けられた管理情報を管理し、
    前記生成源の学習データについて、前記管理情報をもとに前記学習データに対応するデータモデルを特定し、特定したデータモデルが注視する領域を推定し、
    前記学習データと、前記生成源に対応する圧縮伸長器が用いられて前記学習データが圧縮されてから伸長されたデータと、前記学習データについて前記推定された領域の重みとを用いて計算した指標を評価関数として前記圧縮伸長器を学習する、
    ことを前記コンピュータに実行させる、
    コンピュータプログラム。
  9. 前記管理情報では、データを生成する生成源と、前記データを用いるデータモデルと、前記データモデルが注視する領域の品質の目標値と、前記領域以外の領域の品質の目標値とが対応付けられ、
    前記学習データと、前記生成源に対応する圧縮伸長器が用いられて前記学習データが圧縮されてから伸長されたデータと、前記学習データについて前記推定された領域の重みと、前記領域の品質の目標値と、前記領域以外の領域の品質の目標値とを用いて計算した指標を評価関数として前記圧縮伸長器を学習する、
    ことを前記コンピュータに実行させる、請求項8に記載のコンピュータプログラム。
  10. プロセッサと、
    記憶装置と、
    を備え、
    データを圧縮および伸長する学習済みの圧縮伸長器を用いてデータを入出力するコンピュータにおいて、
    学習データを用いて、データモデルが注視する領域を推定し、
    前記注視する領域に基づいて各領域を重み付けした評価関数と、前記圧縮伸長器が前記学習データを圧縮および伸長した結果とに基づいて、前記圧縮伸長器を学習させ、
    前記圧縮伸長器は、圧縮器と伸長器とを有し、
    前記領域の推定の不確かさを計算し、不確かさが閾値以上の領域を特定し、特定した領域に対応する前記データにおける領域データまたは前記圧縮器より高品質の圧縮器で前記データを圧縮した圧縮データを置換用データとして保持し、
    前記データの読み出しに対し、前記データの圧縮データを伸長器で伸長し、伸長データを前記置換用データで置換した置換済みデータを、前記データの要求元に応答する、
    ことを前記コンピュータに実行させる、
    コンピュータプログラム。
JP2020038808A 2020-03-06 2020-03-06 データ処理システムおよびデータ圧縮方法 Active JP7441682B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020038808A JP7441682B2 (ja) 2020-03-06 2020-03-06 データ処理システムおよびデータ圧縮方法
US17/642,843 US11842055B2 (en) 2020-03-06 2021-03-04 Data processing system and data compression method
PCT/JP2021/008346 WO2021177394A1 (ja) 2020-03-06 2021-03-04 データ処理システムおよびデータ圧縮方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020038808A JP7441682B2 (ja) 2020-03-06 2020-03-06 データ処理システムおよびデータ圧縮方法

Publications (2)

Publication Number Publication Date
JP2021140554A JP2021140554A (ja) 2021-09-16
JP7441682B2 true JP7441682B2 (ja) 2024-03-01

Family

ID=77613488

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020038808A Active JP7441682B2 (ja) 2020-03-06 2020-03-06 データ処理システムおよびデータ圧縮方法

Country Status (3)

Country Link
US (1) US11842055B2 (ja)
JP (1) JP7441682B2 (ja)
WO (1) WO2021177394A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023242927A1 (ja) * 2022-06-13 2023-12-21 日本電信電話株式会社 データ管理装置、データ管理方法、及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985853B2 (en) * 2002-02-28 2006-01-10 Broadcom Corporation Compressed audio stream data decoder memory sharing techniques
JP3966461B2 (ja) * 2002-08-09 2007-08-29 株式会社リコー 電子カメラ装置
JP4757038B2 (ja) 2006-01-25 2011-08-24 株式会社日立製作所 ストレージシステム及び記憶制御装置
JP6826021B2 (ja) 2017-11-20 2021-02-03 株式会社日立製作所 ストレージシステム
US10757482B2 (en) * 2017-12-05 2020-08-25 Fdn. for Res.&Bus., Seoul Nat. Univ. of Sci.&Tech. System and method for predicting user viewpoint using location information of sound source in 360 VR contents

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
AKUTSU Hiroaki and NARUKO Takahiro,End-to-End Learned ROI Image Compression,CVPR 2019 open access [online],2019年,[検索日 2021.05.10], インターネット:<URL: https://openaccess.thecvf.com/content_CVPRW_2019/papers/CLIC%202019/Akutsu_End-to-End_Learned_ROI_Image_Compression_CVPRW_2019_paper.pdf>
CAI Chunlei et al.,End-to-End Optimized ROI Image Compression,IEEE Transactions on Image Processing [online],IEEE,2019年12月25日,Vol.29,pp.3442 - 3457,[検索日 2021.05.10], インターネット:<URL: https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8943263>,<DOI: 10.1109/TIP.2019.2960869>

Also Published As

Publication number Publication date
US20220374156A1 (en) 2022-11-24
JP2021140554A (ja) 2021-09-16
WO2021177394A1 (ja) 2021-09-10
US11842055B2 (en) 2023-12-12

Similar Documents

Publication Publication Date Title
CN114155543B (zh) 神经网络训练方法、文档图像理解方法、装置和设备
US10936950B1 (en) Processing sequential interaction data
Prabhakaran Multimedia database management systems
US20190333285A1 (en) Delivery of a time-dependent virtual reality environment in a computing system
JP6569047B1 (ja) 学習方法、コンピュータプログラム、分類器、及び生成器
CN112889043A (zh) 以用户为中心的浏览器位置
CN106970958B (zh) 一种流文件的查询与存储方法和装置
US10762902B2 (en) Method and apparatus for synthesizing adaptive data visualizations
US20210256427A1 (en) Automated Computer Operating System Optimization
CN113656587B (zh) 文本分类方法、装置、电子设备及存储介质
JP7242994B2 (ja) ビデオイベント識別方法、装置、電子デバイス及び記憶媒体
US10146659B2 (en) Large event log replay method and system
JP7441682B2 (ja) データ処理システムおよびデータ圧縮方法
CN112970011A (zh) 记录查询优化中的谱系
JP6868576B2 (ja) 事象提示システムおよび事象提示装置
CN115994558A (zh) 医学影像编码网络的预训练方法、装置、设备及存储介质
US11122335B2 (en) Wishing television
JP7328799B2 (ja) ストレージシステムおよび記憶制御方法
KR20220169695A (ko) 전자장치 및 그 제어방법
EP3624065A1 (en) Classification of knowledge management assets
CN116468096B (zh) 一种模型训练方法、装置、设备及可读存储介质
US20230418429A1 (en) Computer-readable recording medium storing information processing program, information processing method, and information processing apparatus
US11983554B2 (en) Automating semantically-related computing tasks across contexts
JP5764448B2 (ja) 文書ランキングスコアの動的更新のための方法および装置
US20230111146A1 (en) Systems and methods for integrating knowledge from a plurality of data sources

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220725

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230829

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231012

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20231128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240109

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20240206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240219

R150 Certificate of patent or registration of utility model

Ref document number: 7441682

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150