JP5221369B2 - 資源制約デバイスのための学習装置 - Google Patents

資源制約デバイスのための学習装置 Download PDF

Info

Publication number
JP5221369B2
JP5221369B2 JP2008540060A JP2008540060A JP5221369B2 JP 5221369 B2 JP5221369 B2 JP 5221369B2 JP 2008540060 A JP2008540060 A JP 2008540060A JP 2008540060 A JP2008540060 A JP 2008540060A JP 5221369 B2 JP5221369 B2 JP 5221369B2
Authority
JP
Japan
Prior art keywords
rule
calendar
values
rules
value
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.)
Expired - Fee Related
Application number
JP2008540060A
Other languages
English (en)
Other versions
JP2009515277A (ja
Inventor
タンドン,ガウロフ
Original Assignee
テジック・コミュニケーションズ
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 テジック・コミュニケーションズ filed Critical テジック・コミュニケーションズ
Publication of JP2009515277A publication Critical patent/JP2009515277A/ja
Application granted granted Critical
Publication of JP5221369B2 publication Critical patent/JP5221369B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • G06N5/022Knowledge engineering; Knowledge acquisition
    • G06N5/025Extracting rules from data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • Strategic Management (AREA)
  • Mathematical Physics (AREA)
  • Human Resources & Organizations (AREA)
  • Artificial Intelligence (AREA)
  • Computing Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Evolutionary Computation (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Hardware Design (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Algebra (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Primary Health Care (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Electrically Operated Instructional Devices (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Telephonic Communication Services (AREA)

Description

(関連出願)
本願は、2005年11月9日に出願された、"A Leaner for Resource Constrained Devices"(資源制約デバイスのための学習装置)と題する米国仮特許出願第60/734,840号に対する優先権を主張する。仮出願第60/734,840号の明細書は、ここで引用したことにより、本願にも全てが含まれるものとする。
(発明の分野)
本発明は、データ処理の分野に関し、特に、資源に制約があるデバイスのための学習装置の方法および装置に関するものである。
多くの機械学習およびデータ採取技法(mining techniques)は、大量のデータおよびモデルを扱うのに十分な資源を有するデバイスにおいて動作するように設計されている。スマートフォンやパーソナル・ディジタル・アシスタント(PDA)のような移動体デバイスの普及により、これらのデバイス上で起動するアプリケーションの数も急速に増えつつある。これらのデバイスでは、いずれの学習アルゴリムに対しても、記憶および時間に関して厳しい制約が生ずる。通例、高速のオンライン・アルゴリズムが必要となる。更に、インスタンス空間が制限されているので、モデルを絶えず更新する必要がある。
例えば、移動体文脈学習(mobile context learning)は、ヒューマン・コンピュータ・インターフェース(HCI)、ユビキタス・コンピューティング、およびパーバシブ・コンピューティング(pervasive computing)のバナーの下で推し進められてきた。文脈は、ユーザの活動、環境、および移動体デバイスの状態から推論される。新しいデータを受信したらモデルを更新する必要がある。これらのデバイスは、デスクトップとは異なり、豊富な資源を享受することができないが、学習装置は、これらのデバイスの制約された環境を念頭において設計されていない。
添付図面に例示する実施形態例に沿って、本発明について説明するが、これらは限定ではない。図面において、同様の要素には同様の参照番号を付することとする。
本発明の例示実施形態は、限定ではないが、受信したインスタンスの属性に対して値を予測するために1つ以上の票(vote)を登録する方法および装置を含む。種々の実施形態では、登録は、少なくとも部分的に、前提が満たされていることが判明している1つ以上のルールの少なくとも1つに関連する重みおよび予測目標値に基づいて、重み付けして行われる。種々の実施形態では、前提を満たすことは、少なくとも部分的に、受信したインスタンスの1つ以上の他の属性の1つ以上の属性値に基づいて決定する。種々の実施形態では、本発明は、更に、1つ以上の票が登録された予測目標値が、受信したインスタンスの属性値を正しく予測したか否か判定すること、およびそれに応じてルールの関連する重みを調節することを含む。種々の実施形態では、調節は、1つ以上の票が登録されている予測目標値が受信したインスタンスの属性値を正しく予測した場合には重みを増分すること、および1つ以上の票が登録されている予測目標値が受信したインスタンスの属性値を間違って予測した場合には重みを減分させることも含んでもよい。
例示実施形態の種々の態様について、その作用の実体を当業者に伝えるために、当業者が普通に用いる用語を用いて説明する。しかしながら、記載する態様の一部のみによって、代替実施形態も実用化できることは、当業者には明白であろう。説明の目的上、具体的な数値、材料、および構成を明記して、例示実施形態の完全な理解が得られるようにしている。しかしながら、具体的な詳細がなくても、代替実施形態を実用化できることは、当業者には明白であろう。他方において、例示実施形態を曖昧にしないために、周知の機構を省略または簡略化してある。
更に、種々の動作について、例示実施形態を理解する際に最も有益であるように、順番に、多数の別個動作として説明する。しかしながら、説明の順序は、これらの動作が必然的に順序に依存することを暗示するように解釈してはならない。即ち、これらの動作は、提示する順に実行する必要はない。
「一実施形態において」という句を繰り返し用いる。この句は、一般には同じ実施形態を意味しないが、意味する場合もある。「備えている」、「有している」、および「含んでいる」という用語は、文脈上特に明記されていない限り、同義語とする。「A/B」という表現は、「AまたはB」を意味する。「Aおよび/またはB」という表現は、「(A)、(B)、または(AおよびB)」を意味する。「A、BおよびCの少なくとも1つ」という句は、「(A)、(B)、(C)、(AおよびB)、(AおよびC)、ならびに(BおよびC)または(A、BおよびC)」を意味する。「(A)B」という表現は、「(B)または(AB)」であることを意味する。即ちAは任意である。
図1は、種々の実施形態による本発明の全体像を示す。図示のように、資源制約デバイス102は学習装置104を含むことができ、学習装置104は、資源制約デバイスの1つ以上のアプリケーション(図示せず)を強化するか、またはこれらに結合されている。加えて、資源制約デバイス102は、ネットワーキング・ファブリック(networking fabric)のような1つ以上のネットワーキング・ファブリックを通じて、有線またはワイヤレスで通信することが可能であるとよい。ネットワーク・ファブリック106は、デバイス102とサーバ108との通信を行い易くすることができる。実施形態の中には、サーバが学習装置104の動作および/または格納の一部または全部を実行可能な場合もある。
実施形態によっては、資源制約デバイス102が、いずれの種類のスマートフォン、PDA、および移動体デバイスを含む当技術分野において周知の計算機、ならびに数あるその他の計算システムでもよい場合がある。デバイス102は、図4に示すようなビューアと、入力のためのキー、ボタン、またはタッチ・スクリーンとを有することができる。実施形態の中には、デバイス102がコンポーネント入力メカニズムおよび/またはビューアを有していなくてもよく、その動作を実行するために外部デバイスへの結合を拠り所にしてもよい場合がある。また、資源制約デバイス102は、ソフトウェアまたはハードウェアのいずれかで実施する1つ以上のアプリケーションを有することもでき、アプリケーションは、デバイス102の学習装置104によって強化すること、またはこれと通信するように結合することもできる。アプリケーションは、当技術分野において周知の種類であればいずれでもよい。学習装置104は、ハードウェアまたはソフトウェアとして実施されるいずれの種類のプロセスまたはアプリケーションでもよく、学習装置104が強化することができるアプリケーションの一部として実施することもできる。
再度図1を参照すると、このデバイスは、ネットワーキング・ファブリック(networking fabric)106のような、1つ以上のネットワーキング・ファブリックを有することができる。ネットワーク・ファブリック106は、実施形態によっては、PCS、セルラ、または802.11ネットワークのようなワイヤレス・ネットワークでもよく、イーサネット(登録商標)・ネットワークのような有線ネットワークでもよく、あるいはBluetoothネットワークでもよい。加えて、ネットワーキング・ファブリック106は、TCP/IP、RDMA、ATM、または当技術分野において周知の他のいずれの通信プロトコルを拠り所にしてもよい。
種々の実施形態では、サーバ108は、ワークステーション、サーバ、メインフレーム、またはPCのような、当技術分野で周知の計算機であればいずれの種類でもよい。サーバ108は、デバイス102のクライアントからの要求を受信し、このような要求の一部または全部に回答することができるとよい。図示のように、サーバは、以下で説明する、学習装置104の動作または格納の一部または全部を実行することができるとよい。
図示のように、学習装置104は、1つ以上のインスタンスの一致する属性値をランダムに選択することによって、1つ以上のルールを生成することができる。最初に、一致する目標値に基づいて1つ以上のインスタンスをランダムに選択する。種々の実施形態では、インスタンスは、複数の属性で構成するいずれかの論理概念でも表すことができる。例えば、論理概念「会合」(meeting)は、出席者、日付、時間、および場所のような属性で構成することができる。そして、各属性には1つ以上の属性値を関連付けることができる。つまり、属性「出席者」には、属性値「Rene」および「Pascal」と関連付けることができる。このような複数のインスタンスを資源制約デバイス102上に、実施形態によっては、データベースのテーブルとしてまたはファイルのデータ構造として格納することができる。別の実施形態では、インスタンスは代わりにサーバ108上に格納し、サーバ108から検索することができる。サーバ108またはデバイス102のストレージからのインスタンスの検索は、1つ以上の目標値に基づくことができる。目標値を属性値として有するインスタンスは、インスタンス空間を備えることができ、インスタンス空間から多数のインスタンスをランダムに選択することができる。例えば、「会議室」が目標値である場合、「会議室」を属性値として有するインスタンスは、インスタンス空間を備えることができる。次いで、インスタンス空間から、「昼食」、「会合」、「セミナ」のような多数のインスタンスをランダムに選択することができる。各インスタンスは、恐らく「場所」のような属性の「会議室」を属性値として有する。
実施形態によっては、学習装置104は、次に、1つ以上のランダムに選択したインスタンスの一致属性値をランダムに選択することによって、1つ以上のルールを生成することができる。その動機は、一致する属性値はランダムに選択した1つ以上のインスタンスの種々の属性間における相関を捕らえることができるからである。組み立てたルールは、1つ以上の属性で構成される前提を有することができ、各属性は、1つ以上の属性値と関連付けられている。また、ルールは、目標と、この目標と関連のある1つ以上の目標値とを備える帰結(consequent)を含むこともできる。実施形態によっては、ルールを「if-then」形式で組み立てることもでき、「if」で前提が開始し、「then」で帰結が始まる。このような実施形態のルールの一例は、「if sponsor-attendees = matchell and department-attendees=scs then location = weh5309, weh5311, oakland」である。この例では、前提は2つの属性、「sponsor-attendees」および「department-attendees」で構成されており、各属性には1つの属性値が関連付けられており、帰結は、目標「location」で構成され、目標には3つの目標値が関連付けられている。実施形態によっては、ルールがこれらよりも少ないまたは多い属性、および/または前提を構成する属性値、ならびにこれらよりも少ないまたは多い目標値を有する場合もある。したがって、学習装置104が生成するルールは可変長ルールとすることができる。可変長ルールの一例を図3に示し、以下で更に詳しく説明する。
生成したルールは、ルールセットを構成することができ、資源制約デバイス102のストレージまたはサーバ108上に格納することができ、実施形態によっては、サーバ108がルールを生成する場合もある。ルールは、プログラミング言語のクラスとして実施することができ、あるいはそれらのコンポーネント属性、属性値、目標、および目標値を、データベースのテーブルまたはファイルのデータ構造に格納し、必要に応じて、ルールを動的に作成し易くする。
図示のように、ルールを形成した後、学習装置104は冗長なルールを除去することができる。冗長なルールを除去する際、より一般的なルールをより具体的なルールよりも優先するとよい。
種々の実施形態において、学習装置104は、次に、前述のインスタンス空間上においてルールを更新し、ランダムに選択した1つ以上のインスタンスの中にない属性値および目標値を組み込むことができる。例えば、最初に「if date=120205 and personnel=rpe, ata then location=Conference Room」というように形成されたルールは、インスタンス空間において見出されたインスタンスの追加属性値を含むように更新することができる。このように、インスタンスが日付、人員、および場所を属性として有するが、人員に関連のある追加属性値「khf」を有する場合、「if date=120205 and personnel=rpe, ata, khf then location=Conference Room」というように、ルールを更新することができる。
ルールを生成し更新するとき、学習装置104は各ルールに重みを関連付けることができる。実施形態によっては、各ルールには最初に同じ重みを割り当てる場合もある。例えば、初期化のちきに、各ルールには「1」の重みを割り当てることができる。重みは、ルールの特徴であり、ルールと共に格納することができる。例えば、ルールがクラスである場合、重みはそのクラスの変更可能なメンバとすることができる。ルールがテーブルである場合、重みはテーブルのフィールドとすることができる。代替実施形態では、重みおよびルールを別々に格納し、ルールを資源制約デバイス102上に格納し、ルールをサーバ108上に格納することもでき、あるいはその逆でもよい。
実施形態によっては、ルールの追加の特徴、またはその値も、ルールおよび/または重みと共に格納してもよい場合がある。例えば、学習装置104は、各目標値が予測された回数をカウントすることもできる。
前述のように、インスタンスを選択し、ルールを形成し、冗長なルールを除去し、ルールを更新し、各ルールを重みと関連付ける選択動作は、サーバ108上で全体的または部分的に実行することができる。しかしながら、実施形態によっては、前述の選択動作の1つ1つを資源制約デバイス102上で実行するとよい場合もある。前述のルールは、属性値を予測することにより、ルールを更新することにより、そして精度低く属性値を予測するルールを除去することにより、最少量のインスタンス・データの格納を促進する。これらの動作については、以下で更に詳しく説明する。また、精度高く値を予測するルールのみを保持することによって、学習装置104は、維持するルールセットがコンパクトであることを確保する。図示のように、一旦ルールを生成し更新したなら、学習装置104は新しいインスタンスを待っていればよい。新しいインスタンスは、資源制約デバイス102のアプリケーションによって受け取ることができ、このアプリケーションは、学習装置104の一実施形態によって強化される。学習装置104は、いずれの種類のアプリケーションとでも用いることができる。以下の説明を簡略化する目的で、学習装置104によって強化したカレンダ・アプリケーションの一例を参考にする。しかしながら、代替実施形態では、いずれの数のアプリケーションでも学習装置104によって強化することができる。
実施形態によっては、カレンダ・アプリケーションが資源制約デバイス102上で動作できる場合もある。ルールを形成した後またはサーバ108からルールを受信した後、カレンダ・アプリケーションを実行すると、インスタンスを入力として受信するために待機することができる。次いで、新しいインスタンスを受信すると、学習装置104は、ルールに照らし合わせてこのインスタンスを評価することができる。例えば、カレンダ・アプリケーションのユーザが、カレンダによって表示しようとして、新しい会合オブジェクトを作成する場合もあり得る。会合を作成するためには、カレンダ・アプリケーションは、ユーザに少なくとも日付、時間、出席者、および場所を入力するように要求することができる。このように、カレンダのために新しい会合オブジェクトを作成する場合、カレンダ・アプリケーションによる、次いで学習装置104による新しいインスタンスの受信を考慮することができる。
ルールセットのルールをチェックする前に、学習装置104は、新しいインスタンスのどの属性が、1つ以上の値を予測するためにルールが用いられる目標であるのか判断する。実施形態によっては、目標が予め決められている場合もある。例えば、新しいインスタンスが会合であり、ユーザが、カレンダのオブジェクトとして会合を格納するために、3つの属性について値を入力しなければならない場合、ユーザが値を入力しなければならない最後の属性を目標と見なすことができ、1つ以上の値をその属性/目標に対してユーザに予測すればよい。このような実施形態では、ユーザが目標の前に属性について値を入力した後に、ルールをチェックするとよい。代替実施形態では、新しいインスタンスの各属性を繰り返し目標として扱うこともでき、新しいインスタンスの属性毎に、ルールをチェックする。最初の属性について、属性値が入力されておらず、したがってルールのいずれも満たされない場合、学習装置104は、例えば、最初の属性と関連のある値について全てのルールをチェックし、次いで最も頻繁に予測されている値あるいはその値の一部または全部のリストを戻すことができる。
各ルールをチェックする際、学習装置104は、最初に、値が入力されている新しいインスタンスの属性と一致する属性で構成されているルールはどれか判断する。新しい会合に関する先の例を参照すると、ユーザが日付、時間、および出席者に値を入力すると、学習装置104は最初にルールセットを探索して、前提がこれら3つの属性の一部または全部で構成されているルールを見つけ出す。一致することが発見されたルールの内、ルールの前提部の属性値を、新しいインスタンスの属性値と比較する。実施形態によっては、前提が新しいインスタンスと同じ値を全て有するルールのみが、これらに対して票が登録されている場合もある。他の実施形態では、1つ以上の一致する属性値を有するルールも、それらに対して票が登録されている場合もある。
種々の実施形態では、ルール毎に登録されている票数が各ルールの重みに対応する場合もあり、各ルールはその最大重みを投票する。例えば、1の重みを有するルールは、そのために1票を登録することができ、3の重みを有するルールは、そのために3票を登録することができる。実施形態によっては、ルールがその帰結に1つよりも多い目標値を有する場合、その票全てを、その最も頻繁に投票された目標値に登録することができる。別の実施形態では、票は、ルールの目標値の各々について投じることができ、投じられる各票は、各ルールの重みに各目標値の分数頻度(fractional frequency)を乗算した値に等しい。例えば、あるルールが6の重みを有し、3つの目標値「会議室」、「部屋417」、および「部屋321」を予測し、値が1、4、および1の対応する頻度を有する場合、1つの票を「会議室」に投じることができ(重みの6に、1/6の分数頻度を乗算すると1票に等しくなる)、「部屋417」には4、「部屋321」には1を投じることができる。更に別の実施形態では、以上の2つの票登録方法の組み合わせを用いることもできる。
図示のように、一旦票を登録したなら、学習装置104は投票を集計し、1つ以上の目標値を資源制約デバイス102のユーザに予測することができる。実施形態によっては、学習装置104がルールのために登録された投票を集計し、1つのみの値を予測する場合もあり、この値は最も大きな複数の票数を受ける。別の実施形態では、学習装置104は、投票を集計し、最も大きな複数の票数を受けた値に対応する複数の値を予測することができる。目標に対して行われる予測の数は、実施形態毎に異なる場合もあり、ユーザまたはプログラムが定義する閾値規準によって決定することもできる。
次に、1つまたは複数の予測値を、資源制約デバイス102のユーザに提示することができ、実施形態によっては、図4に示すビューアのような、デバイス102のビューアを通じて提示することができる。デバイス102およびカレンダ・アプリケーションは一緒に動作して、ユーザが1つ以上の予測値を選択する際、または予測した値とは異なる値を入力することを選択する際に、やり易くする。ユーザは、当技術分野で周知な方法であればいずれによってでも、このような異なる値を入力することができ、資源制約デバイス102の実施形態のハードウェアおよびソフトウェア、ならびにアプリケーションのみによって限定されるに過ぎない。
再度図1を参照すると、学習装置104は、1つ以上のルールの重みを調整すること、および/または少なくとも、各ルールの局在的予測が正しかったか否かに基づいて、ルールの1つ以上を更新または除去することができる。ユーザの入力を受け取った後、学習装置104は、ルール毎に、このルールが、ユーザによって選択または入力された目標値を正しく予測したか否か判断することができる。実施形態によっては、学習装置104は、当該ルールによる局在的予測が正しくないときに、全体の成果の正確さには関係なく、ルールの重みを減少させることができる。例えば、学習装置104は、ルールの重みをその全重みの半分だけ減分することができる。更に、局在的予測は正しいが全体的な成果が正しくない場合、学習装置104は実際の予測に対して投票の欠損(vote deficit)を計算することもできる。その後、学習装置104は、正しい局在的予測を有したルールに対して、重みを増加させることができる。一実施形態では、正しく予測するルールの重みを等しく増加させる。これによって、正しい目標値に対する投票を引き上げることができる。
加えて、あるルール(および全体的成果)が正しく予測する場合、学習装置104は正しく予測するルールの重みを控えめに増分することもできる。このような実施形態は、この報償が今後の予測に対するルールの信頼性(重み)を高めることを推測する。種々の実施形態では、報償値に0.1を採用する。別の実施形態では、異なる報償値を採用してもよい。自由にルールに報償を与えると、最終的には性能の低下に至る虞れがあるので、このパラメータは慎重に選択するとよい。更に、重みを少しずつ線形に増加させる方が、指数的に増加させるよりも挙動は遥かに優れていることが、実験によって示唆されているように思われる。種々の実施形態では、いずれのルールでも、その重みがユーザの定義した閾値を下回る場合、そのルールをルールセットから除去するとよい。
実施形態によっては、いずれのルールであっても、その前提部が現在のインスタンスと一致するが、ユーザが選択または規定した目標値が帰結に現れない場合、学習装置104は、成果を正しく予測する頻度が最も低い目標値を、現在のユーザが選択/規定した目標値と置き換えることによって、ルールを更新することができる。更に、種々の実施形態において、予測が正しくない場合、学習装置104は、成果を正しく予測する頻度が最も低い目標値を、現在のユーザが選択/規定した目標値と置き換えることによって、インスタンス空間を更新することもできる。新しいルールは、最初のルールと同じように生成することができ、更に冗長性を除去することもできる。新しいルールには、各々、重み、例えば、1の重みを割り当てることができる。
次いで、学習装置104は、この更新したルールセットを今後のインスタンスに用いることができる。このように、ルールセットをインクリメントして更新する。学習装置104を試験的に用いた際に、比較的低いコストで精度が得られ、格納要件の減少という点で比較的大きな改善が実現できることが示されている。更に、この格納が減少した環境においても、学習装置104は比較的高いレートで実行することができ、オンラインの使用に適するものとなっている。
図2は、種々の実施形態による本発明の選択動作のフローチャートを示す図である。図示のように、本発明の一実施形態の学習方法は、ブロック204において、1つ以上のインスタンスの一致する属性値をランダムに選択することによって1つ以上のルールを生成することができ、最初に、ブロック202において、一致する目標値に基づいて1つ以上のインスタンスをランダムに選択する。種々の実施形態では、種々の実施形態では、インスタンスは、複数の属性で構成するいずれかの論理概念でも表すことができる。例えば、論理概念「会合」(meeting)は、出席者、日付、時間、および場所のような属性で構成することができる。そして、各属性には1つ以上の属性値を関連付けることができる。つまり、属性「出席者」には、属性値「Rene」および「Pascal」と関連付けることができる。このような複数のインスタンスを資源制約デバイス上に、実施形態によっては、データベースのテーブルとしてまたはファイルのデータ構造として格納することができる。別の実施形態では、インスタンスは代わりにサーバ上に格納し、サーバから検索することができる。サーバまたはデバイスのストレージからのインスタンスの検索は、1つ以上の目標値に基づくことができる。目標値を属性値として有するインスタンスは、インスタンス空間を備えることができ、ブロック202において、インスタンス空間から多数のインスタンスをランダムに選択することができる。例えば、「会議室」が目標値である場合、「会議室」を属性値として有するインスタンスは、インスタンス空間を備えることができる。次いで、インスタンス空間から、「昼食」、「会合」、「セミナ」のような多数のインスタンスをランダムに選択することができる。各インスタンスは、恐らく「場所」のような属性の「会議室」を属性値として有する。
実施形態によっては、学習方法は、次に、ブロック204において、1つ以上のランダムに選択したインスタンスの一致属性値をランダムに選択することによって、1つ以上のルールを生成することができる。その動機は、一致する属性値はランダムに選択した1つ以上のインスタンスの種々の属性間における相関を捕らえることができるからである。組み立てたルールは、1つ以上の属性で構成される前提を有することができ、各属性は、1つ以上の属性値と関連付けられている。また、ルールは、目標と、この目標と関連のある1つ以上の目標値とを備える帰結を含むこともできる。実施形態によっては、ルールを「if-then」形式で組み立てることもでき、「if」で前提が開始し、「then」で帰結が始まる。このような実施形態のルールの一例は、「if sponsor-attendees = matchell and department-attendees=scs then location = weh5309, weh5311, oakland」である。この例では、前提は2つの属性、「sponsor-attendees」および「department-attendees」で構成されており、各属性には1つの属性値が関連付けられており、帰結は、目標「location」で構成され、目標には3つの目標値が関連付けられている。実施形態によっては、ルールがこれらよりも少ないまたは多い属性、および/または前提を構成する属性値、ならびにこれらよりも少ないまたは多い目標値を有する場合もある。したがって、学習方法の実施形態が生成するルールは可変長ルールとすることができる。可変長ルールの一例を図3に示し、以下で更に詳しく説明する。
生成したルールは、ルールセットを備えることができ、資源制約デバイスのストレージまたはサーバ上に格納することができ、実施形態によっては、サーバがルールを生成する場合もある。ルールは、プログラミング言語のクラスとして実装することができ、あるいはそれらのコンポーネント属性、属性値、目標、および目標値を、データベースのテーブルまたはファイルのデータ構造に格納し、必要に応じて、ルールを動的に作成し易くする。
図示のように、ルールを形成した後、ブロック206において、学習方法は冗長なルールを除去することができる。冗長なルールを除去する際、より一般的なルールをより具体的なルールよりも優先するとよい。種々の実施形態において、学習方法は、次にブロック208において、前述のインスタンス空間上においてルールを更新し、ランダムに選択した1つ以上のインスタンスの中にない属性値および目標値を組み込むことができる。例えば、「if date=120205 and personnel=rpe, ata then location=Conference Room」というように最初に形成されたルールは、インスタンス空間において見出されたインスタンスの追加属性値を含むように更新することができる。このように、インスタンスが日付、人員、および場所を属性として有するが、人員に関連のある追加属性値「khf」を有する場合、「if date=120205 and personnel=rpe, ata, khf then location=Conference Room」というように、ルールを更新することができる。
ルールを生成し更新するとき、ブロック210において、学習方法は各ルールに重みを関連付けることができる。実施形態によっては、各ルールには最初に同じ重みを割り当てる場合もある。例えば、初期化のときに、各ルールには「1」の重みを割り当てることができる。重みは、ルールの特徴であり、ルールと共に格納することができる。例えば、ルールがクラスである場合、重みはそのクラスの変更可能なメンバとすることができる。ルールがテーブルである場合、重みはテーブルのフィールドとすることができる。代替実施形態では、重みおよびルールを別々に格納し、ルールを資源制約デバイス上に格納し、ルールをサーバ上に格納することもでき、あるいはその逆でもよい。
実施形態によっては、ルールの追加の特徴、またはその値も、ルールおよび/または重みと共に格納してもよい場合がある。例えば、学習方法は、各目標値が予測された回数をカウントすることもできる。前述のように、ブロック202においてインスタンスを選択し、ブロック204においてルールを形成し、ブロック206において冗長なルールを除去し、ブロック208においてルールを更新し、ブロック210において各ルールを重みと関連付ける選択動作は、サーバ上で全体的または部分的に実行することができる。しかしながら、実施形態によっては、前述の選択動作の1つ1つを資源制約デバイス上で実行するとよい場合もある。前述のルールは、属性値を予測することにより、ルールを更新することにより、そして精度低く属性値を予測するルールを除去することにより、最少量のインスタンス・データの格納を促進する。これらの動作については、以下で更に詳しく説明する。また、精度高く値を予測するルールのみを保持することによって、学習方法は、維持するルールセットがコンパクトであることを確かなものにする。
図示のように、一旦ルールを生成し更新したなら、ブロック212において、学習方法は新しいインスタンスを待っていればよい。新しいインスタンスは、資源制約デバイスのアプリケーションによって受け取ることができ、このアプリケーションは、本発明の学習方法の一実施形態によって強化される。学習方法は、いずれの種類のアプリケーションとでも用いることができる。アプリケーションは、強化すること、又は、より少ないデータの格納を要求することにより学習方法を実行するプロセス又はデバイスと通信するように結合することの恩恵を受けることができる。以下の説明を簡略化する目的で、学習装置104によって強化したカレンダ・アプリケーションの一例を参考にする。しかしながら、代替実施形態では、いずれの数のアプリケーションでも学習方法によって強化することができる。
実施形態によっては、カレンダ・アプリケーションが資源制約デバイス上で動作できる場合もある。ルールを形成した後またはサーバからルールを受信した後、カレンダ・アプリケーションを実行すると、ブロック212において、インスタンスを入力として受信するために待機することができる。次いで、新しいインスタンスを受信すると、カレンダ・アプリケーションの学習方法は、ブロック214において、ルールに照らし合わせてこのインスタンスを評価することができる。例えば、カレンダ・アプリケーションのユーザがカレンダによって表示する、新しい会合オブジェクトを作成することができる。会合を作成するためには、カレンダ・アプリケーションは、ユーザに少なくとも日付、時間、出席者、および場所を入力するように要求することができる。このように、カレンダのために新しい会合オブジェクトを作成する場合、カレンダ・アプリケーションによる新しいインスタンスの受信を考慮することができる。
ルールセットのルールをチェックする前に、ブロック214において、カレンダ・アプリケーションの学習方法は、新しいインスタンスのどの属性が、1つ以上の値を予測するためにルールが用いられる目標であるのか判断する。実施形態によっては、目標が予め決められている場合もある。例えば、新しいインスタンスが会合であり、ユーザが、カレンダのオブジェクトとして会合を格納するために、3つの属性について値を入力しなければならない場合、ユーザが値を入力しなければならない最後の属性が目標であると見なすことができ、1つ以上の値をその属性/目標に対してユーザに予測すればよい。このような実施形態では、ユーザが目標の前に属性について値を入力した後に、ブロック214においてルールをチェックすることができる。代替実施形態では、新しいインスタンスの各属性を繰り返し目標として扱うこともでき、ブロック214において新しいインスタンスの属性毎に、ルールをチェックする。最初の属性について、属性値が入力されておらず、したがってルールのいずれも満たされない場合、カレンダの学習方法は、例えば、最初の属性と関連のある値について全てのルールをチェックし、次いで最も頻繁に予測されている値あるいはその値の一部または全部のリストを戻すことができる。
各ルールをチェックする際、ブロック214において、学習方法は、最初に、値が入力されている新しいインスタンスの属性と一致する属性で構成されているルールはどれか判断する。新しい会合に関する先の例を参照すると、ユーザが日付、時間、および出席者に値を入力したなら、本方法は最初にルールセットを探索して、前提がこれら3つの属性の一部または全部で構成されているルールを見つけ出す。一致することが発見されたルールの内、ルールの前提部の属性値を、新しいインスタンスの属性値と比較する。実施形態によっては、前提が新しいインスタンスと同じ値を全て有するルールのみが、これらに対して票が登録されている場合もある。他の実施形態では、1つ以上の一致する属性値を有するルールも、それらに対して票が登録されている場合もある。
種々の実施形態では、ルール毎に登録されている票数が各ルールの重みに対応する場合もあり、各ルールはその最大重みを投票する。例えば、1の重みを有するルールは、そのために1票を登録することができ、3の重みを有するルールは、そのために3票を登録することができる。実施形態によっては、ルールがその帰結に1つよりも多い目標値を有する場合、その票全てを、その最も頻繁に投票された目標値に登録することができる。別の実施形態では、票は、ルールの目標値の各々について投じることができ、投じた各票は、各ルールの重みに各目標値の分数頻度を乗算した値に等しい。例えば、あるルールが6の重みを有し、3つの目標値「会議室」、「部屋417」、および「部屋321」を予測し、値が1、4、および1の対応する頻度を有する場合、1つの票を「会議室」に投じることができ(重みの6に、1/6の分数頻度を乗算すると1票に等しくなる)、「部屋417」には4、「部屋321」には1を投じることができる。更に別の実施形態では、以上の2つの票登録方法の組み合わせを用いることもできる。
図示のように、一旦票を登録したなら、ブロック216において、学習方法は投票を集計し、1つ以上の目標値を資源制約デバイスのユーザに予測することができる。実施形態によっては、学習方法がルールのために登録された投票を集計し、1つのみの値を予測する場合もあり、この値は最も大きな複数の票数を受ける。別の実施形態では、学習装置104は、投票を集計し、最も大きな複数の票数を受けた値に対応する複数の値を予測することができる。目標に対して行われる予測の数は、実施形態毎に異なる場合もあり、ユーザまたはプログラムが定義する閾値規準によって決定することもできる。
次に、1つまたは複数の予測値を、資源制約デバイスのユーザに提示することができ、実施形態によっては、図4に示すビューアのような、デバイス102のビューアを通じて提示することができる。デバイスおよびカレンダ・アプリケーションは一緒に動作して、ユーザが1つ以上の予測値を選択する際、または予測した値とは異なる値を入力することを選択する際に、やり易くする。ユーザは、当技術分野で周知な方法であればいずれによってでも、このような異なる値を入力することができ、資源制約デバイスおよびアプリケーションの実施形態のハードウェアおよびソフトウェア、ならびにアプリケーションのみによって限定されるに過ぎない。
再度図2を参照すると、学習方法は、ブロック218において、1つ以上のルールの重みを調整すること、および/または少なくとも、各ルールの局在的予測が正しかったか否かに基づいて、ルールの1つ以上を更新または除去することができる。ユーザの入力を受け取った後、学習方法は、ルール毎に、このルールが、ユーザによって選択または入力された目標値を正しく予測したか否か判断することができる。
実施形態によっては、学習方法は、当該ルールによる局在的予測が正しくないときに、全体の成果の正確さには関係なく、ルールの重みを減少させることができる。例えば、学習方法は、ルールの重みをその前重みの半分だけ減分することができる。更に、局在的予測は正しいが全体的な成果が正しくない場合、学習方法は実際の予測に対して投票の欠損を計算することもできる。その後、学習方法は、正しい局在的予測を有したルールに対して、重みを増加させることができる。一実施形態では、正しく予測するルールの重みを等しく増加させる。これによって、正しい目標値に対する投票を引き上げることができる。
加えて、あるルール(および全体的成果)が正しく予測する場合、学習方法は正しく予測するルールの重みを控えめに増分することもできる。このような方法は、この報償が今後の予測に対するルールの信頼性(重み)を高めることを推測する。種々の実施形態では、報償値に0.1を採用する。別の実施形態では、異なる報償値を採用してもよい。自由にルールに報償を与えると、最終的には性能の低下に至る虞れがあるので、このパラメータは慎重に選択するとよい。更に、重みを少しずつ線形に増加させる方が、指数的に増加させるよりも挙動は遥かに優れていることが、実験によって示唆されているように思われる。種々の実施形態では、いずれのルールでも、その重みがユーザの定義した閾値を下回る場合、そのルールをルールセットから除去するとよい。実施形態によっては、いずれのルールであっても、その前提部が現在のインスタンスと一致するが、ユーザが選択または規定した目標値が帰結に現れない場合、学習方法は、成果を正しく予測する頻度が最も低い目標値を、現在のユーザが選択/規定した目標値と置き換えることによって、ルールを更新することができる。更に、種々の実施形態において、予測が正しくない場合、学習方法は、成果を正しく予測する頻度が最も低い目標値を、現在のユーザが選択/規定した目標値と置き換えることによって、インスタンス空間を更新することもできる。新しいルールは、最初のルールと同じように生成することができ、更に冗長性を除去することもできる。新しいルールには、各々、重み、例えば、1の重みを割り当てることができる。
次いで、カレンダの学習方法は、この更新したルールセットを今後のインスタンスに用いることができる。このように、ルールセットをインクリメントして更新する。
学習方法を試験的に用いた際に、比較的低いコストで精度が得られ、格納要件の減少という点で比較的大きな改善が実現できることが示されている。更に、この格納が減少した環境においても、学習方法は比較的高いレートで実行することができ、オンラインの使用に適するものとなっている。
図3は、種々の実施形態による、本発明のルールセットの一部を備えている可変長ルールの一例を示す。図示のように、ルールは、前提のif節と、帰結のthen節とによって構成することができ、if節は1つ以上の属性を含み、各属性は1つ以上の属性値を有し、then節は1つの目標を有し、目標は1つ以上の目標値を有する。前述のように、各ルールには重みを関連付けることができ、目標値には、各々、頻度規準を関連付けることができる。更に、図3に示すルールセットのようなルールセットは、図1および図2を参照して先に説明したように、インクリメントして更新することができる。
図4は、本発明の一実施形態にしたがって構成し、学習装置が予測した目標値をユーザに提示する資源制約デバイスのビューアを示す。図示のように、前述した形式の資源制約デバイス402は、ビューア404を有することができる。ビューア404は、当技術分野において周知の種類であればいずれでもよく、LCDディスプレイ、電子ペーパ、または陰極線管を含む。また、資源制約デバイス402は、ユーザの相互作用をやり易くするために複数のボタンも含むことができる。ビューア404は、ユーザに、本発明の学習装置の実施形態によって強化したアプリケーションが提供するデータのグラフィック・ビューを提示することができる。ビューア404は、属性および属性値を提示することができ、更に、図示のように、目標と、ユーザが選択することができる1つ以上の予測目標値406とを提示することもできる。図4に示す目標値406のリストは、3つの予測を備えている。また、ビューア404は、ユーザが目標値を選択し易くするために、目標値406の1つを強調するカーソル408も示す。他の実施形態では、リスト406は、空白の目標値も含み、図示のいずれとも異なる目標値をユーザが入力し易くすることもできる。
図5は、種々の実施形態にしたがって、本発明を実用化するのに適した、移動体電話機またはPDAのような、資源制約計算デバイス500の構造図を示す。図示のように、前述の実施形態では、資源制約計算デバイス500は、マイクロコントローラ/プロセッサ502、ディジタル信号プロセッサ(DSP)504、不揮発性メモリ506、ディスプレイ508、入力キー510(キーパッドまたは選択ボタン等)、およびバス514を通じて互いに結合されている送信機/受信機(TX/RX)512のような、従来の計算デバイスにおいて見られる要素を含む。バス514は、単一バスまたは階層状にブリッジしたバス(図示せず)でもよい。更に、不揮発性メモリ506は、学習装置520を含み、先に説明した本発明の実施形態の学習方法を、それ自体の中にそしてそれ自体で実装するか、または1つ以上の更に大きな構成機器の一部として実装する。この実施態様は、多数のプログラミング言語、アセンブリ、C等のいずれによって行ってもよい。
代替実施形態では、学習装置520の全部または一部を、ハードウェア、ファームウェア、またはそのいずれの組み合わせによって実施してもよい。ハードウェアの実施態様は、特定用と集積回路(ASIC)、再構成した構成変更可能な回路(フィールド・プログラミング・フィールド・アレイ(FPGA)等)等の形態とすることができる。
要素502〜514の構成は、当技術分野では周知であり、したがってこれ以上説明しない。
以上、具体的な実施形態についてここで例示し説明したが、本発明の範囲から逸脱することなく、多種多様の代替実施態様および/または同等の実施態様を、図示し説明した前述の具体的な実施形態の代用にしてもよいことは当業者には認められよう。本発明は、多種多様の実施形態で実施すること、またはこれらから拡張することも可能であることは、当業者には容易に認められよう。例えば、種々の実施形態では、予測に対する信頼度規準を規定するために、システムを拡張することもできる。本願は、ここに論じた実施形態のいずれの改造や変形をも包含することを意図している。したがって、本発明は、特許請求の範囲およびその均等物によってでなければ限定されないことを意味するのは、一目瞭然である。
図1は、種々の実施形態による、本発明の全体像を示す。 図2は、種々の実施形態による、本発明の選択動作のフローチャートを示す。 図3は、種々の実施形態による、本発明のルールセットの一部を備えた可変長ルールの一例を示す。 図4は、本発明の一実施形態にしたがって構成し、学習装置が予測した目標値をユーザに提示する資源制約デバイスのビューアを示す。 図5は、種々の実施形態にしたがって、本発明を実用化するのに適した資源制約デバイスの構造図を示す。

Claims (14)

  1. 移動体電話機についてカレンダ・アプリケーションの学習プロセスを実行するためのコンピュータにより実施される方法であって、
    前記電話機のメモリに格納されたカレンダ入力を有するデータベースから1つ以上のカレンダ入力をランダムに選択するステップであって、前記カレンダ入力がカレンダ・フィールドの入力について複数の既知の値を含んでおり、前記1つ以上のカレンダ入力をランダムに選択することが、コンピュータにより、少なくとも1つの一致する目標カレンダ・フィールドの値に基づく、ステップと、
    コンピュータによって、前記1つ以上カレンダ入力における一致するカレンダ・フィールド属性の値をランダムに選択することにより1つ以上のランダムなルールを生成するステップであって、前記ルールが、少なくとも1つのカレンダ・フィールド属性を論理前提として用い、および少なくとも1つの追加のカレンダ・フィールド属性を論理帰結として用いて組み立てられる、ステップと、
    既知の値を有する少なくとも1つの属性と既知でない値を有する特定のカレンダ・フィールド属性とを含む少なくとも1つの追加のカレンダ入力を受信するステップと、
    前記少なくとも1つの追加のカレンダ入力における前記特定のカレンダ・フィールド属性についての1つ以上の値を予測するステップであって、
    各生成したルールの前記論理前提を、前記少なくとも1つの追加のカレンダ入力における前記少なくとも1つの属性についての前記既知の値に基づいて評価するステップと、
    前記論理前提を満たす前記各ルールについて、前記少なくとも1つのカレンダ入力における前記特定のカレンダ・フィールド属性についての1つ以上の目標値を決定するために、前記論理帰結を評価するステップと、
    を含むステップと、
    前記カレンダ・フィールド属性について正しい値を受信したことに応じて、前記各ルールによって決定された前記カレンダ・フィールド属性についての前記1つ以上の目標値のうち1つの目標値が正しいかどうかを判断するステップと、
    前記各ルールによって決定された前記カレンダ・フィールド属性についての前記1つ以上の目標値のうち1つの目標値が正しいと判断されるのに応じて、前記各ルールについて関連する重みを増分するステップと、
    前記各ルールによって決定された前記カレンダ・フィールド属性についての前記1つ以上の目標値のいずれもが正しくないと判断されるのに応じて、前記各ルールについて前記関連する重みを減分するステップと、
    を備えている、方法。
  2. 請求項1記載の方法において、前記1つ以上のランダムに生成されたルール、可変長ルールである、方法。
  3. 請求項記載の方法であって、前記1つ以上のランダムなルールを生成するステップが、更に、関連する重みを前記1つ以上のランダムなルールの各々に割り当てるステップであって、前記1つ以上のルールの各々には最初に同じ重みを割り当てられ、ステップを備えている、方法。
  4. 請求項記載の方法であって、更に、1つ以上の追加のカレンダ入力に基づいて、前記1つ以上のルールを更新するステップを備えている、方法。
  5. 請求項1記載の方法において、前記各ルールが、決定される値の票を登録し、前記ルールによって登録された票の数は、前記各ルールの重みに等しく、前記方法が、更に、
    1つ以上の目標値を、各別個の前記決定された値により受けた票の総数に基づき、前記1つ以上の決定された値から選択するステップを備える、方法。
  6. 請求項記載の方法において、前記1つ以上のルールのうち少なくとも1つのルールが複数のカレンダ・フィールド値を決定し、前記少なくとも1つのルールについての票の登録が、
    前記複数の決定された値のそれぞれについて、前記少なくとも1つのルールにより前記複数の決定された値のうち各別個の値について登録された票の数が、前記各別個の値の分数頻度を乗算した前記少なくとも1つのルールについての重みに等しい、
    方法。
  7. 請求項1記載の方法において、複数の目標値が、最も大きなの票を受決定されたを特定することによって予測され、記目標値の数、閾値規準によって決定される、方法。
  8. 請求項1記載の方法において、更に、
    ーザに1つ以上の予測された値を提示するステップと
    該ユーザに、前記1つ以上の提示された予測値から正しい値を選択させ、または、前記1つ以上の提示された予測値の中にはない異なる値を入力させるステップを備えている、方法。
  9. カレンダ・フィールド属性の値に関するルールを学習するように構成され、該学習したルールを用いてカレンダ・フィールド属性値を予測するように構成されるプロセッサを有する移動体電話機であって、
    プロセッサと、
    前記プロセッサに結合されている計算エンジンであって、
    前記電話機のメモリに格納されたカレンダ入力を有するデータベースから1つ以上のカレンダ入力をランダムに選択するステップであって、前記カレンダ入力がカレンダ・フィールドの入力について複数の既知の値を含んでおり、前記1つ以上のカレンダ入力をランダムに選択することが、コンピュータにより、少なくとも1つの一致する目標カレンダ・フィールドの値に基づく、ステップと、
    コンピュータによって、前記1つ以上カレンダ入力における一致するカレンダ・フィールド属性の値をランダムに選択することにより1つ以上のランダムなルールを生成するステップであって、前記ルールが、少なくとも1つのカレンダ・フィールド属性を論理前提として用い、および少なくとも1つの追加のカレンダ・フィールド属性を論理帰結として用いて組み立てられる、ステップと、
    既知の値を有する少なくとも1つの属性と既知でない値を有する特定のカレンダ・フィールド属性とを含む少なくとも1つの追加のカレンダ入力を受信するステップと、
    前記少なくとも1つの追加のカレンダ入力における前記特定のカレンダ・フィールド属性について1つ以上の値を予測するステップであって、
    各生成したルールの前記論理前提を、前記少なくとも1つの追加のカレンダ入力における前記少なくとも1つの属性についての前記既知の値に基づいて評価するステップと、
    前記論理前提を満たす前記各ルールについて、前記少なくとも1つの追加のカレンダ入力における前記特定のカレンダ・フィールド属性についての1つ以上の目標値を決定するために、前記論理帰結を評価するステップと、
    を含むステップと、
    前記カレンダ・フィールド属性について正しい値を受信したことに応じて、前記各ルールによって決定された前記カレンダ・フィールド属性についての前記1つ以上の目標値のうち1つの目標値が正しいかどうかを判断するステップと、
    前記各ルールによって決定された前記カレンダ・フィールド属性についての前記1つ以上の目標値のうち1つの目標値が正しいと判断されるのに応じて、前記各ルールについて関連する重みを増分するステップと、
    前記各ルールによって決定された前記カレンダ・フィールド属性についての前記1つ以上の目標値のいずれもが正しくないと判断されるのに応じて、前記各ルールについて前記関連する重みを減分するステップと、
    を実行するように構成される計算エンジンと、
    を備えている、移動体電話機。
  10. 請求項記載の移動体電話機において、前記1つ以上のランダムに生成されたルールは、可変長ルールである、移動体電話機
  11. 請求項記載の移動体電話機において、前記1つ以上のランダムなルールを生成するステップが、更に、関連する重みを前記1つ以上のランダムなルールの各々に割り当てるステップであって、前記1つ以上のルールの各々には最初に同じ重みが割り当てられる、ステップを備えている、移動体電話機
  12. 請求項記載の移動体電話機において、前記各ルールが、決定される値の票を登録し、前記各ルールによって登録された票の数は、前記ルールの重みに等し
    前記プロセッサが、更に、1つ以上の目標値を、各別個の前記決定された値により受けた票の総数に基づき、前記1つ以上の決定された値から選択するように構成される、移動体電話機
  13. 請求項記載の移動体電話機において、前記1つ以上のルールのうち少なくとも1つのルールが複数のカレンダ・フィールド値を決定し、
    前記少なくとも1つのルールについての票の登録が、
    前記複数の決定された値のそれぞれについて、前記少なくとも1つのルールにより前記複数の決定された値のうち各別個の値について登録された票の数が、前記各別個の値の分数頻度を乗算した前記少なくとも1つのルールについての重みに等しい、移動体電話機
  14. 請求項記載の移動体電話機において、前記計算エンジンは、更に、
    複数の目標値を、最も大きな数の票を受けた決定された値を特定することによって予測し、前記目標値の数が閾値規準によって決定されるように構成される、移動体電話機
JP2008540060A 2005-11-09 2006-10-31 資源制約デバイスのための学習装置 Expired - Fee Related JP5221369B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US73484005P 2005-11-09 2005-11-09
US60/734,840 2005-11-09
US11/392,186 2006-03-28
US11/392,186 US8504606B2 (en) 2005-11-09 2006-03-28 Learner for resource constrained devices
PCT/US2006/042622 WO2007056001A2 (en) 2005-11-09 2006-10-31 Learner for resource constrained devices

Publications (2)

Publication Number Publication Date
JP2009515277A JP2009515277A (ja) 2009-04-09
JP5221369B2 true JP5221369B2 (ja) 2013-06-26

Family

ID=38005117

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008540060A Expired - Fee Related JP5221369B2 (ja) 2005-11-09 2006-10-31 資源制約デバイスのための学習装置

Country Status (6)

Country Link
US (1) US8504606B2 (ja)
EP (1) EP1955182A4 (ja)
JP (1) JP5221369B2 (ja)
KR (1) KR101046614B1 (ja)
CA (1) CA2629724A1 (ja)
WO (1) WO2007056001A2 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7426520B2 (en) 2003-09-10 2008-09-16 Exeros, Inc. Method and apparatus for semantic discovery and mapping between data sources
US8036878B2 (en) 2005-05-18 2011-10-11 Never Wall Treuhand GmbH Device incorporating improved text input mechanism
US8374846B2 (en) 2005-05-18 2013-02-12 Neuer Wall Treuhand Gmbh Text input device and method
US8117540B2 (en) * 2005-05-18 2012-02-14 Neuer Wall Treuhand Gmbh Method and device incorporating improved text input mechanism
US9606634B2 (en) 2005-05-18 2017-03-28 Nokia Technologies Oy Device incorporating improved text input mechanism
JP4918885B2 (ja) * 2007-06-15 2012-04-18 富士通株式会社 投票促進活動支援プログラムおよび投票促進活動支援装置
US8171001B2 (en) * 2007-06-27 2012-05-01 International Business Machines Corporation Using a data mining algorithm to generate rules used to validate a selected region of a predicted column
US8166000B2 (en) * 2007-06-27 2012-04-24 International Business Machines Corporation Using a data mining algorithm to generate format rules used to validate data sets
US8401987B2 (en) * 2007-07-17 2013-03-19 International Business Machines Corporation Managing validation models and rules to apply to data sets
JP4503069B2 (ja) * 2007-12-27 2010-07-14 シャープ株式会社 文字入力装置、システム、及び文字入力制御方法
EP2133772B1 (en) * 2008-06-11 2011-03-09 ExB Asset Management GmbH Device and method incorporating an improved text input mechanism
US9720971B2 (en) * 2008-06-30 2017-08-01 International Business Machines Corporation Discovering transformations applied to a source table to generate a target table
US8930303B2 (en) 2012-03-30 2015-01-06 International Business Machines Corporation Discovering pivot type relationships between database objects
EP3731155A1 (en) * 2019-04-25 2020-10-28 ABB Schweiz AG Apparatus and method for drive selection using machine learning

Family Cites Families (101)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4930077A (en) * 1987-04-06 1990-05-29 Fan David P Information processing expert system for text analysis and predicting public opinion based information available to the public
JPH01288926A (ja) 1988-05-16 1989-11-21 Shimadzu Corp エキスパートシステムにおける知識の学習機構
US5109352A (en) 1988-08-09 1992-04-28 Dell Robert B O System for encoding a collection of ideographic characters
US5586218A (en) * 1991-03-04 1996-12-17 Inference Corporation Autonomous learning and reasoning agent
US5875108A (en) * 1991-12-23 1999-02-23 Hoffberg; Steven M. Ergonomic man-machine interface incorporating adaptive pattern recognition based control system
JP3403432B2 (ja) * 1992-09-26 2003-05-06 豊田工機株式会社 加工結果予測装置
US5608846A (en) * 1993-01-25 1997-03-04 Omron Corporation Fuzzy rule generator
US5946375A (en) * 1993-09-22 1999-08-31 Teknekron Infoswitch Corporation Method and system for monitoring call center service representatives
US6202058B1 (en) * 1994-04-25 2001-03-13 Apple Computer, Inc. System for ranking the relevance of information objects accessed by computer users
US6460036B1 (en) * 1994-11-29 2002-10-01 Pinpoint Incorporated System and method for providing customized electronic newspapers and target advertisements
US6112186A (en) * 1995-06-30 2000-08-29 Microsoft Corporation Distributed system for facilitating exchange of user information and opinion using automated collaborative filtering
US5848396A (en) * 1996-04-26 1998-12-08 Freedom Of Information, Inc. Method and apparatus for determining behavioral profile of a computer user
US5952942A (en) 1996-11-21 1999-09-14 Motorola, Inc. Method and device for input of text messages from a keypad
US6009444A (en) 1997-02-24 1999-12-28 Motorola, Inc. Text input device and method
US6054941A (en) 1997-05-27 2000-04-25 Motorola, Inc. Apparatus and method for inputting ideographic characters
US6370513B1 (en) * 1997-08-08 2002-04-09 Parasoft Corporation Method and apparatus for automated selection, organization, and recommendation of items
IL122850A0 (en) * 1998-01-05 1999-03-12 Wizsoft Pattern recognition using generalized association rules
US6018738A (en) * 1998-01-22 2000-01-25 Microsft Corporation Methods and apparatus for matching entities and for predicting an attribute of an entity based on an attribute frequency value
US7257528B1 (en) 1998-02-13 2007-08-14 Zi Corporation Of Canada, Inc. Method and apparatus for Chinese character text input
US6104317A (en) 1998-02-27 2000-08-15 Motorola, Inc. Data entry device and method
US6334127B1 (en) * 1998-07-17 2001-12-25 Net Perceptions, Inc. System, method and article of manufacture for making serendipity-weighted recommendations to a user
US6169538B1 (en) 1998-08-13 2001-01-02 Motorola, Inc. Method and apparatus for implementing a graphical user interface keyboard and a text buffer on electronic devices
US6182070B1 (en) * 1998-08-21 2001-01-30 International Business Machines Corporation System and method for discovering predictive association rules
SE514377C2 (sv) 1998-08-26 2001-02-19 Gunnar Sparr Teckenigenkänning
US6317722B1 (en) * 1998-09-18 2001-11-13 Amazon.Com, Inc. Use of electronic shopping carts to generate personal recommendations
AU2707200A (en) * 1998-11-30 2000-06-19 Siebel Systems, Inc. Assignment manager
US8938688B2 (en) * 1998-12-04 2015-01-20 Nuance Communications, Inc. Contextual prediction of user words and user actions
US7679534B2 (en) * 1998-12-04 2010-03-16 Tegic Communications, Inc. Contextual prediction of user words and user actions
US6362752B1 (en) 1998-12-23 2002-03-26 Motorola, Inc. Keypad with strokes assigned to key for ideographic text input
US6801659B1 (en) 1999-01-04 2004-10-05 Zi Technology Corporation Ltd. Text input system for ideographic and nonideographic languages
US6204848B1 (en) 1999-04-14 2001-03-20 Motorola, Inc. Data entry apparatus having a limited number of character keys and method
US6748369B2 (en) * 1999-06-21 2004-06-08 General Electric Company Method and system for automated property valuation
US6172625B1 (en) 1999-07-06 2001-01-09 Motorola, Inc. Disambiguation method and apparatus, and dictionary data compression techniques
AU5934900A (en) * 1999-07-16 2001-02-05 Agentarts, Inc. Methods and system for generating automated alternative content recommendations
KR100328670B1 (ko) * 1999-07-21 2002-03-20 정만원 다중 추천 에이전트들을 이용하는 추천 시스템
US6424743B1 (en) 1999-11-05 2002-07-23 Motorola, Inc. Graphical handwriting recognition user interface
US20020065721A1 (en) * 2000-01-27 2002-05-30 Christian Lema System and method for recommending a wireless product to a user
US6603489B1 (en) * 2000-02-09 2003-08-05 International Business Machines Corporation Electronic calendaring system that automatically predicts calendar entries based upon previous activities
US6801909B2 (en) * 2000-07-21 2004-10-05 Triplehop Technologies, Inc. System and method for obtaining user preferences and providing user recommendations for unseen physical and information goods and services
EP1307803A2 (en) * 2000-07-28 2003-05-07 Koninklijke Philips Electronics N.V. System for browsing a collection of information units
US6655963B1 (en) * 2000-07-31 2003-12-02 Microsoft Corporation Methods and apparatus for predicting and selectively collecting preferences based on personality diagnosis
DE60121214T2 (de) * 2000-08-19 2007-05-24 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Schnelles auffinden der interessantesten muster in einer datenbank durch sequentielle probenahme
US6686852B1 (en) 2000-09-15 2004-02-03 Motorola, Inc. Keypad layout for alphabetic character input
US7213023B2 (en) * 2000-10-16 2007-05-01 University Of North Carolina At Charlotte Incremental clustering classifier and predictor
SE521911C2 (sv) 2001-01-15 2003-12-16 Decuma Ab Ideon Res Park Metod, anordning och datorprogram för igenkänning av ett handskrivet tecken
US6873990B2 (en) * 2001-02-07 2005-03-29 International Business Machines Corporation Customer self service subsystem for context cluster discovery and validation
US20020131565A1 (en) * 2001-02-09 2002-09-19 Scheuring Jerome James Calendaring systems and methods
SE519014C2 (sv) 2001-03-07 2002-12-23 Decuma Ab Ideon Res Park Metod och anordning för igenkänning av ett handskrivet mönster
US6502118B1 (en) 2001-03-22 2002-12-31 Motorola, Inc. Fast system and method for producing a logarithmic signal approximation with variable precision
US6982658B2 (en) 2001-03-22 2006-01-03 Motorola, Inc. Keypad layout for alphabetic symbol input
US20030023426A1 (en) 2001-06-22 2003-01-30 Zi Technology Corporation Ltd. Japanese language entry mechanism for small keypads
US7483867B2 (en) * 2001-06-26 2009-01-27 Intuition Intelligence, Inc. Processing device with intuitive learning capability
US6947771B2 (en) 2001-08-06 2005-09-20 Motorola, Inc. User interface for a portable electronic device
US6757544B2 (en) 2001-08-15 2004-06-29 Motorola, Inc. System and method for determining a location relevant to a communication device and/or its associated user
US20030054830A1 (en) 2001-09-04 2003-03-20 Zi Corporation Navigation system for mobile communication devices
US20030097186A1 (en) * 2001-11-13 2003-05-22 Koninklijke Philips Electronics N.V Method and apparatus for generating a stereotypical profile for recommending items of interest using feature-based clustering
US20030152904A1 (en) * 2001-11-30 2003-08-14 Doty Thomas R. Network based educational system
US7075520B2 (en) 2001-12-12 2006-07-11 Zi Technology Corporation Ltd Key press disambiguation using a keypad of multidirectional keys
US7949513B2 (en) 2002-01-22 2011-05-24 Zi Corporation Of Canada, Inc. Language module and method for use with text processing devices
US6912581B2 (en) 2002-02-27 2005-06-28 Motorola, Inc. System and method for concurrent multimodal communication session persistence
US6807529B2 (en) 2002-02-27 2004-10-19 Motorola, Inc. System and method for concurrent multimodal communication
US6864809B2 (en) 2002-02-28 2005-03-08 Zi Technology Corporation Ltd Korean language predictive mechanism for text entry by a user
US7272564B2 (en) 2002-03-22 2007-09-18 Motorola, Inc. Method and apparatus for multimodal communication with user control of delivery modality
US7395221B2 (en) * 2002-05-09 2008-07-01 International Business Machines Corporation Intelligent free-time search
JP4033291B2 (ja) * 2002-05-29 2008-01-16 株式会社日立製作所 プロジェクトリスク管理システム
US7734556B2 (en) * 2002-10-24 2010-06-08 Agency For Science, Technology And Research Method and system for discovering knowledge from text documents using associating between concepts and sub-concepts
US7095403B2 (en) 2002-12-09 2006-08-22 Motorola, Inc. User interface of a keypad entry system for character input
US20040153963A1 (en) 2003-02-05 2004-08-05 Simpson Todd G. Information entry mechanism for small keypads
US20040153975A1 (en) 2003-02-05 2004-08-05 Williams Roland E. Text entry mechanism for small keypads
US7256769B2 (en) 2003-02-24 2007-08-14 Zi Corporation Of Canada, Inc. System and method for text entry on a reduced keyboard
US20040181512A1 (en) * 2003-03-11 2004-09-16 Lockheed Martin Corporation System for dynamically building extended dictionaries for a data cleansing application
US6955602B2 (en) 2003-05-15 2005-10-18 Zi Technology Corporation Ltd Text entry within a video game
US20060236239A1 (en) 2003-06-18 2006-10-19 Zi Corporation Text entry system and method
WO2004111871A1 (en) 2003-06-18 2004-12-23 Zi Corporation Configurable information identification system and method
US7057607B2 (en) 2003-06-30 2006-06-06 Motorola, Inc. Application-independent text entry for touch-sensitive display
ATE396480T1 (de) * 2003-09-01 2008-06-15 Koninkl Philips Electronics Nv Media-postenauswahl
US7389235B2 (en) 2003-09-30 2008-06-17 Motorola, Inc. Method and system for unified speech and graphic user interfaces
US6973332B2 (en) 2003-10-24 2005-12-06 Motorola, Inc. Apparatus and method for forming compound words
US8136050B2 (en) 2003-11-21 2012-03-13 Nuance Communications, Inc. Electronic device and user interface and input method therefor
JP4428036B2 (ja) * 2003-12-02 2010-03-10 ソニー株式会社 情報処理装置および方法、プログラム、並びに、情報処理システムおよび方法
US6983216B2 (en) * 2003-12-18 2006-01-03 International Business Machines Corporation Test automation method and tool with dynamic attributes and value sets integration
US7464008B2 (en) * 2004-01-27 2008-12-09 Oracle International Corporation Methods and apparatus for selecting event sequences based on a likelihood of a user completing each event sequence
JP2005301646A (ja) * 2004-04-12 2005-10-27 Sony Corp 情報処理装置および方法、並びにプログラム
US7941491B2 (en) * 2004-06-04 2011-05-10 Messagemind, Inc. System and method for dynamic adaptive user-based prioritization and display of electronic messages
US7881995B2 (en) * 2004-07-02 2011-02-01 Capital Tool Company Systems and methods for objective financing of assets
US20060047650A1 (en) * 2004-08-24 2006-03-02 Freeman Thomas M Trainable record searcher
US7890492B2 (en) 2004-11-15 2011-02-15 Zi Corporation Of Canada, Inc. Organizing pointers to objects in an array to improve the speed of object retrieval
WO2006058103A2 (en) * 2004-11-24 2006-06-01 Siemens Medical Solutions Usa, Inc. A predictive user interface system
US20060129928A1 (en) 2004-12-02 2006-06-15 Weigen Qiu Use of pointing device to identify ideographic characters
CN101099131B (zh) 2004-12-07 2011-06-29 字源加拿大公司 用于搜索和发现的设备和方法
US20060155536A1 (en) 2004-12-20 2006-07-13 Williams Roland E Method and device for displaying a telephone number
US7466859B2 (en) 2004-12-30 2008-12-16 Motorola, Inc. Candidate list enhancement for predictive text input in electronic devices
CN101128838B (zh) 2005-02-28 2011-11-16 Zi德库玛股份公司 辨认图
EP1854047A1 (en) 2005-02-28 2007-11-14 ZI Decuma AB Segmentation-based recognition
US20060237532A1 (en) * 2005-04-20 2006-10-26 Style And Form, Inc.., Incorporation: Delaware System and method for facilitating in-store customer service, product marketing and inventory management
US20060266830A1 (en) * 2005-05-31 2006-11-30 Horozov Tzvetan T Location-based recommendation system
US20070083504A1 (en) * 2005-10-06 2007-04-12 Britt Michael W Selecting information technology components for target market offerings
WO2007056863A1 (en) 2005-11-21 2007-05-24 Zi Corporation Of Canada, Inc. Information delivery system and method for mobile appliances
US8018439B2 (en) 2006-03-22 2011-09-13 Zi Corporation Of Canada, Inc. Mobile appliance system and method enabling efficient entry
US8166418B2 (en) 2006-05-26 2012-04-24 Zi Corporation Of Canada, Inc. Device and method of conveying meaning
WO2008066441A1 (en) 2006-12-01 2008-06-05 Zi Decuma Ab Method for character recognition

Also Published As

Publication number Publication date
JP2009515277A (ja) 2009-04-09
WO2007056001A2 (en) 2007-05-18
KR20080101870A (ko) 2008-11-21
US8504606B2 (en) 2013-08-06
US20070106785A1 (en) 2007-05-10
EP1955182A4 (en) 2010-10-13
WO2007056001A3 (en) 2007-07-05
CA2629724A1 (en) 2007-05-18
KR101046614B1 (ko) 2011-07-05
EP1955182A2 (en) 2008-08-13

Similar Documents

Publication Publication Date Title
JP5221369B2 (ja) 資源制約デバイスのための学習装置
US10902533B2 (en) Dynamic event processing
KR102357685B1 (ko) 병렬 처리용 하이브리드 클라이언트/서버 아키텍처
US9727549B2 (en) Adaptive key-based navigation on a form
WO2018149292A1 (zh) 一种对象聚类方法和装置
US10320620B2 (en) Virtual models for access/control of internet of things (IoTs) devices
US20180197104A1 (en) Using an action-augmented dynamic knowledge graph for dialog management
CN110162603B (zh) 一种智能对话方法、动态存储方法和装置
US20090164987A1 (en) System and method for updating a dual layer browser
US20190354358A1 (en) Approach for Designing Skills for Cognitive Agents Across Multiple Vendor Platforms
US9170780B2 (en) Processing changed application metadata based on relevance
CN111680597B (zh) 人脸识别模型处理方法、装置、设备和存储介质
US20150339592A1 (en) Site flow optimization
WO2014186425A2 (en) Automatic resource scheduling
CN107918509A (zh) 软件快捷方式提示设置方法、装置及可读存储介质
CN109165057A (zh) 一种智能设备执行任务的方法和装置
US11568271B1 (en) Machine learning in resource-constrained environments
US20120095996A1 (en) Search in a multi-relationship social network
KR102230875B1 (ko) 휴대 단말기에서 채팅방 관리 방법 및 그 장치
CN108255977A (zh) 关系预测方法、装置、计算机可读存储介质及电子设备
US9075597B2 (en) Modeled communication between deployment units
US10872121B2 (en) Systems and methods for matching users
US8352468B2 (en) Top search hits based on learned user preferences
CN112352224B (zh) 具有模型生命周期管理的聊天机器人系统
CN110196955B (zh) 信息处理方法、装置及存储介质

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111129

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120229

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20120713

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121015

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20121022

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121112

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20121119

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20121212

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20121219

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130115

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130307

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20160315

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees