[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP2022153632A - Information processing device, information processing method, and information processing program - Google Patents

Information processing device, information processing method, and information processing program Download PDF

Info

Publication number
JP2022153632A
JP2022153632A JP2022124204A JP2022124204A JP2022153632A JP 2022153632 A JP2022153632 A JP 2022153632A JP 2022124204 A JP2022124204 A JP 2022124204A JP 2022124204 A JP2022124204 A JP 2022124204A JP 2022153632 A JP2022153632 A JP 2022153632A
Authority
JP
Japan
Prior art keywords
content
information
information processing
processing apparatus
node
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2022124204A
Other languages
Japanese (ja)
Other versions
JP7414906B2 (en
Inventor
博基 谷口
Hiroki Taniguchi
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2022124204A priority Critical patent/JP7414906B2/en
Publication of JP2022153632A publication Critical patent/JP2022153632A/en
Application granted granted Critical
Publication of JP7414906B2 publication Critical patent/JP7414906B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PROBLEM TO BE SOLVED: To appropriately extract similar content.
SOLUTION: An information processing device has an acquisition unit and a retrieval unit. The acquisition unit acquires graph information in which a plurality of nodes corresponding to each of a plurality of contents, which is an application performed in a predetermined device, are connected in accordance with similarity of the plurality of contents, and content information about one content. The retrieval unit extracts similar contents which are the contents similar to one content, of the plurality of contents, by retrieving the graph information acquired by the acquisition unit.
SELECTED DRAWING: Figure 3
COPYRIGHT: (C)2023,JPO&INPIT

Description

本発明は、情報処理装置、情報処理方法、及び情報処理プログラムに関する。 The present invention relates to an information processing device, an information processing method, and an information processing program.

従来、種々の情報を抽出する技術が提供されている。例えば、他のカテゴリーに属する概念間の相対的な関係を考慮した上で、概念間の類似性を推定する技術が提供されている。 Conventionally, techniques for extracting various information have been provided. For example, techniques are provided for estimating similarities between concepts in consideration of relative relationships between concepts belonging to other categories.

特開2007-213151号公報Japanese Patent Application Laid-Open No. 2007-213151

岩崎雅二郎 "木構造型インデックスを利用した近似k最近傍グラフによる近傍検索", 情報処理学会論文誌, 2011/2, Vol. 52, No. 2. pp.817-828.Masajiro Iwasaki, "Neighborhood Retrieval Using Approximate k-Nearest Neighbor Graph Using Tree Structured Index", Transactions of Information Processing Society of Japan, 2011/2, Vol. 52, No. 2. pp.817-828.

しかしながら、上記の従来技術では、類似のコンテンツを適切に抽出することが難しい場合がある。例えば、他のカテゴリーに属する概念間の類似性を推定するだけでは、所望の情報を抽出することが難しい。例えば、同じカテゴリーに属する情報の類似性を推定することができるとは限らず、このような場合、所望の情報を抽出することが難しい。 However, with the above-described conventional technology, it may be difficult to appropriately extract similar content. For example, it is difficult to extract desired information only by estimating similarities between concepts belonging to other categories. For example, it is not always possible to estimate the similarity of information belonging to the same category, and in such cases, it is difficult to extract desired information.

本願は、上記に鑑みてなされたものであって、類似のコンテンツを適切に抽出する情報処理装置、情報処理方法、及び情報処理プログラムを提供することを目的とする。 The present application has been made in view of the above, and an object thereof is to provide an information processing apparatus, an information processing method, and an information processing program for appropriately extracting similar content.

本願に係る情報処理装置は、所定のデバイスにおいて実行されるアプリケーションである複数のコンテンツの各々に対応する複数のノードが、前記複数のコンテンツの類似性に応じて連結されたグラフ情報と、一のコンテンツに関するコンテンツ情報を取得する取得部と、前記取得部により取得された前記グラフ情報を検索することにより、前記複数のコンテンツのうち、前記一のコンテンツと類似するコンテンツである類似コンテンツを抽出する検索部と、を備えたことを特徴とする。 An information processing apparatus according to the present application provides graph information in which a plurality of nodes corresponding to each of a plurality of contents, which are applications executed on a predetermined device, are connected according to the similarity of the plurality of contents; an acquisition unit for acquiring content information about content; and a search for extracting similar content, which is content similar to the one content from among the plurality of contents, by searching the graph information acquired by the acquisition unit. and a part.

実施形態の一態様によれば、類似のコンテンツを適切に抽出することができるという効果を奏する。 According to one aspect of the embodiment, it is possible to appropriately extract similar content.

図1は、実施形態に係る情報処理の一例を示す図である。FIG. 1 is a diagram illustrating an example of information processing according to an embodiment. 図2は、実施形態に係る情報処理システムの構成例を示す図である。FIG. 2 is a diagram illustrating a configuration example of an information processing system according to the embodiment; 図3は、実施形態に係る情報処理装置の構成例を示す図である。FIG. 3 is a diagram illustrating a configuration example of an information processing apparatus according to the embodiment; 図4は、実施形態に係るコンテンツ情報記憶部の一例を示す図である。4 is a diagram illustrating an example of a content information storage unit according to the embodiment; FIG. 図5は、実施形態に係るインデックス情報記憶部の一例を示す図である。FIG. 5 is a diagram illustrating an example of an index information storage unit according to the embodiment; 図6は、実施形態に係るグラフ情報記憶部の一例を示す図である。6 is a diagram illustrating an example of a graph information storage unit according to the embodiment; FIG. 図7は、実施形態に係るモデル情報記憶部の一例を示す図である。7 is a diagram illustrating an example of a model information storage unit according to the embodiment; FIG. 図8は、実施形態に係る情報処理の一例を示すフローチャートである。FIG. 8 is a flowchart illustrating an example of information processing according to the embodiment. 図9は、実施形態に係る生成処理の一例を示すフローチャートである。FIG. 9 is a flowchart illustrating an example of generation processing according to the embodiment. 図10は、実施形態に係る特徴量の抽出の一例を示す図である。FIG. 10 is a diagram illustrating an example of feature amount extraction according to the embodiment. 図11は、グラフ情報を用いた検索処理の一例を示すフローチャートである。FIG. 11 is a flowchart illustrating an example of search processing using graph information. 図12は、コンテンツの流行判定の一例を示す図である。FIG. 12 is a diagram illustrating an example of content popularity determination. 図13は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。FIG. 13 is a hardware configuration diagram showing an example of a computer that implements the functions of the information processing apparatus.

以下に、本願に係る情報処理装置、情報処理方法、及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法、及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。 Hereinafter, modes for implementing an information processing apparatus, an information processing method, and an information processing program (hereinafter referred to as "embodiments") according to the present application will be described in detail with reference to the drawings. The information processing apparatus, information processing method, and information processing program according to the present application are not limited to this embodiment. Also, in each of the following embodiments, the same parts are denoted by the same reference numerals, and overlapping descriptions are omitted.

(実施形態)
〔1.情報処理〕
図1を用いて、実施形態に係る情報処理の一例について説明する。図1は、実施形態に係る情報処理の一例を示す図である。図1では、情報処理装置100がコンテンツの一例として、端末装置10(図2参照)等の所定のデバイスにおいて実行されるアプリケーション(以下、単に「アプリ」ともいう)であるコンテンツをグラフ構造化したグラフデータ(グラフ情報)を検索することにより、一のコンテンツに類似するコンテンツ(以下、「類似コンテンツ」ともいう)を抽出する場合を示す。なお、所定のデバイスは、スマートフォンやPC(Personal Computer)等の種々のコンピュータであってもよい。また、コンテンツは、アプリに限らず、映画等の動画コンテンツや楽曲等の音楽コンテンツや記事コンテンツ等の種々のものであってもよい。図1では、情報処理装置100は、各コンテンツに対応するベクトルデータ(「ベクトル情報」や、単に「ベクトル」ともいう)を用いてコンテンツをグラフ構造化したグラフ情報を用いる場合を一例として説明する。
(embodiment)
[1. information processing]
An example of information processing according to the embodiment will be described with reference to FIG. FIG. 1 is a diagram illustrating an example of information processing according to an embodiment. In FIG. 1, an information processing apparatus 100 graph-structures content, which is an application (hereinafter simply referred to as an "application") executed in a predetermined device such as a terminal device 10 (see FIG. 2), as an example of content. A case of extracting content similar to one content (hereinafter also referred to as “similar content”) by searching graph data (graph information) is shown. Note that the predetermined device may be various computers such as a smart phone or a PC (Personal Computer). In addition, the content is not limited to an application, and may be various types of content such as video content such as movies, music content such as songs, and article content. In FIG. 1, the information processing apparatus 100 uses vector data (also referred to as “vector information” or simply “vector”) corresponding to each content to use graph information in which content is graph-structured. .

なお、情報処理装置100が用いる情報は、ベクトルに限らず、各コンテンツの類似性を表現可能な情報であれば、どのような形式の情報であってもよい。例えば、情報処理装置100は、各コンテンツに対応する所定のデータや値を用いてコンテンツをグラフ構造化したグラフ情報を用いてもよい。例えば、情報処理装置100は、各コンテンツから生成された所定の数値(例えば2進数の値や16進数の値)を用いてコンテンツをグラフ構造化したグラフ情報を用いてもよい。例えば、ベクトルに代えて、データ間の距離(類似度)が定義されていれば任意の形態のデータであっても良い。なお、図1の例では、抽出した類似コンテンツに基づいて、一のコンテンツが流行するかを判定し、判定結果の情報を提供するサービスを行う場合を示すが、類似コンテンツに基づくサービスであればそのようなサービスを提供してもよい。この点についての詳細は後述する。 The information used by the information processing apparatus 100 is not limited to vectors, and may be information in any format as long as it is information that can express the similarity of each content. For example, the information processing apparatus 100 may use graph information in which content is graph-structured using predetermined data and values corresponding to each content. For example, the information processing apparatus 100 may use graph information in which content is graph-structured using a predetermined numerical value (for example, a binary value or a hexadecimal value) generated from each content. For example, instead of vectors, any form of data may be used as long as the distance (similarity) between data is defined. In the example of FIG. 1, it is determined whether or not one content is popular based on extracted similar content, and a service is provided for providing information on the determination result. may provide such services. Details on this point will be described later.

〔1-1.グラフ情報について〕
また、情報処理装置100は、図1中のグラフ情報GR11に示すように、各ベクトル(ノード)が有向エッジにより連結されたグラフデータを用いて情報処理を行う。なお、図1中のグラフ情報GR11に示すようなグラフ情報は、情報処理装置100が生成してもよいし、情報処理装置100は、図1中のグラフ情報GR11に示すようなグラフ情報を情報提供装置50(図2参照)等の他の外部装置から取得してもよい。
[1-1. About graph information]
The information processing apparatus 100 also performs information processing using graph data in which vectors (nodes) are connected by directed edges, as indicated by graph information GR11 in FIG. Graph information as indicated by graph information GR11 in FIG. It may be acquired from another external device such as the providing device 50 (see FIG. 2).

また、ここでいう、有向エッジとは、一方向にしかデータを辿れないエッジを意味する。以下では、エッジにより辿る元、すなわち始点となるノードを参照元とし、エッジにより辿る先、すなわち終点となるノードを参照先とする。例えば、所定のノード「A」から所定のノード「B」に連結される有向エッジとは、参照元をノード「A」とし、参照先をノード「B」とするエッジであることを示す。なお、各ノードを連結するエッジは、有向エッジに限らず、種々のエッジであってもよい。例えば、各ノードを連結するエッジは、ノードを連結する方向のないエッジであってもよい。例えば、各ノードを連結するエッジは、相互に参照可能なエッジであってもよい。例えば、各ノードを連結するエッジは、全て双方向エッジであってもよい。 Also, the term "directed edge" used herein means an edge that allows data to be traced in only one direction. In the following description, the source traced by the edge, that is, the node that is the starting point, is the reference source, and the destination that is traced by the edge, that is, the node that is the end point, is the reference destination. For example, a directed edge connecting a predetermined node "A" to a predetermined node "B" indicates an edge having a reference source of node "A" and a reference destination of node "B". Edges connecting nodes are not limited to directed edges, and may be various edges. For example, the edge connecting each node may be a directionless edge connecting the nodes. For example, the edges connecting each node may be mutually referable edges. For example, the edges connecting each node may all be bidirectional edges.

例えば、このようにノード「A」を参照元とするエッジをノード「A」の出力エッジという。また、例えば、このようにノード「B」を参照先とするエッジをノード「B」の入力エッジという。すなわち、ここでいう出力エッジ及び入力エッジとは、一の有向エッジをその有向エッジが連結する2つのノードのうち、いずれのノードを中心として捉えるかの相違であり、一の有向エッジが出力エッジ及び入力エッジになる。すなわち、出力エッジ及び入力エッジは、相対的な概念であって、一の有向エッジについて、参照元となるノードを中心として捉えた場合に出力エッジとなり、参照先となるノードを中心として捉えた場合に入力エッジとなる。なお、本実施形態においては、エッジについては、出力エッジや入力エッジ等の有向エッジを対象とするため、以下では、有向エッジを単に「エッジ」と記載する場合がある。 For example, an edge having node "A" as a reference in this way is called an output edge of node "A". Further, for example, an edge having the node "B" as a reference in this way is referred to as an input edge of the node "B". In other words, the term "output edge" and "input edge" as used herein refers to the difference in which of the two nodes to which one directed edge connects is regarded as the center. are the output and input edges. In other words, an output edge and an input edge are relative concepts. For one directed edge, it is an output edge when the reference node is regarded as the center, and the reference node is regarded as the center. is an input edge. Note that, in the present embodiment, directed edges such as output edges and input edges are targeted for edges, and therefore directed edges may be simply referred to as "edges" below.

例えば、情報処理装置100は、数百万~数億等の単位の膨大なコンテンツに対応するノードを対象に処理を行うが、図面においてはその一部のみを図示する。図1の例では、説明を簡単にするために、8個のノードを図示して処理の概要を説明する。例えば、情報処理装置100は、図1中のグラフ情報GR11に示すように、ノードN1、N2、N3等に示すような複数のノード(ベクトル)を含むグラフ情報を取得する。また、図1の例では、グラフ情報GR11における各ノードは、そのノードとの間の距離が近い方から所定数のノードへのエッジ(出力エッジ)が連結される。例えば、所定数は、目的や用途等に応じて、2や5や10や100等の種々の値であってもよい。例えば、所定数が2である場合、ノードN1からは、ノードN1からの距離が最も近いノード及び2番目に距離が近い2つのノードに出力エッジが連結される。なお、類似度を示す指標としての距離は、ベクトル(N次元ベクトル)間の距離として適用可能であれば、どのような距離であってもよく、例えば、ユークリッド距離やマハラノビス距離やコサイン距離等の種々の距離が用いられてもよい。 For example, the information processing apparatus 100 performs processing on nodes corresponding to a huge amount of content on the order of millions to hundreds of millions of units, but only some of them are shown in the drawing. In the example of FIG. 1, to simplify the explanation, eight nodes are illustrated to explain the outline of the processing. For example, the information processing apparatus 100 acquires graph information including a plurality of nodes (vectors) such as nodes N1, N2, N3, etc., as indicated by graph information GR11 in FIG. Also, in the example of FIG. 1, each node in the graph information GR11 is connected to a predetermined number of edges (output edges) from the node closest to the node. For example, the predetermined number may be various values such as 2, 5, 10, 100, etc., depending on the purpose and application. For example, if the predetermined number is 2, output edges from the node N1 are connected to the node closest to the node N1 and the two nodes closest to the node N1. Note that the distance as an index indicating similarity may be any distance as long as it can be applied as the distance between vectors (N-dimensional vectors). Various distances may be used.

また、このように「ノードN*(*は任意の数値)」と記載した場合、そのノードはノードID「N*」により識別されるノードであることを示す。例えば、「ノードN1」と記載した場合、そのノードはノードID「N1」により識別されるノードである。 Also, when "node N* (* is an arbitrary number)" is described in this way, it indicates that the node is identified by the node ID "N*". For example, when "node N1" is described, the node is identified by the node ID "N1".

また、図1中のグラフ情報GR11では、ノードN10は、ノードN7へ向かう有向エッジであるエッジE7が連結される。すなわち、ノードN10は、ノードN7とエッジE7により連結される。このように「エッジE*(*は任意の数値)」と記載した場合、そのエッジはエッジID「E*」により識別されるエッジであることを示す。例えば、「エッジE11」と記載した場合、そのエッジはエッジID「E11」により識別されるエッジである。例えば、ノードN10を参照元とし、ノードN7を参照先として連結されるエッジE7により、ノードN10からノードN7に辿ることが可能となる。この場合、有向エッジであるエッジE7は、ノードN10を中心として識別される場合、出力エッジとなり、ノードN7を中心として識別される場合、入力エッジとなる。また、図1のグラフ情報GR11中の双方向矢印は、両方のノードから他方のノードへの有向エッジが連結されることを示す。例えば、グラフ情報GR11中のノードN2とノードN451との間の双方向矢印は、ノードN2からノードN451へ向かう有向エッジと、ノードN451からノードN2へ向かう有向エッジとの2つのエッジが連結されることを示す。 In graph information GR11 in FIG. 1, node N10 is connected to edge E7, which is a directed edge toward node N7. That is, node N10 is connected to node N7 by edge E7. When "edge E* (* is an arbitrary numerical value)" is described in this way, it indicates that the edge is identified by the edge ID "E*". For example, when "edge E11" is described, the edge is identified by the edge ID "E11". For example, an edge E7 connecting the node N10 as a reference source and the node N7 as a reference destination enables tracing from the node N10 to the node N7. In this case, the directed edge E7 is an output edge when identified with the node N10 as the center, and an input edge when identified with the node N7 as the center. Also, the bidirectional arrows in the graph information GR11 of FIG. 1 indicate that directed edges from both nodes to the other node are connected. For example, a two-way arrow between node N2 and node N451 in graph information GR11 connects two edges: a directed edge from node N2 to node N451 and a directed edge from node N451 to node N2. indicates that

また、図1中のグラフ情報GR11は、ユークリッド空間であってもよい。また、図1に示すグラフ情報GR11は、各ベクトル間の距離等の説明のための概念的な図であり、グラフ情報GR11は、多次元空間である。例えば、図1に示すグラフ情報GR11は、平面上に図示するため2次元の態様にて図示されるが、例えば100次元や1000次元等の多次元空間であるものとする。 Further, the graph information GR11 in FIG. 1 may be Euclidean space. Graph information GR11 shown in FIG. 1 is a conceptual diagram for explaining distances between vectors, and the graph information GR11 is a multidimensional space. For example, the graph information GR11 shown in FIG. 1 is illustrated in a two-dimensional manner because it is illustrated on a plane, but it is assumed to be a multi-dimensional space such as 100-dimensional space or 1000-dimensional space.

ここで、ベクトルデータ間の距離は、コンテンツの類似性を示し、距離が近いほど類似している。本実施形態においては、グラフ情報GR11における各ノードの距離を対応する各オブジェクト間の類似度とする。例えば、各ノードに対応するコンテンツの類似性が、グラフ情報GR11内におけるノード間の距離として写像されているものとする。例えば、各ノードに対応する概念間の類似度が各ノード間の距離に写像されているものとする。ここで、図1に示す例においては、グラフ情報GR11における各ノード間の距離が短いオブジェクト同士の類似度が高く、グラフ情報GR11における各ノード間の距離が長いオブジェクト同士の類似度が低い。例えば、図1中のグラフ情報GR11において、ノードID「N35」により識別されるノードと、ノードID「N693」により識別されるノードとは近接している、すなわち距離が短い。そのため、ノードID「N35」により識別されるノードに対応するオブジェクトと、ノードID「N693」により識別されるノードに対応するオブジェクトとは類似度が高いことを示す。 Here, the distance between vector data indicates similarity of content, and the closer the distance, the more similar. In this embodiment, the distance of each node in the graph information GR11 is used as the degree of similarity between corresponding objects. For example, it is assumed that the similarity of content corresponding to each node is mapped as the distance between nodes in the graph information GR11. For example, it is assumed that the similarity between concepts corresponding to each node is mapped to the distance between each node. Here, in the example shown in FIG. 1, the similarity between objects with short distances between nodes in the graph information GR11 is high, and the similarity between objects with long distances between nodes in the graph information GR11 is low. For example, in the graph information GR11 in FIG. 1, the node identified by the node ID "N35" and the node identified by the node ID "N693" are close to each other, that is, the distance between them is short. Therefore, it indicates that the object corresponding to the node identified by the node ID "N35" and the object corresponding to the node identified by the node ID "N693" have a high degree of similarity.

また、例えば、図1中のグラフ情報GR11において、ノードID「N7」により識別されるノードと、ノードID「N2」により識別されるノードとは遠隔にある、すなわち距離が長い。そのため、ノードID「N7」により識別されるノードに対応するオブジェクトと、ノードID「N2」により識別されるノードに対応するオブジェクトとは類似度が低いことを示す。 Further, for example, in the graph information GR11 in FIG. 1, the node identified by the node ID "N7" and the node identified by the node ID "N2" are remote, that is, the distance is long. Therefore, the similarity between the object corresponding to the node identified by the node ID "N7" and the object corresponding to the node identified by the node ID "N2" is low.

〔1-2.ベクトルの生成例〕
また、ここでいう、各ノード(ベクトル)は、各オブジェクト(コンテンツ)に対応する。コンテンツ情報が様々なコンテンツの状態を示す数値データであれば、それをベクトルデータとして、そのまま扱うことも可能である。しかし、コンテンツ情報が、テキスト、画像、または、音声であったりする場合には、ベクトルデータへの変換が必要となる。そこで、図1の例では、各コンテンツのコンテンツ情報から抽出された特徴量により生成された多次元(N次元)のベクトルがオブジェクトであってもよい。
[1-2. Vector generation example]
Each node (vector) here corresponds to each object (content). If the content information is numerical data indicating various states of content, it can be treated as it is as vector data. However, if the content information is text, images, or audio, conversion to vector data is required. Therefore, in the example of FIG. 1, the object may be a multidimensional (N-dimensional) vector generated from the feature amount extracted from the content information of each content.

例えば、情報処理装置100は、コンテンツ情報の特徴を抽出するモデルを用いて各コンテンツのコンテンツ情報からN次元ベクトルを生成してもよい。図1の例では、情報処理装置100は、モデル情報記憶部124(図7参照)に示すように、モデルID「M1」により識別されるモデル(モデルM1)を用いて、各コンテンツのコンテンツ情報からベクトルを生成する。上記のように、「モデルM*(*は任意の数値)」と記載した場合、そのモデルはモデルID「M*」により識別されるモデルであることを示す。例えば、「モデルM1」と記載した場合、そのモデルはモデルID「M1」により識別されるモデルである。また、モデル情報記憶部124に示すように、モデルM1は用途「特徴抽出(アプリ)」、すなわちコンテンツのデータ(コンテンツ情報)からの特徴抽出のために用いられるモデルであり、その具体的なモデルデータが「モデルデータMDT1」であることを示す。 For example, the information processing apparatus 100 may generate an N-dimensional vector from content information of each content using a model for extracting features of content information. In the example of FIG. 1, the information processing apparatus 100 uses the model (model M1) identified by the model ID "M1" as shown in the model information storage unit 124 (see FIG. 7) to store the content information of each content. Generate a vector from . As described above, when "model M* (* is an arbitrary numerical value)" is described, it indicates that the model is identified by the model ID "M*". For example, when "model M1" is described, the model is identified by the model ID "M1". Further, as shown in the model information storage unit 124, the model M1 is a model used for use "feature extraction (application)", that is, for feature extraction from content data (content information). It indicates that the data is "model data MDT1".

例えば、情報処理装置100は、モデルM1に任意のコンテンツのコンテンツ情報を入力することにより、モデルM1中の各要素(ニューロン)の値を演算し、入力したコンテンツ情報と同様の情報を出力する。例えば、情報処理装置100は、中間層の各要素(ニューロン)の値を特徴量として抽出し、各コンテンツに対応するN次元のベクトルデータを生成してもよい。 For example, the information processing apparatus 100 inputs content information of arbitrary content to the model M1, calculates the value of each element (neuron) in the model M1, and outputs information similar to the input content information. For example, the information processing apparatus 100 may extract the value of each element (neuron) in the intermediate layer as a feature amount and generate N-dimensional vector data corresponding to each content.

ここで、図10を用いて、各コンテンツに対応するベクトルデータの生成の一例を示す。図10は、実施形態に係る特徴量の抽出の一例を示す図である。図10は、モデルM1の概念図である。なお、図10では、各要素(ニューロン)の各接続関係を示す線の図示を省略する。図10に示すように、モデルM1は、入力層ILと、中間層CLと、出力層OLとを含む。例えば、モデルM1の入力層ILは、コンテンツ情報が入力される層である。また、出力層OLは、入力層ILへの入力に応じて、入力されたコンテンツ情報と同様の情報を出力される層である。 Here, an example of generation of vector data corresponding to each content is shown using FIG. FIG. 10 is a diagram illustrating an example of feature amount extraction according to the embodiment. FIG. 10 is a conceptual diagram of the model M1. Note that in FIG. 10, illustration of lines indicating respective connection relationships of respective elements (neurons) is omitted. As shown in FIG. 10, the model M1 includes an input layer IL, an intermediate layer CL, and an output layer OL. For example, the input layer IL of the model M1 is a layer into which content information is input. Also, the output layer OL is a layer that outputs information similar to the input content information in response to input to the input layer IL.

また、例えば、中間層CLの中央部の最も圧縮された圧縮層RPは、入力されたコンテンツ情報の特徴を表現する層である。例えば、モデルM1の中間層CLにおいて、入力層ILから圧縮層RPまでの間は、エンコードの処理を行う部分に対応する。モデルM1の中間層CLにおいて、入力層ILから圧縮層RPまでの間は、入力されたコンテンツ情報の特徴を圧縮する処理を行う部分に対応する。例えば、モデルM1の中間層CLにおいて、圧縮層RPから出力層OLまでの間は、デコードの処理を行う部分に対応する。モデルM1の中間層CLにおいて、圧縮層RPから出力層OLまでの間は、圧縮されたコンテンツ情報を復元する処理を行う部分に対応する。 Also, for example, the most compressed layer RP in the central portion of the intermediate layer CL is a layer that expresses the features of the input content information. For example, in the intermediate layer CL of the model M1, the portion from the input layer IL to the compression layer RP corresponds to the portion where the encoding process is performed. In the intermediate layer CL of the model M1, the portion from the input layer IL to the compression layer RP corresponds to a portion that performs processing for compressing the features of the input content information. For example, in the intermediate layer CL of the model M1, the portion from the compression layer RP to the output layer OL corresponds to a portion that performs decoding processing. In the intermediate layer CL of the model M1, the portion from the compression layer RP to the output layer OL corresponds to a portion that performs processing for restoring compressed content information.

例えば、情報処理装置100は、圧縮層RPに含まれるニューロンNL1やニューロンNL2等の情報をベクトルに用いてもよい。例えば、情報処理装置100は、あるコンテンツのコンテンツ情報が入力された場合に、算出されるニューロンNL1に対応する値VE1やニューロンNL2に対応する値VE2をベクトルの要素(一の次元の値)として抽出してもよい。例えば、情報処理装置100は、あるコンテンツのコンテンツ情報が入力された場合に、算出されるニューロンNL1に対応する値VE1をそのコンテンツのベクトルの1次元目の要素として抽出してもよい。また、例えば、情報処理装置100は、あるコンテンツのコンテンツ情報が入力された場合に、算出されるニューロンNL2に対応する値VE2をそのコンテンツのベクトルの2次元目の要素として抽出してもよい。このように、情報処理装置100は、各コンテンツのコンテンツ情報をモデルM1に入力することにより、各コンテンツに対応するベクトルを生成してもよい。なお、情報処理装置100は、各コンテンツに対応するベクトルを情報提供装置50等の他の外部装置から取得してもよい。なお、情報処理装置100は、ベクトルの各要素として、各ニューロンに対応する値自体を用いてもよいし、各ニューロンに対応する値に所定の係数を乗算した値を用いてもよい。また、図1の例では説明を簡単にするために、ベクトルの各要素(値)が整数である場合を示すが、ベクトルの各要素(値)は、小数点以下の数値を含む実数であってもよい。 For example, the information processing apparatus 100 may use the information of the neuron NL1, the neuron NL2, etc. included in the compression layer RP as the vector. For example, when content information of a certain content is input, the information processing apparatus 100 uses the calculated value VE1 corresponding to the neuron NL1 and the calculated value VE2 corresponding to the neuron NL2 as vector elements (one-dimensional values). may be extracted. For example, when content information of a certain content is input, the information processing apparatus 100 may extract the calculated value VE1 corresponding to the neuron NL1 as the first-dimensional element of the content vector. Further, for example, when content information of a certain content is input, the information processing apparatus 100 may extract the calculated value VE2 corresponding to the neuron NL2 as the second-dimensional element of the content vector. In this way, the information processing apparatus 100 may generate a vector corresponding to each content by inputting content information of each content to the model M1. Note that the information processing apparatus 100 may acquire vectors corresponding to each content from another external apparatus such as the information providing apparatus 50 or the like. Note that the information processing apparatus 100 may use the value itself corresponding to each neuron, or may use a value obtained by multiplying the value corresponding to each neuron by a predetermined coefficient, as each element of the vector. In the example of FIG. 1, each element (value) of the vector is an integer to simplify the explanation. good too.

なお、情報処理装置100は、圧縮層RPの要素(ニューロン)に限らず、中間層CL中の他の要素(ニューロン)の情報をベクトルに用いてもよい。例えば、情報処理装置100は、エンコード部分のニューロンNL3やデコード部分のニューロンNL4等の情報をベクトルに用いてもよい。例えば、情報処理装置100は、あるコンテンツのコンテンツ情報が入力された場合に、算出されるニューロンNL3に対応する値VE3やニューロンNL4に対応する値VE4をベクトルの要素(一の次元の値)として抽出してもよい。なお、上記は、一例であり、情報処理装置100は、オートエンコーダに限らず、種々のモデルを用いて、コンテンツ情報からの特徴抽出を行ってもよい。例えば、スタートアップメンバ等の所定の目的に適したコンテンツと適さないコンテンツを識別するように学習させたモデルを生成して、その中間層をベクトルデータとして抽出しても良い。また、例えば、トリプレットロス(triplet loss)といった類似性を学習する方法によりモデルを生成しても良い。また、情報処理装置100は、モデルを用いずに、特徴抽出を行ってもよい。例えば、情報処理装置100は、情報処理装置100の管理者等が設定して特徴(素性)に対応する情報をコンテンツ情報から抽出し、ベクトルを生成してもよい。例えば、情報処理装置100は、コンテンツのジャンル(カテゴリー)や内容等の特徴(素性)に対応する情報をコンテンツ情報から抽出し、ベクトルを生成してもよい。 Note that the information processing apparatus 100 may use information of not only the elements (neurons) of the compression layer RP but also other elements (neurons) in the intermediate layer CL for the vectors. For example, the information processing apparatus 100 may use the information of the encoding part neuron NL3, the decoding part neuron NL4, or the like for the vector. For example, when content information of a certain content is input, the information processing apparatus 100 uses the calculated value VE3 corresponding to neuron NL3 and the calculated value VE4 corresponding to neuron NL4 as vector elements (one-dimensional values). may be extracted. Note that the above is just an example, and the information processing apparatus 100 may perform feature extraction from content information using various models, not limited to the autoencoder. For example, it is possible to generate a model trained to distinguish between content suitable for a given purpose such as startup members and content not suitable, and extract the intermediate layer as vector data. Alternatively, a model may be generated by a similarity learning method such as triplet loss. Also, the information processing apparatus 100 may perform feature extraction without using a model. For example, the information processing apparatus 100 may extract information corresponding to features (features) set by an administrator or the like of the information processing apparatus 100 from the content information and generate a vector. For example, the information processing apparatus 100 may extract information corresponding to the genre (category) of the content and the feature (feature) such as the content from the content information and generate a vector.

また、例えば、情報処理装置100は、情報提供装置50等の他の外部装置からモデルM1を取得してもよい。なお、情報処理装置100は、コンテンツ情報記憶部121(図4参照)に記憶された各コンテンツのコンテンツ情報CDT1、CDT2、CDT451等を入力として、モデルM1を生成してもよい。例えば、情報処理装置100は、各コンテンツのコンテンツ情報CDT1、CDT2、CDT451等を入力として、モデルM1を生成してもよい。例えば、コンテンツ情報CDT1、CDT2、CDT451等は、コンテンツのジャンル(カテゴリー)や内容等を含んでもよい。例えば、コンテンツ情報CDT1、CDT2、CDT451等のコンテンツ情報は、コンテンツがアプリである場合、「天気」、「路線」、「ゲーム」等のカテゴリーを示す情報や、起動時の画面を示す画像情報や、課金額を示す情報等の種々の情報を含んでもよい。例えば、コンテンツ情報CDT1、CDT2、CDT451等のコンテンツ情報は、コンテンツが記事コンテンツである場合、その記事コンテンツに対応する文字情報や画像情報等の情報を含んでもよい。また、例えば、コンテンツ情報CDT1、CDT2、CDT451等のコンテンツ情報は、コンテンツが動画コンテンツである場合、その動画コンテンツに対応する画像情報や音声情報等の情報を含んでもよい。なお、コンテンツ情報は、コンテンツがアプリである場合、そのソースコード(文字情報)のみであってもよい。 Further, for example, the information processing device 100 may acquire the model M1 from another external device such as the information providing device 50 . The information processing apparatus 100 may generate the model M1 by inputting the content information CDT1, CDT2, CDT451, etc. of each content stored in the content information storage unit 121 (see FIG. 4). For example, the information processing apparatus 100 may generate the model M1 by inputting the content information CDT1, CDT2, CDT451, etc. of each content. For example, the content information CDT1, CDT2, CDT451, etc. may include the genre (category) and content of the content. For example, when the content is an application, the content information such as the content information CDT1, CDT2, and CDT451 includes information indicating categories such as "weather", "route", and "game", image information indicating the startup screen, and so on. , and information indicating the billing amount. For example, when content is article content, content information such as content information CDT1, CDT2, and CDT451 may include information such as character information and image information corresponding to the article content. Also, for example, content information such as content information CDT1, CDT2, and CDT451 may include information such as image information and audio information corresponding to the moving image content when the content is moving image content. In addition, when the content is an application, the content information may be only the source code (character information).

情報処理装置100は、コンテンツのコンテンツ情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたコンテンツ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、入力層に入力される情報と同様の情報を出力層から出力するモデルM1を生成してもよい。なお、情報処理装置100は、ベクトル生成に用いるモデルを情報提供装置50等の他の外部装置から取得してもよい。 The information processing apparatus 100 includes an input layer to which content information of content is input, an output layer, a first element belonging to any layer from the input layer to the output layer other than the output layer, and a first layer. and a second element whose value is calculated based on the weight of the element and the first element. By performing an operation based on the first element and the weight of the first element, the model M1 may be generated that outputs from the output layer the same information as the information input to the input layer. Note that the information processing apparatus 100 may acquire a model used for vector generation from another external apparatus such as the information providing apparatus 50 or the like.

〔1-3.処理例〕
ここから、情報処理装置100は、ユーザから一のコンテンツのコンテンツ情報を取得し、一のコンテンツに類似するコンテンツに基づいてサービスを提供する場合を一例として説明する。図1の例では、端末装置10は、所定のソフトウェア開発会社に属するユーザU1により利用される。例えば、ユーザU1は、スマートフォン用のアプリを開発する企業でアプリ開発を行うユーザであってもよい。図1の例では、スマートフォン用のアプリの開発者であるユーザU1自身が開発したアプリであるコンテンツXが流行するかどうかの情報を所望する場合を示す。
[1-3. Processing example]
From here, a case where the information processing apparatus 100 acquires content information of one content from the user and provides a service based on content similar to the one content will be described as an example. In the example of FIG. 1, the terminal device 10 is used by a user U1 who belongs to a predetermined software development company. For example, the user U1 may be a user who develops applications at a company that develops applications for smartphones. The example of FIG. 1 shows a case where the user U1, who is the developer of the smartphone application, desires information on whether content X, which is an application developed by him/herself, will become popular.

まず、端末装置10は、コンテンツXのコンテンツ情報CDT11を情報処理装置100へ送信する。図1の例では、コンテンツ情報CDT11等は、コンテンツ(アプリ)のジャンル(カテゴリー)や内容等に関する情報を含む。なお、コンテンツ情報CDT11等は、コンテンツ(アプリ)のソースコード(文字情報)のみであってもよい。 First, the terminal device 10 transmits content information CDT11 of content X to the information processing device 100 . In the example of FIG. 1, the content information CDT11 and the like include information about the genre (category) and details of the content (application). Note that the content information CDT11 and the like may be only the source code (character information) of the content (application).

そして、情報処理装置100は、一のコンテンツに関するコンテンツ情報を取得する(ステップS11)。図1の例では、情報処理装置100は、ユーザU1の端末装置10からコンテンツXに関するコンテンツ情報CDT11を取得する。なお、情報処理装置100は、コンテンツXが携帯する端末装置10(図2参照)からコンテンツXに関するコンテンツ情報CDT11を取得する。 Then, the information processing apparatus 100 acquires content information regarding one content (step S11). In the example of FIG. 1, the information processing apparatus 100 acquires the content information CDT11 regarding the content X from the terminal device 10 of the user U1. The information processing apparatus 100 acquires content information CDT11 regarding the content X from the terminal device 10 (see FIG. 2) carried by the content X. FIG.

そして、情報処理装置100は、一のコンテンツに対応するコンテンツ情報からグラフ情報の探索に用いるベクトルを生成する。図1の例では、情報処理装置100は、処理群PS11に示すような処理により、コンテンツXに対応するベクトルを生成する。情報処理装置100は、コンテンツXに関するコンテンツ情報CDT11をモデルM1に入力する(ステップS12)。具体的には、情報処理装置100は、コンテンツXのコンテンツ情報CDT11をモデルM1に入力する。そして、情報処理装置100は、コンテンツ情報CDT11の入力後のモデルM1中の情報を用いて、ベクトルを生成する(ステップS13)。例えば、情報処理装置100は、コンテンツ情報CDT11が入力されたモデルM1中の各要素を用いて、ベクトルデータを生成する。 Then, the information processing apparatus 100 generates a vector used for searching graph information from content information corresponding to one content. In the example of FIG. 1, the information processing apparatus 100 generates a vector corresponding to the content X by the process indicated by the process group PS11. The information processing apparatus 100 inputs the content information CDT11 regarding the content X to the model M1 (step S12). Specifically, the information processing apparatus 100 inputs the content information CDT11 of the content X to the model M1. Then, the information processing apparatus 100 generates a vector using information in the model M1 after input of the content information CDT11 (step S13). For example, the information processing apparatus 100 generates vector data using each element in the model M1 to which the content information CDT11 is input.

図1の例では、情報処理装置100は、コンテンツ情報CDT11が入力されたモデルM1中の各要素の値を用いて、ベクトルデータVD11(単に「ベクトルVD11」ともいう)を生成する。例えば、情報処理装置100は、コンテンツXのコンテンツ情報CDT11が入力された場合における、モデルM1のニューロンNL1に対応する値VE1(図10参照)やニューロンNL2に対応する値VE2(図10参照)を用いて、ベクトルを生成する。例えば、情報処理装置100は、コンテンツXのコンテンツ情報CDT11が入力された場合に、算出されるニューロンNL1に対応する値VE1をベクトルVD11の1次元目の要素として抽出してもよい。また、例えば、情報処理装置100は、あるコンテンツのコンテンツ情報が入力された場合に、算出されるニューロンNL2に対応する値VE2をベクトルVD11の2次元目の要素として、ベクトルVD11を生成する。図1の例では、情報処理装置100は、1次元目の要素が「35」であり、2次元目の要素が「63」であるようなベクトルVD11を生成する。 In the example of FIG. 1, the information processing apparatus 100 generates vector data VD11 (also simply referred to as "vector VD11") using the values of the elements in the model M1 to which the content information CDT11 is input. For example, the information processing apparatus 100 calculates a value VE1 (see FIG. 10) corresponding to the neuron NL1 and a value VE2 (see FIG. 10) corresponding to the neuron NL2 of the model M1 when the content information CDT11 of the content X is input. to generate a vector. For example, when the content information CDT11 of the content X is input, the information processing apparatus 100 may extract the calculated value VE1 corresponding to the neuron NL1 as the first-dimensional element of the vector VD11. Further, for example, when content information of a certain content is input, the information processing apparatus 100 generates a vector VD11 by using the calculated value VE2 corresponding to the neuron NL2 as the second-dimensional element of the vector VD11. In the example of FIG. 1, the information processing apparatus 100 generates a vector VD11 whose first-dimensional element is "35" and whose second-dimensional element is "63."

そして、情報処理装置100は、コンテンツXに類似するコンテンツ(以下、「類似コンテンツ」ともいう)を検索する(ステップS14)。例えば、情報処理装置100は、非特許文献1に開示されるような近傍検索の技術等の種々の従来技術を適宜用いて、コンテンツXの類似コンテンツを検索してもよい。例えば、情報処理装置100は、類似性が高いノード間がエッジで連結されたグラフ情報GR11を用いる。 Then, the information processing apparatus 100 searches for content similar to the content X (hereinafter also referred to as "similar content") (step S14). For example, the information processing apparatus 100 may search for content similar to the content X by appropriately using various conventional techniques such as the neighborhood search technique disclosed in Non-Patent Document 1. For example, the information processing apparatus 100 uses graph information GR11 in which nodes with high similarity are connected by edges.

図1の例では、情報処理装置100は、情報群INF11に示すように、グラフ情報GR11やインデックス情報IND11を用いてコンテンツXの類似コンテンツを検索する。例えば、情報処理装置100は、グラフ情報記憶部123(図6参照)からコンテンツに関するグラフ情報GR11を取得する。また、例えば、情報処理装置100は、インデックス情報記憶部122(図5参照)から、グラフ情報GR11における検索の起点となるノード(以下、「起点ベクトル」ともいう)の決定に用いるインデックス情報IND11を取得する。なお、インデックス情報IND11は、情報処理装置100が生成してもよいし、情報処理装置100は、インデックス情報IND11を情報提供装置50等の他の外部装置から取得してもよい。 In the example of FIG. 1, the information processing apparatus 100 searches for content similar to content X using graph information GR11 and index information IND11, as indicated by information group INF11. For example, the information processing apparatus 100 acquires graph information GR11 regarding content from the graph information storage unit 123 (see FIG. 6). Further, for example, the information processing apparatus 100 stores index information IND11 used for determining a node (hereinafter also referred to as "origin vector") serving as a starting point for searching in the graph information GR11 from the index information storage unit 122 (see FIG. 5). get. Note that the index information IND11 may be generated by the information processing device 100, or the information processing device 100 may acquire the index information IND11 from another external device such as the information providing device 50 or the like.

そして、情報処理装置100は、一のコンテンツ(クエリ)に対応する起点ベクトルを決定(特定)するために、インデックス情報IND11を用いる。図1の例では、情報処理装置100は、コンテンツXのベクトルVD11に対応する起点ベクトルを決定(特定)するために、インデックス情報IND11を用いる。すなわち、情報処理装置100は、ベクトルVD11とインデックス情報IND11とを用いて、グラフ情報GR11における起点ベクトルを決定する。 Then, the information processing apparatus 100 uses the index information IND11 to determine (specify) an origin vector corresponding to one content (query). In the example of FIG. 1, the information processing apparatus 100 uses the index information IND11 to determine (specify) the origin vector corresponding to the vector VD11 of the content X. FIG. That is, the information processing apparatus 100 uses the vector VD11 and the index information IND11 to determine the origin vector in the graph information GR11.

図1中のインデックス情報IND11は、図5中のインデックス情報記憶部122に示す階層構造を有する。例えば、インデックス情報IND11は、ルートRTの直下に位置する第1階層のノード(ベクトル)が、節点VT1、VT2等であることを示す。また、例えば、インデックス情報IND11は、節点VT2の直下の第2階層のノードが、節点VT2-1~VT2-4(図示せず)であることを示す。また、例えば、インデックス情報IND11は、節点VT2-2の直下の第3階層のノードが、ノードN35、ノードN451、ノードN693、すなわちグラフ情報GR11中のノード(ベクトル)であることを示す。 The index information IND11 in FIG. 1 has a hierarchical structure shown in the index information storage section 122 in FIG. For example, the index information IND11 indicates that the nodes (vectors) in the first layer located directly below the root RT are the nodes VT1, VT2, and the like. Also, for example, the index information IND11 indicates that the nodes of the second layer immediately below the node VT2 are the nodes VT2-1 to VT2-4 (not shown). Also, for example, the index information IND11 indicates that the nodes of the third layer immediately below the node VT2-2 are the node N35, the node N451, and the node N693, that is, nodes (vectors) in the graph information GR11.

例えば、情報処理装置100は、図1中のインデックス情報IND11に示すような木構造型のインデックス情報を用いて、グラフ情報GR11における起点ベクトルを決定する(ステップS15)。図1の例では、情報処理装置100は、ベクトルVD11を生成した後、インデックス情報IND11を上から下へ辿ることにより、インデックス情報IND11の近傍候補となる起点ベクトルを特定することにより、効率的に検索クエリ(一のコンテンツ)に対応する起点ベクトルを決定することができる。 For example, the information processing apparatus 100 determines the origin vector in the graph information GR11 using tree-structured index information as indicated by the index information IND11 in FIG. 1 (step S15). In the example of FIG. 1, after generating the vector VD11, the information processing apparatus 100 traces the index information IND11 from top to bottom to identify the origin vector that is a candidate for the vicinity of the index information IND11. An origin vector corresponding to a search query (a piece of content) can be determined.

例えば、情報処理装置100は、インデックス情報IND11をルートRTからリーフノード(グラフ情報GR11中のノード(ベクトル))まで辿ることにより、ベクトルVD11に対応する起点ベクトルを決定してもよい。図1の例では、例えば、情報処理装置100は、インデックス情報IND11をルートRTからノードN451まで辿ることにより、ノードN451を起点ベクトルとして決定する。例えば、情報処理装置100は、木構造に関する種々の従来技術を適宜用いて、インデックス情報IND11をルートRTからリーフノードまで辿ることにより、辿りついたリーフノードを起点ベクトルとして決定してもよい。例えば、情報処理装置100は、ベクトルVD11との類似度に基づいて、インデックス情報IND11を下へ辿ることにより、起点ベクトルを決定してもよい。例えば、情報処理装置100は、ルートRTから節点VT1、VT2等のいずれの節点に辿るかを、ベクトルVD11と節点VT1、VT2との類似度に基づいて決定してもよい。例えば、情報処理装置100は、ルートRTから節点VT1、VT2等のうち、ベクトルVD11との類似度が最も高い節点VT2へ辿ると決定してもよい。また、例えば、情報処理装置100は、節点VT2から節点VT2-1~VT2-4等のうち、ベクトルVD11との類似度が最も高い節点VT2-2へ辿ると決定してもよい。また、例えば、情報処理装置100は、節点VT2-2からノードN35、N451、N693等のうち、ベクトルVD11との類似度が最も高い節点ノードN451へ辿ると決定してもよい。なお、図1の例では、説明を簡単にするために、起点ベクトルを1つ決定する場合を示すが、情報処理装置100は、複数個の起点ベクトルを決定してもよい。例えば、情報処理装置100は、ノードN451、N35、N693、N2等の複数個のベクトル(ノード)を起点ベクトルとして決定してもよい。なお、インデックス情報IND11を用いずに、検索開始時にグラフ情報GR11からランダムに1つ以上のノードを選択し、それを起点ベクトルとしてもよいし、または、予め指定された1つ以上のノードを起点ベクトルとしても良い。 For example, the information processing apparatus 100 may determine the origin vector corresponding to the vector VD11 by tracing the index information IND11 from the root RT to leaf nodes (nodes (vectors) in the graph information GR11). In the example of FIG. 1, for example, the information processing apparatus 100 determines the node N451 as the origin vector by tracing the index information IND11 from the root RT to the node N451. For example, the information processing apparatus 100 may determine the reached leaf node as the origin vector by tracing the index information IND11 from the root RT to the leaf node using various conventional techniques related to the tree structure. For example, the information processing apparatus 100 may determine the origin vector by tracing down the index information IND11 based on the degree of similarity with the vector VD11. For example, the information processing apparatus 100 may determine which of the nodes VT1, VT2, etc. is followed from the root RT based on the degree of similarity between the vector VD11 and the nodes VT1, VT2. For example, the information processing apparatus 100 may determine to trace from the root RT to the node VT2, which has the highest degree of similarity with the vector VD11, among the nodes VT1, VT2, and the like. Further, for example, the information processing apparatus 100 may determine to trace from the node VT2 to the node VT2-2 having the highest degree of similarity with the vector VD11 among the nodes VT2-1 to VT2-4. Further, for example, the information processing apparatus 100 may determine to trace from the node VT2-2 to the node N451, which has the highest degree of similarity with the vector VD11 among the nodes N35, N451, N693, and the like. Note that the example of FIG. 1 shows a case where one origin vector is determined for the sake of simplicity of explanation, but the information processing apparatus 100 may determine a plurality of origin vectors. For example, the information processing apparatus 100 may determine a plurality of vectors (nodes) such as nodes N451, N35, N693, and N2 as origin vectors. Instead of using the index information IND11, one or more nodes may be randomly selected from the graph information GR11 at the start of the search and used as the starting vector, or one or more nodes specified in advance may be used as the starting point. It can also be a vector.

そして、情報処理装置100は、グラフ情報GR11を検索することにより、コンテンツXの類似コンテンツを抽出する(ステップS16)。例えば、情報処理装置100は、ノードN451の近傍に位置するノードを類似コンテンツとして抽出する。例えば、情報処理装置100は、ノードN451からの距離が近いノードを類似コンテンツとして抽出する。例えば、情報処理装置100は、ノードN451を起点として、エッジを辿ることにより、ノードN451から到達可能なノードを類似コンテンツとして抽出する。例えば、情報処理装置100は、所定数(例えば、2個や10個等)のノードを類似コンテンツとして抽出する。例えば、情報処理装置100は、図11に示すような検索処理により、コンテンツXの類似コンテンツを抽出してもよいが、詳細は後述する。図1の例では、情報処理装置100は、ノードN451を起点として、グラフ情報GR11を探索することにより、ノードN451やノードN35を類似コンテンツとして抽出する。 Then, the information processing apparatus 100 extracts content similar to the content X by searching the graph information GR11 (step S16). For example, the information processing apparatus 100 extracts nodes located near the node N451 as similar content. For example, the information processing apparatus 100 extracts nodes that are close to the node N451 as similar content. For example, the information processing apparatus 100 extracts nodes reachable from the node N451 as similar content by tracing edges starting from the node N451. For example, the information processing apparatus 100 extracts a predetermined number (for example, 2 or 10) of nodes as similar content. For example, the information processing apparatus 100 may extract content similar to the content X by performing search processing as shown in FIG. 11, which will be described later in detail. In the example of FIG. 1, the information processing apparatus 100 extracts the node N451 and the node N35 as similar content by searching the graph information GR11 with the node N451 as the starting point.

そして、情報処理装置100は、類似コンテンツの指標値に関する情報を取得する。図1の例では、情報処理装置100は、コンテンツ情報記憶部121(図4参照)から類似コンテンツの指標値を取得する。ここでいう、コンテンツの指標値とは、そのコンテンツが流行したかどうかの判定に用いる情報であれば、コンテンツの売上やコンテンツに関するユーザの投稿回数等の種々の指標値であってもよい。例えば、コンテンツがアプリである場合、ダウンロード数や利用ユーザ数等が指標値として用いられてもよい。また、情報処理装置100は、複数の指標値を用いてもよい。 Then, the information processing apparatus 100 acquires information regarding the index value of the similar content. In the example of FIG. 1, the information processing apparatus 100 acquires index values of similar content from the content information storage unit 121 (see FIG. 4). Here, the index value of the content may be various index values such as sales of the content and the number of times of user's contribution regarding the content, as long as it is information used for determining whether the content is popular. For example, when the content is an application, the number of downloads, the number of users, or the like may be used as the index value. Also, the information processing apparatus 100 may use a plurality of index values.

図1の例では、コンテンツの指標値として、そのコンテンツ(アプリ)の売上を用いるものとする。図1の例では、情報処理装置100は、類似情報SLTに示すようなノードN451(コンテンツ#451)の指標値VL451やノードN35(コンテンツ#35)の指標値VL35等の情報を取得する。例えば、指標値VL451は、コンテンツ#451の売上を示し、指標値VL35は、コンテンツ#35の売上を示す。例えば、指標値VL451や指標値VL35は、200万円や1億円等の具体的な数値であるものとする。 In the example of FIG. 1, sales of the content (application) are used as the index value of the content. In the example of FIG. 1, the information processing apparatus 100 acquires information such as the index value VL451 of the node N451 (content #451) and the index value VL35 of the node N35 (content #35) as shown in the similarity information SLT. For example, an index value VL451 indicates sales of content #451, and an index value VL35 indicates sales of content #35. For example, the index value VL451 and the index value VL35 are assumed to be specific numerical values such as 2,000,000 yen and 100,000,000 yen.

そして、情報処理装置100は、判定に用いる指標値(判定用指標値)を決定する(ステップS17)。図1の例では、情報処理装置100は、類似情報SLTに示すようなノードN451(コンテンツ#451)の指標値VL451やノードN35(コンテンツ#35)の指標値VL35等の情報に基づいて、判定用指標値を決定する。 Then, the information processing apparatus 100 determines an index value (determination index value) used for determination (step S17). In the example of FIG. 1, the information processing apparatus 100 determines based on information such as the index value VL451 of the node N451 (content #451) and the index value VL35 of the node N35 (content #35) as shown in the similarity information SLT. determine the index value for

例えば、情報処理装置100は、類似情報SLTに含まれる類似コンテンツの評価値(指標値)の平均を判定用指標値として決定する。図1の例では、情報処理装置100は、ステップS16で抽出した類似コンテンツの指標値の平均を判定用指標値として決定する。すなわち、情報処理装置100は、類似情報SLTに含まれるコンテンツ#45の指標値VL451やコンテンツ#35の指標値VL35の平均を判定用指標値として決定する。この場合、情報処理装置100は、コンテンツ#45の指標値VL451やコンテンツ#35の指標値VL35を加算することにより、類似コンテンツの指標値の合計値を算出する。そして、情報処理装置100は、類似コンテンツの指標値の合計値を、類似コンテンツ数で除することにより、判定用指標値を算出する。例えば、情報処理装置100は、類似コンテンツがコンテンツ#45とコンテンツ#35との2つである場合、指標値VL451と指標値VL35とを加算した合計値を類似コンテンツの数「2」で除することにより、判定用指標値を算出する。図1の例では、情報処理装置100は、判定用情報VLTに示すように、判定用指標値DVL11を決定する。 For example, the information processing apparatus 100 determines the average evaluation value (index value) of the similar content included in the similarity information SLT as the determination index value. In the example of FIG. 1, the information processing apparatus 100 determines the average of the index values of the similar content extracted in step S16 as the determination index value. That is, the information processing apparatus 100 determines the average of the index value VL451 of the content #45 and the index value VL35 of the content #35 included in the similarity information SLT as the determination index value. In this case, the information processing apparatus 100 adds the index value VL451 of the content #45 and the index value VL35 of the content #35 to calculate the total value of the index values of the similar content. Then, the information processing apparatus 100 divides the sum of the index values of the similar contents by the number of similar contents to calculate the index value for determination. For example, when there are two similar contents, namely, content #45 and content #35, the information processing apparatus 100 divides the total value obtained by adding the index value VL451 and the index value VL35 by the number of similar contents "2". Thus, the index value for determination is calculated. In the example of FIG. 1, the information processing apparatus 100 determines a determination index value DVL11 as shown in the determination information VLT.

なお、上記は一例であり、情報処理装置100は、類似情報SLTに含まれる類似コンテンツの指標値に基づけばどのような評価値(指標値)を判定用指標値として決定してもよい。例えば、情報処理装置100は、類似情報SLTのうち、最も高い指標値を判定用指標値として決定してもよい。例えば、情報処理装置100は、類似情報SLTのうち、最も低い指標値を判定用指標値として決定してもよい。例えば、情報処理装置100は、類似情報SLTのうち、最もコンテンツXに類似するコンテンツの指標値を判定用指標値として決定してもよい。 Note that the above is an example, and the information processing apparatus 100 may determine any evaluation value (index value) as the determination index value based on the index value of the similar content included in the similarity information SLT. For example, the information processing apparatus 100 may determine the highest index value among the similarity information SLT as the determination index value. For example, the information processing apparatus 100 may determine the lowest index value among the similarity information SLT as the determination index value. For example, the information processing apparatus 100 may determine the index value of the content most similar to the content X among the similarity information SLT as the determination index value.

そして、情報処理装置100は、判定用指標値を用いて判定処理を行う(ステップS18)。例えば、情報処理装置100は、判定用指標値と所定の閾値との比較により、コンテンツXが流行するかどうかを判定する。例えば、情報処理装置100は、判定用指標値が所定の閾値以上である場合、コンテンツXが流行すると判定する。例えば、情報処理装置100は、判定用指標値が所定の閾値未満である場合、コンテンツXが流行しないと判定する。図1の例では、情報処理装置100は、閾値情報TLTに示すような閾値TH11を用いて、判定処理を行う。例えば、閾値TH11は、500万円や1億円等の具体的な数値であるものとする。情報処理装置100は、閾値TH11を記憶した記憶部120(図3参照)から閾値TH11を取得してもよいし、外部の情報処理装置から閾値TH11を取得してもよい。例えば、情報処理装置100が記憶部120から閾値TH11を取得する場合、閾値TH11は記憶部120に格納されている。なお、以下では、閾値TH11が「1千万円」であり、判定用指標値DVL11が「3千万円」であるものとして説明する。 Then, the information processing apparatus 100 performs determination processing using the determination index value (step S18). For example, the information processing apparatus 100 determines whether the content X is popular by comparing the determination index value with a predetermined threshold value. For example, the information processing apparatus 100 determines that the content X is popular when the determination index value is equal to or greater than a predetermined threshold. For example, the information processing apparatus 100 determines that the content X is not popular when the determination index value is less than a predetermined threshold. In the example of FIG. 1, the information processing apparatus 100 performs determination processing using a threshold TH11 as indicated in the threshold information TLT. For example, the threshold TH11 is assumed to be a specific numerical value such as 5,000,000 yen or 100,000,000 yen. The information processing apparatus 100 may acquire the threshold TH11 from the storage unit 120 (see FIG. 3) storing the threshold TH11, or may acquire the threshold TH11 from an external information processing apparatus. For example, when the information processing apparatus 100 acquires the threshold TH11 from the storage unit 120 , the threshold TH11 is stored in the storage unit 120 . In the following description, it is assumed that the threshold TH11 is "10 million yen" and the determination index value DVL11 is "30 million yen".

上記のように、閾値TH11が「1千万円」であり、判定用指標値DVL11が「3千万円」であるため、情報処理装置100は、判定用指標値DVL11と所定の閾値TH11とを比較し、判定用指標値DVL11が所定の閾値TH11以上であると判定する。この場合、情報処理装置100は、判定用指標値DVL11が所定の閾値TH11以上であるという基準を満たすため、流行判定結果DRSに示すように、コンテンツXが流行すると判定する。 As described above, the threshold TH11 is "10 million yen" and the determination index value DVL11 is "30 million yen". are compared, and it is determined that the determination index value DVL11 is equal to or greater than a predetermined threshold TH11. In this case, the information processing apparatus 100 determines that the content X is popular, as indicated by the popularity determination result DRS, because the determination index value DVL11 satisfies the criterion that the determination index value DVL11 is equal to or greater than the predetermined threshold TH11.

そして、情報処理装置100は、判定結果に基づいてサービスを提供する。図1の例では、情報処理装置100は、コンテンツXが流行する可能性があるコンテンツ(流行コンテンツ)であることを示す情報(流行判定情報)を端末装置10に提供する(ステップS19)。例えば、情報処理装置100は、コンテンツXが流行コンテンツであることを示す流行判定情報を端末装置10に送信する。これにより、ユーザU1は、コンテンツXが流行する可能性があると判断することができる。 Then, the information processing apparatus 100 provides a service based on the determination result. In the example of FIG. 1, the information processing apparatus 100 provides the terminal device 10 with information (popularity determination information) indicating that the content X is likely to become popular (popular content) (step S19). For example, the information processing apparatus 100 transmits trend determination information indicating that the content X is trendy content to the terminal device 10 . Thereby, the user U1 can determine that the content X may become popular.

一方、情報処理装置100は、判定用指標値DVL11が所定の閾値TH11未満であると判定した場合、コンテンツXが流行しないと判定する。そして、情報処理装置100は、コンテンツXが流行しない可能性が高いことを示す流行判定情報を端末装置10に送信する。これにより、ユーザU1は、コンテンツXが流行しない可能性が高いと判断でき、コンテンツXの仕様変更等を行い流行するコンテンツの開発を行うことができる。 On the other hand, when determining that the determination index value DVL11 is less than the predetermined threshold TH11, the information processing apparatus 100 determines that the content X is not popular. Then, the information processing apparatus 100 transmits to the terminal device 10 popularity determination information indicating that there is a high possibility that the content X will not become popular. As a result, the user U1 can determine that there is a high possibility that the content X will not become popular, and can change the specifications of the content X to develop popular content.

上述したように、情報処理装置100は、グラフ情報GR11やインデックス情報IND11を用いて、ユーザU1から取得したコンテンツXの類似コンテンツを抽出する。例えば、情報処理装置100は、インデックス情報IND11を用いて、コンテンツXの類似コンテンツを抽出する際のグラフ情報GR11における起点ベクトルを決定する。そして、情報処理装置100は、決定した起点ベクトルを起点としてグラフ情報GR11を探索することにより、コンテンツXの類似コンテンツを抽出する。これにより、情報処理装置100は、類似のコンテンツを適切に抽出することができる。 As described above, the information processing apparatus 100 uses the graph information GR11 and the index information IND11 to extract content similar to the content X acquired from the user U1. For example, the information processing apparatus 100 uses the index information IND11 to determine the origin vector in the graph information GR11 when extracting content similar to the content X. FIG. Then, the information processing apparatus 100 extracts content similar to the content X by searching the graph information GR11 with the determined starting vector as a starting point. Accordingly, the information processing apparatus 100 can appropriately extract similar content.

例えば、情報処理装置100は、コンテンツXと類似するコンテンツ(類似コンテンツ)が、例えばコンテンツXと一見関係が無いように見える場合であっても、グラフ情報を用いることで、コンテンツXの類似コンテンツとして抽出でき、類似のコンテンツを適切に抽出することができる。例えば、ディープラーニングといった手法で、XXのゲームやYYの記事コンテンツ等の所定の目的に適したコンテンツを識別するという方法もあるが、所定の目的に適するかに影響する多種多様な要素が存在する場合においては、各要素の事例が少ないので、学習ができずに識別精度を向上させることが難しいという問題がある。例えば、ディープラーニングといった学習手法で生成したモデルを用いて、そのモデルにコンテンツの情報を入力し、出力されたスコアからそのコンテンツが所定の目的に適するかを識別するという方法もあるが、多種多様な要素が存在する場合においては、各要素の事例が少ないため、モデルの精度を向上させることが難しく、識別精度を向上させることが難しい。一方で、情報処理装置100は、各コンテンツから抽出した特徴を基に生成した複数のベクトルのグラフ構造化したグラフ情報を用いて検索を行うことにより、コンテンツのベクトルの比較によりコンテンツ間の類似度を判定し、一のコンテンツが複数のコンテンツに含まれるかどうかを適切に判定することができる。そのため、情報処理装置100は、類似のコンテンツを適切に抽出することができる。 For example, even if content similar to content X (similar content) does not seem to be related to content X at first glance, the information processing apparatus 100 uses the graph information to identify content similar to content X. can be extracted and similar content can be extracted appropriately. For example, there is a method of identifying content that is suitable for a given purpose, such as XX games or YY article content, using a technique such as deep learning, but there are a wide variety of factors that affect whether it is suitable for a given purpose. In this case, there is a problem that it is difficult to improve the accuracy of identification because there are few examples of each element. For example, there is a method of using a model generated by a learning method such as deep learning, inputting content information into the model, and identifying whether the content is suitable for a given purpose from the output score. When such elements exist, it is difficult to improve the accuracy of the model because there are few examples of each element, and it is difficult to improve the accuracy of identification. On the other hand, the information processing apparatus 100 performs a search using graph information in which a plurality of vectors are graph-structured and generated based on features extracted from each content. can be determined, and whether or not one content is included in a plurality of content can be appropriately determined. Therefore, the information processing apparatus 100 can appropriately extract similar content.

〔1-4.サービスについて〕
図1の例では、コンテンツが流行するかの判定を一例として説明したが、情報処理装置100は、抽出した類似コンテンツの情報を用いて種々のサービスを提供してもよい。この点について、以下説明する。
[1-4. About service]
In the example of FIG. 1, determination of whether content is popular has been described as an example, but the information processing apparatus 100 may provide various services using extracted similar content information. This point will be described below.

〔1-4-1.ユーザに関する情報提供〕
例えば、情報処理装置100は、抽出した類似コンテンツの情報を用いて、コンテンツを利用するユーザに関する情報を提供してもよい。例えば、情報処理装置100は、抽出した類似コンテンツの情報を用いて、一のコンテンツがどのようなユーザに利用されるかを示す情報を提供してもよい。
[1-4-1. Provision of information about users]
For example, the information processing apparatus 100 may provide information about the user who uses the content using the extracted similar content information. For example, the information processing apparatus 100 may use the extracted similar content information to provide information indicating what kind of users use one content.

図1の例では、情報処理装置100は、類似コンテンツであるコンテンツ#451やコンテンツ#35を利用するユーザの情報を用いて、コンテンツXがどのようなユーザに利用されるかを示す情報をユーザU1に提供してもよい。情報処理装置100は、類似コンテンツであるコンテンツ#451やコンテンツ#35を利用するユーザの情報を用いて、コンテンツXがどのようなユーザに利用されるかを示す情報(分析情報)をユーザU1に提供してもよい。例えば、情報処理装置100は、コンテンツ#451やコンテンツ#35を利用するユーザの属性情報を、ユーザU1に提供してもよい。例えば、情報処理装置100は、コンテンツ#451やコンテンツ#35を利用するユーザに20代男性が多い場合、コンテンツXが20代男性のユーザに利用される可能性が高いことを示す分析情報をユーザU1の端末装置10に送信してもよい。 In the example of FIG. 1 , the information processing apparatus 100 uses the information of the user who uses the content #451 and the content #35, which are similar contents, to provide the user with information indicating what kind of users will use the content X. It may be provided to U1. The information processing apparatus 100 uses the information of the user who uses the content #451 and the content #35, which are similar contents, to provide the user U1 with information (analysis information) indicating what kind of user uses the content X. may provide. For example, the information processing apparatus 100 may provide user U1 with attribute information of users who use content #451 and content #35. For example, when there are many male users in their twenties who use content #451 and content #35, the information processing apparatus 100 provides analysis information indicating that content X is likely to be used by male users in their twenties. You may transmit to the terminal device 10 of U1.

また、例えば、情報処理装置100は、コンテンツ#451やコンテンツ#35を利用するユーザのうち、各属性が占める割合を示す分析情報をユーザU1の端末装置10に送信してもよい。例えば、情報処理装置100は、コンテンツ#451やコンテンツ#35を利用するユーザのうち、男性が80%であり、女性が20%である場合、男性が80%であり、女性が20%であることを示す分析情報をユーザU1の端末装置10に送信してもよい。 Further, for example, the information processing apparatus 100 may transmit analysis information indicating the ratio of each attribute among users who use the content #451 or the content #35 to the terminal device 10 of the user U1. For example, if 80% of the users who use the content #451 or the content #35 are men and 20% are women, the information processing apparatus 100 determines that 80% are men and 20% are women. You may transmit the analysis information which shows that to the terminal device 10 of the user U1.

〔1-4-2.生成したコンテンツの判定〕
図1の例では、情報処理装置100がユーザU1から取得したコンテンツXの流行判定を行ったが、情報処理装置100は、コンテンツを生成し、生成したコンテンツの流行判定を行ってもよい。例えば、情報処理装置100は、アプリや動画コンテンツや音楽コンテンツや記事コンテンツ等のコンテンツを生成し、グラフ情報を用いて生成したコンテンツの類似コンテンツを抽出することにより、生成したコンテンツの流行判定を行ってもよい。この点について、図12を用いて説明する。図12は、コンテンツの流行判定の一例を示す図である。図12の例では、コンテンツがアプリである場合を示す。また、グラフ情報GR21は、図1中のグラフ情報GR11であってもよい。なお、図1と同様の点については適宜説明を省略する。
[1-4-2. Determination of Generated Content]
In the example of FIG. 1, the information processing apparatus 100 determines the popularity of the content X acquired from the user U1, but the information processing apparatus 100 may generate content and perform the popularity determination of the generated content. For example, the information processing apparatus 100 generates content such as an application, video content, music content, article content, etc., and extracts content similar to the generated content using graph information, thereby determining popularity of the generated content. may This point will be described with reference to FIG. FIG. 12 is a diagram illustrating an example of content popularity determination. The example of FIG. 12 shows a case where the content is an application. Also, the graph information GR21 may be the graph information GR11 in FIG. Note that description of the same points as in FIG. 1 will be omitted as appropriate.

まず、情報処理装置100は、コンテンツを生成する(ステップS51)。なお、ここでいうコンテンツの生成は、情報処理装置100自体が生成を行う場合と情報処理装置100が他の外部装置に要求してコンテンツを生成する場合が含まれるものとする。情報処理装置100は、自装置においてアプリYを生成してもよいし、他の外部装置にアプリYの生成を要求し、アプリYを生成した他の外部装置からアプリYを取得してもよい。例えば、情報処理装置100は、自動生成に関する技術を適宜用いて、ランダムにアプリYを生成してもよい。また、例えば、情報処理装置100は、コンテンツが楽曲等の音楽コンテンツである場合、過去の複数の楽曲から、数秒や数小節等の区間ごとの抽出しランダムに組み合わせることで、音楽コンテンツを生成してもよい。例えば、情報処理装置100は、過去に流行した複数の楽曲の区間をランダムに組合せることにより生成してもよい。例えば、情報処理装置100は、売上が所定の閾値(例えば10億円等)以上等の流行に関する条件を満たす複数の楽曲の区間を、ランダムに組合せることにより生成してもよい。なお、情報処理装置100は、上記に限らず、コンテンツを生成可能であれば、自動生成に関する技術やランダム生成等のどのような方法によりコンテンツを生成してもよい。例えば、情報処理装置100は、情報提供装置50にアプリYの生成を要求し、アプリYを生成した情報提供装置50からアプリYを取得してもよい。図12の例では、情報処理装置100は、アプリYを生成する。 First, the information processing device 100 generates content (step S51). It should be noted that the generation of content here includes the case where the information processing apparatus 100 itself generates the content and the case where the information processing apparatus 100 requests another external device to generate the content. The information processing apparatus 100 may generate the application Y on its own device, or may request another external device to generate the application Y and acquire the application Y from the other external device that generated the application Y. . For example, the information processing apparatus 100 may generate the application Y at random using a technique related to automatic generation as appropriate. Further, for example, when the content is music content such as music, the information processing apparatus 100 extracts sections of several seconds or several bars from a plurality of past music and randomly combines them to generate music content. may For example, the information processing apparatus 100 may generate by randomly combining sections of a plurality of popular songs in the past. For example, the information processing apparatus 100 may generate by randomly combining a plurality of music sections that satisfy a trend-related condition, such as sales exceeding a predetermined threshold value (for example, 1 billion yen). Note that the information processing apparatus 100 is not limited to the above method, and may generate content using any method such as a technique related to automatic generation or random generation as long as content can be generated. For example, the information processing apparatus 100 may request the information providing apparatus 50 to generate the application Y, and acquire the application Y from the information providing apparatus 50 that generated the application Y. In the example of FIG. 12, the information processing apparatus 100 generates application Y. In the example of FIG.

そして、情報処理装置100は、グラフ情報を用いてコンテンツの流行判定を行う(ステップS52)。図12の例では、情報処理装置100は、グラフ情報GR21を用いてアプリYの流行判定を行う。例えば、情報処理装置100は、生成した一のコンテンツ(アプリY)を対象として、アプリYに類似するコンテンツ(類似コンテンツ)の情報をグラフ情報GR21から抽出する。例えば、情報処理装置100は、アプリYに関するコンテンツ情報(コンテンツ情報YLD)を取得する。例えば、情報処理装置100は、グラフ情報GR21をグラフ情報記憶部123から取得する。例えば、情報処理装置100は、コンテンツの各々に対応する複数のノードが、複数のコンテンツの類似性に応じて連結されたグラフ情報GR21を取得する。そして、情報処理装置100は、モデル情報記憶部124に記憶されたモデルM1を用いて、アプリYのコンテンツ情報YDTからベクトル(ベクトルYVD)を生成する。 Then, the information processing apparatus 100 determines the popularity of the content using the graph information (step S52). In the example of FIG. 12, the information processing apparatus 100 determines popularity of the application Y using the graph information GR21. For example, the information processing apparatus 100 extracts information on content (similar content) similar to the application Y from the graph information GR21 for one generated content (application Y). For example, the information processing apparatus 100 acquires content information about application Y (content information YLD). For example, the information processing apparatus 100 acquires the graph information GR21 from the graph information storage unit 123. FIG. For example, the information processing apparatus 100 acquires graph information GR21 in which a plurality of nodes corresponding to each content are connected according to the similarity of the plurality of contents. Then, the information processing apparatus 100 generates a vector (vector YVD) from the content information YDT of the application Y using the model M1 stored in the model information storage unit 124 .

そして、情報処理装置100は、生成したベクトルYVDとインデックス情報を用いて起点ベクトルをノードYNE(図12中のアプリAP5に対応)に決定する。そして、情報処理装置100は、起点ベクトルであるノードYNEを起点としてグラフ情報GR21を検索することにより、アプリYの類似コンテンツ(類似グループ)を抽出する。例えば、情報処理装置100は、ノードYNEを起点として、グラフ情報GR21を探索することにより、所定数(例えば2個など)のノードを類似コンテンツとして抽出する。図12の例では、情報処理装置100は、類似コンテンツ範囲SAR11に含まれるアプリAP1(ノードNET1)やアプリAP5(ノードNET5)を類似コンテンツとして抽出する。 Then, the information processing apparatus 100 determines the origin vector to be the node YNE (corresponding to the application AP5 in FIG. 12) using the generated vector YVD and the index information. Then, the information processing apparatus 100 extracts similar content (similar group) of the application Y by searching the graph information GR21 with the node YNE, which is the starting vector, as the starting point. For example, the information processing apparatus 100 extracts a predetermined number (for example, two) of nodes as similar content by searching the graph information GR21 starting from the node YNE. In the example of FIG. 12, the information processing apparatus 100 extracts the application AP1 (node NET1) and the application AP5 (node NET5) included in the similar content range SAR11 as similar content.

そして、情報処理装置100は、抽出した類似コンテンツの指標値を用いて、アプリYが流行するかどうかを判定する。例えば、情報処理装置100は、類似コンテンツの指標値に関する情報を取得する。図12の例では、コンテンツの指標値として、そのコンテンツ(アプリ)のダウンロード数を用いるものとする。図12の例では、情報処理装置100は、コンテンツ情報記憶部121(図4参照)から類似コンテンツの指標値を取得する。そして、情報処理装置100は、判定に用いる指標値(判定用指標値)を決定する。図12の例では、情報処理装置100は、アプリAP1とアプリAP5とのうち、最もダウンロード数が多いアプリ(例えばアプリAP1)の指標値VLAP1を、判定用指標値(以下、「判定用指標値DVL51」とする)として決定する。指標値VLAP1は、5万回や100万回等の具体的な数値であるものとする。 Then, the information processing apparatus 100 determines whether or not the application Y is popular using the index value of the extracted similar content. For example, the information processing apparatus 100 acquires information about index values of similar content. In the example of FIG. 12, the number of downloads of the content (application) is used as the index value of the content. In the example of FIG. 12, the information processing apparatus 100 acquires the index value of similar content from the content information storage unit 121 (see FIG. 4). Then, the information processing apparatus 100 determines an index value used for determination (determination index value). In the example of FIG. 12 , the information processing apparatus 100 sets the index value VLAP1 of the application (for example, the application AP1) with the largest number of downloads among the application AP1 and the application AP5 to the determination index value (hereinafter referred to as the “determination index value DVL51”). The index value VLAP1 is assumed to be a specific numerical value such as 50,000 times or 1,000,000 times.

そして、情報処理装置100は、判定用指標値を用いて判定処理を行う。例えば、情報処理装置100は、判定用指標値と所定の閾値との比較により、コンテンツXが流行するかどうかを判定する。図12の例では、情報処理装置100は、閾値TH51を用いて、判定処理を行う。例えば、閾値TH11は、25万回や500万回等の具体的な数値であるものとする。情報処理装置100は、閾値TH51を記憶した記憶部120(図3参照)から閾値TH51を取得してもよいし、外部の情報処理装置から閾値TH51を取得してもよい。 Then, the information processing apparatus 100 performs determination processing using the determination index value. For example, the information processing apparatus 100 determines whether the content X is popular by comparing the determination index value with a predetermined threshold value. In the example of FIG. 12, the information processing apparatus 100 performs determination processing using the threshold TH51. For example, the threshold TH11 is assumed to be a specific numerical value such as 250,000 times or 5,000,000 times. The information processing apparatus 100 may acquire the threshold TH51 from the storage unit 120 (see FIG. 3) storing the threshold TH51, or may acquire the threshold TH51 from an external information processing apparatus.

例えば、情報処理装置100は、判定用指標値DVL51が所定の閾値TH51以上であると判定した場合、コンテンツXが流行すると判定する。一方、情報処理装置100は、判定用指標値DVL11が所定の閾値TH11未満であると判定した場合、コンテンツXが流行しないと判定する。このように、情報処理装置100は、生成したコンテンツの流行を判定することにより、流行するコンテンツを適切に生成することができる。また、情報処理装置100は、生成したコンテンツが流行する判定した場合、生成したコンテンツを販売やリリースすると決定してもよい。そして、情報処理装置100は、生成したコンテンツを端末装置10や情報提供装置50等の種々の外部装置に提供してもよい。 For example, when the information processing apparatus 100 determines that the determination index value DVL51 is equal to or greater than a predetermined threshold TH51, the information processing apparatus 100 determines that the content X is popular. On the other hand, when determining that the determination index value DVL11 is less than the predetermined threshold TH11, the information processing apparatus 100 determines that the content X is not popular. In this way, the information processing apparatus 100 can appropriately generate popular content by determining the popularity of the generated content. Further, the information processing apparatus 100 may decide to sell or release the generated content when determining that the generated content will become popular. The information processing device 100 may then provide the generated content to various external devices such as the terminal device 10 and the information providing device 50 .

〔1-5.インデックス情報〕
図1の例に示すインデックス情報(インデックスデータ)は一例であり、情報処理装置100は、種々のインデックス情報を用いて、グラフ情報を検索してもよい。また、例えば、情報処理装置100は、検索時に用いるインデックスデータを生成してもよい。例えば、情報処理装置100は、高次元ベクトルを検索する検索インデックスをインデックスデータとして生成する。ここでいう高次元ベクトルとは、例えば、数百次元から数千次元のベクトルであってもよいし、それ以上の次元のベクトルであってもよい。
[1-5. Index information]
The index information (index data) shown in the example of FIG. 1 is an example, and the information processing apparatus 100 may search graph information using various types of index information. Further, for example, the information processing apparatus 100 may generate index data used for searching. For example, the information processing apparatus 100 generates a search index for searching high-dimensional vectors as index data. The high-dimensional vector referred to here may be, for example, a vector with several hundred to several thousand dimensions, or a vector with more dimensions.

例えば、情報処理装置100は、図1に示すようなツリー構造(木構造)に関する検索インデックスをインデックスデータとして生成してもよい。例えば、情報処理装置100は、kd木(k-dimensional tree)に関する検索インデックスをインデックスデータとして生成してもよい。例えば、情報処理装置100は、VP木(Vantage-Point tree)に関する検索インデックスをインデックスデータとして生成してもよい。 For example, the information processing apparatus 100 may generate a search index related to a tree structure (tree structure) as shown in FIG. 1 as index data. For example, the information processing apparatus 100 may generate a search index for a kd-tree (k-dimensional tree) as index data. For example, the information processing apparatus 100 may generate a search index for a VP tree (Vantage-Point tree) as index data.

また、例えば、情報処理装置100は、その他の木構造を有するインデックスデータとして生成してもよい。例えば、情報処理装置100は、木構造のインデックスデータのリーフがグラフデータに接続する種々のインデックスデータを生成してもよい。例えば、情報処理装置100は、木構造のインデックスデータのリーフがグラフデータ中のノードに対応する種々のインデックスデータを生成してもよい。また、情報処理装置100は、このようなインデックスデータを用いて検索を行う場合、インデックスデータを辿って到達したリーフ(ノード)からグラフデータを探索してもよい。 Further, for example, the information processing apparatus 100 may generate index data having another tree structure. For example, the information processing apparatus 100 may generate various types of index data in which leaves of tree-structured index data are connected to graph data. For example, the information processing apparatus 100 may generate various types of index data in which leaves of the tree-structured index data correspond to nodes in the graph data. When performing a search using such index data, the information processing apparatus 100 may search for graph data from a leaf (node) reached by tracing the index data.

なお、上述したようなインデックスデータは一例であり、情報処理装置100は、グラフデータ中のクエリを高速に特定することが可能であれば、どのようなデータ構造のインデックスデータを生成してもよい。例えば、情報処理装置100は、クエリに対応するグラフ情報中のノードを高速に特定することが可能であれば、バイナリ空間分割に関する技術等の種々の従来技術を適宜用いて、インデックスデータを生成してもよい。例えば、情報処理装置100は、高次元ベクトルの検索に対応可能なインデックスであれば、どのようなデータ構造のインデックスデータを生成してもよい。例えば、情報処理装置100は、非特許文献1に記載されるようなグラフ型の検索インデックスに関する情報をインデックス情報として用いてもよい。情報処理装置100は、上述のようなインデックスデータとグラフデータとを用いることにより、所定のコンテンツに関するより効率的な検索を可能にすることができる。 Note that the index data as described above is merely an example, and the information processing apparatus 100 may generate index data having any data structure as long as the query in the graph data can be identified at high speed. . For example, the information processing apparatus 100 generates index data by appropriately using various conventional techniques such as a technique related to binary space division, as long as it is possible to identify a node in graph information corresponding to a query at high speed. may For example, the information processing apparatus 100 may generate index data having any data structure as long as the index is compatible with high-dimensional vector searches. For example, the information processing apparatus 100 may use information about a graph-type search index as described in Non-Patent Document 1 as index information. The information processing apparatus 100 can use the index data and the graph data as described above to enable a more efficient search for predetermined content.

〔2.情報処理システムの構成〕
図2に示すように、情報処理システム1は、端末装置10と、情報提供装置50と、情報処理装置100とが含まれる。端末装置10と、情報提供装置50と、情報処理装置100とは所定のネットワークNを介して、有線または無線により通信可能に接続される。図2は、実施形態に係る情報処理システムの構成例を示す図である。なお、図2に示した情報処理システム1には、複数台の端末装置10や、複数台の情報提供装置50や、複数台の情報処理装置100が含まれてもよい。
[2. Configuration of information processing system]
As shown in FIG. 2 , the information processing system 1 includes a terminal device 10 , an information providing device 50 and an information processing device 100 . The terminal device 10, the information providing device 50, and the information processing device 100 are connected via a predetermined network N so as to be communicable by wire or wirelessly. FIG. 2 is a diagram illustrating a configuration example of an information processing system according to the embodiment; The information processing system 1 shown in FIG. 2 may include multiple terminal devices 10 , multiple information providing devices 50 , and multiple information processing devices 100 .

端末装置10は、ユーザによって利用される情報処理装置である。端末装置10は、ユーザによる種々の操作を受け付ける。なお、以下では、端末装置10をユーザと表記する場合がある。すなわち、以下では、ユーザを端末装置10と読み替えることもできる。なお、上述した端末装置10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、デスクトップPCや、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。例えば、端末装置10は、所定のサーバシステムを管理者が利用する情報処理装置であってもよい。例えば、端末装置10は、コンテンツ情報を収集し、コンテンツ情報を情報処理装置100へ送信する。 The terminal device 10 is an information processing device used by a user. The terminal device 10 accepts various operations by the user. In addition, below, the terminal device 10 may be described as a user. That is, hereinafter, the user can also be read as the terminal device 10 . The terminal device 10 described above is implemented by, for example, a smart phone, a tablet terminal, a notebook PC (Personal Computer), a desktop PC, a mobile phone, a PDA (Personal Digital Assistant), or the like. For example, the terminal device 10 may be an information processing device in which a predetermined server system is used by an administrator. For example, the terminal device 10 collects content information and transmits the content information to the information processing device 100 .

情報処理装置100は、起点ベクトルを起点としてグラフ情報を検索することにより、複数のコンテンツのうち、一のコンテンツが複数のコンテンツに含まれるかどうかを判定する情報処理装置である。例えば、情報処理装置100は、一のコンテンツに関するコンテンツ情報を取得し、コンテンツ情報と、グラフ情報の検索の起点となる起点ベクトルに関する情報とに基づいて、起点ベクトルを決定する。 The information processing apparatus 100 is an information processing apparatus that determines whether or not one of a plurality of contents is included in a plurality of contents by retrieving graph information using an origin vector as a starting point. For example, the information processing apparatus 100 acquires content information related to one content, and determines an origin vector based on the content information and information related to an origin vector that is a starting point for searching graph information.

情報処理装置100は、ユーザ等に種々の情報提供を行うための情報が格納された情報処理装置である。例えば、情報処理装置100は、端末装置10から一のコンテンツのコンテンツ情報(以下、「クエリ情報」や「クエリ」ともいう)を取得すると、クエリに類似するコンテンツ(ベクトル情報等)を検索し、検索結果を端末装置10に提供する。図1の例では、情報処理装置100は、端末装置10から一のコンテンツのコンテンツ情報を取得すると、一のコンテンツに類似するコンテンツを検索し、検索結果を類似のコンテンツとして端末装置10に提供する。また、例えば、情報処理装置100が端末装置10に提供するデータは、コンテンツの名称やコンテンツのコンテンツ情報自体であってもよいし、URL(Uniform Resource Locator)等の対応するデータを参照するための情報であってもよい。 The information processing device 100 is an information processing device that stores information for providing various information to users and the like. For example, when the information processing device 100 acquires content information (hereinafter also referred to as “query information” or “query”) of one content from the terminal device 10, the information processing device 100 searches for content (vector information etc.) similar to the query, A search result is provided to the terminal device 10 . In the example of FIG. 1, the information processing apparatus 100 acquires content information of one content from the terminal device 10, searches for content similar to the one content, and provides the search result to the terminal device 10 as similar content. . Further, for example, the data provided by the information processing device 100 to the terminal device 10 may be the name of the content or the content information of the content itself, or a URL (Uniform Resource Locator) or other data for referring to corresponding data. It may be information.

情報提供装置50は、情報処理装置100に種々の情報提供を行うための情報が格納された情報処理装置である。例えば、情報提供装置50は、ウェブサーバ等の種々の外部装置から収集したコンテンツ情報等が格納されてもよい。例えば、情報提供装置50は、グラフ情報やインデックス情報やモデル等の種々の情報を情報処理装置100に提供する情報処理装置である。 The information providing device 50 is an information processing device that stores information for providing various information to the information processing device 100 . For example, the information providing device 50 may store content information and the like collected from various external devices such as web servers. For example, the information providing device 50 is an information processing device that provides various information such as graph information, index information, and models to the information processing device 100 .

〔3.情報処理装置の構成〕
次に、図3を用いて、実施形態に係る情報処理装置100の構成について説明する。図3は、実施形態に係る情報処理装置の構成例を示す図である。図3に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
[3. Configuration of Information Processing Device]
Next, the configuration of the information processing apparatus 100 according to the embodiment will be described using FIG. FIG. 3 is a diagram illustrating a configuration example of an information processing apparatus according to the embodiment; As shown in FIG. 3, the information processing apparatus 100 has a communication section 110, a storage section 120, and a control section . The information processing apparatus 100 includes an input unit (for example, a keyboard, a mouse, etc.) that receives various operations from an administrator of the information processing apparatus 100, and a display unit (for example, a liquid crystal display, etc.) for displaying various information. may have.

(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワーク(例えば図2中のネットワークN)と有線または無線で接続され、端末装置10や情報提供装置50との間で情報の送受信を行う。
(Communication unit 110)
The communication unit 110 is realized by, for example, a NIC (Network Interface Card) or the like. The communication unit 110 is connected to a network (for example, network N in FIG. 2) by wire or wirelessly, and transmits and receives information to and from the terminal device 10 and the information providing device 50 .

(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。実施形態に係る記憶部120は、図3に示すように、コンテンツ情報記憶部121と、インデックス情報記憶部122と、グラフ情報記憶部123と、モデル情報記憶部124とを有する。また、記憶部120は、閾値TH11等の情報を記憶してもよい。
(storage unit 120)
The storage unit 120 is realized by, for example, a semiconductor memory device such as a RAM (Random Access Memory) or a flash memory, or a storage device such as a hard disk or an optical disk. The storage unit 120 according to the embodiment has a content information storage unit 121, an index information storage unit 122, a graph information storage unit 123, and a model information storage unit 124, as shown in FIG. The storage unit 120 may also store information such as the threshold TH11.

(コンテンツ情報記憶部121)
実施形態に係るコンテンツ情報記憶部121は、コンテンツ(オブジェクト)に関する各種情報を記憶する。例えば、コンテンツ情報記憶部121は、コンテンツIDやベクトルデータを記憶する。図4の例では、コンテンツに関するコンテンツ情報を記憶する。図4は、実施形態に係るコンテンツ情報記憶部の一例を示す図である。図4に示すコンテンツ情報記憶部121は、「コンテンツID」、「コンテンツ」、「コンテンツ情報」、「指標値」、「ベクトル情報」といった項目が含まれる。
(Content information storage unit 121)
The content information storage unit 121 according to the embodiment stores various types of information regarding content (object). For example, the content information storage unit 121 stores content IDs and vector data. In the example of FIG. 4, content information about content is stored. 4 is a diagram illustrating an example of a content information storage unit according to the embodiment; FIG. The content information storage unit 121 shown in FIG. 4 includes items such as "content ID", "content", "content information", "index value", and "vector information".

「コンテンツID」は、コンテンツ(オブジェクト)を識別するための識別情報を示す。また、「コンテンツ」は、コンテンツIDにより識別されるコンテンツの具体的な名称や内容等を示す。なお、図4の例では、コンテンツを「コンテンツ#1」といった抽象的な符号で示すが、括弧内の「Aコンテンツ」等のように、コンテンツを特定するための文字情報等が含まれてもよい。「指標値」は、コンテンツIDにより識別されるコンテンツの所定の指標値を示す。例えば、「指標値」は、指標が「売上」である場合、コンテンツの売上を示す値であってもよい。また、例えば、コンテンツがアプリである場合、「指標値」は、ダウンロード数や利用ユーザ数等であってもよい。なお、「指標値」は、上記に限らず、コンテンツに関するものであれば、どのような指標値であってもよい。また、複数の指標値を用いる場合、「指標値」の項目は、用いる指標値の個数に応じた個数(複数個)であってもよい。なお、図4の例では、指標値を「VL1」といった抽象的な符号で示すが、1000や100万等、指標値に応じた具体的な数値が記憶されてもよい。 “Content ID” indicates identification information for identifying content (object). "Content" indicates the specific name, content, etc. of the content identified by the content ID. In the example of FIG. 4, the content is indicated by an abstract code such as "content #1". good. "Index value" indicates a predetermined index value of the content identified by the content ID. For example, if the index is "sales", the "index value" may be a value indicating sales of the content. Further, for example, when the content is an application, the "index value" may be the number of downloads, the number of users, or the like. Note that the “index value” is not limited to the above, and may be any index value as long as it relates to content. Further, when using a plurality of index values, the number of items of "index value" may correspond to the number of index values to be used (a plurality of items). In the example of FIG. 4, the index value is indicated by an abstract code such as "VL1", but a specific numerical value corresponding to the index value, such as 1000 or 1,000,000, may be stored.

「コンテンツ情報」は、コンテンツIDにより識別されるコンテンツに関する情報を示す。なお、図4の例では、コンテンツ情報を「CDT1」といった抽象的な符号で示すが、各コンテンツ情報は、コンテンツIDにより識別されるコンテンツのジャンル(カテゴリー)や内容等の種々のコンテンツに関する情報を含んでもよい。「ベクトル情報」とは、コンテンツIDにより識別されるコンテンツ(オブジェクト)に対応するベクトル情報を示す。すなわち、図4の例では、コンテンツ(オブジェクト)を識別するコンテンツIDに対して、オブジェクトに対応するベクトルデータ(ベクトル情報)が対応付けられて登録されている。 "Content information" indicates information about the content identified by the content ID. In the example of FIG. 4, the content information is indicated by an abstract code such as "CDT1", but each piece of content information contains information on various contents such as the content genre (category) and content identified by the content ID. may contain. “Vector information” indicates vector information corresponding to the content (object) identified by the content ID. That is, in the example of FIG. 4, the vector data (vector information) corresponding to the object is registered in association with the content ID that identifies the content (object).

例えば、図4の例では、コンテンツID「CT1」により識別されるコンテンツ(オブジェクト)は、「10,24,54,2...」の多次元(N次元)のベクトル情報が対応付けられることを示す。例えば、コンテンツ#1については、モデルM1等により、コンテンツ#1の特徴を示す「10,24,54,2...」の多次元(N次元)のベクトル情報がコンテンツ情報CDT1から抽出されたことを示す。また、図4の例では、コンテンツ#1の指標値は、「VL1」であることを示す。 For example, in the example of FIG. 4, the content (object) identified by the content ID “CT1” is associated with multidimensional (N-dimensional) vector information of “10, 24, 54, 2 . indicates For example, for the content #1, multidimensional (N-dimensional) vector information of "10, 24, 54, 2..." indicating the feature of the content #1 is extracted from the content information CDT1 by the model M1 or the like. indicates that Also, the example of FIG. 4 indicates that the index value of content #1 is "VL1".

なお、コンテンツ情報記憶部121は、上記に限らず、目的に応じて種々の情報を記憶してもよい。 Note that the content information storage unit 121 may store various types of information, not limited to the above, depending on the purpose.

(インデックス情報記憶部122)
実施形態に係るインデックス情報記憶部122は、インデックスに関する各種情報を記憶する。図5は、実施形態に係るインデックス情報記憶部の一例を示す図である。具体的には、図5の例では、インデックス情報記憶部122は、ツリー構造のインデックス情報を示す。図5の例では、インデックス情報記憶部122は、「ルート階層」、「第1階層」、「第2階層」、「第3階層」等といった項目が含まれる。なお、「第1階層」~「第3階層」に限らず、インデックスの階層数に応じて、「第4階層」、「第5階層」、「第6階層」等が含まれてもよい。
(Index information storage unit 122)
The index information storage unit 122 according to the embodiment stores various information regarding indexes. FIG. 5 is a diagram illustrating an example of an index information storage unit according to the embodiment; Specifically, in the example of FIG. 5, the index information storage unit 122 indicates tree-structured index information. In the example of FIG. 5, the index information storage unit 122 includes items such as "root layer", "first layer", "second layer", and "third layer". It should be noted that not only "first layer" to "third layer" but "fourth layer", "fifth layer", "sixth layer", etc. may be included according to the number of layers of the index.

「ルート階層」は、インデックスを用いた起点ノードの決定の開始点となるルート(最上位)の階層を示す。「第1階層」は、インデックスの第1階層に属するノード(節点またはグラフ情報中のベクトル)を識別(特定)する情報が格納される。「第1階層」に格納されるノードは、インデックスの根(ルート)に直接結ばれる階層に対応するノードとなる。 The “root hierarchy” indicates the root (top) hierarchy that is the starting point for determining the origin node using the index. "First layer" stores information for identifying (specifying) a node (node or vector in graph information) belonging to the first layer of the index. A node stored in the "first layer" is a node corresponding to a layer directly connected to the root of the index.

「第2階層」は、インデックスの第2階層に属するノード(節点またはグラフ情報中のベクトル)を識別(特定)する情報が格納される。「第2階層」に格納されるノードは、第1階層のノードに結ばれる直下の階層に対応するノードとなる。「第3階層」は、インデックスの第3階層に属するノード(節点またはグラフ情報中のベクトル)を識別(特定)する情報が格納される。「第3階層」に格納されるノードは、第2階層のノードに結ばれる直下の階層に対応するノードとなる。 "Second layer" stores information that identifies (specifies) a node (node or vector in graph information) belonging to the second layer of the index. A node stored in the "second layer" is a node corresponding to the immediately lower layer connected to a node in the first layer. "Third layer" stores information for identifying (specifying) a node (node or vector in graph information) belonging to the third layer of the index. A node stored in the "third layer" is a node corresponding to the immediately lower layer linked to a node in the second layer.

例えば、図5に示す例においては、インデックス情報記憶部122には、図1中のインデックス情報IND11に対応する情報が記憶される。例えば、インデックス情報記憶部122は、第1階層のノードが、節点VT1~VT3等であることを示す。また、各節点の下の括弧内の数値は、各節点に対応するベクトルの値を示す。 For example, in the example shown in FIG. 5, the index information storage unit 122 stores information corresponding to the index information IND11 in FIG. For example, the index information storage unit 122 indicates that the nodes of the first layer are the nodes VT1 to VT3. Numerical values in parentheses under each node indicate vector values corresponding to each node.

また、例えば、インデックス情報記憶部122は、節点VT2の直下の第2階層のノードが、節点VT2-1~VT2-4であることを示す。また、例えば、インデックス情報記憶部122は、節点VT2-2の直下の第3階層のノードが、ノードN35、ノードN451、ノードN693のグラフ情報GR11中のノード(ベクトル)であることを示す。 Also, for example, the index information storage unit 122 indicates that the nodes of the second layer immediately below the node VT2 are the nodes VT2-1 to VT2-4. Also, for example, the index information storage unit 122 indicates that the nodes in the third layer immediately below the node VT2-2 are the nodes (vectors) in the graph information GR11 of the nodes N35, N451, and N693.

なお、インデックス情報記憶部122は、上記に限らず、目的に応じて種々の情報を記憶してもよい。 It should be noted that the index information storage unit 122 may store various types of information, not limited to the above, depending on the purpose.

(グラフ情報記憶部123)
実施形態に係るグラフ情報記憶部123は、グラフ情報に関する各種情報を記憶する。図6は、実施形態に係るグラフ情報記憶部の一例を示す図である。図6の例では、グラフ情報記憶部123は、「ノードID」、「コンテンツID」、および「エッジ情報」といった項目を有する。また、「エッジ情報」には、「エッジID」や「参照先」といった情報が含まれる。
(Graph information storage unit 123)
The graph information storage unit 123 according to the embodiment stores various types of information regarding graph information. 6 is a diagram illustrating an example of a graph information storage unit according to the embodiment; FIG. In the example of FIG. 6, the graph information storage unit 123 has items such as "node ID", "content ID", and "edge information". "Edge information" includes information such as "edge ID" and "reference destination".

「ノードID」は、グラフデータにおける各ノード(コンテンツ)を識別するための識別情報を示す。また、「コンテンツID」は、コンテンツ(オブジェクト)を識別するための識別情報を示す。 "Node ID" indicates identification information for identifying each node (content) in graph data. "Content ID" indicates identification information for identifying the content (object).

また、「エッジ情報」は、対応するノードに接続されるエッジに関する情報を示す。図6の例では、「エッジ情報」は、エッジが有向エッジである場合を示し、対応するノードから出力される出力エッジに関する情報を示す。また、「エッジID」は、ノード間を連結するエッジを識別するための識別情報を示す。また、「参照先」は、エッジにより連結された参照先(ノード)を示す情報を示す。すなわち、図6の例では、ノードを識別するノードIDに対して、そのノードに対応するオブジェクト(コンテンツ)を識別する情報やそのノードからの有向エッジ(出力エッジ)が連結される参照先(ノード)が対応付けられて登録されている。 "Edge information" indicates information about edges connected to the corresponding node. In the example of FIG. 6, "edge information" indicates the case where the edge is a directed edge, and indicates information regarding the output edge output from the corresponding node. "Edge ID" indicates identification information for identifying an edge connecting nodes. "Reference destination" indicates information indicating a reference destination (node) connected by an edge. That is, in the example of FIG. 6, for a node ID that identifies a node, a reference destination ( node) are associated and registered.

例えば、図6の例では、ノードID「N1」により識別されるノード(ベクトル)は、コンテンツID「CT1」により識別されるコンテンツ(オブジェクト)に対応することを示す。また、ノードID「N1」により識別されるノードからは、エッジID「E11」により識別されるエッジが、ノードID「N25」により識別されるノード(ベクトル)に連結されることを示す。すなわち、図6の例では、ノードID「N1」により識別されるノード(ベクトル)からはノードID「N25」により識別されるノード(ベクトル)に辿ることができることを示す。 For example, the example of FIG. 6 indicates that the node (vector) identified by the node ID "N1" corresponds to the content (object) identified by the content ID "CT1". It also indicates that the edge identified by the edge ID "E11" is connected to the node (vector) identified by the node ID "N25" from the node identified by the node ID "N1". That is, the example of FIG. 6 indicates that the node (vector) identified by the node ID "N1" can be traced to the node (vector) identified by the node ID "N25".

なお、グラフ情報記憶部123は、上記に限らず、目的に応じて種々の情報を記憶してもよい。例えば、グラフ情報記憶部123は、各ノード(ベクトル)間を連結するエッジの長さが記憶されてもよい。すなわち、グラフ情報記憶部123は、各ノード(ベクトル)間の距離を示す情報が記憶されてもよい。 It should be noted that the graph information storage unit 123 may store various types of information, not limited to the above, depending on the purpose. For example, the graph information storage unit 123 may store lengths of edges connecting nodes (vectors). That is, the graph information storage unit 123 may store information indicating distances between nodes (vectors).

(モデル情報記憶部124)
実施形態に係るモデル情報記憶部124は、モデルに関する情報を記憶する。例えば、モデル情報記憶部124は、生成処理により生成されたモデル情報(モデルデータ)を記憶する。図7は、実施形態に係るモデル情報記憶部の一例を示す図である。図7に示すモデル情報記憶部124は、「モデルID」、「用途」、「モデルデータ」といった項目が含まれる。なお、図7では、モデルM1、M2のみを図示するが、M21、M22等、各用途(予測の対象)に応じて多数のモデル情報が記憶されてもよい。
(Model information storage unit 124)
The model information storage unit 124 according to the embodiment stores information about models. For example, the model information storage unit 124 stores model information (model data) generated by the generation process. 7 is a diagram illustrating an example of a model information storage unit according to the embodiment; FIG. The model information storage unit 124 shown in FIG. 7 includes items such as "model ID", "usage", and "model data". Although only the models M1 and M2 are illustrated in FIG. 7, a large number of model information such as M21 and M22 may be stored according to each application (prediction target).

「モデルID」は、モデルを識別するための識別情報を示す。例えば、モデルID「M1」により識別されるモデルは、図1の例に示したモデルM1に対応する。「用途」は、対応するモデルの用途を示す。また、「モデルデータ」は、対応付けられた対応するモデルのデータを示す。例えば、「モデルデータ」には、各層におけるノードと、各ノードが採用する関数と、ノードの接続関係と、ノード間の接続に対して設定される接続係数とを含む情報が含まれる。 "Model ID" indicates identification information for identifying a model. For example, the model identified by model ID "M1" corresponds to model M1 shown in the example of FIG. "Use" indicates the use of the corresponding model. Also, "model data" indicates the data of the associated corresponding model. For example, "model data" includes information including nodes in each layer, functions adopted by each node, connection relations of nodes, and connection coefficients set for connections between nodes.

例えば、図7に示す例において、モデルID「M1」により識別されるモデル(モデルM1)は、用途が「特徴抽出(アプリ)」であり、入力されたコンテンツ情報からの特徴の抽出に用いられることを示す。また、モデルM1のモデルデータは、モデルデータMDT1であることを示す。 For example, in the example shown in FIG. 7, the model (model M1) identified by the model ID "M1" is used for "feature extraction (application)" and is used to extract features from input content information. indicates that It also indicates that the model data of the model M1 is the model data MDT1.

モデルM1(モデルデータMDT1)は、コンテンツのコンテンツ情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたコンテンツ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、入力層に入力される情報と同様の情報を出力層から出力するよう、コンピュータを機能させるためのモデルである。 The model M1 (model data MDT1) includes an input layer to which content information of content is input, an output layer, and a first element belonging to any layer from the input layer to the output layer other than the output layer. , and a second element whose value is calculated based on the weight of the first element and the first element. It is a model for causing a computer to function so that the same information as that input to the input layer is output from the output layer by performing calculations based on the first element and the weight of the first element as elements.

また、モデルM1、M2等がDNN(Deep Neural Network)等、1つまたは複数の中間層を有するニューラルネットワークで実現されるとする。この場合、例えば、モデルM1、M2が含む第1要素は、入力層または中間層が有するいずれかのノードに対応する。また、第2要素は、第1要素と対応するノードから値が伝達されるノードである次段のノードに対応する。また、第1要素の重みは、第1要素と対応するノードから第2要素と対応するノードに伝達される値に対して考慮される重みである接続係数に対応する。 It is also assumed that the models M1, M2, etc. are implemented by a neural network having one or more intermediate layers, such as a DNN (Deep Neural Network). In this case, for example, the first element included in the models M1 and M2 corresponds to any node of the input layer or the intermediate layer. Also, the second element corresponds to the next node, which is a node to which the value is transmitted from the node corresponding to the first element. Also, the weight of the first element corresponds to the connection coefficient, which is the weight considered for the value transmitted from the node corresponding to the first element to the node corresponding to the second element.

ここで、モデルM21、M22等が「y=a1*x1+a2*x2+・・・+ai*xi」で示す回帰モデルで実現されるとする。この場合、例えば、モデルM21、M22が含む第1要素は、x1やx2等といった入力データ(xi)に対応する。また、第1要素の重みは、xiに対応する係数aiに対応する。ここで、回帰モデルは、入力層と出力層とを有する単純パーセプトロンと見做すことができる。各モデルを単純パーセプトロンと見做した場合、第1要素は、入力層が有するいずれかのノードに対応し、第2要素は、出力層が有するノードと見做すことができる。 Here, it is assumed that the models M21, M22, etc. are realized by a regression model represented by "y=a1*x1+a2*x2+...+ai*xi". In this case, for example, the first elements included in the models M21 and M22 correspond to input data (xi) such as x1 and x2. Also, the weight of the first element corresponds to the coefficient ai corresponding to xi. Here, the regression model can be viewed as a simple perceptron with an input layer and an output layer. When each model is regarded as a simple perceptron, the first element can be regarded as a node of the input layer, and the second element can be regarded as a node of the output layer.

なお、モデル情報記憶部124は、上記に限らず、目的に応じて種々のモデル情報を記憶してもよい。 It should be noted that the model information storage unit 124 may store various types of model information, not limited to the above, depending on the purpose.

(制御部130)
図3の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(情報処理プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。制御部130は、モデル情報記憶部124に記憶されているモデルM1、M2等に従った情報処理により、コンテンツのコンテンツ情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたコンテンツ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、入力層に入力される情報と同様の情報を出力層から出力する。
(control unit 130)
Returning to the description of FIG. 3, the control unit 130 is a controller, and is stored in a storage device inside the information processing apparatus 100 by, for example, a CPU (Central Processing Unit) or an MPU (Micro Processing Unit). Various programs (corresponding to an example of an information processing program) are executed by using the RAM as a work area. Also, the control unit 130 is a controller, and is implemented by an integrated circuit such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). The control unit 130 performs information processing according to the models M1, M2, etc. stored in the model information storage unit 124 to create an input layer to which content information of content is input, an output layer, and layers from the input layer to the output layer. A first element belonging to any layer other than the output layer and a second element whose value is calculated based on the first element and the weight of the first element, and is input to the input layer Information similar to the information input to the input layer is obtained by performing an operation based on the first element and the weight of the first element, with each element belonging to each layer other than the output layer as the first element. is output from the output layer.

図3に示すように、制御部130は、取得部131と、生成部132と、決定部133と、検索部134と、提供部135とを有し、以下に説明する情報処理の機能や作用を実現または実行する。なお、制御部130の内部構成は、図3に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。 As shown in FIG. 3, the control unit 130 includes an acquisition unit 131, a generation unit 132, a determination unit 133, a search unit 134, and a provision unit 135, and has information processing functions and actions described below. realize or perform Note that the internal configuration of the control unit 130 is not limited to the configuration shown in FIG. 3, and may be another configuration as long as it performs information processing described later.

(取得部131)
取得部131は、各種情報を取得する。例えば、取得部131は、記憶部120から各種情報を取得する。例えば、取得部131は、コンテンツ情報記憶部121や、インデックス情報記憶部122や、グラフ情報記憶部123や、モデル情報記憶部124等から各種情報を取得する。また、取得部131は、各種情報を外部の情報処理装置から取得する。取得部131は、端末装置10や情報提供装置50から各種情報を取得する。
(Acquisition unit 131)
Acquisition unit 131 acquires various types of information. For example, the acquisition unit 131 acquires various information from the storage unit 120 . For example, the acquisition unit 131 acquires various information from the content information storage unit 121, the index information storage unit 122, the graph information storage unit 123, the model information storage unit 124, and the like. The acquisition unit 131 also acquires various types of information from an external information processing device. The acquisition unit 131 acquires various types of information from the terminal device 10 and the information providing device 50 .

取得部131は、複数のコンテンツの各々に対応する複数のノードが、複数のコンテンツの類似性に応じて連結されたグラフ情報と、一のコンテンツに関するコンテンツ情報を取得する。取得部131は、複数のコンテンツの各々に対応する複数のベクトルが、複数のコンテンツの類似性に応じて連結されたグラフ情報と、一のコンテンツに関するコンテンツ情報を取得する。取得部131は、複数のコンテンツの各々の特徴を示す複数のベクトルが類似性に応じて連結されたグラフ情報を取得する。 The acquisition unit 131 acquires graph information in which a plurality of nodes corresponding to each of a plurality of contents are connected according to the similarity of the plurality of contents, and content information related to one content. The acquisition unit 131 acquires graph information in which a plurality of vectors corresponding to each of a plurality of contents are connected according to the similarity of the plurality of contents, and content information related to one content. Acquisition unit 131 acquires graph information in which a plurality of vectors representing features of each of a plurality of contents are connected according to similarity.

取得部131は、所定のモデルを用いて複数のコンテンツの各々から抽出された特徴量を要素とする複数のベクトルが、類似性に応じて連結されたグラフ情報を取得する。取得部131は、複数のコンテンツに関する情報を所定のモデルに入力することにより、抽出される複数のコンテンツの各々の特徴量を要素とする複数のベクトルが、類似性に応じて連結されたグラフ情報を取得する。 The acquiring unit 131 acquires graph information in which a plurality of vectors whose elements are feature amounts extracted from each of a plurality of contents using a predetermined model are connected according to similarity. By inputting information about a plurality of contents into a predetermined model, the acquisition unit 131 obtains graph information in which a plurality of vectors whose elements are feature amounts of each of the extracted contents are connected according to similarity. to get

取得部131は、類似コンテンツの流行に関する流行情報を取得する。取得部131は、類似コンテンツの流行に関する指標値を示す流行情報を取得する。取得部131は、ユーザが利用する端末装置から一のコンテンツに関するコンテンツ情報を取得する。 The acquisition unit 131 acquires trend information about the popularity of similar content. The acquisition unit 131 acquires popularity information indicating an index value relating to popularity of similar content. The acquisition unit 131 acquires content information regarding one content from the terminal device used by the user.

例えば、取得部131は、データ検索のコンテンツとなる複数のノード(ベクトル)を取得する。例えば、取得部131は、複数のノードと、複数のノードの各々を連結する複数の有向エッジを含む有向エッジ群を取得する。 For example, the acquisition unit 131 acquires a plurality of nodes (vectors) that serve as data search content. For example, the acquiring unit 131 acquires a directed edge group including a plurality of nodes and a plurality of directed edges connecting each of the plurality of nodes.

例えば、取得部131は、外部の情報処理装置からグラフ情報(グラフデータ)を取得する。例えば、取得部131は、グラフ情報記憶部123からグラフ情報を取得する。例えば、取得部131は、グラフ情報を取得する。図1の例では、取得部131は、グラフ情報GR11を取得する。 For example, the acquisition unit 131 acquires graph information (graph data) from an external information processing device. For example, the acquisition unit 131 acquires graph information from the graph information storage unit 123 . For example, the acquisition unit 131 acquires graph information. In the example of FIG. 1, the acquisition unit 131 acquires graph information GR11.

例えば、取得部131は、外部の情報処理装置からインデックス情報(インデックスデータ)を取得する。例えば、取得部131は、インデックス情報記憶部122からインデックス情報を取得する。例えば、取得部131は、木構造型のインデックス情報を取得する。図1の例では、取得部131は、インデックス情報IND11を取得する。 For example, the acquisition unit 131 acquires index information (index data) from an external information processing device. For example, the acquisition unit 131 acquires index information from the index information storage unit 122 . For example, the acquisition unit 131 acquires tree-structured index information. In the example of FIG. 1, the acquisition unit 131 acquires index information IND11.

また、取得部131は、ユーザが利用する端末装置10から一のコンテンツに関するコンテンツ情報を取得する。例えば、取得部131は、検索クエリとして、一のコンテンツのコンテンツ情報を取得する。例えば、取得部131は、コンテンツに関する検索クエリを取得する。取得部131は、ユーザU1が利用する端末装置10からコンテンツXに関するコンテンツ情報CDT11を取得する。 In addition, the acquisition unit 131 acquires content information regarding one content from the terminal device 10 used by the user. For example, the acquisition unit 131 acquires content information of one content as a search query. For example, the acquisition unit 131 acquires a search query regarding content. The acquisition unit 131 acquires the content information CDT11 regarding the content X from the terminal device 10 used by the user U1.

例えば、取得部131は、一のコンテンツに関するコンテンツ情報を取得する。例えば、取得部131は、端末装置10からコンテンツXに関するコンテンツ情報CDT11を取得する。例えば、取得部131は、グラフ情報記憶部123からコンテンツに関するグラフ情報GR11を取得する。また、例えば、取得部131は、インデックス情報記憶部122(図5参照)から、グラフ情報GR11における検索の起点となるノード(起点ベクトル)の決定に用いるインデックス情報IND11を取得する。 For example, the acquisition unit 131 acquires content information related to one content. For example, the acquisition unit 131 acquires the content information CDT11 regarding the content X from the terminal device 10 . For example, the acquisition unit 131 acquires the graph information GR11 regarding the content from the graph information storage unit 123. FIG. Further, for example, the acquiring unit 131 acquires index information IND11 used for determining a node (originating vector) serving as a starting point for searching in the graph information GR11 from the index information storage unit 122 (see FIG. 5).

図1の例では、取得部131は、コンテンツ情報記憶部121(図4参照)から類似コンテンツの指標値を取得する。取得部131は、類似情報SLTに示すようなノードN451(コンテンツ#451)の指標値VL451やノードN35(コンテンツ#35)の指標値VL35等の情報を取得する。また、取得部131は、閾値TH11を記憶した記憶部120から閾値TH11を取得する。 In the example of FIG. 1, the acquisition unit 131 acquires index values of similar content from the content information storage unit 121 (see FIG. 4). The acquisition unit 131 acquires information such as the index value VL451 of the node N451 (content #451) and the index value VL35 of the node N35 (content #35) as shown in the similarity information SLT. Further, the acquiring unit 131 acquires the threshold TH11 from the storage unit 120 storing the threshold TH11.

(生成部132)
生成部132は、各種情報を生成する。例えば、生成部132は、コンテンツ情報記憶部121に記憶された学習データ(コンテンツ情報)を用いて、モデル情報記憶部124に示すようなモデルを生成する。例えば、生成部132は、取得部131により取得された学習データに基づいて、入力したコンテンツ情報と同様の情報を出力するモデル(オートエンコーダ)を生成する。例えば、生成部132は、入力するコンテンツ情報自体を正解情報として、入力したコンテンツ情報と同様の情報を出力するモデル(オートエンコーダ)を生成する。
(Generating unit 132)
The generator 132 generates various types of information. For example, the generation unit 132 generates a model shown in the model information storage unit 124 using learning data (content information) stored in the content information storage unit 121 . For example, the generation unit 132 generates a model (autoencoder) that outputs information similar to the input content information based on the learning data acquired by the acquisition unit 131 . For example, the generation unit 132 generates a model (autoencoder) that outputs information similar to the input content information, using the input content information itself as correct information.

例えば、生成部132は、モデルM1等を生成し、生成したモデルM1等をモデル情報記憶部124に格納する。なお、生成部132は、いかなる学習アルゴリズムを用いてモデルM1を生成してもよい。例えば、生成部132は、ニューラルネットワーク(neural network)等の学習アルゴリズムを用いてモデルM1を生成する。一例として、生成部132がニューラルネットワークを用いてモデルM1等を生成する場合、モデルM1等は、一以上のニューロンを含む入力層と、一以上のニューロンを含む中間層と、一以上のニューロンを含む出力層とを有する。 For example, the generation unit 132 generates the model M1 and the like, and stores the generated model M1 and the like in the model information storage unit 124 . Note that the generation unit 132 may generate the model M1 using any learning algorithm. For example, the generator 132 generates the model M1 using a learning algorithm such as a neural network. As an example, when the generation unit 132 generates the model M1 or the like using a neural network, the model M1 or the like includes an input layer including one or more neurons, an intermediate layer including one or more neurons, and one or more neurons. and an output layer containing

生成部132は、コンテンツのコンテンツ情報が入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力されたコンテンツ情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、入力層に入力される情報と同様の情報を出力層から出力するモデルを生成する。 The generation unit 132 generates an input layer to which content information of a content is input, an output layer, a first element belonging to any layer from the input layer to the output layer other than the output layer, and a first element and a second element whose value is calculated based on the weight of the first element. By performing calculations based on the one element and the weight of the first element, a model is generated in which the same information as that input to the input layer is output from the output layer.

例えば、生成部132は、学習データに基づいてモデルを生成する。例えば、生成部132は、コンテンツ情報記憶部121中のコンテンツ情報CDT1、CDT2等を学習データ(教師データ)として、学習を行なうことにより、モデルを生成する。 For example, the generator 132 generates a model based on learning data. For example, the generation unit 132 generates a model by performing learning using the content information CDT1, CDT2, etc. in the content information storage unit 121 as learning data (teaching data).

例えば、生成部132は、コンテンツ情報CDT1が入力された場合に、モデルM1がコンテンツ情報CDT1と同様の情報を出力するように、学習処理を行う。例えば、生成部132は、コンテンツ情報CDT2が入力された場合に、モデルM1がコンテンツ情報CDT2と同様の情報を出力するように、学習処理を行う。 For example, when the content information CDT1 is input, the generation unit 132 performs learning processing so that the model M1 outputs information similar to the content information CDT1. For example, when the content information CDT2 is input, the generation unit 132 performs learning processing so that the model M1 outputs information similar to the content information CDT2.

なお、生成部132は、オートエンコーダとしてのモデルM1に限らず、種々の学習アルゴリズムを用いてコンテンツ(入館)に対応するモデルM21やコンテンツ(入国)に対応するモデルM22等を生成してもよい。例えば、生成部132は、ニューラルネットワーク(neural network)、サポートベクターマシン(SVM)、クラスタリング、強化学習等の学習アルゴリズムを用いてモデルM21、M22等を生成する。一例として、生成部132がニューラルネットワークを用いてモデルM21、M22等を生成する場合、モデルM21、M22等は、一以上のニューロンを含む入力層と、一以上のニューロンを含む中間層と、一以上のニューロンを含む出力層とを有する。なお、情報処理装置100は、情報提供装置50等の他の外部装置からモデルを取得する場合、生成部132を有しなくてもよい。 Note that the generation unit 132 is not limited to the model M1 as an autoencoder, and may generate a model M21 corresponding to content (entrance), a model M22 corresponding to content (entry into a building), and the like using various learning algorithms. . For example, the generation unit 132 generates the models M21, M22, etc. using learning algorithms such as neural networks, support vector machines (SVM), clustering, and reinforcement learning. As an example, when the generation unit 132 generates the models M21, M22, etc. using a neural network, the models M21, M22, etc. include an input layer including one or more neurons, an intermediate layer including one or more neurons, and a and an output layer containing the above neurons. Note that the information processing apparatus 100 may not have the generation unit 132 when acquiring a model from another external apparatus such as the information providing apparatus 50 .

図1の例では、生成部132は、コンテンツ情報の特徴を抽出するモデルを用いて各コンテンツのコンテンツ情報からN次元ベクトルを生成する。生成部132は、モデル情報記憶部124(図7)に示すモデルM1を用いて、各コンテンツのコンテンツ情報からベクトルを生成する。 In the example of FIG. 1, the generation unit 132 generates an N-dimensional vector from content information of each content using a model for extracting features of content information. The generating unit 132 generates a vector from the content information of each content using the model M1 shown in the model information storage unit 124 (FIG. 7).

また、生成部132は、一のコンテンツに対応するコンテンツ情報からグラフ情報の探索に用いるベクトルを生成する。図1の例では、生成部132は、処理群PS11に示すような処理により、コンテンツXに対応するベクトルを生成する。生成部132は、コンテンツXに関するコンテンツ情報CDT11をモデルM1に入力する。具体的には、生成部132は、コンテンツXのジャンル(カテゴリー)や内容等の情報を含むコンテンツ情報CDT11をモデルM1に入力する。そして、生成部132は、コンテンツ情報CDT11の入力後のモデルM1中の情報を用いて、ベクトルを生成する。例えば、生成部132は、コンテンツ情報CDT11が入力されたモデルM1中の各要素を用いて、ベクトルデータを生成する。 Further, the generation unit 132 generates a vector used for searching graph information from content information corresponding to one content. In the example of FIG. 1, the generation unit 132 generates a vector corresponding to the content X by performing the processing shown in the processing group PS11. The generation unit 132 inputs the content information CDT11 regarding the content X to the model M1. Specifically, the generation unit 132 inputs content information CDT11 including information such as the genre (category) and details of the content X to the model M1. Then, the generation unit 132 generates a vector using the information in the model M1 after the input of the content information CDT11. For example, the generator 132 generates vector data using each element in the model M1 to which the content information CDT11 is input.

図1の例では、生成部132は、コンテンツ情報CDT11が入力されたモデルM1中の各要素の値を用いて、ベクトルVD11を生成する。例えば、生成部132は、コンテンツXのコンテンツ情報CDT11が入力された場合における、モデルM1のニューロンNL1に対応する値VE1(図10参照)やニューロンNL2に対応する値VE2(図10参照)を用いて、ベクトルを生成する。例えば、生成部132は、コンテンツXのコンテンツ情報CDT11が入力された場合に、算出されるニューロンNL1に対応する値VE1をベクトルVD11の1次元目の要素として抽出してもよい。また、例えば、生成部132は、コンテンツのコンテンツ情報が入力された場合に、算出されるニューロンNL2に対応する値VE2をベクトルVD11の2次元目の要素として、ベクトルVD11を生成する。図1の例では、生成部132は、1次元目の要素が「35」であり、2次元目の要素が「63」であるようなベクトルVD11を生成する。 In the example of FIG. 1, the generator 132 generates the vector VD11 using the values of the elements in the model M1 to which the content information CDT11 is input. For example, the generation unit 132 uses the value VE1 (see FIG. 10) corresponding to the neuron NL1 and the value VE2 (see FIG. 10) corresponding to the neuron NL2 of the model M1 when the content information CDT11 of the content X is input. to generate a vector. For example, when the content information CDT11 of the content X is input, the generation unit 132 may extract the calculated value VE1 corresponding to the neuron NL1 as the first-dimensional element of the vector VD11. Further, for example, when the content information of the content is input, the generating unit 132 generates the vector VD11 by using the calculated value VE2 corresponding to the neuron NL2 as the second-dimensional element of the vector VD11. In the example of FIG. 1, the generator 132 generates a vector VD11 whose first-dimensional element is "35" and whose second-dimensional element is "63."

(決定部133)
決定部133は、各種情報を決定する。決定部133は、起点ノードの決定に用いるインデックス情報に基づいて、起点ノードを決定する。例えば、決定部133は、取得部131により取得されたコンテンツ情報と、グラフ情報の検索の起点となる起点ベクトルに関する情報とに基づいて、起点ベクトルを決定する。例えば、決定部133は、コンテンツ情報と、グラフ情報の検索の起点ベクトルの決定の基準となる情報とに基づいて、起点ベクトルを決定する。また、決定部133は、起点ベクトルの決定に用いるインデックス情報に基づいて、起点ベクトルを決定する。また、決定部133は、木構造型のインデックス情報に基づいて、起点ベクトルを決定する。
(Determination unit 133)
The determination unit 133 determines various types of information. The determination unit 133 determines the origin node based on the index information used for determining the origin node. For example, the determination unit 133 determines the origin vector based on the content information acquired by the acquisition unit 131 and the information on the origin vector that is the origin of the graph information search. For example, the determination unit 133 determines the starting vector based on the content information and information that serves as a reference for determining the starting vector for searching graph information. Further, the determination unit 133 determines the origin vector based on the index information used for determining the origin vector. Further, the determination unit 133 determines the origin vector based on the tree-structured index information.

図1の例では、決定部133は、一のコンテンツ(クエリ)に対応する起点ベクトルを決定(特定)するために、インデックス情報IND11を用いる。例えば、決定部133は、コンテンツXのベクトルVD11に対応する起点ベクトルを決定(特定)するために、インデックス情報IND11を用いる。決定部133は、ベクトルVD11とインデックス情報IND11とを用いて、グラフ情報GR11における起点ベクトルを決定する。 In the example of FIG. 1, the determination unit 133 uses the index information IND11 to determine (specify) the origin vector corresponding to one content (query). For example, the determination unit 133 uses the index information IND11 to determine (specify) the origin vector corresponding to the vector VD11 of the content X. FIG. The determining unit 133 determines the starting vector in the graph information GR11 using the vector VD11 and the index information IND11.

例えば、決定部133は、図1中のインデックス情報IND11に示すような木構造型のインデックス情報を用いて、グラフ情報GR11における起点ベクトルを決定する。図1の例では、決定部133は、ベクトルVD11を生成した後、インデックス情報IND11を上から下へ辿ることにより、インデックス情報IND11の近傍候補となる起点ベクトルを特定することにより、効率的に検索クエリ(一のコンテンツ)に対応する起点ベクトルを決定する。 For example, the determining unit 133 determines the origin vector in the graph information GR11 using tree-structured index information as indicated by the index information IND11 in FIG. In the example of FIG. 1, after generating the vector VD11, the determination unit 133 traces the index information IND11 from top to bottom to identify the origin vector that is a candidate for the neighborhood of the index information IND11, thereby efficiently searching. Determine the origin vector corresponding to the query (a piece of content).

例えば、決定部133は、インデックス情報IND11をルートRTからリーフノード(グラフ情報GR11中のノード(ベクトル))まで辿ることにより、ベクトルVD11に対応する起点ベクトルを決定する。図1の例では、決定部133は、インデックス情報IND11をルートRTからノードN451まで辿ることにより、ノードN451を起点ベクトルとして決定する。 For example, the determining unit 133 determines the origin vector corresponding to the vector VD11 by tracing the index information IND11 from the root RT to leaf nodes (nodes (vectors) in the graph information GR11). In the example of FIG. 1, the determining unit 133 determines the node N451 as the origin vector by tracing the index information IND11 from the root RT to the node N451.

決定部133は、判定に用いる指標値(判定用指標値)を決定する。図1の例では、決定部133は、類似情報SLTに示すようなノードN451(コンテンツ#451)の指標値VL451やノードN35(コンテンツ#35)の指標値VL35等の情報に基づいて、判定用指標値を決定する。 The determination unit 133 determines an index value (determination index value) used for determination. In the example of FIG. 1 , the determination unit 133 determines the similarity information SLT based on information such as the index value VL451 of the node N451 (content #451) and the index value VL35 of the node N35 (content #35). Determine the index value.

図1の例では、決定部133は、類似情報SLTに含まれる類似コンテンツの指標値の平均を判定用指標値として決定する。決定部133は、類似コンテンツの指標値の平均を判定用指標値として決定する。決定部133は、類似情報SLTに含まれるコンテンツ#45の指標値VL451やコンテンツ#35の指標値VL35の平均を判定用指標値として決定する。この場合、決定部133は、コンテンツ#45の指標値VL451やコンテンツ#35の指標値VL35を加算することにより、類似コンテンツの指標値の合計値を算出する。そして、決定部133は、類似コンテンツの指標値の合計値を、類似コンテンツ数で除することにより、判定用指標値を算出する。例えば、決定部133は、類似コンテンツがコンテンツ#45とコンテンツ#35との2つである場合、指標値VL451と指標値VL35とを加算した合計値を類似コンテンツの数「2」で除することにより、判定用指標値を算出する。図1の例では、決定部133は、判定用情報VLTに示すように、判定用指標値DVL11を決定する。 In the example of FIG. 1, the determination unit 133 determines the average of the index values of the similar content included in the similarity information SLT as the determination index value. The determination unit 133 determines the average of the index values of the similar content as the determination index value. The determination unit 133 determines the average of the index value VL451 of the content #45 and the index value VL35 of the content #35 included in the similarity information SLT as the determination index value. In this case, the determination unit 133 adds the index value VL451 of the content #45 and the index value VL35 of the content #35 to calculate the total value of the index values of the similar content. Then, the determination unit 133 divides the sum of the index values of the similar contents by the number of similar contents to calculate the index value for determination. For example, when there are two similar contents, namely, the content #45 and the content #35, the determination unit 133 divides the total value obtained by adding the index value VL451 and the index value VL35 by the number of similar contents "2". Then, the index value for judgment is calculated. In the example of FIG. 1, the determination unit 133 determines the determination index value DVL11 as shown in the determination information VLT.

決定部133は、類似情報SLTに含まれる類似コンテンツの指標値に基づけばどのような指標値を判定用指標値として決定してもよい。例えば、決定部133は、類似情報SLTのうち、最も高い指標値を判定用指標値として決定してもよい。例えば、決定部133は、類似情報SLTのうち、最も低い指標値を判定用指標値として決定してもよい。例えば、決定部133は、類似情報SLTのうち、最もコンテンツXに類似するコンテンツの指標値を判定用指標値として決定してもよい。 The determination unit 133 may determine any index value as the determination index value based on the index value of the similar content included in the similarity information SLT. For example, the determination unit 133 may determine the highest index value among the similarity information SLT as the determination index value. For example, the determination unit 133 may determine the lowest index value among the similarity information SLT as the determination index value. For example, the determination unit 133 may determine the index value of the content most similar to the content X among the similarity information SLT as the determination index value.

(検索部134)
検索部134は、各種情報を検索する。例えば、検索部134は、取得部131により取得された情報を用いて、各種情報を検索する。例えば、検索部134は、各種情報を抽出する。例えば、検索部134は、取得部131により取得された情報を用いて、各種情報を抽出する。例えば、検索部134は、各種判定処理を行う。例えば、検索部134は、取得部131により取得された情報を用いて、各種情報を判定する。例えば、検索部134は、記憶部120に記憶された各種情報を検索する。例えば、取得部131は、コンテンツ情報記憶部121や、インデックス情報記憶部122や、グラフ情報記憶部123や、モデル情報記憶部124等に記憶された各種情報を検索する。例えば、検索部134は、各種情報を用いて算出処理を行う。例えば、検索部134は、ベクトルに関する情報を用いて、ベクトル間の距離を算出する。例えば、検索部134は、グラフ情報記憶部123に記憶された各ノード(ベクトル)間を連結するエッジの長さ(距離)の情報を用いてもよいし、各ノードのベクトル情報から各ノード(ベクトル)間を連結するエッジの長さ(距離)の情報を算出し、算出した長さ(距離)の情報を用いてもよい。
(Search unit 134)
The search unit 134 searches for various types of information. For example, the search unit 134 searches various information using the information acquired by the acquisition unit 131 . For example, the search unit 134 extracts various information. For example, the search unit 134 uses information acquired by the acquisition unit 131 to extract various types of information. For example, the search unit 134 performs various determination processes. For example, the search unit 134 uses information acquired by the acquisition unit 131 to determine various types of information. For example, the search unit 134 searches various information stored in the storage unit 120 . For example, the acquisition unit 131 searches various information stored in the content information storage unit 121, the index information storage unit 122, the graph information storage unit 123, the model information storage unit 124, and the like. For example, the search unit 134 performs calculation processing using various information. For example, the search unit 134 uses information about vectors to calculate the distance between the vectors. For example, the search unit 134 may use information on the length (distance) of edges connecting nodes (vectors) stored in the graph information storage unit 123, or may use vector information on each node ( It is also possible to calculate information on the length (distance) of the edge connecting the vectors) and use the information on the calculated length (distance).

検索部134は、取得部131により取得されたグラフ情報の複数のノードのうち、所定の基準に基づいて決定されたグラフ情報の検索の起点となる起点ノードを起点として、グラフ情報を検索することにより、複数のコンテンツのうち、一のコンテンツと類似するコンテンツである類似コンテンツを抽出する。検索部134は、決定部133により決定された起点ノードを起点として、類似コンテンツを抽出する。 The retrieving unit 134 retrieves graph information starting from a starting node, which is determined based on a predetermined criterion, among the plurality of nodes of the graph information acquired by the acquiring unit 131. extracts similar content, which is content similar to one content, from among a plurality of contents. The search unit 134 extracts similar content starting from the starting node determined by the determining unit 133 .

検索部134は、取得部131により取得された流行情報に基づいて、一のコンテンツが流行するかどうかを判定する。検索部134は、類似コンテンツの指標値が所定の基準を満たす場合、一のコンテンツを流行する可能性がある流行コンテンツであると判定する。検索部134は、類似コンテンツの指標値と所定の閾値とを比較し、類似コンテンツの指標値が所定の閾値以上である場合、一のコンテンツを流行コンテンツであると判定する。 The search unit 134 determines whether one content is popular based on the trend information acquired by the acquisition unit 131 . When the index value of similar content satisfies a predetermined criterion, the search unit 134 determines that one content is popular content that may become popular. The search unit 134 compares the index value of similar content with a predetermined threshold value, and determines that one piece of content is popular content when the index value of similar content is equal to or greater than the predetermined threshold value.

検索部134は、取得部131により取得されたグラフ情報の複数のベクトルのうち、所定の基準に基づいて決定されたグラフ情報の検索の起点となる起点ベクトルを起点としてグラフ情報を検索することにより、複数のコンテンツのうち、一のコンテンツに類似するコンテンツである類似コンテンツを抽出する。検索部134は、各種情報を抽出する。例えば、検索部134は、決定部133により決定された起点ベクトルを起点としてグラフ情報を検索することにより、複数のコンテンツのうち、一のコンテンツに類似するコンテンツである類似コンテンツを抽出する。 The retrieving unit 134 retrieves the graph information from among the plurality of vectors of the graph information acquired by the acquiring unit 131, starting from the starting vector that is the starting point for searching the graph information determined based on a predetermined criterion. , to extract similar content that is content similar to one content from among a plurality of content. The search unit 134 extracts various information. For example, the search unit 134 extracts similar content, which is content similar to one content, from among a plurality of pieces of content by searching for graph information using the starting point vector determined by the determination unit 133 as a starting point.

検索部134は、取得部131により取得されたグラフ情報の複数のノードのうち、所定の基準に基づいて決定されたグラフ情報の検索の起点となる起点ノードを起点として、グラフ情報を検索することにより、一のコンテンツが複数のコンテンツに含まれるかどうかを判定する。検索部134は、決定部133により決定された起点ノードを起点として、一のコンテンツが複数のコンテンツに含まれるかどうかを判定する。 The retrieving unit 134 retrieves graph information starting from a starting node, which is determined based on a predetermined criterion, among the plurality of nodes of the graph information acquired by the acquiring unit 131. determines whether one piece of content is included in a plurality of pieces of content. The search unit 134 determines whether one piece of content is included in a plurality of pieces of content, starting from the starting point node determined by the determination unit 133 .

図1の例では、検索部134は、コンテンツXに類似するコンテンツを検索する。例えば、検索部134は、グラフ情報GR11を検索することにより、コンテンツXの類似コンテンツを抽出する。検索部134は、ノードN451の近傍に位置するノードを類似コンテンツとして抽出する。例えば、検索部134は、ノードN451からの距離が近いノードを類似コンテンツとして抽出する。例えば、検索部134は、ノードN451を起点として、エッジを辿ることにより、ノードN451から到達可能なノードを類似コンテンツとして抽出する。例えば、検索部134は、所定数(例えば、2個や10個等)のノードを類似コンテンツとして抽出する。例えば、検索部134は、図11に示すような検索処理により、コンテンツXの類似コンテンツを抽出する。図1の例では、検索部134は、ノードN451を起点として、グラフ情報GR11を探索することにより、ノードN451やノードN35を類似コンテンツとして抽出する。 In the example of FIG. 1, the search unit 134 searches for content similar to the content X. FIG. For example, the search unit 134 extracts content similar to the content X by searching the graph information GR11. The search unit 134 extracts nodes located near the node N451 as similar content. For example, the search unit 134 extracts nodes that are close to the node N451 as similar content. For example, the search unit 134 extracts nodes reachable from the node N451 as similar content by tracing edges starting from the node N451. For example, the search unit 134 extracts a predetermined number (for example, 2 or 10) of nodes as similar content. For example, the search unit 134 extracts content similar to the content X through search processing as shown in FIG. In the example of FIG. 1, the search unit 134 extracts the node N451 and the node N35 as similar content by searching the graph information GR11 with the node N451 as a starting point.

図1の例では、検索部134は、判定用指標値を用いて判定処理を行う。検索部134は、決定部133により決定された判定用指標値を用いて判定処理を行う。例えば、検索部134は、判定用指標値と所定の閾値との比較により、コンテンツXが流行するかどうかを判定する。例えば、検索部134は、判定用指標値が所定の閾値以上である場合、コンテンツXが流行すると判定する。例えば、検索部134は、判定用指標値が所定の閾値未満である場合、コンテンツXが流行しないと判定する。 In the example of FIG. 1, the search unit 134 performs determination processing using the determination index value. The search unit 134 performs determination processing using the determination index value determined by the determination unit 133 . For example, the search unit 134 determines whether the content X is popular by comparing the determination index value with a predetermined threshold value. For example, the search unit 134 determines that the content X is popular when the determination index value is equal to or greater than a predetermined threshold. For example, if the determination index value is less than a predetermined threshold, the search unit 134 determines that the content X is not popular.

図1の例では、検索部134は、判定用指標値DVL11と所定の閾値TH11とを比較し、判定用指標値DVL11が所定の閾値TH11以上であると判定する。この場合、検索部134は、判定用指標値DVL11が所定の閾値TH11以上であるという基準を満たすため、流行判定結果DRSに示すように、コンテンツXが流行すると判定する。例えば、検索部134は、判定用指標値DVL11が所定の閾値TH11未満であると判定した場合、コンテンツXが流行しないと判定する。 In the example of FIG. 1, the search unit 134 compares the determination index value DVL11 with a predetermined threshold TH11, and determines that the determination index value DVL11 is equal to or greater than the predetermined threshold TH11. In this case, the search unit 134 determines that the content X is popular, as shown in the popularity determination result DRS, because the determination index value DVL11 satisfies the criterion that the determination index value DVL11 is equal to or greater than the predetermined threshold TH11. For example, when the search unit 134 determines that the determination index value DVL11 is less than the predetermined threshold TH11, it determines that the content X is not popular.

(提供部135)
提供部135は、各種情報を提供する。例えば、提供部135は、端末装置10や情報提供装置50に各種情報を送信する。例えば、提供部135は、端末装置10や情報提供装置50に各種情報を配信する。例えば、提供部135は、端末装置10や情報提供装置50に各種情報を提供する。提供部135は、検索部134により抽出された類似コンテンツに基づいて、所定のサービスを提供する。また、提供部135は、類似コンテンツに関する情報提供サービスを提供する。提供部135は、端末装置10に類似コンテンツに関する情報を提供する。
(Providing unit 135)
The providing unit 135 provides various information. For example, the providing unit 135 transmits various information to the terminal device 10 and the information providing device 50 . For example, the providing unit 135 distributes various types of information to the terminal device 10 and the information providing device 50 . For example, the providing unit 135 provides various information to the terminal device 10 and the information providing device 50 . The providing unit 135 provides a predetermined service based on similar content extracted by the searching unit 134 . In addition, the providing unit 135 provides an information providing service regarding similar content. The providing unit 135 provides information on similar content to the terminal device 10 .

提供部135は、検索部134により抽出された類似コンテンツに基づいて、所定のサービスを提供する。提供部135は、端末装置10に所定のサービスを提供する。提供部135は、類似コンテンツに関する情報提供サービスを提供する。 The providing unit 135 provides a predetermined service based on similar content extracted by the searching unit 134 . The providing unit 135 provides the terminal device 10 with a predetermined service. The providing unit 135 provides an information providing service regarding similar content.

例えば、提供部135は、クエリに対応するオブジェクトIDを検索結果として提供する。例えば、提供部135は、検索部134により選択されたオブジェクトIDを情報提供装置50へ提供する。提供部135は、検索部134により選択されたオブジェクトIDをクエリに対応するベクトルを示す情報として情報提供装置50に提供する。また、提供部135は、生成部132により生成されたモデルを外部の情報処理装置へ提供してもよい。 For example, the providing unit 135 provides object IDs corresponding to queries as search results. For example, the providing unit 135 provides the information providing device 50 with the object ID selected by the searching unit 134 . The providing unit 135 provides the information providing device 50 with the object ID selected by the searching unit 134 as information indicating the vector corresponding to the query. Further, the providing unit 135 may provide the model generated by the generating unit 132 to an external information processing device.

例えば、提供部135は、判定結果に基づいてサービスを提供する。図1の例では、提供部135は、コンテンツXが流行する可能性があるコンテンツ(流行コンテンツ)であることを示す情報(流行判定情報)を端末装置10に提供する。例えば、提供部135は、コンテンツXが流行コンテンツであることを示す流行判定情報を端末装置10に送信する。例えば、提供部135は、コンテンツXが流行しない可能性が高いことを示す流行判定情報を端末装置10に送信する。 For example, the providing unit 135 provides services based on the determination result. In the example of FIG. 1 , the providing unit 135 provides the terminal device 10 with information (popularity determination information) indicating that the content X is likely to become popular (popular content). For example, the providing unit 135 transmits popularity determination information indicating that the content X is popular content to the terminal device 10 . For example, the providing unit 135 transmits to the terminal device 10 popularity determination information indicating that the content X is unlikely to become popular.

〔4.情報処理のフロー〕
次に、図8を用いて、実施形態に係る情報処理システム1による情報処理の手順について説明する。図8は、実施形態に係る情報処理の一例を示すフローチャートである。
[4. Information processing flow]
Next, the procedure of information processing by the information processing system 1 according to the embodiment will be described with reference to FIG. FIG. 8 is a flowchart illustrating an example of information processing according to the embodiment.

図8に示すように、情報処理装置100は、一のコンテンツに関するコンテンツ情報を取得する(ステップS101)。図1の例では、情報処理装置100は、端末装置10からコンテンツXに関するコンテンツ情報CDT11を取得する。 As shown in FIG. 8, the information processing apparatus 100 acquires content information regarding one content (step S101). In the example of FIG. 1 , the information processing apparatus 100 acquires content information CDT11 regarding content X from the terminal device 10 .

情報処理装置100は、複数のコンテンツに関するグラフ情報を取得する(ステップS102)。例えば、情報処理装置100は、グラフ情報記憶部123からコンテンツに関するグラフ情報GR11を取得する。 The information processing apparatus 100 acquires graph information regarding a plurality of contents (step S102). For example, the information processing apparatus 100 acquires graph information GR11 regarding content from the graph information storage unit 123 .

そして、情報処理装置100は、モデルを用いて一のコンテンツに関するコンテンツ情報からベクトルを生成する(ステップS103)。図1の例では、情報処理装置100は、モデル情報記憶部124に記憶されたモデルM1を用いて、コンテンツ情報CDT11からベクトルVD11を生成する。 Then, the information processing apparatus 100 uses the model to generate a vector from the content information regarding one content (step S103). In the example of FIG. 1, the information processing apparatus 100 uses the model M1 stored in the model information storage unit 124 to generate the vector VD11 from the content information CDT11.

そして、情報処理装置100は、生成したベクトルとインデックス情報を用いて起点ベクトルを決定する(ステップS104)。図1の例では、情報処理装置100は、ベクトルVD11と、インデックス情報記憶部122に記憶されたインデックス情報IND11とを用いて、起点ベクトルをノードN451に決定する。 Then, the information processing apparatus 100 determines the origin vector using the generated vector and the index information (step S104). In the example of FIG. 1, the information processing apparatus 100 uses the vector VD11 and the index information IND11 stored in the index information storage unit 122 to determine the origin vector to be the node N451.

そして、情報処理装置100は、グラフ情報を検索することにより、一のコンテンツと類似する類似コンテンツを抽出する(ステップS105)。例えば、情報処理装置100は、グラフ情報を検索することにより、一のコンテンツと類似するコンテンツを類似コンテンツとして抽出する。 Then, the information processing apparatus 100 extracts similar content similar to the one content by searching the graph information (step S105). For example, the information processing apparatus 100 extracts content similar to one content as similar content by searching graph information.

そして、情報処理装置100は、類似コンテンツに基づいてサービスを提供する(ステップS106)。図1の例では、情報処理装置100は、類似コンテンツとして抽出されたコンテンツ#451やコンテンツ#35の情報に基づいて、コンテンツXが流行するかどうかの判定結果を示す情報提供サービスを行う。 The information processing apparatus 100 then provides a service based on the similar content (step S106). In the example of FIG. 1, the information processing apparatus 100 provides an information providing service indicating whether or not the content X is popular based on the information of the content #451 and the content #35 extracted as similar content.

〔5.生成処理のフロー〕
次に、図9を用いて、実施形態に係る情報処理システム1による生成処理の手順について説明する。図9は、実施形態に係る生成処理の一例を示すフローチャートである。
[5. Generation processing flow]
Next, a procedure of generation processing by the information processing system 1 according to the embodiment will be described with reference to FIG. 9 . FIG. 9 is a flowchart illustrating an example of generation processing according to the embodiment.

図9に示すように、情報処理装置100は、学習データを取得する(ステップS201)。例えば、情報処理装置100は、コンテンツ情報記憶部121から学習データを取得する。例えば、情報処理装置100は、コンテンツ情報記憶部121からコンテンツ情報CDT1、CDT2等を学習データとして取得する。 As shown in FIG. 9, the information processing apparatus 100 acquires learning data (step S201). For example, the information processing device 100 acquires learning data from the content information storage unit 121 . For example, the information processing apparatus 100 acquires content information CDT1, CDT2, etc. from the content information storage unit 121 as learning data.

その後、情報処理装置100は、学習データに基づきモデルを生成する(ステップS202)。例えば、情報処理装置100は、コンテンツ情報記憶部121から学習データを用いてモデルM1を生成する。例えば、情報処理装置100は、入力層に入力される情報(コンテンツ情報)と同様の情報(コンテンツ情報)を出力層から出力するようにモデルM1を生成する。例えば、情報処理装置100は、コンテンツのコンテンツ情報を入力とするオートエンコーダとしてのモデルM1を生成する。 After that, the information processing apparatus 100 generates a model based on the learning data (step S202). For example, the information processing apparatus 100 uses learning data from the content information storage unit 121 to generate the model M1. For example, the information processing apparatus 100 generates the model M1 so that information (content information) similar to information (content information) input to the input layer is output from the output layer. For example, the information processing apparatus 100 generates a model M1 as an autoencoder that receives content information of content.

〔6.検索例〕
ここで、上述したグラフ情報を用いた検索の一例を示す。なお、グラフ情報(グラフデータ)を用いた検索は下記に限らず、種々の手順により行われてもよい。この点について、図11を一例として説明する。図11は、グラフデータ(グラフ情報)を用いた検索処理の一例を示すフローチャートである。以下に説明する検索処理は、例えば情報処理装置100の検索部134によって行われる。また、以下でいうオブジェクトは、ベクトルやノードと読み替えてもよい。なお、以下では、情報処理装置100が検索処理を行うものとして説明するが、検索処理は他の装置により行われてもよい。例えば、情報処理装置100は、検索クエリとして、一のコンテンツのコンテンツ情報から生成されたベクトルデータを用いる。例えば、情報処理装置100は、一のコンテンツのコンテンツ情報から生成されたベクトルデータとインデックス情報とに基づいて決定された起点ベクトルを起点としてグラフデータを検索する。図1の例では、情報処理装置100は、コンテンツXのベクトルVD11とインデックス情報IND11とに基づいて決定された起点ベクトルであるノードN451を起点としてグラフ情報GR11を検索する。
[6. Search example]
Here, an example of retrieval using the graph information described above will be shown. The search using graph information (graph data) is not limited to the following, and may be performed by various procedures. This point will be described with reference to FIG. 11 as an example. FIG. 11 is a flowchart illustrating an example of search processing using graph data (graph information). The search processing described below is performed by the search unit 134 of the information processing apparatus 100, for example. Also, the object referred to below may be read as a vector or a node. In the following description, the information processing apparatus 100 performs the search process, but the search process may be performed by another apparatus. For example, the information processing apparatus 100 uses vector data generated from content information of one content as a search query. For example, the information processing apparatus 100 searches for graph data using an origin vector determined based on index information and vector data generated from content information of one content. In the example of FIG. 1, the information processing apparatus 100 searches for the graph information GR11 starting from the node N451, which is the starting vector determined based on the vector VD11 of the content X and the index information IND11.

ここでは、近傍オブジェクト集合N(G,y)は、ノードyに付与されているエッジにより関連付けられている近傍のオブジェクトの集合である。「G」は、所定のグラフデータ(例えば、グラフ情報GR11等)であってもよい。例えば、情報処理装置100は、k近傍検索処理を実行する。 Here, the neighborhood object set N(G, y) is the set of neighborhood objects associated by the edge attached to node y. "G" may be predetermined graph data (for example, graph information GR11, etc.). For example, the information processing apparatus 100 executes k-nearest neighbor search processing.

例えば、情報処理装置100は、超球の半径rを∞(無限大)に設定し(ステップS300)、既存のオブジェクト集合から部分集合Sを抽出する(ステップS301)。例えば、情報処理装置100は、ルートノード(起点ベクトル)として選択されたオブジェクト(ノード)を部分集合Sとして抽出してもよい。図1の例では、情報処理装置100は、起点ベクトルであるノードN451等を部分集合Sとして抽出してもよい。また、例えば、超球とは、検索範囲を示す仮想的な球である。なお、ステップS301において抽出されたオブジェクト集合Sに含まれるオブジェクトは、同時に検索結果のオブジェクト集合Rの初期集合にも含められる。 For example, the information processing apparatus 100 sets the radius r of the hypersphere to ∞ (infinity) (step S300), and extracts the subset S from the existing object set (step S301). For example, the information processing apparatus 100 may extract, as the subset S, an object (node) selected as a root node (origin vector). In the example of FIG. 1, the information processing apparatus 100 may extract the node N451, which is the origin vector, etc., as the subset S. In the example of FIG. Also, for example, a hypersphere is a virtual sphere that indicates a search range. The objects included in the object set S extracted in step S301 are also included in the initial set of the object set R of the search results.

次に、情報処理装置100は、オブジェクト集合Sに含まれるオブジェクトの中で、検索クエリオブジェクトをyとするとオブジェクトyとの距離が最も短いオブジェクトを抽出し、オブジェクトsとする(ステップS302)。図1の例では、情報処理装置100は、オブジェクト集合Sに含まれるオブジェクトの中で、検索クエリオブジェクトであるベクトルVD11との距離が最も短いオブジェクトを抽出し、オブジェクトsとする。例えば、情報処理装置100は、オブジェクト集合Sに含まれるオブジェクトの中で、ベクトルVD11との距離が最も短いノードN451を抽出し、オブジェクトsとする。例えば、情報処理装置100は、ルートノード(起点ベクトル)として選択されたオブジェクト(ノード)のみがオブジェクト集合Sの要素の場合には、結果的にルートノード(起点ベクトル)がオブジェクトsとして抽出される。次に、情報処理装置100は、オブジェクトsをオブジェクト集合Sから除外する(ステップS303)。 Next, the information processing apparatus 100 extracts an object having the shortest distance from the object y, where y is the search query object, among the objects included in the object set S, and sets it as an object s (step S302). In the example of FIG. 1, the information processing apparatus 100 extracts the object with the shortest distance from the vector VD11, which is the search query object, from among the objects included in the object set S, and sets it as the object s. For example, the information processing apparatus 100 extracts the node N451 having the shortest distance from the vector VD11 among the objects included in the object set S, and sets it as the object s. For example, when only the object (node) selected as the root node (originating vector) is an element of the object set S, the information processing apparatus 100 extracts the root node (originating vector) as the object s. . Next, the information processing apparatus 100 excludes the object s from the object set S (step S303).

次に、情報処理装置100は、オブジェクトsとオブジェクトyとの距離d(s,y)がr(1+ε)をこえる(超える)か否かを判定する(ステップS304)。ここで、εは拡張要素であり、r(1+ε)は、探索範囲(この範囲内のノードのみを探索する。検索範囲よりも大きくすることで精度を高めることができる)の半径を示す値である。オブジェクトsとオブジェクトyとの距離d(s,y)がr(1+ε)を超える場合(ステップS304:Yes)、情報処理装置100は、オブジェクト集合Rをオブジェクトyの近傍オブジェクト集合として出力し(ステップS305)、処理を終了する。 Next, the information processing apparatus 100 determines whether or not the distance d(s, y) between the object s and the object y exceeds (exceeds) r(1+ε) (step S304). Here, ε is an expansion factor, and r(1+ε) is a value that indicates the radius of the search range (only nodes within this range are searched; making it larger than the search range increases the accuracy). be. When the distance d(s, y) between the object s and the object y exceeds r(1+ε) (step S304: Yes), the information processing device 100 outputs the object set R as a neighborhood object set of the object y (step S305), the process ends.

オブジェクトsと検索クエリオブジェクトyとの距離d(s,y)がr(1+ε)を超えない場合(ステップS304:No)、情報処理装置100は、オブジェクトsの近傍オブジェクト集合N(G,s)の要素であるオブジェクトの中からオブジェクト集合Cに含まれないオブジェクトを一つ選択し、選択したオブジェクトuを、オブジェクト集合Cに格納する(ステップS306)。オブジェクト集合Cは、重複検索を回避するために便宜上設けられるものであり、処理開始時には空集合に設定される。 If the distance d(s, y) between the object s and the search query object y does not exceed r(1+ε) (step S304: No), the information processing apparatus 100 calculates the neighborhood object set N(G, s) of the object s. One object not included in the object set C is selected from the objects that are elements of , and the selected object u is stored in the object set C (step S306). The object set C is provided for convenience in order to avoid duplicate searches, and is set to an empty set at the start of processing.

次に、情報処理装置100は、オブジェクトuとオブジェクトyとの距離d(u,y)がr(1+ε)以下であるか否かを判定する(ステップS307)。オブジェクトuとオブジェクトyとの距離d(u,y)がr(1+ε)以下である場合(ステップS307:Yes)、情報処理装置100は、オブジェクトuをオブジェクト集合Sに追加する(ステップS308)。また、オブジェクトuとオブジェクトyとの距離d(u,y)がr(1+ε)以下ではない場合(ステップS307:No)、情報処理装置100は、ステップS309の判定(処理)を行う。 Next, the information processing apparatus 100 determines whether or not the distance d(u, y) between the object u and the object y is r(1+ε) or less (step S307). If the distance d(u, y) between the object u and the object y is less than or equal to r(1+ε) (step S307: Yes), the information processing apparatus 100 adds the object u to the object set S (step S308). If the distance d(u, y) between the object u and the object y is not less than r(1+ε) (step S307: No), the information processing apparatus 100 performs determination (processing) in step S309.

次に、情報処理装置100は、オブジェクトuとオブジェクトyとの距離d(u,y)がr以下であるか否かを判定する(ステップS309)。オブジェクトuとオブジェクトyとの距離d(u,y)がrをこえる場合(ステップS309:No)、情報処理装置100は、ステップS315の判定(処理)を行う。また、オブジェクトuとオブジェクトyとの距離d(u,y)がr以下ではない場合(ステップS309:No)、情報処理装置100は、ステップS315の判定(処理)を行う。 Next, the information processing apparatus 100 determines whether or not the distance d(u, y) between the object u and the object y is less than or equal to r (step S309). When the distance d(u, y) between the object u and the object y exceeds r (step S309: No), the information processing apparatus 100 performs determination (processing) in step S315. If the distance d(u, y) between the object u and the object y is not equal to or less than r (step S309: No), the information processing apparatus 100 performs determination (processing) in step S315.

オブジェクトuとオブジェクトyとの距離d(u,y)がr以下である場合(ステップS309:Yes)、情報処理装置100は、オブジェクトuをオブジェクト集合Rに追加する(ステップS310)。そして、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクト数がksをこえるか否かを判定する(ステップS311)。所定数ksは、任意に定められる自然数である。例えば、ks=2やks=10等の種々の設定であってもよい。オブジェクト集合Rに含まれるオブジェクト数がksを超えない場合(ステップS311:No)、情報処理装置100は、ステップS313の判定(処理)を行う。 If the distance d(u, y) between the object u and the object y is less than or equal to r (step S309: Yes), the information processing apparatus 100 adds the object u to the object set R (step S310). Then, the information processing apparatus 100 determines whether or not the number of objects included in the object set R exceeds ks (step S311). The predetermined number ks is an arbitrarily determined natural number. For example, various settings such as ks=2 and ks=10 may be used. When the number of objects included in the object set R does not exceed ks (step S311: No), the information processing apparatus 100 performs determination (processing) in step S313.

オブジェクト集合Rに含まれるオブジェクト数がksをこえる場合(ステップS311:Yes)、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクトの中でオブジェクトyとの距離が最も長い(遠い)オブジェクトを、オブジェクト集合Rから除外する(ステップS312)。 If the number of objects included in the object set R exceeds ks (step S311: Yes), the information processing apparatus 100 selects the object with the longest (farthest) distance from the object y among the objects included in the object set R, It is excluded from the object set R (step S312).

次に、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクト数がksと一致するか否かを判定する(ステップS313)。オブジェクト集合Rに含まれるオブジェクト数がksと一致しない場合(ステップS313:No)、情報処理装置100は、ステップS315の判定(処理)を行う。また、オブジェクト集合Rに含まれるオブジェクト数がksと一致する場合(ステップS313:Yes)、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクトの中でオブジェクトyとの距離が最も長い(遠い)オブジェクトと、オブジェクトyとの距離を、新たなrに設定する(ステップS314)。 Next, the information processing apparatus 100 determines whether or not the number of objects included in the object set R matches ks (step S313). If the number of objects included in the object set R does not match ks (step S313: No), the information processing apparatus 100 performs determination (processing) in step S315. If the number of objects included in the object set R matches ks (step S313: Yes), the information processing apparatus 100 determines that the object y has the longest (farthest) distance among the objects included in the object set R. The distance between the object and object y is set to a new r (step S314).

そして、情報処理装置100は、オブジェクトsの近傍オブジェクト集合N(G,s)の要素であるオブジェクトから全てのオブジェクトを選択してオブジェクト集合Cに格納し終えたか否かを判定する(ステップS315)。オブジェクトsの近傍オブジェクト集合N(G,s)の要素であるオブジェクトから全てのオブジェクトを選択してオブジェクト集合Cに格納し終えていない場合(ステップS315:No)、情報処理装置100は、ステップS306に戻って処理を繰り返す。 Then, the information processing apparatus 100 determines whether or not all objects have been selected from objects that are elements of the neighborhood object set N(G, s) of the object s and stored in the object set C (step S315). . If all the objects that are elements of the neighborhood object set N(G, s) of the object s have not been selected and stored in the object set C (step S315: No), the information processing apparatus 100 proceeds to step S306. and repeat the process.

オブジェクトsの近傍オブジェクト集合N(G,s)の要素であるオブジェクトから全てのオブジェクトを選択してオブジェクト集合Cに格納し終えた場合(ステップS315:Yes)、情報処理装置100は、オブジェクト集合Sが空集合であるか否かを判定する(ステップS316)。オブジェクト集合Sが空集合でない場合(ステップS316:No)、情報処理装置100は、ステップS302に戻って処理を繰り返す。また、オブジェクト集合Sが空集合である場合(ステップS316:Yes)、情報処理装置100は、オブジェクト集合Rを出力し、処理を終了する(ステップS317)。例えば、情報処理装置100は、オブジェクト集合Rに含まれるオブジェクト(ノード)を検索クエリ(入力オブジェクトy)に対応する検索結果として、検索を行った端末装置10等へ提供してもよい。図1の例では、情報処理装置100は、オブジェクト集合Rに含まれるノードN451やノードN35を検索クエリ(コンテンツXのベクトルVD11)に対応する検索結果として、検索を行った端末装置10等へ提供してもよい。例えば、情報処理装置100は、ノードN451に対応するコンテンツ#451や、ノードN35に対応するコンテンツ#35をコンテンツXに類似するコンテンツとしてユーザU1が利用する端末装置10に提供する。 When all objects are selected from the objects that are elements of the neighborhood object set N(G, s) of the object s and stored in the object set C (step S315: Yes), the information processing apparatus 100 returns the object set S is an empty set (step S316). If the object set S is not an empty set (step S316: No), the information processing apparatus 100 returns to step S302 and repeats the process. If the object set S is an empty set (step S316: Yes), the information processing apparatus 100 outputs the object set R and ends the process (step S317). For example, the information processing apparatus 100 may provide objects (nodes) included in the object set R as search results corresponding to the search query (input object y) to the terminal apparatus 10 or the like that performed the search. In the example of FIG. 1, the information processing apparatus 100 provides the node N451 and the node N35 included in the object set R as search results corresponding to the search query (the vector VD11 of the content X) to the terminal device 10 or the like that performed the search. You may For example, the information processing apparatus 100 provides content #451 corresponding to node N451 and content #35 corresponding to node N35 as content similar to content X to the terminal device 10 used by user U1.

〔7.効果〕
上述してきたように、実施形態に係る情報処理装置100は、取得部131と、検索部134とを有する。取得部131は、複数のコンテンツの各々に対応する複数のノードが、複数のコンテンツの類似性に応じて連結されたグラフ情報と、一のコンテンツに関するコンテンツ情報を取得する。検索部134は、取得部131により取得されたグラフ情報の複数のノードのうち、所定の基準に基づいて決定されたグラフ情報の検索の起点となる起点ノードを起点として、グラフ情報を検索することにより、複数のコンテンツのうち、一のコンテンツと類似するコンテンツである類似コンテンツを抽出する。
[7. effect〕
As described above, the information processing apparatus 100 according to the embodiment has the acquisition unit 131 and the search unit 134 . The acquisition unit 131 acquires graph information in which a plurality of nodes corresponding to each of a plurality of contents are connected according to the similarity of the plurality of contents, and content information related to one content. The retrieving unit 134 retrieves graph information starting from a starting node, which is determined based on a predetermined criterion, among the plurality of nodes of the graph information acquired by the acquiring unit 131. extracts similar content, which is content similar to one content, from among a plurality of contents.

このように、実施形態に係る情報処理装置100は、起点ベクトルを起点としてグラフ情報を検索することにより、複数のコンテンツのうち、一のコンテンツに類似のコンテンツである類似コンテンツを適切に抽出することができる。 As described above, the information processing apparatus 100 according to the embodiment can appropriately extract similar content, which is content similar to one content from among a plurality of content, by searching graph information using the starting vector as a starting point. can be done.

また、実施形態に係る情報処理装置100は、決定部133を有する。決定部133は、起点ノードの決定に用いるインデックス情報に基づいて、起点ノードを決定する。検索部134は、決定部133により決定された起点ノードを起点として、類似コンテンツを抽出する。 Further, the information processing apparatus 100 according to the embodiment has a determination unit 133 . The determination unit 133 determines the origin node based on the index information used for determining the origin node. The search unit 134 extracts similar content starting from the starting node determined by the determining unit 133 .

このように、実施形態に係る情報処理装置100は、起点ベクトルの決定に用いるインデックス情報に基づいて、起点ベクトルを決定することにより、類似のコンテンツを適切に抽出することができる。 Thus, the information processing apparatus 100 according to the embodiment can appropriately extract similar content by determining the origin vector based on the index information used for determining the origin vector.

また、実施形態に係る情報処理装置100において、決定部133は、木構造型のインデックス情報に基づいて、起点ベクトルを決定する。 Further, in the information processing apparatus 100 according to the embodiment, the determining unit 133 determines the origin vector based on the tree-structured index information.

このように、実施形態に係る情報処理装置100は、木構造型のインデックス情報に基づいて、起点ベクトルを決定することにより、類似のコンテンツを適切に抽出することができる。 In this way, the information processing apparatus 100 according to the embodiment can appropriately extract similar content by determining the origin vector based on the tree-structured index information.

また、実施形態に係る情報処理装置100において、取得部131は、複数のコンテンツの各々の特徴を示す複数のベクトルが類似性に応じて連結されたグラフ情報を取得する。 Further, in the information processing apparatus 100 according to the embodiment, the acquisition unit 131 acquires graph information in which a plurality of vectors representing features of each of a plurality of contents are connected according to similarity.

このように、実施形態に係る情報処理装置100は、複数のコンテンツの各々の特徴を示す複数のベクトルが類似性に応じて連結されたグラフ情報を取得することにより、類似のコンテンツを適切に抽出することができる。 As described above, the information processing apparatus 100 according to the embodiment appropriately extracts similar content by acquiring graph information in which a plurality of vectors indicating the characteristics of each of a plurality of contents are connected according to similarity. can do.

また、実施形態に係る情報処理装置100において、取得部131は、所定のモデルを用いて複数のコンテンツの各々から抽出された特徴量を要素とする複数のベクトルが、類似性に応じて連結されたグラフ情報を取得する。 Further, in the information processing apparatus 100 according to the embodiment, the acquisition unit 131 connects a plurality of vectors whose elements are feature amounts extracted from each of a plurality of contents using a predetermined model according to similarity. get graph information.

このように、実施形態に係る情報処理装置100は、所定のモデルを用いて複数のコンテンツの各々から抽出された特徴量を要素とする複数のベクトルが、類似性に応じて連結されたグラフ情報を取得することにより、類似のコンテンツを適切に抽出することができる。 As described above, the information processing apparatus 100 according to the embodiment provides graph information in which a plurality of vectors whose elements are feature amounts extracted from each of a plurality of contents using a predetermined model are connected according to similarity. can appropriately extract similar content.

また、実施形態に係る情報処理装置100において、取得部131は、複数のコンテンツに関する情報を所定のモデルに入力することにより、抽出される複数のコンテンツの各々の特徴量を要素とする複数のベクトルが、類似性に応じて連結されたグラフ情報を取得する。 Further, in the information processing apparatus 100 according to the embodiment, the acquisition unit 131 inputs information about a plurality of contents into a predetermined model, and obtains a plurality of vectors whose elements are feature amounts of each of the extracted contents. obtains graph information connected according to similarity.

このように、実施形態に係る情報処理装置100は、複数のコンテンツに関する情報を所定のモデルに入力することにより、抽出される複数のコンテンツの各々の特徴量を要素とする複数のベクトルが、類似性に応じて連結されたグラフ情報を取得することにより、類似のコンテンツを適切に抽出することができる。 As described above, the information processing apparatus 100 according to the embodiment inputs information about a plurality of contents into a predetermined model, so that a plurality of vectors whose elements are the feature amounts of each of the extracted contents are similar to each other. Similar content can be appropriately extracted by acquiring graph information linked according to gender.

また、実施形態に係る情報処理装置100において、取得部131は、類似コンテンツの流行に関する流行情報を取得する。検索部134は、取得部131により取得された流行情報に基づいて、一のコンテンツが流行するかどうかを判定する。 In addition, in the information processing apparatus 100 according to the embodiment, the acquisition unit 131 acquires trend information about the popularity of similar content. The search unit 134 determines whether one content is popular based on the trend information acquired by the acquisition unit 131 .

このように、実施形態に係る情報処理装置100は、類似コンテンツの流行に関する流行情報に基づいて、一のコンテンツが流行するかどうかを判定することにより、一のコンテンツが流行するかどうかを適切に判定することができる。 As described above, the information processing apparatus 100 according to the embodiment appropriately determines whether one content is popular by determining whether one content is popular based on the popularity information about the popularity of similar content. can judge.

また、実施形態に係る情報処理装置100において、取得部131は、類似コンテンツの流行に関する指標値を示す流行情報を取得する。検索部134は、類似コンテンツの指標値が所定の基準を満たす場合、一のコンテンツを流行する可能性がある流行コンテンツであると判定する。 Further, in the information processing apparatus 100 according to the embodiment, the acquisition unit 131 acquires popularity information indicating an index value relating to popularity of similar content. When the index value of similar content satisfies a predetermined criterion, the search unit 134 determines that one content is popular content that may become popular.

このように、実施形態に係る情報処理装置100は、類似コンテンツの指標値が所定の基準を満たす場合、一のコンテンツを流行する可能性がある流行コンテンツであると判定することにより、一のコンテンツが流行するかどうかを適切に判定することができる。 As described above, the information processing apparatus 100 according to the embodiment determines that one piece of content is popular content that may become popular when the index value of the similar content satisfies a predetermined criterion. It is possible to appropriately determine whether is prevalent.

また、実施形態に係る情報処理装置100において、検索部134は、類似コンテンツの指標値と所定の閾値とを比較し、類似コンテンツの指標値が所定の閾値以上である場合、一のコンテンツを流行コンテンツであると判定する。 In addition, in the information processing apparatus 100 according to the embodiment, the search unit 134 compares the index value of similar content with a predetermined threshold value, and if the index value of similar content is equal to or greater than the predetermined threshold value, one content item becomes popular. Determined as content.

このように、実施形態に係る情報処理装置100は、類似コンテンツの指標値と所定の閾値とを比較し、類似コンテンツの指標値が所定の閾値以上である場合、一のコンテンツを流行コンテンツであると判定することにより、一のコンテンツが流行するかどうかを適切に判定することができる。 As described above, the information processing apparatus 100 according to the embodiment compares the index value of similar content with a predetermined threshold value, and if the index value of similar content is equal to or greater than the predetermined threshold value, the content is identified as popular content. By determining that, it is possible to appropriately determine whether or not one content is popular.

また、実施形態に係る情報処理装置100は、提供部135を有する。提供部135は、検索部134により抽出された類似コンテンツに基づいて、所定のサービスを提供する。 The information processing apparatus 100 according to the embodiment also has a providing unit 135 . The providing unit 135 provides a predetermined service based on similar content extracted by the searching unit 134 .

このように、実施形態に係る情報処理装置100は、抽出した類似コンテンツに基づいて、所定のサービスを提供することにより、類似のコンテンツに関する情報を用いたサービスを適切に提供することができる。 In this way, the information processing apparatus 100 according to the embodiment can appropriately provide a service using information on similar content by providing a predetermined service based on the extracted similar content.

また、実施形態に係る情報処理装置100において、取得部131は、ユーザが利用する端末装置から一のコンテンツに関するコンテンツ情報を取得する。提供部135は、端末装置10に所定のサービスを提供する。 In addition, in the information processing apparatus 100 according to the embodiment, the acquisition unit 131 acquires content information regarding one content from the terminal device used by the user. The providing unit 135 provides the terminal device 10 with a predetermined service.

このように、実施形態に係る情報処理装置100は、ユーザが利用する端末装置10から一のコンテンツに関するコンテンツ情報を取得し、端末装置10に所定のサービスを提供することにより、類似のコンテンツに関する情報を用いたサービスを適切に提供することができる。 As described above, the information processing apparatus 100 according to the embodiment acquires content information related to one content from the terminal device 10 used by the user, and provides a predetermined service to the terminal device 10 to obtain information related to similar content. can appropriately provide services using

また、実施形態に係る情報処理装置100において、提供部135は、類似コンテンツに関する情報提供サービスを提供する。 Further, in the information processing apparatus 100 according to the embodiment, the providing unit 135 provides an information providing service regarding similar content.

このように、実施形態に係る情報処理装置100は、類似コンテンツに関する情報提供サービスを提供することにより、類似のコンテンツに関する情報を用いたサービスを適切に提供することができる。 In this way, the information processing apparatus 100 according to the embodiment can appropriately provide a service using information on similar content by providing an information providing service on similar content.

〔8.ハードウェア構成〕
上述してきた実施形態に係る情報処理装置100は、例えば図13に示すような構成のコンピュータ1000によって実現される。図13は、情報処理装置の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM(Read Only Memory)1300、HDD(Hard Disk Drive)1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を有する。
[8. Hardware configuration]
The information processing apparatus 100 according to the embodiments described above is implemented by a computer 1000 configured as shown in FIG. 13, for example. FIG. 13 is a hardware configuration diagram showing an example of a computer that implements the functions of the information processing apparatus. The computer 1000 includes a CPU 1100, a RAM 1200, a ROM (Read Only Memory) 1300, a HDD (Hard Disk Drive) 1400, a communication interface (I/F) 1500, an input/output interface (I/F) 1600, and a media interface (I/F). ) 1700.

CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。 The CPU 1100 operates based on programs stored in the ROM 1300 or HDD 1400 and controls each section. The ROM 1300 stores a boot program executed by the CPU 1100 when the computer 1000 is started up, a program depending on the hardware of the computer 1000, and the like.

HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、ネットワークNを介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータをネットワークNを介して他の機器へ送信する。 The HDD 1400 stores programs executed by the CPU 1100, data used by the programs, and the like. Communication interface 1500 receives data from other devices via network N, sends the data to CPU 1100, and transmits data generated by CPU 1100 to other devices via network N. FIG.

CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。 The CPU 1100 controls output devices such as displays and printers, and input devices such as keyboards and mice, through an input/output interface 1600 . CPU 1100 acquires data from an input device via input/output interface 1600 . CPU 1100 also outputs the generated data to an output device via input/output interface 1600 .

メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。 Media interface 1700 reads programs or data stored in recording medium 1800 and provides them to CPU 1100 via RAM 1200 . CPU 1100 loads such a program from recording medium 1800 onto RAM 1200 via media interface 1700, and executes the loaded program. The recording medium 1800 is, for example, an optical recording medium such as a DVD (Digital Versatile Disc) or a PD (Phase change rewritable disc), a magneto-optical recording medium such as an MO (Magneto-Optical disk), a tape medium, a magnetic recording medium, or a semiconductor memory. etc.

例えば、コンピュータ1000が実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムまたはデータ(例えば、モデルM1(モデルデータMDT1))を実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムまたはデータ(例えば、モデルM1(モデルデータMDT1))を記録媒体1800から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。 For example, when the computer 1000 functions as the information processing apparatus 100 according to the embodiment, the CPU 1100 of the computer 1000 executes a program or data (for example, model M1 (model data MDT1)) loaded on the RAM 1200 to It implements the functions of the control unit 130 . CPU 1100 of computer 1000 reads these programs or data (for example, model M1 (model data MDT1)) from recording medium 1800 and executes them. can be obtained.

以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の行に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。 As described above, some of the embodiments of the present application have been described in detail based on the drawings, but these are merely examples, and various modifications, It is possible to carry out the invention in other forms with modifications.

〔9.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
[9. others〕
Further, among the processes described in the above embodiments, all or part of the processes described as being automatically performed can be manually performed, or the processes described as being performed manually can be performed manually. All or part of this can also be done automatically by known methods. In addition, information including processing procedures, specific names, various data and parameters shown in the above documents and drawings can be arbitrarily changed unless otherwise specified. For example, the various information shown in each drawing is not limited to the illustrated information.

また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。 Also, each component of each device illustrated is functionally conceptual, and does not necessarily need to be physically configured as illustrated. In other words, the specific form of distribution and integration of each device is not limited to the one shown in the figure, and all or part of them can be functionally or physically distributed and integrated in arbitrary units according to various loads and usage conditions. Can be integrated and configured.

また、上述してきた各実施形態に記載された各処理は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。 Further, each process described in each embodiment described above can be appropriately combined within a range in which the contents of the process are not inconsistent.

また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、取得部は、取得手段や取得回路に読み替えることができる。 Also, the above-mentioned "section, module, unit" can be read as "means" or "circuit". For example, the acquisition unit can be read as acquisition means or an acquisition circuit.

1 情報処理システム
100 情報処理装置
121 コンテンツ情報記憶部
122 インデックス情報記憶部
123 グラフ情報記憶部
124 モデル情報記憶部
130 制御部
131 取得部
132 生成部
133 決定部
134 検索部
135 提供部
10 端末装置
50 情報提供装置
N ネットワーク
1 information processing system 100 information processing device 121 content information storage unit 122 index information storage unit 123 graph information storage unit 124 model information storage unit 130 control unit 131 acquisition unit 132 generation unit 133 determination unit 134 search unit 135 provision unit 10 terminal device 50 Information providing device N network

Claims (16)

所定のデバイスにおいて実行されるアプリケーションである複数のコンテンツの各々に対応する複数のノードが、前記複数のコンテンツの類似性に応じて連結されたグラフ情報と、一のコンテンツに関するコンテンツ情報を取得する取得部と、
前記取得部により取得された前記グラフ情報を検索することにより、前記複数のコンテンツのうち、前記一のコンテンツと類似するコンテンツである類似コンテンツを抽出する検索部と、
を備えたことを特徴とする情報処理装置。
Acquisition for acquiring graph information in which a plurality of nodes corresponding to each of a plurality of contents, which are applications executed on a predetermined device, are linked according to the similarity of the plurality of contents, and content information related to one content Department and
a search unit for extracting similar content, which is content similar to the one content from among the plurality of contents, by searching the graph information acquired by the acquisition unit;
An information processing device comprising:
前記検索部は、
前記グラフ情報の前記複数のノードのうち、所定の基準に基づいて決定された前記グラフ情報の検索の起点となる起点ノードを起点として、前記グラフ情報を検索することにより、前記類似コンテンツを抽出する
ことを特徴とする請求項1に記載の情報処理装置。
The search unit is
The similar content is extracted by searching the graph information starting from a starting point node determined based on a predetermined criterion among the plurality of nodes of the graph information and serving as a starting point for searching the graph information. The information processing apparatus according to claim 1, characterized by:
前記起点ノードの決定に用いるインデックス情報に基づいて、前記起点ノードを決定する決定部、
をさらに備え、
前記検索部は、
前記決定部により決定された前記起点ノードを起点として、前記類似コンテンツを抽出する
ことを特徴とする請求項2に記載の情報処理装置。
a determination unit that determines the origin node based on index information used to determine the origin node;
further comprising
The search unit is
The information processing apparatus according to claim 2, wherein the similar content is extracted starting from the starting node determined by the determining unit.
前記決定部は、
木構造型の前記インデックス情報に基づいて、前記起点ノードを決定する
ことを特徴とする請求項3に記載の情報処理装置。
The decision unit
4. The information processing apparatus according to claim 3, wherein the starting node is determined based on the tree-structured index information.
前記取得部は、
前記複数のコンテンツの各々に対応する複数のベクトルの類似性に応じて、前記複数のノードが連結されたグラフ情報を取得する
ことを特徴とする請求項1~4のいずれか1項に記載の情報処理装置。
The acquisition unit
5. The method according to any one of claims 1 to 4, wherein graph information in which the plurality of nodes are connected is acquired according to the similarity of the plurality of vectors corresponding to each of the plurality of contents. Information processing equipment.
前記取得部は、
前記複数のコンテンツの各々の特徴を示す前記複数のベクトルが類似性に応じて連結された前記グラフ情報を取得する
ことを特徴とする請求項5に記載の情報処理装置。
The acquisition unit
6. The information processing apparatus according to claim 5, wherein the graph information is acquired in which the plurality of vectors indicating the features of the plurality of contents are connected according to similarity.
前記取得部は、
所定のモデルを用いて前記複数のコンテンツの各々から抽出された特徴量を要素とする前記複数のベクトルが、類似性に応じて連結された前記グラフ情報を取得する
ことを特徴とする請求項5または請求項6に記載の情報処理装置。
The acquisition unit
6. Obtaining said graph information in which said plurality of vectors, whose elements are feature amounts extracted from each of said plurality of contents using a predetermined model, are connected according to similarity. 7. The information processing apparatus according to claim 6.
前記取得部は、
前記複数のコンテンツに関する情報を所定のモデルに入力することにより、抽出される前記複数のコンテンツの各々の特徴量を要素とする前記複数のベクトルが、類似性に応じて連結された前記グラフ情報を取得する
ことを特徴とする請求項5~7のいずれか1項に記載の情報処理装置。
The acquisition unit
By inputting the information about the plurality of contents into a predetermined model, the plurality of vectors whose elements are feature amounts of each of the extracted contents are converted into the graph information connected according to the similarity. 8. The information processing apparatus according to any one of claims 5 to 7, characterized in that:
前記取得部は、
前記類似コンテンツの流行に関する流行情報を取得し、
前記検索部は、
前記取得部により取得された前記流行情報に基づいて、前記一のコンテンツが流行するかどうかを判定する
ことを特徴とする請求項8に記載の情報処理装置。
The acquisition unit
Acquiring fashion information about the popularity of similar content;
The search unit is
9. The information processing apparatus according to claim 8, wherein it is determined whether the one content is popular based on the trend information acquired by the acquisition unit.
前記取得部は、
前記類似コンテンツの流行に関する指標値を示す前記流行情報を取得し、
前記検索部は、
前記類似コンテンツの前記指標値が所定の基準を満たす場合、前記一のコンテンツを流行する可能性がある流行コンテンツであると判定する
ことを特徴とする請求項9に記載の情報処理装置。
The acquisition unit
obtaining the trend information indicating an index value related to the trend of the similar content;
The search unit is
10. The information processing apparatus according to claim 9, wherein when the index value of the similar content satisfies a predetermined criterion, the one content is determined to be popular content that may become popular.
前記検索部は、
前記類似コンテンツの前記指標値と所定の閾値とを比較し、前記類似コンテンツの前記指標値が前記所定の閾値以上である場合、前記一のコンテンツを前記流行コンテンツであると判定する
ことを特徴とする請求項10に記載の情報処理装置。
The search unit is
comparing the index value of the similar content with a predetermined threshold, and determining that the one content is the popular content when the index value of the similar content is equal to or greater than the predetermined threshold; 11. The information processing apparatus according to claim 10.
前記検索部により抽出された前記類似コンテンツに基づいて、所定のサービスを提供する提供部、
をさらに備えたことを特徴とする請求項1~11のいずれか1項に記載の情報処理装置。
a provision unit that provides a predetermined service based on the similar content extracted by the search unit;
The information processing apparatus according to any one of claims 1 to 11, further comprising:
前記取得部は、
ユーザが利用する端末装置から前記一のコンテンツに関する前記コンテンツ情報を取得し、
前記提供部は、
前記端末装置に前記所定のサービスを提供する
ことを特徴とする請求項12に記載の情報処理装置。
The acquisition unit
Acquiring the content information related to the one content from the terminal device used by the user;
The providing unit
13. The information processing apparatus according to claim 12, wherein the predetermined service is provided to the terminal device.
前記提供部は、
前記類似コンテンツに関する情報提供サービスを提供する
ことを特徴とする請求項12または請求項13に記載の情報処理装置。
The providing unit
14. The information processing apparatus according to claim 12 or 13, wherein an information providing service regarding said similar content is provided.
コンピュータが実行する情報処理方法であって、
所定のデバイスにおいて実行されるアプリケーションである複数のコンテンツの各々に対応する複数のノードが、前記複数のコンテンツの類似性に応じて連結されたグラフ情報と、一のコンテンツに関するコンテンツ情報を取得する取得工程と、
前記取得工程により取得された前記グラフ情報を検索することにより、前記複数のコンテンツのうち、前記一のコンテンツと類似するコンテンツである類似コンテンツを抽出する検索工程と、
を含んだことを特徴とする情報処理方法。
A computer-executed information processing method comprising:
Acquisition for acquiring graph information in which a plurality of nodes corresponding to each of a plurality of contents, which are applications executed on a predetermined device, are linked according to the similarity of the plurality of contents, and content information related to one content process and
a searching step of extracting similar content, which is content similar to the one content among the plurality of contents, by searching the graph information obtained by the obtaining step;
An information processing method characterized by including
所定のデバイスにおいて実行されるアプリケーションである複数のコンテンツの各々に対応する複数のノードが、前記複数のコンテンツの類似性に応じて連結されたグラフ情報と、一のコンテンツに関するコンテンツ情報を取得する取得手順と、
前記取得手順により取得された前記グラフ情報を検索することにより、前記複数のコンテンツのうち、前記一のコンテンツと類似するコンテンツである類似コンテンツを抽出する検索手順と、
をコンピュータに実行させることを特徴とする情報処理プログラム。
Acquisition for acquiring graph information in which a plurality of nodes corresponding to each of a plurality of contents, which are applications executed on a predetermined device, are linked according to the similarity of the plurality of contents, and content information related to one content a procedure;
a search procedure for extracting similar content, which is content similar to the one content among the plurality of contents, by searching the graph information acquired by the acquisition procedure;
An information processing program characterized by causing a computer to execute
JP2022124204A 2021-03-18 2022-08-03 Information processing device, information processing method, and information processing program Active JP7414906B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022124204A JP7414906B2 (en) 2021-03-18 2022-08-03 Information processing device, information processing method, and information processing program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021044968A JP7119154B2 (en) 2021-03-18 2021-03-18 Information processing device, information processing method, and information processing program
JP2022124204A JP7414906B2 (en) 2021-03-18 2022-08-03 Information processing device, information processing method, and information processing program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021044968A Division JP7119154B2 (en) 2021-03-18 2021-03-18 Information processing device, information processing method, and information processing program

Publications (2)

Publication Number Publication Date
JP2022153632A true JP2022153632A (en) 2022-10-12
JP7414906B2 JP7414906B2 (en) 2024-01-16

Family

ID=76313217

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021044968A Active JP7119154B2 (en) 2021-03-18 2021-03-18 Information processing device, information processing method, and information processing program
JP2022124204A Active JP7414906B2 (en) 2021-03-18 2022-08-03 Information processing device, information processing method, and information processing program

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2021044968A Active JP7119154B2 (en) 2021-03-18 2021-03-18 Information processing device, information processing method, and information processing program

Country Status (1)

Country Link
JP (2) JP7119154B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7566333B2 (en) 2016-04-30 2024-10-15 日本植生株式会社 Slope protection equipment and slope protection method

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010020731A (en) * 2008-07-14 2010-01-28 Datasection Inc Information analyzing device and information analyzing program
JP2010232715A (en) * 2009-03-25 2010-10-14 Nec Corp Service retrieval system, service retrieval method, and program for service retrieval
JP2011060182A (en) * 2009-09-14 2011-03-24 Aim Co Ltd Content selection system
JP2013073524A (en) * 2011-09-28 2013-04-22 Ntt Docomo Inc Application recommendation device, application recommendation method and application recommendation program
JP2016099705A (en) * 2014-11-19 2016-05-30 株式会社DMM.comラボ Information processing device, information providing method, and information providing program
JP2017021493A (en) * 2015-07-08 2017-01-26 ヤフー株式会社 Modified k-nearest neighbor graph generation device and method for operating modified k-nearest neighbor graph generation device
JP2017134582A (en) * 2016-01-27 2017-08-03 ヤフー株式会社 Graphic index search device and operation method for graphic index search device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7725487B2 (en) 2003-12-01 2010-05-25 National Institute Of Information And Communications Technology Content synchronization system and method of similar web pages

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010020731A (en) * 2008-07-14 2010-01-28 Datasection Inc Information analyzing device and information analyzing program
JP2010232715A (en) * 2009-03-25 2010-10-14 Nec Corp Service retrieval system, service retrieval method, and program for service retrieval
JP2011060182A (en) * 2009-09-14 2011-03-24 Aim Co Ltd Content selection system
JP2013073524A (en) * 2011-09-28 2013-04-22 Ntt Docomo Inc Application recommendation device, application recommendation method and application recommendation program
JP2016099705A (en) * 2014-11-19 2016-05-30 株式会社DMM.comラボ Information processing device, information providing method, and information providing program
JP2017021493A (en) * 2015-07-08 2017-01-26 ヤフー株式会社 Modified k-nearest neighbor graph generation device and method for operating modified k-nearest neighbor graph generation device
JP2017134582A (en) * 2016-01-27 2017-08-03 ヤフー株式会社 Graphic index search device and operation method for graphic index search device

Also Published As

Publication number Publication date
JP2021093223A (en) 2021-06-17
JP7119154B2 (en) 2022-08-16
JP7414906B2 (en) 2024-01-16

Similar Documents

Publication Publication Date Title
JP7122120B2 (en) Information processing device, information processing method, and information processing program
JP6216467B2 (en) Visual-semantic composite network and method for forming the network
CN110162711B (en) Resource intelligent recommendation method and system based on network embedding method
CN110264277B (en) Data processing method and device executed by computing equipment, medium and computing equipment
CN112417313A (en) Model hybrid recommendation method based on knowledge graph convolutional network
JP2019125257A (en) Information processing device, information processing method, and information processing program
Raghavendra et al. Similarity based collaborative filtering model for movie recommendation systems
JP6976178B2 (en) Extractor, extraction method, and extraction program
JP7414906B2 (en) Information processing device, information processing method, and information processing program
Hui et al. A hybrid paper recommendation method by using heterogeneous graph and metadata
JP2010015441A (en) Information processor, content information retrieval method, and information processing system
JP7030485B2 (en) Extractor, extraction method, and extraction program
JP7041530B2 (en) Display program, display method, and display device
JP2023162154A (en) Method, computer device and computer program for providing recommendation information based on local knowledge graph
JP6856567B2 (en) Information processing equipment, information processing methods, and information processing programs
JP6865706B2 (en) Information processing equipment, information processing methods, and information processing programs
JP7221590B2 (en) Extraction device, extraction method, and extraction program
JP7158870B2 (en) Information processing device, information processing method, and information processing program
CN113901278A (en) Data search method and device based on global multi-detection and adaptive termination
JP6960361B2 (en) Information processing equipment, information processing methods, and information processing programs
JP7121706B2 (en) Information processing device, information processing method, and information processing program
JP7171196B2 (en) Authentication device, authentication method, and authentication program
JP6976183B2 (en) Extractor, extraction method, and extraction program
CN118485502B (en) Method, device, equipment and storage medium for generating personalized custom commodity label
JP6510125B1 (en) INFORMATION PROCESSING APPARATUS, INFORMATION PROCESSING METHOD, AND INFORMATION PROCESSING PROGRAM

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220901

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230822

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230905

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20231026

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20231030

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231228

R150 Certificate of patent or registration of utility model

Ref document number: 7414906

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150