JP6916804B2 - 不確実性を含むユーザ・モバイル・データに基づく位置コンテキスト推定のための方法、非一時的製品、およびシステム - Google Patents

不確実性を含むユーザ・モバイル・データに基づく位置コンテキスト推定のための方法、非一時的製品、およびシステム Download PDF

Info

Publication number
JP6916804B2
JP6916804B2 JP2018543347A JP2018543347A JP6916804B2 JP 6916804 B2 JP6916804 B2 JP 6916804B2 JP 2018543347 A JP2018543347 A JP 2018543347A JP 2018543347 A JP2018543347 A JP 2018543347A JP 6916804 B2 JP6916804 B2 JP 6916804B2
Authority
JP
Japan
Prior art keywords
mobile
user
computer
location context
mobile user
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
JP2018543347A
Other languages
English (en)
Other versions
JP2019512768A (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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2019512768A publication Critical patent/JP2019512768A/ja
Application granted granted Critical
Publication of JP6916804B2 publication Critical patent/JP6916804B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/023Services making use of location information using mutual or relative location information between multiple location based services [LBS] targets or of distance thresholds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72403User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • H04W4/21Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72448User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
    • H04M1/72457User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions according to geographic location
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • H04W4/08User group management

Description

本発明は、一般に、移動体通信に関し、さらに詳細には、不確実性を含むユーザ・モバイル・データ(user mobile data)に基づく位置コンテキスト推定(location context inference)に関する。
モビリティ情報を使用して顧客の行動および意図を推定することは、有益である。しかし、そのような情報を推定することには大きな課題がある。例えば、携帯電話データは、コンテキストなしで経度および緯度を提供する。さらに、携帯電話ロケータ(cell phone locator)はあまり正確ではないということが知られている。例えば、デバイス、オペレーティング・システム、および位置決め方法によっては、そのような携帯電話ロケータによって生じる誤差は、100メートル以上になる可能性がある。したがって、不確実なユーザ・モバイル・データに基づいて、モバイル・ユーザの位置コンテキストを正確に推定する必要がある。
不確実性を含むユーザ・モバイル・データに基づく位置コンテキスト推定方法、およびそのシステムを提供することである。
本発明の1つの態様によれば、少なくとも2人のメンバーを含んでいるモバイル・ユーザの集合に関して位置コンテキスト・カテゴリ(location context categories)を推定するための、コンピュータ・サーバによって実行される方法が提供される。この方法は、集合内のモバイル・ユーザごとに、不確実なモバイル・デバイス位置データに応答して、パブリックに使用可能な情報から少なくとも1つの位置コンテキスト・カテゴリを取得するステップを含む。この方法は、集合内のモバイル・ユーザごとに1つの正確な位置コンテキスト・カテゴリを推定するために、集合内のモバイル・ユーザごとに、複数ユーザの共同機械学習(multi-user collaborative machine learning)を少なくとも1つの位置コンテキスト・カテゴリに適用するステップをさらに含む。
本発明の別の態様によれば、少なくとも2人のメンバーを含んでいるモバイル・ユーザの集合に関して位置コンテキスト・カテゴリを推定するための、コンピュータ・サーバによって実行される方法が提供される。この方法は、集合内のモバイル・ユーザごとに、各クエリを1つまたは複数のモバイルWebアプリケーションに送信するステップを含み、これらのモバイルWebアプリケーションは、各クエリ内で規定されたモバイル・ユーザ位置入力(mobile user location input)に応答して、モバイル・ユーザのうちの1人のサブミットに適用できる少なくとも1つの位置コンテキスト・カテゴリを返す。この方法は、集合内のモバイル・ユーザごとに、各クエリに応答して、少なくとも1つの位置コンテキスト・カテゴリをモバイルWebアプリケーションから受信するステップをさらに含む。この方法は、集合内のモバイル・ユーザごとに1つの正確な位置コンテキスト・カテゴリを推定するために、集合内のモバイル・ユーザごとに、複数ユーザの共同機械学習を少なくとも1つの位置コンテキスト・カテゴリに適用するステップも含む。
本発明のさらに別の態様によれば、少なくとも2人のメンバーを含んでいるモバイル・ユーザの集合に関して位置コンテキスト・カテゴリを推定するためのシステムが提供される。このシステムは、プロセッサおよびメモリを含んでいるコンピュータ・サーバを含み、このコンピュータ・サーバは、不確実なモバイル・デバイス位置データに応答して、集合内のモバイル・ユーザごとに、パブリックに使用可能な情報から少なくとも1つの位置コンテキスト・カテゴリを取得するように構成される。プロセッサおよびメモリを含んでいるコンピュータ・サーバは、集合内のモバイル・ユーザごとに1つの正確な位置コンテキスト・カテゴリを推定するために、集合内のモバイル・ユーザごとに、複数ユーザの共同機械学習を少なくとも1つの位置コンテキスト・カテゴリに適用するようにさらに構成される。
これらおよびその他の特徴と利点は、以下の詳細な実施形態例の説明から明らかになるが、その説明は添付の図面と併せて読む必要がある。
本開示では、以下の図を参照して、好ましい実施形態の以下の説明において詳細を示す。
本発明の一実施形態に記載された、本発明が適用されてよい処理システムの例を示す図である。 本発明の一実施形態に記載された、本発明が適用され得る環境の例を示す図である。 本発明の一実施形態に記載された、不確実なユーザ・モバイル・データに基づいてモバイル・ユーザの位置コンテキストを推定するための方法の例を示す図である。 本発明の一実施形態に記載された、行列A、可能な位置の2進行列(possible location binary matrix)Y、および不可能な位置の2進行列(impossible location binary matrix)Zを示す図である。 n人のユーザのそれぞれに対していずれかの特定の時間での1つの位置コンテキスト・カテゴリを規定する行列Xを示す図である。 本発明の一実施形態に記載された、クラウド・コンピューティング・ノードの例を示す図である。 本発明の一実施形態に記載された、クラウド・コンピューティング環境の例を示す図である。 本発明の一実施形態に記載された、抽象モデル・レイヤの例を示す図である。
本発明は、不確実なユーザ・モバイル・データに基づいて、モバイル・ユーザの位置コンテキストを推定することを対象にする。本明細書において使用されているように、「真の位置カテゴリ」、「正確な位置カテゴリ」、「真の位置コンテキスト・カテゴリ」、および「正確な位置コンテキスト・カテゴリ」という用語はすべて、(i)100メートル以上の誤差を含んでいる可能性のある、モバイル・デバイス(例えば、電話)ロケータによって提供される位置、および(ii)モバイル・デバイス・ロケータによって提供される位置に基づいて、1人のモバイル・ユーザに関して提供される位置コンテキスト・カテゴリよりもおそらく正確な位置カテゴリの推定を指している。このようにしてユーザの位置のより正確な推定が提供され、このことは、ユーザの役に立ち、ユーザの位置を含んでいるアプリケーションとして十分に機能することができる。モバイル・デバイス(例えば、電話)ロケータによって提供される位置は、その精度が保証されず、前述の典型的誤差を含んでおり、したがってそのような位置データを不確実にするので、本明細書では、置き換え可能なように「不確実なモバイル・デバイス位置データ」と呼ばれる。ほとんどの場合、そのような不確実性は、誤差量のしきい値よりも大きい誤差を含んでいる位置データとして表され得る。さらに、本発明の態様に関する、本明細書における「真の」という用語の一般的使用は、本明細書において提供される本発明の内容を前提として当業者によって容易に理解されるように、本発明を使用せずに他の方法で提供される表現よりもおそらく正確な物事の表現を指している。
一実施形態では、本発明は、可能性のある近くの位置カテゴリに基づいて携帯電話ユーザの位置コンテキスト・カテゴリを自動的に推定するために、機械学習に基づく解を提供する。一実施形態では、本発明は、通常はあまり正確ではないすべてのユーザの位置情報を使用して、互いの位置コンテキスト・カテゴリを共同でより正確に特定する。
一実施形態では、可能性のある近くの位置カテゴリが、パブリックに使用可能な情報から収集される。そのようなパブリックに使用可能な情報は、Foursquare(R)、OpenStreetMap(R)(OSM)などから取得され得るが、これらに限定されない。本発明が前述のモバイル・アプリケーションのみに限定されず、したがって、まだ使用可能ではないモバイル・アプリケーションを含むその他のモバイル・アプリケーションが、本発明の内容に従って使用され得るということが理解されるべきである。
Foursquare(R)は、検索結果をユーザに提供する、ローカル検索および発見サービス・モバイル・アプリケーションである。Foursquare(R)は、ユーザが行ったことがある場所、Foursquare(R)アプリケーションへの入力として規定されたユーザが好むもの、およびユーザが信頼している他のFoursquare(R)ユーザの助言に基づいて、Foursquare(R)ユーザの現在の位置に最も近い訪問するべき場所の推薦を提供する。1つの位置を含んでいるクエリを送信すると、Foursquare(R)は、複数の近くのコンテキストのオプションを返す。位置カテゴリは、食品、小売店、ナイトライフ・スポット、学校、野外などを含む。
OpenStreetMap(R)は、無料の編集可能な世界地図を作成するための共同プロジェクトである。マップ・データが、例えば携帯用GPSユニット、タブレット、デジタル・カメラなどのアイテムを使用して地上調査を行うボランティアによって収集される。その後、このデータはOpenStreetMap(R)データベースに入力される。このデータは、Webブラウザなどを使用して閲覧/アクセスされ得る。
一実施形態では、本発明は、ユーザを複数のグループに分類することができ、同じグループ内のユーザが類似する行動様式および興味を持っているが、異なるグループ内のユーザは異なる行動様式および興味を持っているということを仮定する。このようにして、本発明は分類およびユーザの行動様式を共同で学習することができる。
一実施形態では、本発明は、入力として、ユーザごとにユーザの近くの位置カテゴリのリストを受け取る。この実施形態では、他の情報は不要である。
一実施形態では、本発明は、出力としてユーザの位置カテゴリを提供する。
図1は、本発明の一実施形態に従って、本発明が適用されてよい処理システム100の例を示している。処理システム100は、システム・バス102を介して他のコンポーネントに動作可能なように結合された少なくとも1つのプロセッサ(CPU)104を含んでいる。キャッシュ106、読み取り専用メモリ(ROM:Read Only Memory)108、ランダム・アクセス・メモリ(RAM:Random Access Memory)110、入出力(I/O:input/output)アダプタ120、音声アダプタ130、ネットワーク・アダプタ140、ユーザ・インターフェイス・アダプタ150、およびディスプレイ・アダプタ160が、システム・バス102に動作可能なように結合されている。
第1のストレージ・デバイス122および第2のストレージ・デバイス124は、I/Oアダプタ120によってシステム・バス102に動作可能なように結合されている。ストレージ・デバイス122および124は、ディスク・ストレージ・デバイス(例えば、磁気ディスク・ストレージ・デバイスまたは光ディスク・ストレージ・デバイス)、半導体磁気デバイスなどのうちのいずれかであることができる。ストレージ・デバイス122および124は、同じ種類のストレージ・デバイスまたは異なる種類のストレージ・デバイスであることができる。
スピーカ132は、音声アダプタ130によってシステム・バス102に動作可能なように結合されている。トランシーバ142は、ネットワーク・アダプタ140によってシステム・バス102に動作可能なように結合されている。ディスプレイ・デバイス162は、ディスプレイ・アダプタ160によってシステム・バス102に動作可能なように結合されている。
第1のユーザ入力デバイス152、第2のユーザ入力デバイス、および第3のユーザ入力デバイス156は、ユーザ・インターフェイス・アダプタ150によってシステム・バス102に動作可能なように結合されている。ユーザ入力デバイス152、154、および156は、キーボード、マウス、キーパッド、画像キャプチャ・デバイス、動作検知デバイス、マイクロホン、前述のデバイスのうちの少なくとも2つの機能を組み込んでいるデバイスなどのうちのいずれかであることができる。当然、本原理の思想を維持しながら、他の種類の入力デバイスも使用され得る。ユーザ入力デバイス152、154、および156は、同じ種類のユーザ入力デバイスまたは異なる種類のユーザ入力デバイスであることができる。ユーザ入力デバイス152、154、および156は、システム100に情報を入力するため、およびシステム100から情報を出力するために使用される。
当然、処理システム100は、当業者によって容易に企図されるように、他の要素(図示されていない)を含んでもよく、特定の要素を省略してもよい。例えば、当業者によって容易に理解されるように、処理システム100の特定の実装に応じて、さまざまな他の入力デバイスまたは出力デバイスあるいはその両方が、処理システム100に含まれ得る。例えば、さまざまな種類の無線または有線あるいはその両方の入力デバイスまたは出力デバイスあるいはその両方が使用され得る。さらに、当業者によって容易に理解されるように、追加のプロセッサ、コントローラ、メモリなどを、さまざまな構成で使用することもできる。処理システム100のこれらおよびその他の変形が、本明細書において提供される本発明の内容を前提として、当業者によって容易に企図される。
図2は、本発明の一実施形態に従って、本発明が適用され得る環境200の例を示している。
環境200は、モバイル・デバイス210のセットおよび中央サーバ220を含んでいる。図2の実施形態では、モバイル・デバイスは携帯電話である。ただし、デバイス・ロケータを含んでいる任意のモバイル・デバイスまたはデバイス・ロケータによって位置が特定され得る任意のモバイル・デバイスあるいはその両方のモバイル・デバイスが、本発明の内容に従って使用され得ると理解されるべきである。
一実施形態では、中央サーバ220はクラウド内で実装される。ただし、中央サーバ220は、クラウド環境以外で実装することもできる。
1つまたは複数のモバイル・デバイス・ロケータ230は、モバイル・デバイス210に関する位置データ231を提供する。デバイス・ロケータは、図2の実施形態ではモバイル・デバイス210から分離して示されているが、当業者によって容易に理解されるように、モバイル・デバイス210自体の内部にあるか、他のデバイス/システムの内部にあるか、または他のデバイス/システムの一部であることができる。したがって、一実施形態では、モバイル・ユーザ位置入力は、モバイル・デバイス自体から取得され得るが、ほとんどの場合、モバイル・デバイスからのそのような情報は、ほとんど許容できないほど不正確になるということに注意する。また、そのような不正確さは、通常、位置情報を提供するデバイスとは異なるデバイスである、位置決定機能を有する関連するデバイス(例えば、他のデバイスの位置を特定できるようにそれぞれ構成された、電話やタブレットなどの、同じ製造業者が提供するデバイス)上のデバイス・ロケータに特有である。本発明は、いずれかの特定のデバイス・ロケータに限定されず、したがって、全地球測位システム(GPS:Global Positioning System)ベースのデバイス・ロケータ、WIFI位置決めシステム(WPS:WIFI Positioning System)、セルラー・ネットワークベースの位置決めシステムなどと共に使用され得る。前述の一覧は単なる例である。
モバイル・デバイス・ロケータ230からの位置データは、位置コンテキスト情報の1つまたは複数のパブリックに使用可能なソース(例えばモバイル・アプリケーションなどを使用して実装する)240に提供され、位置コンテキスト情報のパブリックに使用可能なソース240は、各クエリ内で規定されたモバイル・ユーザ位置入力に応答して、モバイル・ユーザに適用できる複数の位置コンテキスト・カテゴリ/オプション(以下では「カテゴリ」と呼ぶ)を返す。
中央サーバ220は、モバイル・デバイス・ユーザの集合に関する複数の位置コンテキスト・カテゴリを1つまたは複数のソース240から受信し、ユーザの集合およびユーザの集合に関する位置コンテキスト・カテゴリのセットをそれぞれ含む1つまたは複数の行列を形成するために、機械学習を複数の位置コンテキスト・カテゴリに適用する。行列の例が図4に示されており、これについて説明する。機械学習では、最初は、モバイル・デバイス・ロケータからのやや不正確な位置データから開始して、モバイル・デバイス・ユーザの真の位置を学習するために、目的関数を使用する。その目的で、中央サーバ220は、ユーザごとに受信された複数の位置コンテキスト・カテゴリから、ユーザごとに1つの真の位置コンテキスト・カテゴリを識別する。
その後、中央サーバ220は、モバイル・デバイス・ユーザの真の位置に基づいて、1つまたは複数の機能を実行するか、または1つまたは複数のアプリケーションを実装するか、あるいはその両方を実行することができる。
図3は、本発明の一実施形態に従って、不確実なユーザ・モバイル・データに基づいてモバイル・ユーザの位置コンテキストを推定するための方法の例を示している。
図3の実施形態では、方法300は、説明の目的で、n人のユーザおよびm個の位置コンテキスト・カテゴリに対して使用される。ただし、本明細書において提供された本発明の内容を前提として当業者によって容易に理解されるように、本発明を任意の数のユーザおよび任意の数の位置コンテキスト・カテゴリに使用することができ、これらの数が実装に応じて容易に変更され得るということが理解されるべきである。
図3の実施形態では、方法300は、特定の制約および仮定の下で動作する。例えば、制約として、検討中の特定の期間ごとに、各ユーザは唯一のカテゴリに属さなければならない。最初は、このカテゴリは未知であるが、対象のすべてのカテゴリを含んでいるセットが存在する。一実施形態では、このセットは、ユーザおよびユーザの近くの位置カテゴリのリストである。一例として、図4は、すべて(n人)のユーザおよびすべて(m個)のカテゴリの行列A410を示しており、本発明の一実施形態に従って、行列A410から可能な位置の2進行列Y420および不可能な位置の2進行列Z430が導出される。図5は、n人のユーザのそれぞれに対するいずれかの特定の時間での1つの位置コンテキスト・カテゴリを規定する行列X510を示している。各行列(410、420、430、510)では、近くの位置カテゴリが点状の網掛けパターンを使用して示されており、その他の位置カテゴリが網掛けパターンなしで示されている。各行列(410、420、430、510)において、異なるn人のユーザが、u〜uを使用して示されており、異なるm個のカテゴリがc〜cを使用して示されている。行列X510は次式に従って形成される。
行列X510 = 行列Y420 + 行列Z430
図3を参照すると、ステップ310で、n人のモバイル・ユーザの集合内のモバイル・ユーザごとに、各クエリをモバイルWebアプリケーションに送信し、このモバイルWebアプリケーションは、各クエリ内で規定されたモバイル・ユーザ位置入力に応答して、モバイル・ユーザに適用可能な1つまたは複数の位置コンテキスト・カテゴリを返す。n人のユーザすべての位置コンテキスト・カテゴリの総数はmであり、nおよびmは両方とも整数である。一実施形態では、モバイル・ユーザ位置入力は、モバイル・デバイス自体から取得され得るが、ほとんどの場合、モバイル・デバイスからのそのような情報は、ほとんど許容できないほど不正確になるということに注意する。モバイル・ユーザ位置入力は、経度および緯度、または位置を表すのに使用される任意のその他の表現であることができる。
ステップ320で、集合内のモバイル・ユーザごとに、各クエリに応答して、モバイルWebアプリケーションから1つまたは複数の位置コンテキスト・カテゴリを受信する。
ステップ330で、集合内のモバイル・ユーザごとに、複数ユーザの共同機械学習を1つまたは複数の位置コンテキスト・カテゴリに適用して、集合内のモバイル・ユーザごとに1つの「真の」(より正確な)位置コンテキスト・カテゴリを推定する。本発明との関連において、「複数ユーザの共同機械学習」という用語は、共有データを介して複数ユーザ全体で基本的に共同で結果に到達するために、複数ユーザからのデータに適用される機械学習のことを指しており、機械学習の使用に関連するそのような共有は、複数ユーザのデータに適用される。次の例は、1つの位置コンテキスト・カテゴリを各モバイル・ユーザに適用できるということを想定しているが、例えばユーザが2つの施設(1つは食品関係の施設(例えばレストラン)、もう1つはスポーツ関係の施設(例えばスポーツ用品店))の間に立っている場合は、2つ以上の位置コンテキスト・カテゴリを適用できる。しかし、ほとんどの場合、1つのカテゴリのみが呼び出される。さらに、本原理は、本明細書に示されている実施形態例におけるように、1つのカテゴリのみに適用される(1つのカテゴリのみを選択する)ように制約され得る。本発明のこれらおよびその他の変形が、本明細書において提供される本発明の内容を前提として、当業者によって容易に決定される。
一実施形態では、ステップ330はステップ330A〜330Xを含んでいる。
ステップ330Aで、次の制約下で複数ユーザの共同機械学習および目的関数を使用して、n*mの「真の」位置行列Xを形成する。
(i)行列X510の各行は、唯一の1を含んでいる(1は斜線で網掛けされたエントリ内にある)。
(ii)その行内の他のすべてのエントリは0である。
行列X510内で、Xij=1は、ユーザiの真の目的地が位置カテゴリj内にあることを意味している。
一実施形態では、行列X510は低ランク行列であるべきである。一実施形態では、ランクは次の値であることができる。
ランク(X)=ユーザ・グループの数(<<n)
一実施形態では、目的関数は次のとおりである。
Figure 0006916804

ここで、||X||は、行列510の核ノルム(核ノルムは、非凸ランク関数(non-convex rank function)の凸エンベロープである)を示し、X{i,*}は、行列X510のi番目の行ベクトルを示す。
これらの2つの制約が、行列X510内の各行が唯一の1を含んでおり、その他すべてのエントリが0であるということを保証すると理解されるべきである。
上の目的関数は、目的関数に関連する制約付き最適化問題を一連の制約なし問題に置き換えることができる拡張ラグランジュ法を使用して、効率的に最適化され得る。目的関数が凸状であるため、最適化手法によって学習される最適解は一意であり、初期値(initializations)に対して安定している。加えて、学習された行列Xは、疎(各行内に1つの1のみ)であり、かつ低ランクであるため、ユーザの行動の原動力となり得る少数の最も重要な要因を自然に捉える。これは、ユーザの行動および興味をモデル化することを非常に魅力的にする。
ステップ340で、集合内の少なくとも1人のモバイル・ユーザに関して、1つの正確な位置コンテキスト・カテゴリに基づいて、少なくとも1人のモバイル・ユーザによって実行される少なくとも1つの活動、または少なくとも1人のモバイル・ユーザにとって興味のある少なくとも1つの活動を推定する。
ステップ350で、集合内の少なくとも1人のモバイル・ユーザに関して、1つの正確な位置コンテキスト・カテゴリに基づいて、少なくとも1人のモバイル・ユーザの少なくとも1つの将来の意図を推定する。
ここで、本発明によって提供されるさまざまな利点に関して説明する。
例えば、本発明は、有利なことに、モバイル・データの不確実性を利用して、モバイル・ユーザの行動および意図に対する洞察を提供することができる。
さらに一般的には、本発明は、一般的な割当不確実性問題(general assignment uncertainty problem)を解くことができる。例えば、データの参照において、システムは、ユーザが特定のページ上の少なくとも1つのアイテムに興味があるということを認識するが、特定のどのアイテムに興味が示されているかは不確かであることがある。有利なことに、本発明は、モバイル・ユーザの真の興味を推定することができる。
さらに、真の位置コンテキストの識別は、時空間分析に関連する多くのアプリケーションにおいて必要なステップである。
また、割り当ての不確実性は、マーケティング分析において重要な問題であり、本発明をこの問題に容易に適用して、そのような不確実性を除去または軽減することができる。
本発明を適用できるアプリケーション/使用の例として、ターゲッティング広告、マーケティング・アプリケーション、時空間分析などが挙げられるが、これらに限定されない。
本開示にはクラウド・コンピューティングの詳細な説明が含まれているが、本明細書において示された内容の実装は、クラウド・コンピューティング環境に限定されないということが、あらかじめ理解される。本発明の実施形態は、既知または今後開発される任意のその他の種類のコンピューティング環境と組み合わせて実装できる。
クラウド・コンピューティングは、構成可能な計算リソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス)の共有プールへの便利なオンデマンドのネットワーク・アクセスを可能にするためのサービス提供モデルであり、管理上の手間またはサービス・プロバイダとのやりとりを最小限に抑えて、それらのリソースを迅速にプロビジョニングおよび解放することができる。このクラウド・モデルは、少なくとも5つの特徴、少なくとも3つのサービス・モデル、および少なくとも4つのデプロイメント・モデルを含むことができる。
特徴は、次のとおりである。
オンデマンドのセルフ・サービス:クラウドの利用者は、サーバの時間、ネットワーク・ストレージなどのコンピューティング能力を一方的に、サービス・プロバイダとの人間的なやりとりを必要とせず、必要に応じて自動的にプロビジョニングすることができる。
幅広いネットワーク・アクセス:クラウドの能力は、ネットワークを経由して利用可能であり、標準的なメカニズムを使用してアクセスできるため、異種のシン・クライアントまたはシック・クライアント・プラットフォーム(例えば、携帯電話、ラップトップ、およびPDA)による利用を促進する。
リソース・プール:プロバイダの計算リソースは、プールされ、マルチテナント・モデルを使用して複数の利用者に提供される。さまざまな物理的および仮想的リソースが、要求に従って動的に割り当ておよび再割り当てされる。場所に依存しないという感覚があり、利用者は通常、提供されるリソースの正確な場所に関して管理することも知ることもないが、さらに高い抽象レベル(例えば、国、州、データセンタ)では、場所を指定できる場合がある。
迅速な順応性:クラウドの能力は、迅速かつ柔軟に、場合によっては自動的にプロビジョニングされ、素早くスケールアウトし、迅速に解放されて素早くスケールインすることができる。プロビジョニングに使用できる能力は、利用者には、多くの場合、任意の量をいつでも無制限に購入できるように見える。
測定されるサービス:クラウド・システムは、計測機能を活用することによって、サービスの種類(例えば、ストレージ、処理、帯域幅、およびアクティブなユーザのアカウント)に適した抽象レベルで、リソースの使用を自動的に制御および最適化する。リソースの使用量は監視、制御、および報告することができ、利用されるサービスのプロバイダと利用者の両方に透明性が提供される。
サービス・モデルは、次のとおりである。
SaaS(Software as a Service):利用者に提供される能力は、クラウド・インフラストラクチャ上で稼働しているプロバイダのアプリケーションの利用である。それらのアプリケーションは、Webブラウザ(例えば、Webベースの電子メール)などのシン・クライアント・インターフェイスを介して、さまざまなクライアント・デバイスからアクセスできる。利用者は、ネットワーク、サーバ、オペレーティング・システム、ストレージ、または個々のアプリケーション機能を含む基盤になるクラウド・インフラストラクチャを、限定的なユーザ固有のアプリケーション構成設定を行う可能性を除き、管理することも制御することもない。
PaaS(Platform as a Service):利用者に提供される能力は、プロバイダによってサポートされるプログラミング言語およびツールを使用して作成された、利用者が作成または取得したアプリケーションをクラウド・インフラストラクチャにデプロイすることである。利用者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む基盤になるクラウド・インフラストラクチャを管理することも制御することもないが、デプロイされたアプリケーション、および場合によってはアプリケーション・ホスティング環境の構成を制御することができる。
IaaS(Infrastructure as a Service):利用者に提供される能力は、処理、ストレージ、ネットワーク、およびその他の基本的な計算リソースのプロビジョニングであり、利用者は、オペレーティング・システムおよびアプリケーションを含むことができる任意のソフトウェアをデプロイして実行できる。利用者は、基盤になるクラウド・インフラストラクチャを管理することも制御することもないが、オペレーティング・システム、ストレージ、およびデプロイされたアプリケーションを制御することができ、場合によっては、選択されたネットワーク・コンポーネント(例えば、ホスト・ファイアウォール)を限定的に制御できる。
デプロイメント・モデルは、次のとおりである。
プライベート・クラウド:このクラウド・インフラストラクチャは、組織のためにのみ運用される。このクラウド・インフラストラクチャは、この組織またはサード・パーティによって管理することができ、オンプレミスまたはオフプレミスに存在することができる。
コミュニティ・クラウド:このクラウド・インフラストラクチャは、複数の組織によって共有され、関心事(例えば、任務、セキュリティ要件、ポリシー、およびコンプライアンスに関する考慮事項)を共有している特定のコミュニティをサポートする。このクラウド・インフラストラクチャは、これらの組織またはサード・パーティによって管理することができ、オンプレミスまたはオフプレミスに存在することができる。
パブリック・クラウド:このクラウド・インフラストラクチャは、一般ユーザまたは大規模な業界団体が使用できるようになっており、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド:このクラウド・インフラストラクチャは、データとアプリケーションの移植を可能にする標準化された技術または独自の技術(例えば、クラウド間の負荷バランスを調整するためのクラウド・バースト)によって固有の実体を残したまま互いに結合された2つ以上のクラウド(プライベート、コミュニティ、またはパブリック)の複合である。
クラウド・コンピューティング環境は、ステートレス、疎結合、モジュール性、および意味的相互運用性に重点を置いたサービス指向の環境である。クラウド・コンピューティングの中心になるのは、相互接続されたノードのネットワークを備えるインフラストラクチャである。
ここで図6を参照すると、クラウド・コンピューティング・ノード610の例の概略図が示されている。クラウド・コンピューティング・ノード610は、適切なクラウド・コンピューティング・ノードの一例に過ぎず、本明細書に記載された本発明の実施形態の使用または機能の範囲に関して、いかなる制限を示唆することも意図されていない。いずれにせよ、クラウド・コンピューティング・ノード610は、前述した任意の機能を実装すること、または実行すること、あるいはその両方を行うことができる。
クラウド・コンピューティング・ノード610内には、他の多数の汎用または専用のコンピューティング・システム環境または構成で運用できるコンピュータ・システム/サーバ612が存在する。コンピュータ・システム/サーバ612での使用に適した既知のコンピューティング・システム、環境、または構成、あるいはその組み合わせの例は、パーソナル・コンピュータ・システム、サーバ・コンピュータ・システム、シン・クライアント、シック・クライアント、ハンドヘルドまたはラップトップ・デバイス、マイクロプロセッサ・システム、マイクロプロセッサベース・システム、セット・トップ・ボックス、プログラマブル・コンシューマ・エレクトロニクス、ネットワークPC、マイクロコンピュータ・システム、メインフレーム・コンピュータ・システム、およびこれらの任意のシステムまたはデバイスを含む分散クラウド・コンピューティング環境などを含むが、これらに限定されない。
コンピュータ・システム/サーバ612は、コンピュータ・システムによって実行されているプログラム・モジュールなどの、コンピュータ・システムによって実行可能な命令との一般的な関連で説明することができる。通常、プログラム・モジュールは、特定のタスクを実行する、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、論理、データ構造などを含むことができる。コンピュータ・システム/サーバ612は、通信ネットワークを介してリンクされたリモート処理デバイスによってタスクが実行される、分散クラウド・コンピューティング環境で実行されてよい。分散クラウド・コンピューティング環境において、プログラム・モジュールは、メモリ・ストレージ・デバイスを含む、ローカルおよびリモートの両方のコンピュータ・システム記憶媒体に配置されてよい。
図6に示すように、クラウド・コンピューティング・ノード610内のコンピュータ・システム/サーバ612は、汎用コンピューティング・デバイスの形態で示されている。コンピュータ・システム/サーバ612のコンポーネントは、1つまたは複数のプロセッサまたはプロセッシング・ユニット616、システム・メモリ628、およびシステム・メモリ628を含むさまざまなシステム・コンポーネントをプロセッサ616に結合するバス618を含むことができるが、これらに限定されない。
バス618は、メモリ・バスまたはメモリ・コントローラ、ペリフェラル・バス、アクセラレーテッド・グラフィックス・ポート、および任意のさまざまなバス・アーキテクチャを使用するプロセッサまたはローカル・バスを含む、1つまたは複数の任意の種類のバス構造を表す。例として、そのようなアーキテクチャは、ISA(Industry Standard Architecture)バス、MCA(Micro Channel Architecture)バス、EISA(Enhanced ISA)バス、VESA(Video Electronics Standards Association)ローカル・バス、およびPCI(Peripheral Component Interconnect)バスを含むが、これらに限定されない。
コンピュータ・システム/サーバ612は、通常、さまざまなコンピュータ・システム可読媒体を含む。そのような媒体は、コンピュータ・システム/サーバ612によってアクセスできる任意の使用可能な媒体にすることができ、揮発性および不揮発性媒体、取り外し可能および取り外し不可の媒体を含む。
システム・メモリ628は、ランダム・アクセス・メモリ(RAM)630またはキャッシュ・メモリ632あるいはその両方などの、揮発性メモリの形態でのコンピュータ・システム可読媒体を含むことができる。コンピュータ・システム/サーバ612は、その他の取り外し可能/取り外し不可、揮発性/不揮発性のコンピュータ・システム記憶媒体をさらに含むことができる。単に例として、取り外し不可、不揮発性の磁気媒体(図示されておらず、通常は「ハード・ドライブ」と呼ばれる)に対する読み取りと書き込みを行うために、ストレージ・システム634を提供することができる。図示されていないが、取り外し可能、不揮発性の磁気ディスク(例えば、「フロッピー(R)・ディスク」)に対する読み取りと書き込みを行うための磁気ディスク・ドライブ、およびCD−ROM、DVD−ROM、またはその他の光媒体などの取り外し可能、不揮発性の光ディスクに対する読み取りと書き込みを行うための光ディスク・ドライブを提供することができる。そのような例では、それぞれを、1つまたは複数のデータ媒体インターフェイスによってバス618に接続することができる。下で詳細に示され、説明されるように、メモリ628は、本発明の実施形態の機能を実行するように構成された一連の(例えば、少なくとも1つの)プログラム・モジュールを備える少なくとも1つのプログラム製品を含むことができる。
例えば、一連の(少なくとも1つの)プログラム・モジュール642を含んでいるプログラム/ユーティリティ640がメモリ628に記憶されてよいが、これに限定されず、オペレーティング・システム、1つまたは複数のアプリケーション・プログラム、その他のプログラム・モジュール、およびプログラム・データも記憶されてよい。オペレーティング・システム、1つまたは複数のアプリケーション・プログラム、その他のプログラム・モジュール、およびプログラム・データまたはこれらの組み合わせは、それぞれネットワーク環境の実装を含むことができる。プログラム・モジュール642は、通常、本明細書に記載された本発明の実施形態の機能または方法あるいはその両方を実行する。
また、コンピュータ・システム/サーバ612は、キーボード、ポインティング・デバイス、ディスプレイ624などの1つまたは複数の外部デバイス614、ユーザがコンピュータ・システム/サーバ612と情報をやりとりできるようにする1つまたは複数のデバイス、またはコンピュータ・システム/サーバ612が1つまたは複数の他のコンピューティング・デバイスと通信できるようにする任意のデバイス(例えば、ネットワーク・カード、モデムなど)、あるいはその組み合わせと通信することもできる。そのような通信は、入力/出力(I/O:Input/Output)インターフェイス622を介して行うことができる。さらに、コンピュータ・システム/サーバ612は、ローカル・エリア・ネットワーク(LAN:Local Area Network)、一般的な広域ネットワーク(WAN:Wide Area Network)、またはパブリック・ネットワーク(例えば、インターネット)、あるいはその組み合わせなどの1つまたは複数のネットワークと、ネットワーク・アダプタ620を介して通信することができる。図示されているように、ネットワーク・アダプタ620は、バス618を介してコンピュータ・システム/サーバ612の他のコンポーネントと通信する。図示されていないが、その他のハードウェア・コンポーネントまたはソフトウェア・コンポーネントあるいはその両方を、コンピュータ・システム/サーバ612と併用できるということが理解されるべきである。その例は、マイクロコード、デバイス・ドライバ、冗長プロセッシング・ユニット、外部ディスク・ドライブ・アレイ、RAIDシステム、テープ・ドライブ、およびデータ・アーカイブ・ストレージ・システムなどを含むが、これらに限定されない。
ここで図7を参照すると、クラウド・コンピューティング環境750の例が示されている。図示されているように、クラウド・コンピューティング環境750は、クラウドの利用者によって使用されるローカル・コンピューティング・デバイス(例えば、PDA(Personal Digital Assistant)または携帯電話754A、デスクトップ・コンピュータ754B、ラップトップ・コンピュータ754C、または自動車コンピュータ・システム754N、あるいはその組み合わせなど)が通信できる1つまたは複数のクラウド・コンピューティング・ノード710を備える。ノード710は、互いに通信することができる。ノード710は、本明細書において前述されたプライベート・クラウド、コミュニティ・クラウド、パブリック・クラウド、またはハイブリッド・クラウド、あるいはこれらの組み合わせなど、1つまたは複数のネットワーク内で物理的または仮想的にグループ化されてよい(図示されていない)。これによって、クラウド・コンピューティング環境750は、クラウドの利用者がローカル・コンピューティング・デバイス上でリソースを維持する必要のないインフラストラクチャ、プラットフォーム、またはソフトウェア、あるいはその組み合わせをサービスとして提供できる。図7に示されたコンピューティング・デバイス754A〜Nの種類は、例示のみが意図されており、コンピューティング・ノード710およびクラウド・コンピューティング環境750は、任意の種類のネットワークまたはネットワーク・アドレス指定可能な接続(例えば、Webブラウザを使用した接続)あるいはその両方を経由して任意の種類のコンピュータ制御デバイスと通信することができると理解される。
ここで図8を参照すると、クラウド・コンピューティング環境750(図7)によって提供される機能的抽象レイヤのセットが示されている。図8に示されたコンポーネント、レイヤ、および機能は、例示のみが意図されており、本発明の実施形態がこれらに限定されないということが、あらかじめ理解されるべきである。図示されているように、次のレイヤおよび対応する機能が提供される。
ハードウェアおよびソフトウェア・レイヤ860は、ハードウェア・コンポーネントおよびソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例は、メインフレーム(一例を挙げると、IBM(R) zSeries(R)システム)、RISC(Reduced Instruction Set Computer)アーキテクチャ・ベース・サーバ(一例を挙げると、IBM pSeries(R)システム)、IBM xSeries(R)システム、IBM BladeCenter(R)システム、ストレージ・デバイス、ネットワークおよびネットワーク・コンポーネントを含む。ソフトウェア・コンポーネントの例は、ネットワーク・アプリケーション・サーバ・ソフトウェア(一例を挙げると、IBM WebSphere(R)アプリケーション・サーバ・ソフトウェア)、およびデータベース・ソフトウェア(一例を挙げると、IBM DB2(R)データベース・ソフトウェア)を含む。(IBM、zSeries、pSeries、xSeries、BladeCenter、WebSphere、およびDB2は、世界中の多くの管轄区域で登録されているInternational Business Machines Corporationの商標である)
仮想化レイヤ862は、仮想サーバ、仮想ストレージ、仮想プライベート・ネットワークを含む仮想ネットワーク、仮想アプリケーションおよびオペレーティング・システム、ならびに仮想クライアントなどの仮想的実体を提供できる抽象レイヤを備える。
一例を挙げると、管理レイヤ864は、以下で説明される機能を提供することができる。リソース・プロビジョニングは、クラウド・コンピューティング環境内でタスクを実行するために利用される計算リソースおよびその他のリソースの動的調達を行う。計測および価格設定は、クラウド・コンピューティング環境内でリソースが利用された際のコスト追跡、およびそれらのリソースの利用に対する請求書の作成と送付を行う。一例を挙げると、それらのリソースは、アプリケーション・ソフトウェア・ライセンスを含むことができる。セキュリティは、クラウドの利用者およびタスクのID検証を行うとともに、データおよびその他のリソースの保護を行う。ユーザ・ポータルは、クラウド・コンピューティング環境へのアクセスを利用者およびシステム管理者に提供する。サービス・レベル管理は、必要なサービス・レベルを満たすように、クラウドの計算リソースの割り当てと管理を行う。サービス水準合意(SLA:Service Level Agreement)計画および実行は、今後の要求が予想されるクラウドの計算リソースの事前準備および調達を、SLAに従って行う。
ワークロード・レイヤ866は、クラウド・コンピューティング環境で利用できる機能の例を示している。このレイヤから提供できるワークロードおよび機能の例は、マッピングおよびナビゲーション、ソフトウェア開発およびライフサイクル管理、仮想クラスルーム教育の配信、データ解析処理、トランザクション処理、および位置コンテキストの推定を含む。
本発明は、システム、方法、またはコンピュータ・プログラム製品、あるいはその組み合わせであってよい。コンピュータ・プログラム製品は、プロセッサに本発明の態様を実行させるためのコンピュータ可読プログラム命令を含んでいる1つまたは複数のコンピュータ可読記憶媒体を含んでよい。
コンピュータ可読記憶媒体は、命令実行デバイスによって使用するための命令を保持および記憶できる有形のデバイスであることができる。コンピュータ可読記憶媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁ストレージ・デバイス、半導体ストレージ・デバイス、またはこれらの任意の適切な組み合わせであってよいが、これらに限定されない。コンピュータ可読記憶媒体のさらに具体的な例の非網羅的リストは、ポータブル・コンピュータ・ディスケット、ハード・ディスク、ランダム・アクセス・メモリ(RAM:random access memory)、読み取り専用メモリ(ROM:read-only memory)、消去可能プログラマブル読み取り専用メモリ(EPROM:erasable programmable read-only memoryまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM:static random access memory)、ポータブル・コンパクト・ディスク読み取り専用メモリ(CD−ROM:compact disc read-only memory)、デジタル多用途ディスク(DVD:digital versatile disk)、メモリ・スティック、フロッピー(R)・ディスク、パンチカードまたは命令が記録されている溝の中の隆起構造などの機械的にエンコードされるデバイス、およびこれらの任意の適切な組み合わせを含む。本明細書において使用されているコンピュータ可読記憶媒体は、それ自体が、電波またはその他の自由に伝搬する電磁波、導波管またはその他の送信媒体を伝搬する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、あるいはワイヤを介して送信される電気信号などの一時的信号であると解釈されるべきではない。
本明細書に記載されたコンピュータ可読プログラム命令は、コンピュータ可読記憶媒体から各コンピューティング・デバイス/処理デバイスへ、またはネットワーク(例えば、インターネット、ローカル・エリア・ネットワーク、広域ネットワーク、または無線ネットワーク、あるいはその組み合わせ)を介して外部コンピュータまたは外部ストレージ・デバイスへダウンロードされ得る。このネットワークは、銅伝送ケーブル、光伝送ファイバ、無線送信、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組み合わせを備えてよい。各コンピューティング・デバイス/処理デバイス内のネットワーク・アダプタ・カードまたはネットワーク・インターフェイスは、コンピュータ可読プログラム命令をネットワークから受信し、それらのコンピュータ可読プログラム命令を各コンピューティング・デバイス/処理デバイス内のコンピュータ可読記憶媒体に記憶するために転送する。
本発明の処理を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA:instruction-set-architecture)命令、マシン命令、マシン依存命令、マイクロコード、ファームウェア命令、状態設定データ、あるいは、Smalltalk(R)、C++などのオブジェクト指向プログラミング言語、および「C」プログラミング言語または同様のプログラミング言語などの従来の手続き型プログラミング言語を含む1つまたは複数のプログラミング言語の任意の組み合わせで記述されたソース・コードまたはオブジェクト・コードであってよい。コンピュータ可読プログラム命令は、ユーザのコンピュータ上で全体的に実行すること、ユーザのコンピュータ上でスタンドアロン・ソフトウェア・パッケージとして部分的に実行すること、ユーザのコンピュータ上およびリモート・コンピュータ上でそれぞれ部分的に実行すること、あるいはリモート・コンピュータ上またはサーバ上で全体的に実行することができる。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN:local area network)または広域ネットワーク(WAN:wide area network)を含む任意の種類のネットワークを介してユーザのコンピュータに接続されてよく、または接続は、(例えば、インターネット・サービス・プロバイダを使用してインターネットを介して)外部コンピュータに対して行われてよい。一部の実施形態では、本発明の態様を実行するために、例えばプログラマブル論理回路、フィールドプログラマブル・ゲート・アレイ(FPGA:field-programmable gate arrays)、またはプログラマブル・ロジック・アレイ(PLA:programmable logic arrays)を含む電子回路は、コンピュータ可読プログラム命令の状態情報を利用することによって、電子回路をカスタマイズするためのコンピュータ可読プログラム命令を実行してよい。
本発明の態様は、本明細書において、本発明の実施形態に従って、方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照して説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、ならびにフローチャート図またはブロック図あるいはその両方に含まれるブロックの組み合わせが、コンピュータ可読プログラム命令によって実装され得るということが理解されるであろう。
これらのコンピュータ可読プログラム命令は、コンピュータまたはその他のプログラム可能なデータ処理装置のプロセッサを介して実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作を実施する手段を作り出すべく、汎用コンピュータ、専用コンピュータ、または他のプログラム可能なデータ処理装置のプロセッサに提供されてマシンを作り出すものであってよい。これらのコンピュータ可読プログラム命令は、命令が記憶されたコンピュータ可読記憶媒体がフローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作の態様を実施する命令を含んでいる製品を備えるように、コンピュータ可読記憶媒体に記憶され、コンピュータ、プログラム可能なデータ処理装置、または他のデバイス、あるいはその組み合わせに特定の方式で機能するように指示できるものであってもよい。
コンピュータ可読プログラム命令は、コンピュータ上、その他のプログラム可能な装置上、またはその他のデバイス上で実行される命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックに指定される機能/動作を実施するように、コンピュータ実装プロセスを作り出すべく、コンピュータ、その他のプログラム可能なデータ処理装置、またはその他のデバイスにロードされ、コンピュータ、その他のプログラム可能な装置、またはその他のデバイス上で、一連の動作可能なステップを実行させるものであってもよい。
図内のフローチャートおよびブロック図は、本発明のさまざまな実施形態に従って、システム、方法、およびコンピュータ・プログラム製品の可能な実装のアーキテクチャ、機能、および処理を示す。これに関連して、フローチャートまたはブロック図内の各ブロックは、指定された論理機能を実装するための1つまたは複数の実行可能な命令を備える、命令のモジュール、セグメント、または部分を表してよい。一部の代替の実装では、ブロックに示された機能は、図に示された順序とは異なる順序で発生してよい。例えば、連続して示された2つのブロックは、実際には、含まれている機能に応じて、実質的に同時に実行されるか、または場合によっては逆の順序で実行されてよい。ブロック図またはフローチャート図あるいはその両方の各ブロック、ならびにブロック図またはフローチャート図あるいはその両方に含まれるブロックの組み合わせは、指定された機能または動作を実行するか、または専用ハードウェアとコンピュータ命令を組み合わせて実行する専用ハードウェアベースのシステムによって実装され得るということにも注意する。
本明細書における本原理の「一実施形態」または「実施形態」およびその他のそれらの変形への言及は、実施形態に関連して説明される特定の特徴、構造、特性などが、本原理の少なくとも1つの実施形態に含まれることを意味している。したがって、本明細書全体のさまざまな場所に現れる「一実施形態では」または「実施形態では」という語句、あるいは任意のその他の変形は、必ずしもすべてが同じ実施形態を参照しているわけではない。
「/」、「〜または〜あるいはその両方」、および「〜のうちの少なくとも1つ」のいずれかの使用は、例えば、「A/B」、「AまたはBあるいはその両方」、および「AとBのうちの少なくとも1つ」のケースでは、1番目に示されたオプション(A)のみの選択、または2番目に示されたオプション(B)のみの選択、または両方のオプション(AおよびB)の選択を包含することが意図されているということが理解されるべきである。さらに例を挙げると、「A、B、またはC、あるいはその組み合わせ」および「A、B、およびCのうちの少なくとも1つ」のケースでは、そのような語句は、1番目に示されたオプション(A)のみの選択、または2番目に示されたオプション(B)のみの選択、または3番目に示されたオプション(C)のみの選択、または1番目および2番目に示されたオプション(AおよびB)のみの選択、または1番目および3番目に示されたオプション(AおよびC)のみの選択、または2番目および3番目に示されたオプション(BおよびC)のみの選択、または3つすべてのオプション(AおよびBおよびC)の選択を包含することが意図されている。これは、当業者または関連する業者にとって容易に明らかであるように、示された多くの項目に関して拡張されてよい。
システムおよび方法(例であって、限定することは意図されていない)の好ましい実施形態について説明したが、上の内容を考慮して当業者によって変更および変形を行うことができるということに注意する。したがって、添付の請求項によって概説されている発明の範囲内で、開示された特定の実施形態において変更を行ってよいということが理解されるべきである。本発明の態様について説明したが、特許証によって請求、要求、および保護される内容については、特許法が要求する詳細さで、添付の請求項に記載される。

Claims (15)

  1. 少なくとも2人のメンバーを含んでいるモバイル・ユーザの集合に関して正確な位置コンテキスト・カテゴリを推定するための、コンピュータ・サーバによって実行される方法であって、
    前記集合内のモバイル・ユーザごとに、不確実なモバイル・デバイス位置データに応答して、パブリックに使用可能な情報から少なくとも1つの位置コンテキスト・カテゴリを取得するステップと、
    前記集合内のモバイル・ユーザごとに1つの正確な位置コンテキスト・カテゴリを推定するために、前記集合内のモバイル・ユーザごとに、複数ユーザの共同機械学習を前記少なくとも1つの位置コンテキスト・カテゴリに適用して、前記集合内のモバイル・ユーザごとに1つのより正確な位置コンテキスト・カテゴリを推定するステップと
    を含む、方法。
  2. 前記不確実なモバイル・デバイス位置データが、携帯電話ロケータによって生成された携帯電話位置データを含んでいる、請求項1に記載の方法。
  3. 前記取得するステップが、
    前記集合内のモバイル・ユーザごとに、各クエリを1つまたは複数のモバイルWebアプリケーションに送信するステップであって、前記モバイルWebアプリケーションが、前記各クエリ内で規定された前記不確実なモバイル・デバイス位置データに応答して、前記モバイル・ユーザのうちの1人のサブミットに適用できる前記少なくとも1つの位置コンテキスト・カテゴリを返す、前記ステップと、
    前記集合内のモバイル・ユーザごとに、前記各クエリに応答して、前記少なくとも1つの位置コンテキスト・カテゴリを前記モバイルWebアプリケーションから受信するステップと
    をさらに含む、請求項1に記載の方法。
  4. 前記モバイル・ユーザ間の類似性に基づいて、前記モバイル・ユーザを複数のグループに分類するステップをさらに含む、請求項1または3に記載の方法。
  5. 前記複数ユーザの共同機械学習が、核ノルムを使用して表された目的関数を使用して実行される、請求項1に記載の方法。
  6. 前記推定するステップが、目的関数を使用して前記複数ユーザの共同機械学習を適用して行列を形成し、列および行のうちの一方がそれぞれ、前記モバイル・ユーザの各1人に対応し、前記列および前記行のうちの他方がそれぞれ、前記複数の位置コンテキスト・カテゴリの各1つに対応する、請求項1に記載の方法。
  7. 行列に対する行制約を受ける非凸ランク関数の凸エンベロープを使用して前記目的関数が表される、請求項6に記載の方法。
  8. 前記集合内の少なくとも1人のモバイル・ユーザに関して、前記1つの正確な位置コンテキスト・カテゴリに基づいて、前記少なくとも1人のモバイル・ユーザによって実行される少なくとも1つの活動、または前記少なくとも1人のモバイル・ユーザにとって興味のある少なくとも1つの活動を推定するステップをさらに含む、請求項1または3に記載の方法。
  9. 前記集合内の少なくとも1人のモバイル・ユーザに関して、前記1つの正確な位置コンテキスト・カテゴリに基づいて、前記少なくとも1人のモバイル・ユーザの少なくとも1つの将来の意図を推定するステップをさらに含む、請求項1または3に記載の方法。
  10. コンピュータに、請求項1〜9の何れか1項に記載の各ステップを実行させるコンピュータ・プログラム。
  11. 請求項10に記載の前記コンピュータ・プログラムを、コンピュータ可読記録媒体に記録した、コンピュータ可読記録媒体。
  12. 少なくとも2人のメンバーを含んでいるモバイル・ユーザの集合に関して正確な位置コンテキスト・カテゴリを推定するためのシステムであって、
    プロセッサおよびメモリを含んでいるコンピュータ・サーバを備えており、前記コンピュータ・サーバが、
    前記集合内のモバイル・ユーザごとに、不確実なモバイル・デバイス位置データに応答して、パブリックに使用可能な情報から少なくとも1つの位置コンテキスト・カテゴリを取得することと、
    前記集合内のモバイル・ユーザごとに1つの正確な位置コンテキスト・カテゴリを推定するために、前記集合内のモバイル・ユーザごとに、複数ユーザの共同機械学習を前記少なくとも1つの位置コンテキスト・カテゴリに適用して、前記集合内のモバイル・ユーザごとに1つのより正確な位置コンテキスト・カテゴリを推定することと
    を実行するように構成されている、システム。
  13. 前記コンピュータ・サーバがクラウド・コンピューティング構成を使用して実装されている、請求項12に記載のシステム。
  14. 前記コンピュータ・サーバが、前記集合内の少なくとも1人のモバイル・ユーザに関して、前記1つの正確な位置コンテキスト・カテゴリに基づいて、前記少なくとも1人のモバイル・ユーザによって実行される少なくとも1つの活動、または前記少なくとも1人のモバイル・ユーザにとって興味のある少なくとも1つの活動を推定するようにさらに構成されている、請求項12に記載のシステム。
  15. 前記コンピュータ・サーバが、前記集合内の少なくとも1人のモバイル・ユーザに関して、前記1つの正確な位置コンテキスト・カテゴリに基づいて、前記少なくとも1人のモバイル・ユーザの少なくとも1つの将来の意図を推定するようにさらに構成されている、請求項12に記載のシステム。
JP2018543347A 2016-03-16 2017-02-20 不確実性を含むユーザ・モバイル・データに基づく位置コンテキスト推定のための方法、非一時的製品、およびシステム Active JP6916804B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/071,996 US9743243B1 (en) 2016-03-16 2016-03-16 Location context inference based on user mobile data with uncertainty
US15/071,996 2016-03-16
PCT/IB2017/050952 WO2017158453A1 (en) 2016-03-16 2017-02-20 Location context inference based on user mobile data with uncertainty

Publications (2)

Publication Number Publication Date
JP2019512768A JP2019512768A (ja) 2019-05-16
JP6916804B2 true JP6916804B2 (ja) 2021-08-11

Family

ID=59581304

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018543347A Active JP6916804B2 (ja) 2016-03-16 2017-02-20 不確実性を含むユーザ・モバイル・データに基づく位置コンテキスト推定のための方法、非一時的製品、およびシステム

Country Status (6)

Country Link
US (2) US9743243B1 (ja)
JP (1) JP6916804B2 (ja)
CN (1) CN108700642B (ja)
DE (1) DE112017000195T5 (ja)
GB (1) GB2563795A (ja)
WO (1) WO2017158453A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10146829B2 (en) * 2015-09-28 2018-12-04 Google Llc Query composition system
US11537931B2 (en) * 2017-11-29 2022-12-27 Google Llc On-device machine learning platform to enable sharing of machine-learned models between applications

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4167179B2 (ja) * 2001-12-26 2008-10-15 オートデスク,インコーポレイテッド 移動デバイスロケータシステム
US6978258B2 (en) * 2001-12-26 2005-12-20 Autodesk, Inc. Fuzzy logic reasoning for inferring user location preferences
CN101655961A (zh) 2003-09-05 2010-02-24 松下电器产业株式会社 访问场所确定装置及访问场所确定方法
US7774349B2 (en) * 2003-12-11 2010-08-10 Microsoft Corporation Statistical models and methods to support the personalization of applications and services via consideration of preference encodings of a community of users
US20070005419A1 (en) * 2005-06-30 2007-01-04 Microsoft Corporation Recommending location and services via geospatial collaborative filtering
WO2007101107A2 (en) 2006-02-24 2007-09-07 Skyhook Wireless, Inc. Methods and systems for estimating a user position in a wlan positioning system based on user assigned access point locations
CN101458409B (zh) 2008-12-17 2012-10-10 康佳集团股份有限公司 一种液晶显示器和改善液晶显示器显示效果的方法
WO2012042814A1 (ja) * 2010-10-01 2012-04-05 パナソニック株式会社 分類装置及び分類方法
US8457653B2 (en) 2011-02-25 2013-06-04 Nokia Corporation Method and apparatus for pre-fetching location-based data while maintaining user privacy
ITTO20110284A1 (it) 2011-03-29 2011-06-28 Sisvel Technology Srl Procedimento di localizzazione cooperativa e relativi apparati
US20130024464A1 (en) 2011-07-20 2013-01-24 Ness Computing, Inc. Recommendation engine that processes data including user data to provide recommendations and explanations for the recommendations to a user
US8768876B2 (en) * 2012-02-24 2014-07-01 Placed, Inc. Inference pipeline system and method
GB201211626D0 (en) * 2012-06-29 2012-08-15 Tomtom Dev Germany Gmbh Location estimation method and system
US20140067901A1 (en) 2012-07-24 2014-03-06 Blake Shaw System and method for contextual messaging in a location-based network
US9177257B2 (en) * 2012-08-30 2015-11-03 International Business Machines Corporation Non-transitory article of manufacture and system for providing a prompt to user for real-time cognitive assistance
US20140136451A1 (en) * 2012-11-09 2014-05-15 Apple Inc. Determining Preferential Device Behavior
US9179265B2 (en) * 2013-01-31 2015-11-03 Apple Inc. Reducing location search space
US9154915B2 (en) * 2013-04-16 2015-10-06 Google Inc. Apparatus and method for ascertaining the operating hours of a business
US9439038B2 (en) 2013-10-10 2016-09-06 Pushd, Inc. Automated notification of social media member events
JP5794646B2 (ja) 2013-12-27 2015-10-14 日本電気株式会社 衛星測位システム、測位端末、測位方法、及びプログラム
US20150248436A1 (en) 2014-03-03 2015-09-03 Placer Labs Inc. Methods, Circuits, Devices, Systems and Associated Computer Executable Code for Assessing a Presence Likelihood of a Subject at One or More Venues

Also Published As

Publication number Publication date
JP2019512768A (ja) 2019-05-16
GB2563795A (en) 2018-12-26
WO2017158453A1 (en) 2017-09-21
DE112017000195T5 (de) 2018-08-02
US20170272908A1 (en) 2017-09-21
US10003923B2 (en) 2018-06-19
US9743243B1 (en) 2017-08-22
CN108700642B (zh) 2022-04-26
CN108700642A (zh) 2018-10-23
GB201816578D0 (en) 2018-11-28

Similar Documents

Publication Publication Date Title
US10748102B2 (en) Just in time learning driven by point of sale or other data and metrics
US11488014B2 (en) Automated selection of unannotated data for annotation based on features generated during training
US20200151826A1 (en) Timing social media network actions
US20160380954A1 (en) Identification of employees on external social media
US10783210B1 (en) Dynamic generation of web browser links based on cognitive analysis
US20200409451A1 (en) Personalized content for augemented reality based on past user experience
JP6916804B2 (ja) 不確実性を含むユーザ・モバイル・データに基づく位置コンテキスト推定のための方法、非一時的製品、およびシステム
CN114626502A (zh) 用于深度学习架构的时间估计器
US11182454B2 (en) Optimizing web pages by minimizing the amount of redundant information
US11121986B2 (en) Generating process flow models using unstructure conversation bots
US11062007B2 (en) Automated authentication and access
WO2021048689A1 (en) Distributed system deployment
US20220114459A1 (en) Detection of associations between datasets
US10803728B1 (en) Dynamically networked integrated swarm sensor tracking
US20170249169A1 (en) Dynamic assistant for applications based on pattern analysis
US20190347230A1 (en) Automated configuring of computer system settings for peripheral device(s)
US11966453B2 (en) Ordering annotation sets for machine learning
US11188968B2 (en) Component based review system
US20230409959A1 (en) Grouped aggregation in federated learning
US20220261597A1 (en) Ordering annotation sets for machine learning
US20230024397A1 (en) Classification of mouse dynamics data using uniform resource locator category mapping
US20230161846A1 (en) Feature selection using hypergraphs
US20230043505A1 (en) Deep learning software model modification
US20220413989A1 (en) Cloud service provider selection based on digital twin simulation
US20220188676A1 (en) Inference model optimization

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181213

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190729

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200826

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200908

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201222

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210302

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210716

R150 Certificate of patent or registration of utility model

Ref document number: 6916804

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350