JP2011100208A - Action estimation device, action estimation method, and action estimation program - Google Patents
Action estimation device, action estimation method, and action estimation program Download PDFInfo
- Publication number
- JP2011100208A JP2011100208A JP2009253216A JP2009253216A JP2011100208A JP 2011100208 A JP2011100208 A JP 2011100208A JP 2009253216 A JP2009253216 A JP 2009253216A JP 2009253216 A JP2009253216 A JP 2009253216A JP 2011100208 A JP2011100208 A JP 2011100208A
- Authority
- JP
- Japan
- Prior art keywords
- node
- tree structure
- web page
- user
- function
- 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.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- User Interface Of Digital Computer (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
本発明は、行動推定装置、行動推定方法および行動推定プログラムに関する。 The present invention relates to a behavior estimation device, a behavior estimation method, and a behavior estimation program.
近年、WEBページを参照する利用者の行動を推定する技術が盛んに研究され、実際に様々な場面で利用されるようになっている。例えば、オンラインショッピングサイトでは、利用者が現在参照しているWEBページで販売されている商品と利用者が過去に商品を購入した実績情報に基づいて、その利用者が何を購入しようとしているかを推定し、その推定結果に基づいて選択された推奨商品をWEBページ上の空きスペース等に表示する技術が利用されている。 In recent years, a technique for estimating a user's action referring to a WEB page has been actively researched and actually used in various scenes. For example, in an online shopping site, what is the user trying to purchase based on the product sold on the WEB page that the user is currently referring to and the past information on the purchase of the product by the user in the past? A technique is used that estimates and displays recommended products selected based on the estimation result in an empty space on the WEB page.
また、ユーザがPC上で行ったWEB閲覧行動の記録から、閲覧行動をカテゴリ分けして、「新たな検索行動」、「以前の検索行動の再表示」、「検索行動からクリックによるWEB閲覧」、「検索以外から始まったWEB閲覧」といったユーザ行動を推定する技術も知られている(特許文献1参照)。 In addition, the browsing behavior is classified into categories from the record of the web browsing behavior performed by the user on the PC, and “new search behavior”, “redisplay of previous search behavior”, “WEB browsing by clicking from search behavior” In addition, a technique for estimating user behavior such as “WEB browsing started from other than search” is also known (see Patent Document 1).
しかしながら、上述した従来の技術では、利用者が現在行っている行動のおおまかな「内容」は推定できるもの、「目的」を推定することができないため、推定結果が有効に活用されない場合があった。 However, in the above-described conventional technology, the approximate “content” of the user's current actions can be estimated, but the “purpose” cannot be estimated, so the estimation result may not be effectively used. .
例えば、オンラインショッピングサイトでは、利用者がある商品のWEBページを参照しようとしている場合、その行動の目的が「その商品または同種の商品を購入すること」であれば同種の商品を推奨商品として表示することは有効である。しかしながら、その行動の目的が「何か欲しいものがないか探すこと」であれば、同種の商品を推奨商品として表示することの効果は低く、むしろ、その利用者の嗜好に合った商品を推奨商品として表示する方が有効である。 For example, in an online shopping site, when a user is trying to reference a WEB page of a product, if the purpose of the action is “to purchase the product or the same type of product”, the same type of product is displayed as a recommended product. It is effective to do. However, if the purpose of the action is “search for something you want,” it is less effective to display the same type of product as a recommended product. Rather, recommend a product that matches the user's preference. It is more effective to display as a product.
本発明は、上記に鑑みてなされたものであって、利用者の行動について詳細で精度の高い推定結果を得ることを目的とする。 This invention is made | formed in view of the above, Comprising: It aims at obtaining a detailed and highly accurate estimation result about a user's action.
上述した課題を解決し、目的を達成するために、本発明は、利用者が複数のWEBページを参照した順序を示す参照履歴データを記憶する記憶手段と、前記参照履歴データに基づいて、前記利用者によって参照された各WEBページをノードとするツリー構造データであって、第1のWEBページの次に参照された第2のWEBページに対応する第2のノードが、前記第1のWEBページに対応する第1のノードの子ノードとなるように各ノードが関連付けられたツリー構造データを生成するツリー構造生成手段と、前記ツリー構造生成手段によって生成されたツリー構造データに含まれる各ノードに対応するWEBページの機能を解析する機能解析手段と、前記ツリー構造生成手段によって生成されたツリー構造データに含まれる各ノードが関連付けされている状況と、前記機能解析手段による各ノードに対応するWEBページの機能の解析結果とに基づいて、前記利用者の行動を推定する行動推定手段とを備えることを特徴とする。 In order to solve the above-described problems and achieve the object, the present invention provides a storage means for storing reference history data indicating an order in which a user refers to a plurality of WEB pages, and based on the reference history data, Tree structure data having each WEB page referred to by a user as a node, and a second node corresponding to a second WEB page referred to next to the first WEB page is the first WEB Tree structure generation means for generating tree structure data associated with each node so as to be a child node of the first node corresponding to the page, and each node included in the tree structure data generated by the tree structure generation means Function analysis means for analyzing the function of the WEB page corresponding to each node, and each node included in the tree structure data generated by the tree structure generation means The situation are associated, on the basis by functional analysis means and the analysis result of the function of the WEB page corresponding to each node, characterized by comprising a behavior estimation means for estimating the behavior of the user.
本発明に係る行動推定装置、行動推定方法および行動推定プログラムは、利用者の行動について詳細で精度の高い推定結果を得ることができるという効果を奏する。 The behavior estimation apparatus, the behavior estimation method, and the behavior estimation program according to the present invention have an effect that a detailed and highly accurate estimation result can be obtained for the user's behavior.
以下に、本発明に係る行動推定装置、行動推定方法および行動推定プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。 Embodiments of a behavior estimation device, a behavior estimation method, and a behavior estimation program according to the present invention will be described below in detail with reference to the drawings. Note that the present invention is not limited to the embodiments.
まず、図1を参照しながら、本実施例に係る行動推定装置10の構成について説明する。行動推定装置10は、本実施例に係る行動推定方法を実行することにより、利用者がWEBページを参照した履歴から利用者の行動を推定する装置である。図1に示すように、行動推定装置10は、記憶部110と制御部120を有する。
First, the configuration of the
記憶部110は、例えば、ハードディスク装置や半導体記憶装置であり、参照履歴データ111と、ツリー構造データ112と、機能解析ルール113と、行動推定ルール114とを記憶する。
The
参照履歴データ111は、利用者がどのWEBページをどのような順序で参照したかを示す履歴情報である。参照履歴データ111の内容は、例えば、WEBサーバが要求メッセージを受信するたびに記録するアクセスログであってもよいし、WEBブラウザがWEBサーバへWEBページを要求するたびに記録するログであってもよい。
The
ツリー構造データ112は、利用者がどのWEBページを参照した後に他のどのWEBページを参照したかを示すツリー構造のデータである。ツリー構造データ112においては、利用者が参照した各WEBページが1つのノードとして保持され、遷移元のWEBページに対応するノードが親ノードとなり、前方向の遷移先のWEBページに対応するノードが子ノードとなるようにノード間が接続される。例えば、利用者がAというWEBページのリンクを辿ってBというWEBページを参照し、Aに戻った後にリンクを辿ってCというWEBページを参照した場合、Aに対応するノードは、Bに対応するノードとCに対応するノードの親ノードとなる。
The
機能解析ルール113は、ツリー構造データ112に含まれる各ノードに対応するWEBページの機能を特定するための情報である。行動推定ルール114は、ツリー構造データ112内のノードのツリー構造と、機能解析ルール113を用いて特定されたツリー構造データ112内の各ノードに対応するWEBページの機能とに基づいて利用者の行動を推定するための情報である。
The
なお、図1において記憶部110に記憶されるものとして図示されているデータの一部または全ては、行動推定装置10と通信可能に構成された他の装置に、行動推定装置10からアクセス可能な状態で格納されていてもよい。
Note that part or all of the data illustrated as being stored in the
制御部120は、行動推定装置10を全体制御する制御部であり、ツリー構造生成部121と、機能解析部122と、行動推定部123とを有する。
The
ツリー構造生成部121は、参照履歴データ111から行動を推定する対象の利用者の情報を抽出し、参照された各WEBページに対応するノードを参照順序に基づいて関連付けて、ツリー構造データ112を生成する。機能解析部122は、ツリー構造生成部121によって生成されたツリー構造データ112に含まれる各ノードに対応するWEBページの機能を機能解析ルール113に基づいて特定する。
The tree
行動推定部123は、WEBページの参照順序を表すツリー構造データ112内のノードのツリー構造と、機能解析ルール113を用いて特定されたツリー構造データ112内の各ノードに対応するWEBページの機能とを、行動推定ルール114と照合することによって、利用者の行動を推定する。すなわち、行動推定部123は、利用者によって参照される単一のWEBページに注目して利用者の行動を推定するのではなく、利用者がどのような機能のWEBページをどのような順序で参照したかに基づいて利用者の行動を推定する。
The
一般に、利用者がどの機能のWEBページをどの順序で参照するかは、利用者の目的に応じて異なる。例えば、どの種類の商品を購入するかを決めた上で購入する具体的な商品を捜している場合、利用者は、検索用のWEBページを利用してその種類の商品を一覧表示させた後、そこから個別の商品の詳細情報が掲載されたWEBページを参照することが多い。すなわち、どの種類の商品を購入するかを決めた上で購入する具体的な商品を捜している場合には、「商品検索」という機能をもつWEBページを参照した後に「商品情報」という機能をもつWEBページを参照することが多い。 In general, the order in which the user refers to the WEB page of which function depends on the purpose of the user. For example, if you are searching for a specific product to purchase after deciding which type of product to purchase, the user will use the search WEB page to display a list of that type of product. From there, it is often referred to a WEB page on which detailed information on individual products is posted. In other words, if you are searching for a specific product to purchase after deciding what kind of product to purchase, after referring to the WEB page that has the function of “product search”, the function of “product information” It often refers to the WEB page that it has.
一方、何か面白そうな商品を漠然と捜している場合、利用者は、売れ筋上位の表品の一覧が一覧表示されたWEBページを参照した後、そこから個別の商品の詳細情報が掲載されたWEBページを参照することが多い。すなわち、何か面白そうな商品を漠然と捜している場合には、「ランキング」という機能をもつWEBページを参照した後に「商品情報」という機能をもつWEBページを参照することが多い。 On the other hand, if you are looking for a product that seems to be interesting, the user browsed the WEB page that lists the top-selling products, and then detailed information about each product was posted there. Often refers to a WEB page. That is, when a product that looks interesting is vaguely searched, a WEB page having a function “product information” is often referred to after referring to a WEB page having a function “ranking”.
このように、利用者が最終的に参照するWEBページの機能が同様のものであっても、利用者がどのような目的をもっているかによって、そのWEBページに辿りつくまでに利用者が参照するWEBページの機能は異なる。また、利用者が最初に参照するWEBページの機能が同様のものであっても、利用者がどのような目的をもっているかによって、利用者が最終的に参照するWEBページの機能は異なる。 In this way, even if the function of the WEB page that the user finally refers is the same, the WEB that the user refers to before reaching the WEB page depends on what purpose the user has. The page functions are different. Further, even if the function of the WEB page that the user first refers to is the same, the function of the WEB page that the user finally refers to depends on what purpose the user has.
本実施例に係る行動推定装置10は、上述したように、利用者がどのような機能のWEBページをどのような順序で参照したかに基づいて利用者の行動を行動推定部123が推定するので、利用者がどのような目的をもっているかを把握して利用者の行動を推定することができ、その結果、詳細で精度の高い推定結果を得ることができる。
In the
次に、図1に示した制御部120に含まれる各部が実行する処理についてより詳しく説明する。
Next, processing executed by each unit included in the
ツリー構造生成部121は、行動を推定する対象の利用者が参照したWEBページに関するデータを参照履歴データ111から参照順に読み出す。そして、読み出したデータが示すWEBページがツリー構造生成部121にノードとしてまだ反映されていないものであれば、そのWEBページに対応するノードを生成し、生成したノードを、直前に読み出したデータが示すWEBページに対応するノードに子ノードとして関連付ける。
The tree
一方、読み出したデータが示すWEBページがツリー構造生成部121にノードとして既に反映されているものであれば、そのWEBページに対応するノードを生成することなく、次に読み出されるデータが示すWEBページに対応するノードが、今回読み出したデータが示すWEBページと同一のWEBページに対応するノードに子ノードとして接続されるように処理する。
On the other hand, if the WEB page indicated by the read data is already reflected as a node in the tree
図2〜4を参照しながら、ツリー構造生成部121が実行する処理の具体例について説明する。図2は、参照履歴データ111の一例を示す図である。図2の例に示すように、参照履歴データ111は、利用者ID、URL(Uniform Resource Locator)といった項目を有する。利用者IDは、WEBページを参照した利用者を識別するための識別子であり、URLは、利用者が参照したWEBページのアドレスである。
A specific example of processing executed by the tree
なお、利用者IDの値は、例えば、利用者がWEBサイトにログインする際に使用したユーザIDであってもよいし、利用者がWEBサイトにログインした際に発行されたセッションIDであってもよいし、利用者がWEBページにアクセスするために用いている装置に割り当てられたネットワークアドレスであってもよい。 The value of the user ID may be, for example, a user ID used when the user logs in to the WEB site, or a session ID issued when the user logs in to the WEB site. Alternatively, it may be a network address assigned to a device used by a user to access a WEB page.
参照履歴データ111には、利用者がWEBページを参照するたびに行が追加される。このため、行動を推定する対象者の利用者IDと同一の利用者IDが設定されている行を参照履歴データ111から順に読み出せば、その利用者がどの順序でどのWEBページを参照したかを把握することができる。
A row is added to the
例えば、図2に示す参照履歴データ111の1〜4行は、「U03」という利用者IDに対応する利用者が
http://www.foobar.com/
というアドレスのWEBページを参照した後にリンクを辿る等して
http://ranking.foobar.com/
というアドレスのWEBページを参照し、戻るボタンを押下する等して
http://www.foobar.com/
というアドレスのWEBページに戻り、その後、リンクを辿る等して
http://search.foobar.com/srch?name=xxx
というアドレスのWEBページを参照したことを示している。
For example,
http://www.foobar.com/
After referring to the WEB page with the address
http://ranking.foobar.com/
Refer to the WEB page with the address and press the back button etc.
http://www.foobar.com/
Return to the WEB page with the address, and then follow the link.
http://search.foobar.com/srch?name=xxx
It is shown that the WEB page at the address is referred to.
図3は、図2に示した参照履歴データ111からツリー構造生成部121が生成するツリー構造データ112の一例を示す図であり、図4は、図3に示したツリー構造データ112に含まれるノードの論理的な構造を模式的に表した図である。
3 is a diagram illustrating an example of the
図3に示す例のように、ツリー構造データ112は、利用者ID、ノードID、親ノードID、URL、ページ機能といった項目を有し、ノードごと、すなわち、利用者が参照したWEBページごとに行が追加される。
As shown in the example of FIG. 3, the
利用者IDは、WEBページを参照した利用者を識別するための識別子であり、参照履歴データ111の利用者IDと対応する。ノードIDは、利用者に参照されたWEBページに対応するノードを識別するための識別子である。親ノードIDは、利用者に参照されたWEBページに対応するノードの親ノードのノードIDである。ツリー構造データ112は、ノードIDと親ノードIDの組合せによって、論理的にツリー構造を表す。
The user ID is an identifier for identifying the user who referred to the WEB page, and corresponds to the user ID of the
URLは、利用者が参照したWEBページのアドレスである。ページ機能は、利用者に参照されたWEBページの機能を示す値であり、ツリー構造生成部121によってツリー構造データ112が生成された段階では値が未設定となる。
The URL is an address of a WEB page referred to by the user. The page function is a value indicating the function of the WEB page referred to by the user, and the value is not set when the
例えば、「U03」という利用者IDに対応する利用者の行動を推定する場合、ツリー構造生成部121は、まず、図2に示した参照履歴データ111の1行目を読み出す。そして、ツリー構造生成部121は、読み出した行のURLに対応するノードをまだ生成していないので、読み出した行が示すWEBページに対応するノードを生成する。この段階では直前に読み出した行は存在しないため、親ノードとの関連付けは行われない。
For example, when estimating the user behavior corresponding to the user ID “U03”, the tree
具体的には、ツリー構造生成部121は、ツリー構造データ112に行を追加し、参照履歴データ111から読み出した行の利用者IDとURLを転記する。そして、ノードIDに新たに発行したユニークな値(「N01」)を設定し、親ノードIDは未設定のままとする。この処理によって、図3に示したツリー構造データ112の1行目が生成される。
Specifically, the tree
続いて、ツリー構造生成部121は、図2に示した参照履歴データ111の2行目を読み出す。この行のURLに対応するノードをまだ生成していないので、ツリー構造生成部121は、読み出した行が示すWEBページに対応するノードを生成し、直前に読み出した行が示すWEBページに対応するノードに子ノードとして関連付ける。
Subsequently, the tree
具体的には、ツリー構造生成部121は、ツリー構造データ112に行を追加し、参照履歴データ111から読み出した行の利用者IDとURLを転記する。そして、ノードIDに新たに発行したユニークな値(「N02」)を設定し、親ノードIDには直前の行のノードID(「N01」)を設定する。この処理によって、図3に示したツリー構造データ112の2行目が生成される。
Specifically, the tree
続いて、ツリー構造生成部121は、図2に示した参照履歴データ111の3行目を読み出す。この行のURLは、ツリー構造データ112の1行目に追加したノードのURLと同一であるため、ツリー構造生成部121は、読み出した行が示すWEBページに対応するノードの生成を行わない。
Subsequently, the tree
続いて、ツリー構造生成部121は、図2に示した参照履歴データ111の4行目を読み出す。この行のURLに対応するノードをまだ生成していないので、ツリー構造生成部121は、読み出した行が示すWEBページに対応するノードを生成する。そして、直前に読み出した行のURLが既にノードを作成済みのものであったため、生成したノードを、直前に読み出した行が示すWEBページと同一のWEBページに対応するノードに子ノードとして関連付ける。
Subsequently, the tree
具体的には、ツリー構造生成部121は、ツリー構造データ112に行を追加し、参照履歴データ111から読み出した行の利用者IDとURLを転記する。そして、ノードIDに新たに発行したユニークな値(「N03」)を設定し、親ノードIDには同一のURLが設定されている1行目のノードID(「N01」)を設定する。この処理によって、図3に示したツリー構造データ112の3行目が生成される。
Specifically, the tree
続いて、ツリー構造生成部121は、図2に示した参照履歴データ111の4行目を読み出す。この行のURLに対応するノードをまだ生成していないので、ツリー構造生成部121は、読み出した行が示すWEBページに対応するノードを生成し、直前に読み出した行が示すWEBページに対応するノードに子ノードとして関連付ける。
Subsequently, the tree
具体的には、ツリー構造生成部121は、ツリー構造データ112に行を追加し、参照履歴データ111から読み出した行の利用者IDとURLを転記する。そして、ノードIDに新たに発行したユニークな値(「N04」)を設定し、親ノードIDには直前の行のノードID(「N03」)を設定する。この処理によって、図3に示したツリー構造データ112の4行目が生成される。
Specifically, the tree
以上の処理により、図4に示すように、「N01」というノードIDのノードの子ノードとして、「N02」というノードIDのノードと「N03」というノードIDのノードが存在し、さらに、「N03」というノードIDのノードの子ノードとして、「N04」というノードIDのノードが存在するツリー構造が形成される。その後、ツリー構造生成部121が、図2に示した参照履歴データ111の5行目以降を読み出して処理を継続することにより、図3に示したツリー構造データ112の5〜6行目が生成され、図4に示すようなツリー構造が形成される。
As a result of the above processing, as shown in FIG. 4, a node with a node ID of “N02” and a node with a node ID of “N03” exist as child nodes of the node with a node ID of “N01”. As a child node of the node with the node ID “”, a tree structure in which a node with the node ID “N04” exists is formed. Thereafter, the tree
以上の説明から明らかなように、本実施例に係る行動推定方法では、既に参照済みのWEBページに戻る遷移があった場合に、遷移先のWEBページに対応するノードが子ノードとして遷移元のWEBページに対応するノードに関連付けられるのではなく、それ以降に参照されるWEBページに対応するノードが、戻った先のWEBページに対応するノードから分岐するようにツリー構造が形成される。 As is clear from the above description, in the behavior estimation method according to the present embodiment, when there is a transition back to the already-referenced WEB page, the node corresponding to the transition-destination WEB page is set as a child node. Instead of being associated with a node corresponding to a WEB page, a tree structure is formed such that a node corresponding to a WEB page referred to thereafter branches off from a node corresponding to the returned WEB page.
利用者が何らかの目的をもってWEBページを参照する場合、参照済みのWEBページへ戻る遷移は、戻った先のWEBページから新たなWEBページを参照するために行われ、参照済みのWEBページへ戻ること自体には意味がないことが多い。本実施例に係る行動推定方法では、新たなWEBページが参照された場合にのみノードが追加されて遷移元のWEBページに対応するノードと関連付けられるため、利用者の目的を顕著に表したツリー構造を得ることができる。 When a user refers to a WEB page for any purpose, the transition to the referenced WEB page is performed in order to refer to a new WEB page from the returned WEB page and return to the referenced WEB page. Often it does not make sense. In the behavior estimation method according to the present embodiment, a node is added only when a new WEB page is referred to and associated with a node corresponding to the transition source WEB page. A structure can be obtained.
続いて、図5〜7を参照しながら、機能解析部122が実行する処理の具体例について説明する。図5は、機能解析ルール113の一例を示す図である。図5の例に示すように、機能解析ルール113は、URLパターン、ページ機能といった項目を有する。URLパターンは、WEBページのURLとのマッチングに用いられる文字列であり、正規表現のような所定の書式で設定される。ページ機能は、URLがURLパターンとマッチするWEBページの機能を示す名称である。
Next, a specific example of processing executed by the function analysis unit 122 will be described with reference to FIGS. FIG. 5 is a diagram illustrating an example of the
機能解析部122は、ツリー構造データ112の各行について、URLを機能解析ルール113のURLパターンとマッチングし、マッチしたURLパターンに対応するページ機能を、ツリー構造データ112のページ機能に設定する。この結果、図6の例に示すように、ツリー構造データ112のページ機能に値が設定され、図7の例に示すように、ツリー構造データ112に含まれる各ノードの機能が特定された状態となる。
The function analysis unit 122 matches the URL with the URL pattern of the
なお、WEBページのURLがいずれのURLパターンともマッチしないことが生じないように、他のURLパターンにマッチしない場合にURLとマッチするデフォルトのURLパターンを機能解析ルール113に設けておくこととしてもよいし、WEBページのURLがいずれのURLパターンともマッチしない場合に機能解析部122に埋め込まれたデフォルトのルールによってWEBページの機能を特定することとしてもよい。また、WEBページのURLとURLパターンをマッチングさせることによってWEBページの機能を特定するのではなく、WEBページのURLに基づいてWEBページの実態であるHTMLファイルを取得し、取得したHTMLファイルについて、所定のキーワードが含まれているか等の解析を行ってWEBページの機能を特定することとしてもよい。
Note that a default URL pattern that matches a URL when it does not match any other URL pattern may be provided in the
続いて、図8〜10を参照しながら、行動推定部123が実行する処理の具体例について説明する。図8は、行動推定ルール114の一例を示す図である。図8の例に示すように、行動推定ルール114は、部分木パターン式、ユーザ行動といった項目を有する。部分木パターン式は、特定の機能のノードが特定の構造で組み合わされた部分木を表す式である。ユーザ行動は、部分木パターン式が表す部分木がツリー構造データ112に含まれる場合に推定される利用者の行動である。
Next, a specific example of processing executed by the
ここで、本実施例における部分木パターン式の書式について説明する。本実施例における部分木パターン式の基本的な書式は以下の通りである。
親ノードの機能 − (子ノードの機能のリスト)
Here, the format of the subtree pattern formula in this embodiment will be described. The basic format of the subtree pattern formula in this embodiment is as follows.
Parent node function-(list of child node functions)
図8に示した行動推定ルール114の1行目の部分木パターン式である「商品詳細−(レビュー、店舗情報)」は、図9に示すように、「商品詳細」という機能の親ノードの子ノードとして「レビュー」という機能のノードと「店舗情報」という機能のノードが存在する部分木を表している。行動推定部123は、行動推定ルール114にこのような部分木が含まれる場合には、行動推定ルール114の1行目にユーザ行動として設定されている「どの店舗で買うかを検討している」を利用者の行動の推定結果として出力する。
“Product details— (review, store information)”, which is the subtree pattern expression in the first row of the behavior estimation rule 114 shown in FIG. 8, is the parent node of the function “product details” as shown in FIG. This represents a subtree in which a node with a function “review” and a node with a function “store information” exist as child nodes. When such a partial tree is included in the behavior estimation rule 114, the
なお、子ノードの機能のリストの部分には、ノードの親子構造を入れ子にすることができる。図8に示した行動推定ルール114の2行目の部分木パターン式である「サイトトップ−(店舗トップ−店舗情報)」は、図10に示すように、「店舗情報」という機能のノードの親ノードとして「店舗トップ」という機能のノードが存在し、さらに、「店舗トップ」という機能のノードの親ノードとして「サイトマップ」という機能のノードが存在する部分木を表している。行動推定部123は、行動推定ルール114にこのような部分木が含まれる場合には、行動推定ルール114の2行目にユーザ行動として設定されている「どんな店舗があるか調べている」を利用者の行動の推定結果として出力する。
Note that the parent-child structure of the node can be nested in the part of the function list of the child node. As shown in FIG. 10, “site top- (store top-store information)”, which is the partial tree pattern expression in the second row of the behavior estimation rule 114 shown in FIG. This represents a subtree in which a node having a function “shop top” exists as a parent node, and a node having a function “site map” exists as a parent node of the node having a function “shop top”. When such a partial tree is included in the behavior estimation rule 114, the
次に、図1に示した行動推定装置10が実行する行動推定処理の処理手順について図11のフローチャートを参照しながら説明する。図11に示すように、ある利用者の行動の推定を求められると、ツリー構造生成部121が、その利用者の情報を参照履歴データ111から取得して、ツリー構造データ112を生成する(ステップS101)。
Next, a processing procedure of behavior estimation processing executed by the
続いて、機能解析部122が、ツリー構造データ112に含まれる各ノードの機能を特定する(ステップS102)。そして、行動推定部123が、行動推定ルール114に含まれる部分木をツリー構造データ112と照合して、利用者の行動の推定結果を出力する(ステップS103)。
Subsequently, the function analysis unit 122 identifies the function of each node included in the tree structure data 112 (step S102). Then, the
上述してきたように、本実施例に係る行動推定装置10は、利用者が参照したWEBページの履歴情報から参照の遷移を示すツリー構造を生成し、生成したツリー構造に基づいて利用者の行動を推定することとしたので、詳細で精度の高い推定結果を得ることができる。
As described above, the
本実施例では、実施例1で説明した行動推定装置10の変形例を示す。まず、図12を参照しながら、本実施例に係る行動推定装置20の構成について説明する。図12に示すように、行動推定装置20は、記憶部210と制御部220を有する。
In the present embodiment, a modified example of the
記憶部210は、例えば、ハードディスク装置や半導体記憶装置であり、参照履歴データ211と、ツリー構造データ212と、機能解析ルール213と、部分木抽出ルール214と、行動推定ルール215とを記憶する。
The
部分木抽出ルール214は、ツリー構造データ212から特定の構造の部分木を抽出するための情報である。参照履歴データ211、ツリー構造データ212、機能解析ルール213、行動推定ルール215は、それぞれ、実施例1で示した参照履歴データ111、ツリー構造データ112、機能解析ルール113、行動推定ルール114に相当する。
The partial
機能解析ルール213は、機能解析ルール入力装置1によって編集され、部分木抽出ルール214は、部分木抽出ルール入力装置2によって編集され、行動推定ルール215は、行動推定ルール入力装置3によって編集される。なお、機能解析ルール入力装置1、部分木抽出ルール入力装置2および行動推定ルール入力装置3は、行動推定装置20と一体に構成されていてもよい。
The function analysis rule 213 is edited by the function analysis
なお、図12において記憶部210に記憶されるものとして図示されているデータの一部または全ては、行動推定装置20と通信可能に構成された他の装置に、行動推定装置20からアクセス可能な状態で格納されていてもよい。
Note that part or all of the data illustrated as being stored in the
制御部220は、行動推定装置20を全体制御する制御部であり、ツリー構造生成部221と、機能解析部222と、行動推定部223とを有する。ツリー構造生成部221、機能解析部222、行動推定部223は、それぞれ、実施例1で示したツリー構造生成部121、機能解析部122、行動推定部123に相当する。
The control unit 220 is a control unit that controls the entire behavior estimation apparatus 20, and includes a tree
行動推定部223は、部分木抽出部223aと、部分木照合部223bとを含む。部分木抽出部223aは、部分木抽出ルール214に基づいてツリー構造データ212から特定の構造の部分木を抽出する。部分木照合部223bは、部分木抽出部223aによって抽出された部分木と行動推定ルール215と照合することによって、利用者の行動を推定する。
The behavior estimation unit 223 includes a partial tree extraction unit 223a and a partial tree matching unit 223b. The partial tree extraction unit 223 a extracts a partial tree having a specific structure from the
このように、特定の構造の部分木を抽出した後に行動推定ルール215と照合することにより、ツリー構造データ212に含まれるツリー構造が大規模な場合でも、行動推定ルール215に含まれる部分木と照合する部分を予め絞り込むことができ、照合に要する時間が短縮される。
In this way, by extracting a subtree having a specific structure and collating it with the
次に、図12に示した制御部220に含まれる各部が実行する処理についてより詳しく説明する。 Next, processing executed by each unit included in the control unit 220 illustrated in FIG. 12 will be described in more detail.
図13〜16−5を参照しながら、ツリー構造生成部221が実行する処理の具体例について説明する。ツリー構造生成部221は、参照履歴データ211から読み出したデータが示すWEBページが既にノードを作成済みのものであった場合の動作が、実施例1で示したツリー構造生成部121と異なる。
A specific example of the processing executed by the tree
具体的には、ツリー構造生成部221は、参照履歴データ211から読み出したデータが示すWEBページが既にノードを作成済みのものであっても、そのWEBページに対応するノードが、直前に読み出したデータが示すWEBページに対応するノードから根ノードまでツリー構造を辿ったパス上に存在しない場合は、読み出したデータが示すWEBページに対応するノードを生成し、生成したノードを、直前に読み出したデータが示すWEBページに対応するノードに子ノードとして関連付ける。
Specifically, even if the WEB page indicated by the data read from the
このような処理により、利用者が特定の目的をもって参照したWEBページの一連の遷移を、それ以前に他の目的で参照されたWEBページの一連の遷移と異なる系列のツリー構造とすることができ、利用者の行動の推定精度が向上する。 By such processing, a series of transitions of a WEB page referred to by a user for a specific purpose can be made into a different tree structure from a series of transitions of a WEB page previously referred to for another purpose. , The estimation accuracy of the user's behavior is improved.
図13は、参照履歴データ211の一例を示す図である。図13の例に示すように、参照履歴データ211は、図2に示した参照履歴データ111が有する項目に加えて、履歴番号という項目を有する。履歴番号は、参照履歴データ211の各行を識別するための識別子である。
FIG. 13 is a diagram illustrating an example of the
図14は、ツリー構造データ212の一例を示す図である。図14の例に示すように、ツリー構造データ212は、図3に示したツリー構造データ112が有する項目に加えて、履歴番号リストという項目を有する。履歴番号リストは、ノードに対応する参照履歴データ211の行を示す履歴番号のリストである。
FIG. 14 is a diagram illustrating an example of the
図15は、ツリー構造生成部221が実行するツリー構造生成処理の処理手順を示すフローチャートである。図15に示す処理手順は、MFアルゴリズム(非特許文献1参照)に基づくものであるが、同様の結果を達成することができれば、他のアルゴリズムを利用した処理手順であってもよい。
FIG. 15 is a flowchart illustrating a processing procedure of tree structure generation processing executed by the tree
図15に示すように、ツリー構造生成部221は、まず、処理対象となる参照履歴データ211の行を示す変数であるaを最初の行を表す値(例えば、「1」)に初期化する(ステップS201)。続いて、ツリー構造生成部221は、次に作成するノードのノードIDを表す変数であるnを最初のノードを表す値(例えば、「N01」)に初期化する(ステップS202)。
As illustrated in FIG. 15, the tree
また、ツリー構造生成部221は、リストNとリストYを空にする(ステップS203)。リストNは、根ノードから最後に追加されたノードまで辿ったパス上に存在するノードのノードIDのリストである。リストYは、リストNに含まれるノードに対応する参照履歴データ211の行の行番号のリストである。
In addition, the tree
そして、ツリー構造生成部221は、参照履歴データ211から変数aに対応する行を取得する(ステップS204)。ここで、取得した行と同一のURLを含む行の番号がリストYに含まれていなければ(ステップS205否定)、ツリー構造生成部221は、ツリー構造データ212に行を追加して以下のように値を設定する(ステップS206)。すなわち、利用者ID、URL、履歴番号リストには、それぞれ、取得した行の利用者ID、URL、履歴番号を設定し、ノードIDには、変数nの値を設定し、親ノードIDには、リストNの末尾の要素の値を設定する。
Then, the tree
続いて、ツリー構造生成部221は、リストYの末尾に要素を追加して変数aの値を設定し(ステップS207)、リストNの末尾に要素を追加して変数nの値を設定し(ステップS208)、変数nを次のノードを表す値に更新する(ステップS209)。そして、ツリー構造生成部221は、変数aに1を加算し(ステップS214)、変数aに対応する行が参照履歴データ211にあれば(ステップS215肯定)、ステップS204から処理手順を再開する。
Subsequently, the tree
一方、参照履歴データ211から取得した行と同一のURLを含む行の番号がリストYに含まれていれば(ステップS205肯定)、ツリー構造生成部221は、同一のURLを含む行の番号を含む要素のリストYにおける位置を変数jに設定する(ステップS210)。そして、ツリー構造生成部221は、リストYとリストNから、変数jの値に1を加算した位置以降の要素を削除する(ステップS211)。
On the other hand, if the list Y includes a line number including the same URL as the line acquired from the reference history data 211 (Yes in step S205), the tree
続いて、ツリー構造生成部221は、リストNの末尾の要素に含まれる値を取得し(ステップS212)、その値がノードIDとして設定されているツリー構造データ212の行の履歴番号リストに、変数aに対応する参照履歴データ211の行の履歴番号を追加する(ステップS213)。そして、ツリー構造生成部221は、変数aに1を加算し(ステップS214)、変数aに対応する行が参照履歴データ211にあれば(ステップS215肯定)、ステップS204から処理手順を再開する。
Subsequently, the tree
以上の処理手順を、参照履歴データ211から全ての行を取得するまで繰り返して実行し、変数aに対応する行が参照履歴データ211になくなれば(ステップS215否定)、ツリー構造生成部221は、ツリー構造生成処理を終了する。
The above processing procedure is repeatedly executed until all the rows are acquired from the
図16−1は、ステップS203が完了した段階での各種データの状態を示しており、ツリー構造データ212、リストYおよびリストNは、空であり、変数aおよび変数nは、それぞれ、「1」と「N01」に初期化されている。
FIG. 16A shows the state of various data at the stage when step S203 is completed. The
図16−2は、参照履歴データ211から1行目が取得され、ステップS206〜ステップS209とステップS214が実行された各種データの状態を示しており、ツリー構造データ212には行が追加され、リストYおよびリストNには要素が追加されている。また、変数aおよび変数nは、値が更新されている。
FIG. 16-2 shows the state of various data in which the first row is acquired from the
図16−3は、参照履歴データ211から2行目が取得され、ステップS206〜ステップS209とステップS214が実行された各種データの状態を示しており、ツリー構造データ212にはさらに行が追加され、リストYおよびリストNにはさらに要素が追加されている。また、変数aおよび変数nは、値が更新されている。
FIG. 16C shows the state of various data in which the second row is acquired from the
図16−4は、参照履歴データ211から、1行目と同一のURLを含む3行目が取得され、ステップS210〜ステップS214が実行された各種データの状態を示しており、ツリー構造データ212の履歴番号が更新され、リストYおよびリストNは、参照履歴データ211の1行目に対応する要素よりも後ろの要素が削除されている。また、変数aは、値が更新されている。
FIG. 16-4 shows the state of various data in which the third line including the same URL as the first line is acquired from the
図16−5は、参照履歴データ211から1行目が取得され、ステップS206〜ステップS209とステップS214が実行された各種データの状態を示しており、ツリー構造データ212には行が追加され、リストYおよびリストNには要素が追加されている。また、変数aおよび変数nは、値が更新されている。図16−4に示した段階で、リストYおよびリストNから要素が削除されたため、ツリー構造データ212に追加された行の親ノードIDには、直前に追加されたノードのノードIDである「N02」ではなく、戻った先のWEBページに対応するノードのノードIDである「N01」が設定されている。
FIG. 16-5 shows the state of various data in which the first row is acquired from the
続いて、図17および18を参照しながら、機能解析部222が実行する処理の具体例について説明する。機能解析部222は、ツリー構造データ212の各行について、URLを、図5に示した機能解析ルール113と同様の機能解析ルール213のURLパターンとマッチングし、マッチしたURLパターンに対応するページ機能を、ツリー構造データ212のページ機能に設定する。この結果、図17の例に示すように、ツリー構造データ212のページ機能に値が設定された状態となる。
Next, a specific example of processing executed by the function analysis unit 222 will be described with reference to FIGS. For each row of the
図18は、機能解析部222の機能解析処理の処理手順を示すフローチャートである。図18に示すように、機能解析部222は、ツリー構造データ212の先頭の行を選択する(ステップS301)。そして、ツリー構造データ212の行を選択できた場合は(ステップS302肯定)、機能解析部222は、機能解析ルール213の先頭の行を選択する(ステップS303)。
FIG. 18 is a flowchart illustrating the processing procedure of the function analysis process of the function analysis unit 222. As shown in FIG. 18, the function analysis unit 222 selects the first row of the tree structure data 212 (step S301). When the row of the
続いて、機能解析ルール213の行を選択できた場合は(ステップS304肯定)、機能解析部222は、ツリー構造データ212から選択した行のURLを、機能解析ルール213から選択した行のURLパターンと比較する(ステップS305)。
Subsequently, when the line of the function analysis rule 213 can be selected (Yes at Step S304), the function analysis unit 222 uses the URL of the line selected from the
そして、URLとURLパターンがマッチした場合は(ステップS306肯定)、機能解析部222は、機能解析ルール213から選択した行のページ機能の値をツリー構造データ212から選択した行に設定し(ステップS307)、ツリー構造データ212の次の行を選択して(ステップS309)、ステップS302から処理手順を再開する。
If the URL matches the URL pattern (Yes at Step S306), the function analysis unit 222 sets the page function value of the row selected from the function analysis rule 213 to the row selected from the tree structure data 212 (Step S306). In step S307, the next row of the
一方、URLとURLパターンがマッチしなかった場合は(ステップS306否定)、機能解析部222は、機能解析ルール213から次の行を選択し(ステップS308)、ステップS304から処理手順を再開する。ここで、機能解析ルール213に選択すべき行がなかった場合は(ステップS304否定)、機能解析部222は、ツリー構造データ212の次の行を選択して(ステップS309)、ステップS302から処理手順を再開する。 On the other hand, if the URL does not match the URL pattern (No at Step S306), the function analysis unit 222 selects the next line from the function analysis rule 213 (Step S308), and restarts the processing procedure from Step S304. If there is no line to be selected in the function analysis rule 213 (No at Step S304), the function analysis unit 222 selects the next line of the tree structure data 212 (Step S309), and the processing from Step S302 is performed. Resume procedure.
以上の処理手順を、ツリー構造データ212の全ての行を選択するまで繰り返して実行し、選択すべき行がなくなれば(ステップS302否定)、機能解析部222は、処理手順を終了する。
The above processing procedure is repeatedly executed until all the rows of the
続いて、図19〜図21を参照しながら、部分木抽出部223aが実行する処理の具体例について説明する。 Next, a specific example of processing executed by the partial tree extraction unit 223a will be described with reference to FIGS.
図19は、部分木抽出ルール214の一例を示す図である。図19の例に示すように、部分木抽出ルール214は、根ノード選択条件、子孫ノード選択条件、パターン書式といった項目を有する。根ノード選択条件は、部分木の根ノードを選択するための条件である。子孫ノード選択条件は、根ノードの子孫ノードを選択するための条件である。パターン書式は、選択された部分木の出力形式の書式である。部分木抽出ルール214は、行動推定ルール215に含まれる部分木とマッチする可能性のある部分木が漏れなく、かつ、できるだけ少ないノード数でツリー構造データ212から抽出されるように予め設定される。
FIG. 19 is a diagram illustrating an example of the
部分木抽出部223aは、根ノード選択条件と子孫ノード選択条件を満たす全ての部分木をツリー構造データ212から抽出し、パターン書式に従って部分木抽出データとして出力する。図19の例に示すように、根ノード選択条件が「2以上の子をもつ」であり、子孫ノード選択条件が「根ノードからの深さが1以下」であり、パターン書式が「根ノードのページ機能−(子ノードのページ機能のリスト)、ただし、子ノードのページ機能の重複は除去する」である場合、部分木抽出部223aは、図17に示すツリー構造データ212から、図20に示すような部分木抽出データを抽出する。
The subtree extraction unit 223a extracts all subtrees satisfying the root node selection condition and the descendant node selection conditions from the
図20の例に示すように、部分木抽出データは、利用者ID、ノードID、履歴番号リスト、部分木パターン式といった項目を有し、抽出された部分木ごとに行が追加される。利用者IDは、利用者を識別するための識別子である。ノードIDは、抽出された部分木の根ノードを識別するための識別子である。履歴番号リストは、抽出された部分木の各ノードに対応する参照履歴データ211の行の識別子のリストである。部分木パターン式は、パターン書式に従って出力された部分木である。
As shown in the example of FIG. 20, the partial tree extraction data includes items such as a user ID, a node ID, a history number list, and a partial tree pattern expression, and a row is added for each extracted partial tree. The user ID is an identifier for identifying the user. The node ID is an identifier for identifying the root node of the extracted subtree. The history number list is a list of identifiers of rows of the
図21は、部分木抽出部223aの部分木抽出処理の処理手順を示すフローチャートである。図21に示すように、部分木抽出部223aは、まず、処理対象となるツリー構造データ212の行を示す変数であるaを最初の行を表す値(例えば、「1」)に初期化する(ステップS401)。続いて、部分木抽出部223aは、変数aに対応するツリー構造データ212の行を選択する(ステップS402)。
FIG. 21 is a flowchart illustrating the processing procedure of the partial tree extraction process of the partial tree extraction unit 223a. As shown in FIG. 21, the subtree extraction unit 223a first initializes a, which is a variable indicating a row of the
そして、変数aに対応するツリー構造データ212の行を選択できた場合は(ステップS403肯定)、部分木抽出部223aは、選択した行が示すノードが根ノード選択条件を満たすかを検証する(ステップS404)。ここで、根ノード選択条件を満たさない場合は(ステップS405否定)、部分木抽出部223aは、変数aに1を加算して(ステップS414)、ステップS402から処理手順を再開する。
If the row of the
一方、根ノード選択条件を満たす場合は(ステップS405肯定)、部分木抽出部223aは、子ノードの行番号のリストであるLを空にする(ステップS406)。続いて、部分木抽出部223aは、変数aに対応するツリー構造データ212の行のノードIDが親ノードIDとして設定されている行の1つをツリー構造データ212から選択する(ステップS407)。
On the other hand, when the root node selection condition is satisfied (Yes at Step S405), the subtree extraction unit 223a empties L, which is a list of row numbers of child nodes (Step S406). Subsequently, the partial tree extraction unit 223a selects one of the rows in which the node ID of the row of the
そして、行を選択できた場合(ステップS408肯定)、部分木抽出部223aは、選択した行が示すノード(もしくは、選択した行が示すノードとその子孫ノード)が子孫ノード選択条件を満たすかを検証する(ステップS409)。ここで、選択した行が示すノード(もしくは、選択した行が示すノードとその子孫ノード)が子孫ノード選択条件を満たす場合は(ステップS410肯定)、部分木抽出部223aは、選択した行の行番号をリストLに追加し(ステップS411)、ステップS412へ遷移する。一方、選択した行が示すノード(もしくは、選択した行が示すノードとその子孫ノード)が子孫ノード選択条件を満たさない場合は(ステップS410否定)、部分木抽出部223aは、選択した行の行番号をリストLに追加することなく、ステップS412へ遷移する。 If a row can be selected (Yes at step S408), the subtree extraction unit 223a determines whether the node indicated by the selected row (or the node indicated by the selected row and its descendant node) satisfies the descendant node selection condition. Verification is performed (step S409). If the node indicated by the selected row (or the node indicated by the selected row and its descendant node) satisfies the descendant node selection condition (Yes at step S410), the subtree extraction unit 223a selects the row of the selected row. The number is added to the list L (step S411), and the process proceeds to step S412. On the other hand, when the node indicated by the selected row (or the node indicated by the selected row and its descendant node) does not satisfy the descendant node selection condition (No at step S410), the subtree extracting unit 223a selects the row of the selected row. Without adding the number to the list L, the process proceeds to step S412.
ステップS412においては、部分木抽出部223aは、変数aに対応するツリー構造データ212の行のノードIDが親ノードIDとして設定されている他の行をツリー構造データ212から選択し(ステップS412)、ステップS408から処理手順を再開する。
In step S412, the subtree extraction unit 223a selects from the
そして、変数aに対応するツリー構造データ212の行のノードIDが親ノードIDとして設定されている全ての行をツリー構造データ212から選択し終えた場合は(ステップS408否定)、部分木抽出部223aは、変数aに対応するツリー構造データ212の行のページ機能と、リストLの各要素に対応するツリー構造データ212の行のページ機能を、パターン書式に基づいた書式で部分木抽出データに出力する(ステップS413)。続いて、部分木抽出部223aは、変数aに1を加算して(ステップS414)、ステップS402から処理手順を再開する。
When all the rows in which the node ID of the row of the
以上の処理手順を、ツリー構造データ212の全ての行を選択するまで繰り返して実行し、選択すべき行がなくなれば(ステップS403否定)、部分木抽出部223aは、処理手順を終了する。
The above processing procedure is repeatedly executed until all the rows of the
続いて、図22〜図24を参照しながら、部分木照合部223bが実行する処理の具体例について説明する。なお、ここでは、参照表に基づいて一致するユーザ行動を出力する手法の例を示すが、機械学習等の予測手法を用いて一致するユーザ行動を出力することもできる。 Next, a specific example of processing executed by the subtree matching unit 223b will be described with reference to FIGS. Although an example of a method for outputting matching user behavior based on a reference table is shown here, matching user behavior can also be output using a prediction method such as machine learning.
図22は、行動推定ルール215の一例を示す図である。図22の例に示すように、行動推定ルール215には複数の種類のユーザ行動ごと、かつ、部分木パターン式ごとに点数が設定されている。部分木照合部223bは、部分木抽出部223aによって抽出された各部分木と一致する部分木パターン式が設定されている行を行動推定ルール215から選択し、その行において最も高い得点が設定されている種類のユーザ行動を、部分木抽出部223aによって抽出された部分木が示す行動の推定結果として出力する。なお、部分木抽出部223aによって抽出された各部分木と部分木パターン式の一致は、必ずしも完全一致である必要はなく、部分一致であってもよい。
FIG. 22 is a diagram illustrating an example of the
例えば、図20に示した部分木抽出データの1行目の「サイトマップ−(ランキング、検索結果、レビュー)」という部分木パターン式によって表される部分木は、図22に示した行動推定ルール215の2行目の部分木パターン式と一致し、行動推定ルール215の2行目では、「どの店舗で買うか検討している」というユーザ行動の点数が最も高いため、部分木照合部223bは、部分木抽出データの1行目の部分木が示す行動の推定結果として「どの店舗で買うか検討している」を出力する。
For example, the subtree represented by the subtree pattern expression “site map— (ranking, search result, review)” in the first line of the subtree extraction data shown in FIG. 20 is the behavior estimation rule shown in FIG. In the second line of the
また、図20に示した部分木抽出データの2行目の「検索結果−(商品詳細)」という部分木パターン式によって表される部分木は、図22に示した行動推定ルール215の1行目の部分木パターン式と一致し、行動推定ルール215の1行目では、「どの商品を買うか選んでいる」というユーザ行動の点数が最も高いため、部分木照合部223bは、部分木抽出データの2行目の部分木が示す行動の推定結果として「どの商品を買うか選んでいる」を出力する。
Further, the subtree represented by the subtree pattern expression “search result— (product details)” in the second row of the subtree extraction data shown in FIG. 20 is one row of the
図23は、部分木照合部223bの部分木照合処理の処理手順を示すフローチャートである。図23に示すように、部分木照合部223bは、まず、処理対象となる部分木抽出データの行を示す変数であるaを最初の行を表す値(例えば、「1」)に初期化する(ステップS501)。続いて、部分木照合部223bは、変数aに対応する部分木抽出データの行を選択する(ステップS502)。 FIG. 23 is a flowchart showing a processing procedure of the subtree matching process of the subtree matching unit 223b. As shown in FIG. 23, the subtree matching unit 223b first initializes a, which is a variable indicating the row of the subtree extraction data to be processed, to a value (for example, “1”) representing the first row. (Step S501). Subsequently, the subtree matching unit 223b selects a row of the subtree extraction data corresponding to the variable a (Step S502).
そして、変数aに対応する部分木抽出データの行を選択できた場合は(ステップS503肯定)、部分木照合部223bは、行動推定ルール215から、部分木パターン式が一致する行を選択する(ステップS504)。ここで、該当する行があれば(ステップS505肯定)、部分木照合部223bは、その行において最も数値の大きいユーザ行動を推定結果として出力し(ステップS506)、変数aに1を加算して(ステップS507)、ステップS502から処理手順を再開する。 If the row of the subtree extraction data corresponding to the variable a can be selected (Yes at Step S503), the subtree matching unit 223b selects a row that matches the subtree pattern formula from the behavior estimation rule 215 ( Step S504). If there is a corresponding row (Yes at Step S505), the subtree matching unit 223b outputs the user action having the largest numerical value as the estimation result (Step S506), and adds 1 to the variable a. (Step S507), the processing procedure is restarted from Step S502.
一方、該当する行がない場合は(ステップS505否定)、部分木照合部223bは、何も出力せずに、変数aに1を加算して(ステップS507)、ステップS502から処理手順を再開する。なお、この場合、何も出力しないのではなく、「該当なし」のように、推定される行動が見つからない旨を出力することとしてもよい。あるいは、行動推定ルール215の各ユーザ行動の数値を列毎(ユーザ行動毎)に集計した値が最も大きいユーザ行動を推定結果として出力することとしてもよい。
On the other hand, when there is no corresponding row (No at Step S505), the subtree matching unit 223b adds 1 to the variable a without outputting anything (Step S507), and restarts the processing procedure from Step S502. . In this case, nothing may be output, and it may be output that the estimated action is not found, such as “not applicable”. Or it is good also as outputting a user action with the largest value which totaled the numerical value of each user action of
以上の処理手順を、部分木抽出データの全ての行を選択するまで繰り返して実行し、選択すべき行がなくなれば(ステップS503否定)、部分木照合部223bは、処理手順を終了する。 The above processing procedure is repeatedly executed until all the rows of the subtree extraction data are selected. When there are no more rows to be selected (No in step S503), the subtree matching unit 223b ends the processing procedure.
なお、部分木抽出部223aによって抽出された部分木ごとに推定結果を出力するのではなく、1つの推定結果だけを出力することとしてもよい。図24は、1つの推定結果だけを出力する場合の処理手順を示すフローチャートである。図24に示すように、部分木照合部223bは、まず、処理対象となる部分木抽出データの行を示す変数であるaを最初の行を表す値(例えば、「1」)に初期化する(ステップS601)。 In addition, it is good also as outputting only one estimation result instead of outputting an estimation result for every partial tree extracted by the partial tree extraction part 223a. FIG. 24 is a flowchart illustrating a processing procedure when only one estimation result is output. As shown in FIG. 24, the subtree matching unit 223b first initializes a, which is a variable indicating the row of the subtree extraction data to be processed, to a value (for example, “1”) representing the first row. (Step S601).
続いて、部分木照合部223bは、行動推定ルール215の各ユーザ行動に対応する変数を0に初期化する(ステップS602)。そして、部分木照合部223bは、変数aに対応する部分木抽出データの行を選択する(ステップS603)。
Subsequently, the subtree matching unit 223b initializes a variable corresponding to each user behavior of the
そして、変数aに対応する部分木抽出データの行を選択できた場合は(ステップS604肯定)、部分木照合部223bは、行動推定ルール215から、部分木パターン式が一致する行を選択する(ステップS605)。ここで、該当する行があれば(ステップS606肯定)、部分木照合部223bは、その行における各ユーザ行動の数値を対応する変数に加算し(ステップS607)、変数aに1を加算して(ステップS608)、ステップS603から処理手順を再開する。 If the row of the subtree extraction data corresponding to the variable a can be selected (Yes at step S604), the subtree matching unit 223b selects a row that matches the subtree pattern expression from the behavior estimation rule 215 ( Step S605). If there is a corresponding row (Yes at Step S606), the subtree matching unit 223b adds the numerical value of each user action in the row to the corresponding variable (Step S607), and adds 1 to the variable a. (Step S608), the processing procedure is restarted from Step S603.
一方、該当する行がない場合は(ステップS606否定)、部分木照合部223bは、変数に何も加算せずに、変数aに1を加算して(ステップS608)、ステップS603から処理手順を再開する。 On the other hand, if there is no corresponding row (No at Step S606), the subtree matching unit 223b adds 1 to the variable a without adding anything to the variable (Step S608), and the processing procedure starts from Step S603. Resume.
以上の処理手順を、部分木抽出データの全ての行を選択するまで繰り返して実行し、選択すべき行がなくなれば(ステップS604否定)、部分木照合部223bは、部分木照合部223bは、最も数値の大きい変数に対応するユーザ行動を推定結果として出力し(ステップS609)、処理手順を終了する。この方式では、例えば、部分木抽出データが図20に示した通りであり、行動推定ルール215が図22に示した通りの場合、「どの商品を買うか選んでいる」というユーザ行動に対応する変数の値は、1+10=11となり、「どの店舗で買うか検討している」というユーザ行動に対応する変数の値は、3+00=3となり、「欲しいものがあるかを探している」というユーザ行動に対応する変数の値は、0+2=2となり、最も値の大きい変数に対応するユーザ行動である「どの商品を買うか選んでいる」が推定結果として出力される。
The above processing procedure is repeatedly executed until all rows of the subtree extraction data are selected, and if there are no more rows to be selected (No in step S604), the subtree matching unit 223b The user action corresponding to the variable with the largest numerical value is output as an estimation result (step S609), and the processing procedure is terminated. In this method, for example, when the partial tree extraction data is as shown in FIG. 20 and the
ここで、行動推定ルール215の設定の仕方の例について説明する。ここに示す例では、図25に示すように、参照履歴データの各行について利用者本人もしくは有識者からどのような行動をしていたのかを聴取した結果をユーザ行動として付加したユーザ回答データを予め用意しておくとともに、行動推定ルール215の各数値を0に初期化しておくことを前提としている。
Here, an example of how to set the
図26に示すように、行動推定ルール入力装置3は、既に説明した方法によってユーザ回答データから部分木抽出データを生成する(ステップS701)。そして、行動推定ルール入力装置3は、ユーザ回答データの先頭の行を選択する(ステップS702)。
As shown in FIG. 26, the behavior estimation
行を選択できた場合(ステップS703肯定)、行動推定ルール入力装置3は、部分木抽出データから履歴番号リストに同一の履歴番号を含む行を全て選択する(ステップS704)。そして、行動推定ルール215から部分木パターン式が、部分木抽出データから選択した行のものと一致するものを選択し(ステップS705)、選択した各行のユーザ行動の数値のうち、選択しているユーザ回答データのユーザ行動に対応するものの値を1だけ増加させる(ステップS706)。
When a row can be selected (Yes at Step S703), the behavior estimation
そして、行動推定ルール入力装置3は、ユーザ回答データの次の行を選択し(ステップS707)、ステップS703から処理手順を再開する。こうして、ユーザ回答データの全ての行を選択し終えて、選択すべき行がもうなくなったならば(ステップS703否定)、行動推定ルール入力装置3は、処理手順を終了させる。
Then, the behavior estimation
なお、図27に示すように、3階層以上の部分木を抽出するように部分木抽出ルール214を設定することもできる。部分木抽出ルール214を図27のように設定した場合、部分木照合部223bは、図28に示すような推定結果を出力する。
As shown in FIG. 27, the
ところで、上述してきた各実施例における行動推定装置の構成は、発明の要旨を逸脱しない範囲で変更することができ、また、発明の要旨を逸脱しない範囲で組み合わせて実現することができる。 By the way, the structure of the action estimation apparatus in each Example mentioned above can be changed in the range which does not deviate from the summary of invention, and can be implement | achieved combining in the range which does not deviate from the summary of invention.
例えば、図29に示すように、ツリー構造データ212の各行について2以上のページ機能を特定できるように機能解析部222を構成することができる。この場合、部分木抽出ルール214と推定結果の組合せは、図30および図31に示すように全てのページ機能が列挙されるようにしてもよいし、図32および図33に示すように、特定された2以上のページ機能がそれぞれ異なる部分木パターン式として出力されるようにしてもよい。
For example, as shown in FIG. 29, the function analysis unit 222 can be configured so that two or more page functions can be specified for each row of the
また、実施例2では、ツリー構造データ212に含まれるノードの機能を機能解析部222が特定した後に、部分木抽出部223aがツリー構造データ212から特定の構造の部分木を抽出することとなっているが、部分木抽出部223aがツリー構造データ212から特定の構造の部分木を抽出し、その後に、機能解析部222がノードの機能を特定することとしてもよい。この場合、例えば、部分木抽出部223aが、URLをパターン書式に従って書式化した部分木パターン式を抽出し、機能解析部222が、部分木パターン式中のURLをページ機能に置き換え、置き換え後に重複する部分木パターン式があれば1つを残して削除する。
In the second embodiment, after the function analysis unit 222 identifies the function of the node included in the
また、行動推定装置10の制御部120や行動推定装置20の制御部220の機能をソフトウェアとして実装し、これをコンピュータで実行することにより、行動推定装置10や行動推定装置20と同等の機能を実現することもできる。以下に、制御部120の機能をソフトウェアとして実装した行動推定プログラム1071を実行するコンピュータの一例を示す。
In addition, the functions of the
図34は、行動推定プログラム1071を実行するコンピュータ1000を示す機能ブロック図である。このコンピュータ1000は、各種演算処理を実行するCPU(Central Processing Unit)1010と、ユーザからのデータの入力を受け付ける入力装置1020と、各種情報を表示するモニタ1030と、記録媒体からプログラム等を読み取る媒体読取り装置1040と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置1050と、各種情報を一時記憶するRAM(Random Access Memory)1060と、ハードディスク装置1070とをバスで接続して構成される。
FIG. 34 is a functional block diagram showing a
そして、ハードディスク装置1070には、図1に示した制御部120と同様の機能を有する行動推定プログラム1071と、図1に示した記憶部110に記憶される各種データに対応する行動推定用データ1072とが記憶される。なお、行動推定用データ1072を、適宜分散させ、ネットワークを介して接続された他のコンピュータに記憶させておくこともできる。
The
そして、CPU1010が行動推定プログラム1071をハードディスク装置1070から読み出してRAM1060に展開することにより、行動推定プログラム1071は、行動推定プロセス1061として機能するようになる。そして、行動推定プロセス1061は、行動推定用データ1072から読み出した情報等を適宜RAM1060上の自身に割り当てられた領域に展開し、この展開したデータ等に基づいて各種データ処理を実行する。
Then, the
なお、上記の行動推定プログラム1071は、必ずしもハードディスク装置1070に格納されている必要はなく、CD−ROM等の記憶媒体に記憶されたこのプログラムを、コンピュータ1000が読み出して実行するようにしてもよい。また、公衆回線、インターネット、LAN(Local Area Network)、WAN(Wide Area Network)等を介してコンピュータ1000に接続される他のコンピュータ(またはサーバ)等にこのプログラムを記憶させておき、コンピュータ1000がこれらからプログラムを読み出して実行するようにしてもよい。
Note that the
本願発明は、例えば、ユーザ行動が「何か欲しいものがないか探している」のときは、ユーザの嗜好プロファイルに合った商品を提示し、ユーザ行動が「どの商品を買うか選んでいる」のときは、ユーザが現在閲覧している商品と類似した商品を提示するというように、各種のサイトナビゲーションに利用することができる。本願発明を例えばオンラインショッピングサイトでのサイトナビゲーションに利用することにより、単にユーザの嗜好に基づく推薦や、類似商品の提示を行う方式よりも、購買確率を高めることができる。 In the present invention, for example, when the user behavior is “looking for something to want”, a product that matches the user's preference profile is presented, and the user behavior is “selecting which product to buy”. In this case, it can be used for various site navigations such as presenting a product similar to the product that the user is currently browsing. By using the present invention for site navigation at an online shopping site, for example, the purchase probability can be increased as compared with a system that simply recommends based on user preferences or presents similar products.
1 機能解析ルール入力装置
2 部分木抽出ルール入力装置
3 行動推定ルール入力装置
10 行動推定装置
110 記憶部
111 参照履歴データ
112 ツリー構造データ
113 機能解析ルール
114 行動推定ルール
120 制御部
121 ツリー構造生成部
122 機能解析部
123 行動推定部
20 行動推定装置
210 記憶部
211 参照履歴データ
212 ツリー構造データ
213 機能解析ルール
214 部分木抽出ルール
215 行動推定ルール
220 制御部
221 ツリー構造生成部
222 機能解析部
223 行動推定部
223a 部分木抽出部
223b 部分木照合部
1000 コンピュータ
1010 CPU
1020 入力装置
1030 モニタ
1040 媒体読取り装置
1050 ネットワークインターフェース装置
1060 RAM
1061 行動推定プロセス
1070 ハードディスク装置
1071 行動推定プログラム
1072 行動推定用データ
DESCRIPTION OF
1020
1061
Claims (5)
前記参照履歴データに基づいて、前記利用者によって参照された各WEBページをノードとするツリー構造データであって、第1のWEBページの次に参照された第2のWEBページに対応する第2のノードが、前記第1のWEBページに対応する第1のノードの子ノードとなるように各ノードが関連付けられたツリー構造データを生成するツリー構造生成手段と、
前記ツリー構造生成手段によって生成されたツリー構造データに含まれる各ノードに対応するWEBページの機能を解析する機能解析手段と、
前記ツリー構造生成手段によって生成されたツリー構造データに含まれる各ノードが関連付けされている状況と、前記機能解析手段による各ノードに対応するWEBページの機能の解析結果とに基づいて、前記利用者の行動を推定する行動推定手段と
を備えることを特徴とする行動推定装置。 Storage means for storing reference history data indicating an order in which a user refers to a plurality of WEB pages;
Based on the reference history data, tree-structured data having each WEB page referred to by the user as a node, and corresponding to a second WEB page referenced next to the first WEB page Tree structure generation means for generating tree structure data in which each node is associated with each other so that the node becomes a child node of the first node corresponding to the first WEB page;
Function analysis means for analyzing the function of the WEB page corresponding to each node included in the tree structure data generated by the tree structure generation means;
Based on the situation in which each node included in the tree structure data generated by the tree structure generation unit is associated and the analysis result of the function of the WEB page corresponding to each node by the function analysis unit, the user A behavior estimation device comprising: behavior estimation means for estimating the behavior of the behavior.
前記参照履歴データに基づいて、前記利用者によって参照された各WEBページをノードとするツリー構造データであって、第1のWEBページの次に参照された第2のWEBページに対応する第2のノードが、前記第1のWEBページに対応する第1のノードの子ノードとなるように各ノードが関連付けられたツリー構造データを生成するツリー構造生成工程と、
前記ツリー構造生成工程において生成されたツリー構造データに含まれる各ノードに対応するWEBページの機能を解析する機能解析工程と、
前記ツリー構造生成工程において生成されたツリー構造データに含まれる各ノードが関連付けされている状況と、前記機能解析工程による各ノードに対応するWEBページの機能の解析結果とに基づいて、前記利用者の行動を推定する行動推定工程と
を含むことを特徴とする行動推定方法。 A storage step of storing reference history data indicating an order in which a user refers to a plurality of WEB pages;
Based on the reference history data, tree-structured data having each WEB page referred to by the user as a node, and corresponding to a second WEB page referenced next to the first WEB page A tree structure generation step of generating tree structure data in which each node is associated with each other so that the node becomes a child node of the first node corresponding to the first WEB page;
A function analysis step of analyzing the function of the WEB page corresponding to each node included in the tree structure data generated in the tree structure generation step;
Based on the situation in which each node included in the tree structure data generated in the tree structure generation step is associated, and the analysis result of the function of the WEB page corresponding to each node in the function analysis step, the user An action estimation method comprising: an action estimation step for estimating an action of
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009253216A JP2011100208A (en) | 2009-11-04 | 2009-11-04 | Action estimation device, action estimation method, and action estimation program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009253216A JP2011100208A (en) | 2009-11-04 | 2009-11-04 | Action estimation device, action estimation method, and action estimation program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011100208A true JP2011100208A (en) | 2011-05-19 |
Family
ID=44191347
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009253216A Pending JP2011100208A (en) | 2009-11-04 | 2009-11-04 | Action estimation device, action estimation method, and action estimation program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011100208A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014160345A (en) * | 2013-02-19 | 2014-09-04 | Nippon Telegr & Teleph Corp <Ntt> | Browsing action predicting device, browsing action learning device, browsing action predicting method, and browsing action learning method and program |
JP2016522481A (en) * | 2013-04-19 | 2016-07-28 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | Client-side page processing |
JP2020087480A (en) * | 2020-01-08 | 2020-06-04 | ヤフー株式会社 | Information processing apparatus, information processing method, and information processing program |
JP7026984B1 (en) | 2021-10-11 | 2022-03-01 | Mil株式会社 | Viewing analyzer |
JP7046332B1 (en) | 2021-06-28 | 2022-04-04 | カラクリ株式会社 | Programs, methods, and systems |
-
2009
- 2009-11-04 JP JP2009253216A patent/JP2011100208A/en active Pending
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014160345A (en) * | 2013-02-19 | 2014-09-04 | Nippon Telegr & Teleph Corp <Ntt> | Browsing action predicting device, browsing action learning device, browsing action predicting method, and browsing action learning method and program |
JP2016522481A (en) * | 2013-04-19 | 2016-07-28 | アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited | Client-side page processing |
US9697183B2 (en) | 2013-04-19 | 2017-07-04 | Alibaba Group Holding Limited | Client side page processing |
JP2020087480A (en) * | 2020-01-08 | 2020-06-04 | ヤフー株式会社 | Information processing apparatus, information processing method, and information processing program |
JP7046332B1 (en) | 2021-06-28 | 2022-04-04 | カラクリ株式会社 | Programs, methods, and systems |
JP2023004580A (en) * | 2021-06-28 | 2023-01-17 | カラクリ株式会社 | Program, method and system |
JP7026984B1 (en) | 2021-10-11 | 2022-03-01 | Mil株式会社 | Viewing analyzer |
JP2023057234A (en) * | 2021-10-11 | 2023-04-21 | Mil株式会社 | Viewing analysis device |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9792388B2 (en) | Pattern extraction apparatus and control method therefor | |
US20140229476A1 (en) | System for Information Discovery & Organization | |
JP5472110B2 (en) | Relationship discovery device, relationship discovery method, and relationship discovery program | |
WO2014000576A1 (en) | Network searching method and network searching system | |
JP6053131B2 (en) | Information processing apparatus, information processing method, and program | |
KR20080031262A (en) | Relationship network | |
JP2011100208A (en) | Action estimation device, action estimation method, and action estimation program | |
JP5579140B2 (en) | Document search apparatus, method, and program | |
JP5224532B2 (en) | Reputation information classification device and program | |
CN113918807A (en) | Data recommendation method and device, computing equipment and computer-readable storage medium | |
CN106294784B (en) | resource searching method and device | |
JP5292247B2 (en) | Content tag collection method, content tag collection program, content tag collection system, and content search system | |
JP2019128925A (en) | Event presentation system and event presentation device | |
JP5127553B2 (en) | Information processing apparatus, information processing method, program, and recording medium | |
CN116842160A (en) | A patent search formula generation method, system, equipment and medium | |
JP5368900B2 (en) | Information presenting apparatus, information presenting method, and program | |
JPWO2011016281A1 (en) | Information processing apparatus and program for Bayesian network structure learning | |
JP6339736B2 (en) | Manga search method and apparatus | |
JP5589009B2 (en) | RECOMMENDED QUERY EXTRACTION DEVICE, METHOD, AND PROGRAM | |
JP5822009B2 (en) | Search system, search system control method, and program thereof | |
JP5417359B2 (en) | Document evaluation support system and document evaluation support method | |
JP4484957B1 (en) | Retrieval expression generation device, retrieval expression generation method, and program | |
JP4544047B2 (en) | Web image search result classification presentation method and apparatus, program, and storage medium storing program | |
JP7081155B2 (en) | Selection program, selection method, and selection device | |
JP2009146013A (en) | Content retrieval method, its device, and program |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20110520 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20110520 |