JP2020155064A - 情報処理装置、方法、及びプログラム - Google Patents

情報処理装置、方法、及びプログラム Download PDF

Info

Publication number
JP2020155064A
JP2020155064A JP2019055560A JP2019055560A JP2020155064A JP 2020155064 A JP2020155064 A JP 2020155064A JP 2019055560 A JP2019055560 A JP 2019055560A JP 2019055560 A JP2019055560 A JP 2019055560A JP 2020155064 A JP2020155064 A JP 2020155064A
Authority
JP
Japan
Prior art keywords
application
user
information
search
information processing
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.)
Granted
Application number
JP2019055560A
Other languages
English (en)
Other versions
JP7341690B2 (ja
Inventor
毅 石倉
Takeshi Ishikura
毅 石倉
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP2019055560A priority Critical patent/JP7341690B2/ja
Priority to US16/821,751 priority patent/US11461418B2/en
Priority to CN202010195692.5A priority patent/CN111723283A/zh
Publication of JP2020155064A publication Critical patent/JP2020155064A/ja
Priority to JP2023133943A priority patent/JP2023154087A/ja
Application granted granted Critical
Publication of JP7341690B2 publication Critical patent/JP7341690B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/908Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9538Presentation of query results
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/0485Scrolling or panning
    • G06F3/04855Interaction with scrollbars
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Library & Information Science (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】 従来から、ユーザーが、アプリケーションに対して適切な検索条件を設定することが困難な場合があった。【解決手段】 ユーザーの言動に対応するデータとアプリケーションでの検索処理に用いるべき情報との関係性を学習したモデルを利用した推定処理を実行するオペレーティングシステムが実行される情報処理装置であって、アプリケーションが、該アプリケーションの利用前などに行われたユーザーの入力に基づく操作履歴を入力データとして前記推定処理を実行することで出力された推定結果が記録されている際に、前記オペレーティングシステムから前記推定結果を取得し、前記推定結果に含まれる情報を用いて検索処理を実行し、その結果を用いた表示を行うことを特徴とする。【選択図】 図8

Description

本発明は、機械学習などの結果を用いて、アプリケーションの使い勝手を向上させるための技術に関する。
従来から、アプリケーションはユーザーの入力操作を受け付けて、その操作に対応する情報提供を行っていた。例えば、検索ワードや画像データを入力することで、当該入力に類似する検索結果を表示していた。
機械学習の技術を用いた検索技術として特許文献1がある。特許文献1では、取引対象と当該取引対象が属するカテゴリとの間の関係性を学習した学習器を用いて、アプリケーションに対して入力された撮影画像から抽出された対象物が属するカテゴリを推定する。その上で、推定されたカテゴリと該対象物の特徴量とを用いて、電子商店街から取引対象を検索している。
特開2018−190293号公報
特許文献1では、検索結果を得るために撮影画像の入力が必要である。一方で、検索を行うユーザーはアプリケーションに対して、適切な検索条件を入力することができない場合がある。過去の情報や、未知の情報を検索したい場合には、検索条件として適切な画像データが手元になかったり、検索ワードが思いつかなかったりする。そのようなケースにおいては、アプリケーションにとって適切な検索条件を考えること自体が煩雑となる場合がある。
また、アプリケーションで検索を行おうとするユーザーは、当該アプリケーションの起動の前後で、検索対象のヒントとなるような情報を話したり、行動をとっていたりする可能性がある。しかしながら、そのようなユーザーの言動がアプリケーション起動前に行われていた場合には、アプリケーション起動後に、ユーザーがそのような言動に対応する情報を、アプリケーションに対して、検索条件として改めて設定する必要がある。このような作業も、ユーザーにとって困難な作業である場合がある。
よって、本発明は、例えば、ユーザーの言動に対応するデータとアプリケーションでの検索処理に用いるべき情報との関係性を学習したモデルを利用した推定処理を実行するオペレーティングシステムが実行される情報処理装置であって、前記オペレーティングシステムで、前記情報処理装置に対して行われたユーザーの入力、及び、前記情報処理装置とネットワークを介して通信可能な機器に対して行われた前記ユーザーの入力の少なくともいずれかに基づく操作履歴に含まれる情報を入力データとして、前記推定処理を実行することで出力された推定結果が記録されている際に、前記推定処理の結果の利用を許可することにユーザーが同意しているアプリケーションによる、前記オペレーティングシステムから、前記推定結果を取得する取得手段と、前記アプリケーションによる、前記取得された前記推定結果に含まれる情報を用いて検索処理を実行する検索手段と、前記アプリケーションによる、前記検索処理の結果を用いた表示を行うための表示制御手段と、を有することを特徴とする。
本発明に依れば、アプリケーションの起動の前後に、当該アプリケーション以外に対して行われたユーザーによる言動を反映した推定結果を利用して、ユーザーによるアプリケーションに対する操作、作業を減らすことが可能になる。
システム構成の例を示している。 モバイル装置のハードウェア構成の例を示す図である。 モバイル装置のソフトウェアのモジュール構成の例を示す図である。 学習済みモデルに対する入力に関するデータの例。 モバイル装置のOSによって実現される、学習済みモデルを利用した処理を含む一連の処理を説明するためのフローチャート。 学習済みモデルを用いて得られる出力に関するデータの例。 モバイル装置のOSによって実現される推定結果をアプリケーションに提供する処理を説明するためのフローチャート。 OSから情報提供を受けるアプリケーションにより実現される処理を説明するためのフローチャート。 本実施例におけるアプリケーションが提供する画面の例である。 応用例におけるアプリケーションにより実現される処理を説明するためのフローチャート。 応用例におけるアプリケーションが提供する画面の例である。
図1は、本実施例におけるシステム構成の例を示している。
101は、モバイル装置である。モバイル装置101は、例えば、スマートフォンやタブレット、ノートパソコンやウェアラブル端末などが含まれる。102は、音声アシスタント端末である。音声アシスタント端末102はユーザーの音声入力を受け付けて、該入力に対して行われた検索結果を応答する。103は、周辺機器である。周辺機器103はテレビや冷蔵庫、オーブンレンジなどのデジタル家電機器や、カーナビなど車載端末などが含まれる。
モバイル装置101は、音声アシスタント端末102や周辺機器103と、ネットワークを介して通信可能である。本実施例では、Bluetooth(登録商標)などの無線ネットワークを経由した通信を例にあげている。機器間の通信を実現するためには、他の接続形態であってもよい。
モバイル装置101は、通信を介して、音声アシスタント端末102からユーザーの音声入力に対応する情報を随時取得して、時刻と共に記録する。モバイル装置101は、通信を介して、周辺機器103からユーザーの音声入力や機能操作、位置情報などに対応する情報を随時取得して、時刻と共に記録する。
図2は、モバイル装置101などの情報処理装置のハードウェア構成の例を示す図である。
CPU201は、ROM203に記憶されたプログラムや、記憶装置204からRAM202にロードされたOS(オペレーティングシステム)やアプリケーション等のプログラムを実行する。すなわち、CPU201が、読み取り可能な記憶媒体に格納された該プログラムを実行することにより、後述する各フローチャートの処理を実行する各処理部として機能する。RAM202は、CPU201のメインメモリであり、ワークエリア等として機能する。タッチパネル206はモバイル装置101の表示部であり、入力機器でもある。タッチパネル206の表示部では、OSやアプリケーションによる機能実行の結果などを表示される。また、タッチパネル206へのユーザー操作が検出された場合に、対応するプログラムで所望の制御が実行されることになる。なお、モバイル装置101の入力機器はタッチパネルに限定されるものではない。例えば、マイク207による音声入力、カメラ209による画像入力も可能となっている。また、GPSなどの位置測定器210も、位置情報の入力機器となっている。
ネットワークI/F205は、ローカルネットワークに対して接続され、ネットワークに接続された機器と相互通信する。近距離通信I/F208は、例えばBluetoothやNear Field Communication(NFC)などの近距離通信の入出力を行うI/Fであり、接続された機器と相互通信を行う。モバイル装置101の各構成要素は内部バス210に接続され、相互に通信を行うことが可能である。
音声アシスタント端末102や周辺機器103についてもモバイル装置101と同等のハードウェア構成を備えている。つまり、プロセッサ、メモリ、記憶装置、ネットワークI/F、近距離通信I/F、及び、入力を受け付けるための機構などが少なくとも備えられている。また、周辺機器103については、さらに用途に応じたハードウェアが追加されることになる。
図3は、モバイル装置101のソフトウェアのモジュール構成の例を示す図である。この図では、本実施例のために、OSやアプリケーションなどの1以上のプログラムが実行されることで実現される処理の主体を表している。
301〜305は、OSにより提供されるサービスに対応するモジュールを示している。
収集部301は、タッチパネル206へのユーザー操作や、マイク207による音声入力を検出した際に、時刻(年月日時)や位置情報など共にその内容を記録する。また、音声アシスタント端末102や周辺機器103に対して、要求を行い、モバイル装置101またはモバイル装置101のユーザー(所有者)に係る操作の履歴情報を受信することで収集する。これらの情報は、図4(a)で示すように、記憶装置204で管理される。
なお、本発明は、モバイル装置101にインストールされたOS、アプリケーションのそれぞれ、さらにはそれらの組合せを含むものとする。
図4(a)は、モバイル装置101の内外で行われたユーザーによる手動操作や音声入力操作に関して、収集部301が収集した情報を格納したテーブルである。OS上で動作するアプリケーションについては、インストール時にOSに対する操作履歴の記録を許可するとのユーザーによる同意があった場合に、自動的に記録される。装置外のサービスについては、OSとの連携が可能、かつ、ユーザーによる同意があった場合に限り、各サービスから操作履歴を取得できる。このテーブルでは、各アプリケーション、サービス内で定義された形式で1レコードずつ記録される履歴をまとめて管理している。内容としては、時刻、機能情報(アプリケーションやサービスなどの機能の識別情報)、ユーザー情報、位置情報、操作内容などが含まれる。収集部301が収集する情報には、周辺機器103としてのテレビやデジタル家電により提供される番組情報や利用情報などが含まれても良い。
入力制御部302は、収集部301が収集した情報を、解析サービス部303に入力するベクトル化する。ベクトル化されたデータは、図4(b)で示す入力管理テーブルに随時、記録される。例えば、収集した情報は、入力データとするために、データ変換されたり、フィルタされたりする。解析サービス部303が語句単位の入力を処理する場合、履歴の操作内容に含まれる情報を語句単位に分割し、代名詞などを除き、名詞など必要な情報を抽出することで入力データを生成する。また、解析サービス部303は位置情報などを分析、推定処理の追加のパラメータとして利用することもあるため、位置情報も記録される。入力制御部302は、収集部301による情報収集に応じて動作することができるが、非同期に動作してもよい。
解析サービス部303は、図4(b)で管理される入力データを取得して、学習済みモデルを利用して推定処理を実行する、いわゆるAI(Artificial Intelligence)機能である。解析サービス部303利用する学習済みモデルは、図4(b)で管理される入力データ以外にも、解析対象の入力に紐付いて位置情報や、モバイル装置101の所有者のプロフィール情報をパラメータとして用いた推定処理を実行する。
図4(c)は、モバイル装置101に登録された所有者のプロフィール情報を示している。出身地や生年月日、性別、趣味、住所、職業などが含まれる。他にも、OSでサポートされる宗教や、所属するコミュニティーを任意に追加できる。
ここで、OSが提供する解析サービス部303は、モデルを再教育するクラウドサービスとネットワークI/F205を介して通信することが可能である。クラウドサービスは、解析サービス部303が利用するモデルを作成するための学習段階での処理を実現するために用意されたプラットフォームである。本実施例で利用される学習済みモデルは、OSがサポートできる入力元からの所定の形式のデータを大量に用意して学習された、該OS上で動作するアプリケーションの検索で利用される検索ワードとなり得る単語を出力するためのモデルである。OSがサポートできる入力元とは、OSが提供するマイクからの音声入力に対して検索を行うOSアシスタント機能や、所定のベンダーにより提供されている音声アシスタント端末102や周辺機器103などがある。OSを提供するベンダーのサービスで管理されるユーザーのプロフィール情報も併せて学習に利用される。なお、本実施例では、前述の入力に対して適切な検索結果が導出できる検索ワードを出力するために、SVM(Support Vector Machine)を用いた教師あり学習によりモデルを生成している。しかしながら、その他にも様々なアルゴリズムが適用可能であり、例えば、ディープラーニングを取り入れたニューラル・ネットワークが利用されても良い。
情報提供部304は、解析サービス部303による推定処理の結果を、連携するアプリケーションに対して提供する。OS上で動作するアプリケーションについては、インストール時などに、解析サービス部303からの推定結果によるリコメンドの受け付けを許可するとのユーザーによる同意があった場合に、情報提供が行われる。以降、解析サービスの連携機能が有効となっているアプリケーションは、本同意が既に行われていることとする。情報提供部304は、アプリケーションの起動時や、アプリケーションからの要求を受けて、アプリケーションに対して推定処理の結果を提供するためのAPI(Application Programming Interface)を公開している。
機能制御部305は、ユーザー操作を受け付けて、アプリケーションなどを起動する。
311〜313、321〜323は、OS上で動作するようインストールされた2つのアプリケーション(アプリケーションA、アプリケーションB)により提供されるサービスに対応するモジュールを示している。
機能部311、321は、アプリケーションが個別に備える機能を提供する。ウェブブラウザであればウェブサイトに係るHTML文書などを解析して、表示イメージを生成したり、スクリプトを実行したりする。ソーシャルネットワークのためのアプリケーションや、メッセージをやり取りするためのアプリケーションであれば、時系列に管理されたメッセージやユーザー情報を取得して処理する。表示制御部312、322は、機能部311、321による処理結果などを表示する。連携部313、323は、ユーザーの同意により機能し、情報提供部304を介して情報を取得する。取得された情報は、機能部311、321で処理され、表示制御部312、322により表示される。
図5は、モバイル装置101のOSにより実現される、学習済みモデルを利用した処理を含む一連の処理を説明するためのフローチャートである。本処理に係るプログラムは、学習済みモデルを利用するために、OSに組み込まれる形で提供されることを想定している。なお、ネットワークなどを介して外部から取得して追加でインストールされるプログラムで本処理が実現されても良い。
本処理は、OSが動作している間、数分おきなど、周期的に実行される。また、操作履歴が新しく記録された時など、それ以外のタイミングで実行されても良い。そして、情報提供の対象となるアプリケーションによる処理とは非同期に、バックグラウンドで自動的に行われるものとする。
S501で、収集部301は、モバイル装置101の内外で行われたユーザーによる手動操作や音声入力操作に対応する履歴データを収集し、図4(a)で示すように管理する。収集され得るデータは、前述の通り、タッチパネル206へのユーザー操作や、マイク207による音声入力、ネットワーク上の連携機器(音声アシスタント端末102や周辺機器103など)で記録された操作内容などである。
S502で、入力制御部302は、図4(a)で管理された未処理のレコードを抽出して、該レコードのデータ(内容)をベクトル化する。これは、前述した通り、入力制御部302による解析サービス部303への入力のために行われる処理である。なお、収集した情報は、入力データとするために、データ変換されたり、フィルタされたりしてもよい。ベクトル化されたデータを含む情報は、図4(b)で示すように管理される。
S503で、入力制御部302は、ベクトル化された入力データを解析サービス部303に入力する。この際には、図4(b)に含まれる最新レコードの入力データを入力する以外にも、新しい複数レコード入力データをまとめて入力する、といった複数の異なる入力が行われても良い。
S504で、解析サービス部303は、入力制御部302から取得した入力データと、学習済みモデルとを利用して、推定処理を実行する。S505で、解析サービス部303は、推定処理の結果を記憶装置204内のテーブル(図6)に記録する。図6では、解析サービス部303が得た推定処理の結果(出力)と、その時刻、対応する入力データの内容が記録されている。
図6で記録されたデータ(とくに、出力としての推定処理の結果)は、情報提供部304によりアプリケーションAや、アプリケーションBに提供されることになる。
図7は、モバイル装置101のOSにより実現される解析サービス部303による推定結果をアプリケーションに提供する処理を説明するためのフローチャートである。本処理に係るプログラムは、学習済みモデルを利用するために、OSに組み込まれる形で提供されることを想定している。なお、ネットワークなどを介して外部から取得して追加でインストールされるプログラムで本処理が実現されても良い。
図7(a)は、とくに、機能制御部305によりアプリケーションが起動される場合の処理である。
S701で、機能制御部305は、ユーザー操作に従うアプリケーションの起動指示を検出する。S702で、機能制御部305は、起動指示が検出されたアプリケーションが、解析サービスの連携機能が有効となっているか否かを判定する。有効であればS703に進み、無効であれば本処理は終了する。
S703で、情報提供部304は、図6で示すテーブルから推定結果を取得する。取得されるレコードは、現在時刻から所定期間以内の1以上のレコードが取得される。なお、この際には、該当アプリケーションに未提供の情報を管理して、該当レコードのみを取得するようにしてもよい。S704で、情報提供部304は、S703で取得したレコードの情報を推定結果として、アプリケーションに提供する。提供される際には、図6で管理される出力に含まれる内容のみを提供しても良い。
なお、S704では、機能制御部305が、S703で取得したレコードの情報をアプリケーション起動時のパラメータとして渡すように設計されても良い。
図7(b)は、とくに、情報提供部304が起動中のアプリケーションと連携する場合の処理である。モバイル装置101では、情報提供部304は、サービスとして常駐動作しており、本処理を実行する。
S711で、情報提供部304は、アプリケーションからの推定結果のリクエストを受け付けたか否かを判断する。リクエストを受け付けた場合にはS712に進み、受付けていない場合にはS714に進む。
S712で、情報提供部304は、S703と同様に、図6で示すテーブルから推定結果を取得する。S713で、情報提供部304は、S704と同様に、取得したレコードの情報を推定結果として、アプリケーションに提供する。
S714で、情報提供部304は、アプリケーションからのフィードバックを受け付けたか否かを判断する。フィードバックは、情報提供した推定結果が利用されたことを示すものである。フィードバックを受け付けた場合にはS715に進み、受付けていない場合にはS711に進む。
S715で、情報提供部304は、フィードバックに含まれるユーザーにより利用された推定結果が得られた際に解析サービス部303に入力された入力データを、図6を参照して特定する。さらに、情報提供部304は、特定された入力データの入力元である機能の識別情報を、図4(b)を参照して特定する。S716で、情報提供部304は、特定された機能の識別情報と、受け付けたフィードバック情報とを紐付けて、記憶装置204に記録する。
この記録されたデータは、前述したモデルを再教育するクラウドサービスに、OSを経由して提供される。再教育された学習済みモデルは、OSのアップデートなどのタイミングでダウンロードして、インストールすることが可能である。
図8は、情報提供部304から情報提供を受けるアプリケーションにより実現される処理を説明するためのフローチャートである。ここでは、解析サービスの連携機能が有効であるアプリケーションAを実行時の処理について説明する。
S801で、表示制御部312は、ユーザー操作に従うアプリケーションの起動指示に従い、アプリケーションAのホーム画面を表示する。
S802で、機能部311は、情報提供部304から提供された推定結果を用いた検索処理を実行する。具体的には、推定結果に含まれる“バスケ”、“スーパープレイ集”といったワードを用いた検索処理が実行され、関連する投稿などを行っているユーザーなどが自動で検索される。機能部311による検索は、提供された推定結果をすべてAND条件でつないで検索されてもよいし、OR条件で検索されてもよい。また、アプリケーションAの検索対象やOR条件での検索結果などに従い、選択的に推定結果の一部を抽出した上で検索が行われても良い。検索対象は、ネットワークを介して接続された外部領域にあってもよい。
S803で、表示制御部312は、機能部311による検索結果を受けて、表示内容を自動で更新する。
図9は、更新後のモバイル装置101で提供されるアプリケーションAの画面の例である。901はアプリケーションAがネットワークを介して取得した、現在、他の多くのユーザーに注目されているオブジェクトを表示している。902には、「AI検索」として、情報提供部304から提供された推定結果を用いた検索処理の結果が表示されている。この表示902は、アプリケーションAが起動する前から直後までの間にユーザーの言動に対応する履歴から得られたOSが出力する推定結果と、アプリケーションAを起動するといったアクションとから得られた、該ユーザーがアプリケーションAに望む処理の結果となり得る。
S804で、機能部311は、前回S802の処理が行われてから所定時間が経過したか否かを判定する。経過した場合にはS805に進み、経過していない場合にはS806に進む。S805で、連携部313は、情報提供部304に推定結果のリクエストを実行する。推定結果を受け付けた場合には、S802以降の処理を再度、実行する。機能部311は、推定結果に差分がなければ、S802での検索処理、S803での更新処理をスキップしてもよい。S804及びS805によって解析サービス部303による最新の推定結果がアプリケーションに適用できる。
S806で、機能部311は、アプリケーションAが提供する画面に対してユーザー操作があったか否かを判定する。ユーザー操作があった場合にはS807に進み、無かった場合にはS804に戻る。
S807で、機能部311は、ユーザー操作に従う処理を実行する。具体的には、表示901、表示902に含まれるオブジェクトやリンクなどが指定された場合には、その指定に従う情報提供のための表示切替や処理が実行される。
S808で、機能部311は、S807での処理に起因するユーザー操作が、情報提供部304から受け取った推定結果に対応するものであったか否かを判定する。例えば、表示902に含まれるオブジェクトやリンクなどが指定された場合には、推定結果に対応するユーザー操作があったと判定される。推定結果に対応するユーザー操作であった場合にはS809に進み、そうでなかった場合にはS804に戻る。S809で、連携部313は、情報提供部304にユーザー操作に対応する推定結果を含むフィードバックを送信する。
(応用例1)
図10は、前述した実施例の図8に関して、別のアプリケーションに適用した場合の応用例を示している。図10では、図8と同じ処理については同じ符号をつけており、ここではその説明を省略する。以下では、差分とその効果などについて説明する。
S1001で、機能部311は、S807で実行された処理が、所定のユーザー操作であったか否かを判定する。所定のユーザー操作であった場合にはS1002に進み、所定のユーザー操作でなかった場合にはS808に進む。
所定のユーザー操作の具体例としては、フリックによるスクロール操作や、検索機能に対応する表示オブジェクトに対する操作などがある。
具体的には、起動中のアプリケーションが、ユーザーが投稿したメッセージをタイムライン上に時系列で表示するアプリケーションであった場合、ユーザーがスワイプではなくフリックでスクロールを行われたことを想定する。このとき、フリックを行ったユーザーは、現在時刻に対して、比較的遠い過去に投稿されたメッセージや画像データを参照したいことが想定される。数年前や、数十年前のデータを参照する場合には、ユーザーによるフリックによるスクロール操作が何度も繰り返して検出されることになる。
また、どのようなアプリケーションであっても、予め用意された検索機能に対応する表示オブジェクトに対する操作であった場合には、特定の検索機能を利用した検索を行いたいユーザー意図が把握できる。
本応用例では、そのようなユーザー意図を含めた上で、情報提供部304から提供された推定結果を利用するためのものである。
S1002で、機能部311は、情報提供部304から提供された推定結果を用いて検索処理を実行し、検索結果を反映するように表示内容を自動で更新する。
図11(a)は、S1002の処理が反映された、ユーザーが投稿したメッセージをタイムライン上に時系列で表示するアプリケーションが提供する画面の例である。
この画面の1101は、スクロールバーのスクロール先に含まれる複数のメッセージの中で、推定結果に含まれるデータでの検索結果に対応するメッセージや時刻情報へジャンプするための追加オブジェクトを示している。ユーザーは、フリック操作をしている間に、自動的に出現するオブジェクト1101のいずれかを選択することで、所望のメッセージの表示を得ることができるかもしれない。また、フリックによるスクロール先として、検索結果に対応するメッセージの表示まで、一気に進めても良い。
また、S1002での検索結果に対応するメッセージが、フリックによる画面のスクロール中に表示対象となる複数メッセージの中に含まれていた場合は、ユーザーに読み飛ばされないように、該当メッセージが表示された状態でスクロールを停止することも可能である。
図11(b)は、ユーザーが起動中のアプリケーションで特定の検索機能を選択した場合における、S1002の処理が反映された画面の例である。
図11(b)では、ユーザーが任意に検索ワードを入力することができる入力欄以外に、1102に示すように、情報提供部304から提供された推定結果を用いた「AI検索」の結果が表示されている。ここでは、ワード検索と期間(現在時刻から推定結果に含まれる時刻まで)とによる自動検索が行われている。ユーザーは、入力欄を用いて任意に検索ワードを追加したり、「AI検索」による検索ワードを削除したりするといった追加操作が可能になっている。
本応用例では、ユーザーが行ったアプリケーションに対する所定の操作に加えて、前述の推定結果を自動で適用することで、ユーザー所望な検索対象を素早く提供される可能性がある。本応用例では、ユーザー自身で、検索対象を目視で見つけ出す、適当な検索ワードを考えて入力するなどといった作業を省略できるかもしれない。
(応用例2)
前述したOSは、レポート機能とバイアス調整機能も備える。
レポート機能は、推定処理において学習済みモデルが入力データから出力を導き出した根拠を提示するための機能である。例えば、1つの出力が選択された場合に、その出力が得られた根拠となる入力データやパラメータが列挙され、列挙されたデータのそれぞれがその出力の導出にどの程度影響したのかを表示することができる。
バイアス調整機能は、学習済みモデルの推定処理に所定の入力に対してユーザーが望まない出力を行う傾向が強いことを検出して通知するための機能である。さらに、この機能では、ユーザー指示に従い、ユーザーが望む推定結果とするための逆バイアスをその所定の入力に反映させるための変換ルールを入力制御部302に対して設定する機能も有する。この設定が行われた場合、それ以降、所定の入力を受け付けた場合は、変換ルールに従い、入力の少なくとも一部の情報が変更されて学習済みモデルに利用されるようになる。
(他の実施例)
本発明は、上述した実施形態を適宜組み合わせることにより構成された装置あるいはシステムやその方法も含まれるものとする。
ここで、本発明は、上述した実施形態の機能を実現する1以上のソフトウェア(プログラム)を実行する主体となる装置あるいはシステムである。また、その装置あるいはシステムで実行される上述した実施形態を実現するための方法も本発明の一つである。また、そのプログラムは、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給され、そのシステム或いは装置の1以上のコンピューター(CPUやMPU等)によりそのプログラムが1以上のメモリーに読み出され、実行される。つまり、本発明の一つとして、さらにそのプログラム自体、あるいは該プログラムを格納したコンピュータにより読み取り可能な各種記憶媒体も含むものとする。また、上述した実施形態の機能を実現する回路(例えば、ASIC)によっても、本発明は実現可能である。
101 モバイル装置
102 音声アシスタント端末
103 周辺機器

Claims (11)

  1. ユーザーの言動に対応するデータとアプリケーションでの検索処理に用いるべき情報との関係性を学習したモデルを利用した推定処理を実行するオペレーティングシステムが実行される情報処理装置であって、
    前記オペレーティングシステムで、前記情報処理装置に対して行われたユーザーの入力、及び、前記情報処理装置とネットワークを介して通信可能な機器に対して行われた前記ユーザーの入力の少なくともいずれかに基づく操作履歴に含まれる情報を入力データとして、前記推定処理を実行することで出力された推定結果が記録されている際に、
    前記推定処理の結果の利用を許可することにユーザーが同意しているアプリケーションによる、前記オペレーティングシステムから、前記推定結果を取得する取得手段と、
    前記アプリケーションによる、前記取得された前記推定結果に含まれる情報を用いて検索処理を実行する検索手段と、
    前記アプリケーションによる、前記検索処理の結果を用いた表示を行うための表示制御手段と、
    を有することを特徴とする情報処理装置。
  2. 前記アプリケーションによる、推定結果を前記オペレーティングシステムに対して要求する要求手段をさらに有し、
    前記取得手段は、前記要求に応じて前記推定結果を取得することを特徴とする請求項1に記載の情報処理装置。
  3. 前記要求手段は、周期的に推定結果を前記オペレーティングシステムに対して要求することを特徴とする請求項2に記載の情報処理装置。
  4. 前記取得手段は、前記アプリケーションの起動時に、前記オペレーティングシステムから前記推定結果を取得することを特徴とする請求項1乃至3のいずれか1項に記載の情報処理装置。
  5. 前記アプリケーションによる、前記推定結果に含まれる情報を用いて検索処理の結果に対応するユーザー操作を受け付けた際に、前記オペレーティングシステムに対して前記推定結果を含むフィードバックを送信する送信手段をさらに有することを特徴とする請求項1乃至4のいずれか1項に記載の情報処理装置。
  6. 前記検索手段は、ユーザーによる所定の操作を検出した際に、当該所定の操作に対応する検索対象に対して、前記推定結果に含まれる情報を用いて検索処理を実行し、
    前記表示制御手段は、前記所定の操作に従い表示されるべき内容に対して、前記検索処理の結果を用いた表示を反映することで表示内容を更新することを特徴とする請求項1乃至5のいずれか1項に記載の情報処理装置。
  7. 前記所定の操作は、フリックによるスクロール操作であり、スクロール先として、前記検索処理の結果を用いた表示が行われることを特徴とする請求項6に記載の情報処理装置。
  8. 前記ネットワークを介して通信可能な機器は、少なくとも、音声アシスタント端末、デジタル家電機器及び車載端末の少なくともいずれかを含むことを特徴とする請求項1乃至7のいずれか1項に記載の情報処理装置。
  9. 前記ユーザーの入力は、音声による入力が含まれることを特徴とする請求項1乃至8のいずれか1項に記載の情報処理装置。
  10. ユーザーの言動に対応するデータとアプリケーションでの検索処理に用いるべき情報との関係性を学習したモデルを利用した推定処理を実行するオペレーティングシステムが実行される情報処理装置における方法であって、
    前記オペレーティングシステムで、前記情報処理装置に対して行われたユーザーの入力、及び、前記情報処理装置とネットワークを介して通信可能な機器に対して行われた前記ユーザーの入力の少なくともいずれかに基づく操作履歴に含まれる情報を入力データとして、前記推定処理を実行することで出力された推定結果が記録されている際に、
    前記推定処理の結果の利用を許可することにユーザーが同意しているアプリケーションによる、前記オペレーティングシステムから、前記推定結果を取得する取得工程と、
    前記アプリケーションによる、前記取得された前記推定結果に含まれる情報を用いて検索処理を実行する検索工程と、
    前記アプリケーションによる、前記検索処理の結果を用いた表示を行うための表示制御工程と、
    を有することを特徴とする方法。
  11. 請求項1乃至9のいずれか1項に記載の各手段としてコンピューターを機能させるためのプログラム。
JP2019055560A 2019-03-22 2019-03-22 情報処理装置、方法、及びプログラム Active JP7341690B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2019055560A JP7341690B2 (ja) 2019-03-22 2019-03-22 情報処理装置、方法、及びプログラム
US16/821,751 US11461418B2 (en) 2019-03-22 2020-03-17 Information processing apparatus, method, and a non-transitory computer-readable storage medium for executing search processing
CN202010195692.5A CN111723283A (zh) 2019-03-22 2020-03-19 信息处理装置、方法和计算机可读存储介质
JP2023133943A JP2023154087A (ja) 2019-03-22 2023-08-21 オペレーティングシステム、情報処理装置、及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019055560A JP7341690B2 (ja) 2019-03-22 2019-03-22 情報処理装置、方法、及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023133943A Division JP2023154087A (ja) 2019-03-22 2023-08-21 オペレーティングシステム、情報処理装置、及び方法

Publications (2)

Publication Number Publication Date
JP2020155064A true JP2020155064A (ja) 2020-09-24
JP7341690B2 JP7341690B2 (ja) 2023-09-11

Family

ID=72515994

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2019055560A Active JP7341690B2 (ja) 2019-03-22 2019-03-22 情報処理装置、方法、及びプログラム
JP2023133943A Pending JP2023154087A (ja) 2019-03-22 2023-08-21 オペレーティングシステム、情報処理装置、及び方法

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023133943A Pending JP2023154087A (ja) 2019-03-22 2023-08-21 オペレーティングシステム、情報処理装置、及び方法

Country Status (3)

Country Link
US (1) US11461418B2 (ja)
JP (2) JP7341690B2 (ja)
CN (1) CN111723283A (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009237750A (ja) * 2008-03-26 2009-10-15 Denso It Laboratory Inc 情報検索支援装置及び情報検索支援方法
JP2015148848A (ja) * 2014-02-04 2015-08-20 Kddi株式会社 携帯端末、携帯端末用プログラム及びキーワード入力方法
JP2017045117A (ja) * 2015-08-24 2017-03-02 富士通株式会社 情報処理装置、及び、情報処理プログラム

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7092936B1 (en) * 2001-08-22 2006-08-15 Oracle International Corporation System and method for search and recommendation based on usage mining
CN101114294A (zh) * 2007-08-22 2008-01-30 杭州经合易智控股有限公司 自助式智能垂直搜索方法
US7984004B2 (en) * 2008-01-17 2011-07-19 Microsoft Corporation Query suggestion generation
US20120158685A1 (en) * 2010-12-16 2012-06-21 Microsoft Corporation Modeling Intent and Ranking Search Results Using Activity-based Context
US20130246383A1 (en) * 2012-03-18 2013-09-19 Microsoft Corporation Cursor Activity Evaluation For Search Result Enhancement
KR20140078275A (ko) * 2012-12-17 2014-06-25 삼성전자주식회사 디스플레이 장치의 화면 스크롤 방법 및 그 장치
CN103942279B (zh) * 2014-04-01 2018-07-10 百度(中国)有限公司 搜索结果的展现方法和装置
US10296647B2 (en) * 2015-10-05 2019-05-21 Oath Inc. Method and system for intent-driven searching
US10056078B1 (en) * 2016-06-28 2018-08-21 Amazon Technology, Inc. Output of content based on speech-based searching and browsing requests
US10846350B2 (en) * 2016-10-18 2020-11-24 Facebook, Inc. Systems and methods for providing service directory predictive search recommendations
JP6310599B1 (ja) 2017-05-10 2018-04-11 ヤフー株式会社 検索装置、検索方法および検索プログラム
CN107526807B (zh) * 2017-08-22 2020-01-31 中国联合网络通信集团有限公司 信息推荐方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009237750A (ja) * 2008-03-26 2009-10-15 Denso It Laboratory Inc 情報検索支援装置及び情報検索支援方法
JP2015148848A (ja) * 2014-02-04 2015-08-20 Kddi株式会社 携帯端末、携帯端末用プログラム及びキーワード入力方法
JP2017045117A (ja) * 2015-08-24 2017-03-02 富士通株式会社 情報処理装置、及び、情報処理プログラム

Also Published As

Publication number Publication date
US11461418B2 (en) 2022-10-04
JP2023154087A (ja) 2023-10-18
CN111723283A (zh) 2020-09-29
US20200301985A1 (en) 2020-09-24
JP7341690B2 (ja) 2023-09-11

Similar Documents

Publication Publication Date Title
JP5976780B2 (ja) 適応通知
US9577692B2 (en) Subscriber identification module management method and electronic device supporting the same
KR102553886B1 (ko) 전자 장치 및 전자 장치의 이미지 제어 방법
CN108351890B (zh) 电子装置及其操作方法
US10942972B2 (en) Query processing method, electronic device, and server
CN109429102B (zh) 用于显示应用的电子装置及服务器
US10691402B2 (en) Multimedia data processing method of electronic device and electronic device thereof
US9672026B2 (en) Light app offline updating method, device and terminal
KR20170059201A (ko) 전자 장치 및 전자 장치의 컨텐츠 출력 방법
CN105677697B (zh) 提供兴趣点的方法及其电子装置
KR20160026341A (ko) 제어 방법 및 그 방법을 처리하는 전자장치
KR20170053065A (ko) 추천 객체를 제공하기 위한 전자 장치 및 방법
CN107632751B (zh) 信息显示方法和装置
KR102439786B1 (ko) 컨텐츠 정보를 공유하기 위한 방법 및 그 전자 장치
WO2015065438A1 (en) Contextual content translation system
CN103905837A (zh) 图像处理方法、装置及终端
US20170111608A1 (en) Method for recording execution screen and electronic device for processing the same
US20170337285A1 (en) Search Engine for Sensors
KR102245291B1 (ko) 전자 디바이스 및 전자 디바이스에서 캡쳐 이미지 이용 방법
JP7341690B2 (ja) 情報処理装置、方法、及びプログラム
JP2020065162A (ja) 情報処理方法およびプログラム
US20200007475A1 (en) Generating smart replies involving image files
KR20160068531A (ko) 어플리케이션 제어 방법 및 전자 장치
KR102341970B1 (ko) 전자 장치 및 전자 장치에서의 정보 처리 방법
KR102271811B1 (ko) 전자장치 및 전자장치의 컨텐트 제어 방법

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220310

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230131

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230214

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230410

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: 20230801

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230830

R151 Written notification of patent or utility model registration

Ref document number: 7341690

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151