JP7529344B2 - Method, system, and computer program for personalized recommendations based on topics of interest - Google Patents
Method, system, and computer program for personalized recommendations based on topics of interest Download PDFInfo
- Publication number
- JP7529344B2 JP7529344B2 JP2022174072A JP2022174072A JP7529344B2 JP 7529344 B2 JP7529344 B2 JP 7529344B2 JP 2022174072 A JP2022174072 A JP 2022174072A JP 2022174072 A JP2022174072 A JP 2022174072A JP 7529344 B2 JP7529344 B2 JP 7529344B2
- Authority
- JP
- Japan
- Prior art keywords
- topics
- keyword
- topic
- user
- interest
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 50
- 238000004590 computer program Methods 0.000 title claims description 10
- 230000000694 effects Effects 0.000 claims description 23
- 230000015654 memory Effects 0.000 claims description 20
- 239000011159 matrix material Substances 0.000 claims description 6
- 238000004891 communication Methods 0.000 description 12
- 238000012545 processing Methods 0.000 description 11
- 235000005911 diet Nutrition 0.000 description 7
- 230000037213 diet Effects 0.000 description 7
- 229920002752 Konjac Polymers 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 3
- 102000004169 proteins and genes Human genes 0.000 description 3
- 108090000623 proteins and genes Proteins 0.000 description 3
- 238000000354 decomposition reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 244000045195 Cicer arietinum Species 0.000 description 1
- 235000010523 Cicer arietinum Nutrition 0.000 description 1
- 235000017003 Cissus Nutrition 0.000 description 1
- 244000035145 Cissus repens Species 0.000 description 1
- 235000017014 Cissus repens Nutrition 0.000 description 1
- 241000287828 Gallus gallus Species 0.000 description 1
- 240000008415 Lactuca sativa Species 0.000 description 1
- 210000000577 adipose tissue Anatomy 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000020870 detox diet Nutrition 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 235000013305 food Nutrition 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 235000018102 proteins Nutrition 0.000 description 1
- 235000012045 salad Nutrition 0.000 description 1
- 235000011888 snacks Nutrition 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9535—Search customisation based on user profiles and personalisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90324—Query formulation using system suggestions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/906—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Mathematical Physics (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Software Systems (AREA)
- Medical Informatics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Development Economics (AREA)
- Economics (AREA)
- Marketing (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
特許法第30条第2項適用 ・2021年11月23日に次のホームページのアドレスに掲載された。”https://blog.naver.com/naver_search/222575844697” ・2021年11月24日に次のホームページのアドレスに掲載された。”https://tv.naver.com/v/23649833” ・2021年11月24日に次のホームページのアドレスに掲載された。”https://www.navercorp.com/promotion/pressReleasesView/30722” ・2021年12月8日に次のホームページのアドレスに掲載された。”https://www.ddaily.co.kr/news/article/?no=226991” Application of Article 30, Paragraph 2 of the Patent Act - Published on November 23, 2021 at the following website address: "https://blog.naver.com/naver_search/222575844697" - Published on November 24, 2021 at the following website address: "https://tv.naver.com/v/23649833" - Published on November 24, 2021 at the following website address: "https://www.navercorp.com/promotion/pressReleaseView/30722" - Published on December 8, 2021 at the following website address. “https://www.ddaily.co.kr/news/article/?no=226991”
以下の説明は、個人化推薦技術に関する。 The following description relates to personalized recommendation techniques.
インターネットでの商品推薦は、個人の購入履歴に基づいて個人に最適な商品を選別して推薦することが一般的である。 Product recommendations on the Internet typically involve selecting and recommending products that are most suitable for an individual based on that individual's purchasing history.
商品推薦のために使用される主な方法としては、商品を推薦しようとする対象ユーザと似たような購入履歴をもつユーザを選別し、このユーザが購入した商品のうちで推薦対象ユーザが購入したことのない商品を推薦する協調フィルタリング(Collaborative Filtering)や、多数のユーザの購入記録を利用し、同時購入の可能性または同時クリックの可能性が高い商品を推薦する相関ルールマイニング(Association Rule Mining)のようなアルゴリズムが挙げられる。 The main methods used for product recommendations include collaborative filtering, which selects users with similar purchasing histories as the target user to whom a product is to be recommended, and recommends products that the target user has not purchased among the products purchased by these users, and association rule mining, which uses the purchasing records of multiple users to recommend products that are likely to be purchased or clicked on simultaneously.
例えば、特許文献1(登録日2009年2月2日)には、ユーザ端末機にインストールされた情報推薦エージェントが認識した商品の商品コード、商品名、またはモデルなどを利用して商品に対する商品情報を自動推薦する技術が開示されている。 For example, Patent Document 1 (registered on February 2, 2009) discloses a technology that automatically recommends product information for a product using the product code, product name, or model of the product recognized by an information recommendation agent installed on a user terminal device.
言語モデル(language model)を利用して、キーワードとトピックの間の意味論的関係(semantic relation)を示す新たな概念の関心事データを生成することができる。 Language models can be used to generate new conceptual interest data that shows semantic relationships between keywords and topics.
キーワードとトピックの関係を利用して、インターネット上のユーザの行動を明示的な単語で表現することが可能な関心トピックに要約することができる。 The relationship between keywords and topics can be used to summarize a user's Internet activity into topics of interest that can be expressed in explicit words.
ユーザの関心トピックという明示的な理由に基づいて、ユーザに個人化された推薦を提供することができる。 Users can be provided with personalized recommendations based explicitly on their topics of interest.
コンピュータシステムで実行される方法であって、前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記方法は、前記少なくとも1つのプロセッサにより、インターネット上で使用されるキーワードに対して、言語モデル(language model)を利用して前記キーワードのトピックを生成して前記キーワードと前記トピックの間に関係を構築する段階、および前記少なくとも1つのプロセッサにより、前記キーワードと前記トピックの関係を利用してインターネット上のユーザの活動に対応する少なくとも1つの関心トピックを選定する段階、および前記少なくとも1つのプロセッサにより、前記関心トピックに基づいて前記ユーザに個人化された推薦情報を提供する段階を含む方法を提供する。 A method is provided that is executed on a computer system, the computer system including at least one processor configured to execute computer-readable instructions contained in a memory, the method including: generating topics for keywords used on the Internet using a language model and building relationships between the keywords and the topics, the at least one processor selecting at least one topic of interest corresponding to the user's activities on the Internet using the relationships between the keywords and the topics, and providing personalized recommendation information to the user based on the topics of interest, by the at least one processor.
一側面によると、前記キーワードと前記トピックの間に関係を構築する段階は、キーワードサンプルと当該キーワードのトピックからなるサンプルデータを利用してターゲットキーワードに対するプロンプト(prompt)を構成する段階、および前記プロンプトを前記言語モデルの入力とし、前記サンプルデータのパターンによって前記ターゲットキーワードのトピックを生成する段階を含んでよい。 According to one aspect, the step of establishing a relationship between the keyword and the topic may include constructing a prompt for the target keyword using sample data consisting of keyword samples and topics of the keyword, and using the prompt as an input to the language model and generating topics for the target keyword according to patterns in the sample data.
他の側面によると、前記キーワードと前記トピックの間に関係を構築する段階は、インターネット上の情報検索または情報分類に使用されるキーワードに対して、当該キーワードを使用するユーザの関心事として表現するためのトピックを生成する段階を含んでよい。 In another aspect, the step of establishing relationships between the keywords and the topics may include generating topics for keywords used in searching or classifying information on the Internet to represent interests of users who use the keywords.
また他の側面によると、前記キーワードと前記トピックの間に関係を構築する段階は、前記言語モデルで生成されたトピック間の類似度に基づいてトピックグループを生成する段階、および前記トピックグループに対して、前記トピック間の関係に基づいた埋め込み学習によって前記キーワードに対する少なくとも1つの代表トピックを選定する段階を含んでよい。 According to another aspect, the step of constructing a relationship between the keyword and the topic may include generating a topic group based on the similarity between the topics generated in the language model, and selecting at least one representative topic for the keyword from the topic group by embedding learning based on the relationship between the topics.
また他の側面によると、前記トピックグループを生成する段階は、検索記録に含まれた複数の検索語に対して、各検索語をトピックに置き換えた後、置き換えられたトピックを連結して文章(sentence)で表現し、前記検索語それぞれを単語(word)で表現して埋め込み学習を実行することにより、類似関係にあるトピックをグルーピングする段階を含んでよい。 According to another aspect, the step of generating the topic group may include a step of grouping similar topics by replacing each of a plurality of search terms included in the search record with a topic, linking the replaced topics to express them as a sentence, and expressing each of the search terms as a word and performing embedding learning.
また他の側面によると、前記トピックグループを生成する段階は、前記キーワードに対して前記言語モデルで生成された候補トピックを連結して文章で表現し、前記候補トピックそれぞれを単語で表現して埋め込み学習を実行することにより、類似関係にあるトピックをグルーピングする段階を含んでよい。 According to another aspect, the step of generating the topic groups may include a step of expressing candidate topics generated by the language model for the keyword as sentences by linking them, and expressing each of the candidate topics as a word and performing embedding learning to group topics that are similar to each other.
また他の側面によると、前記トピックグループを生成する段階は、前記キーワードと前記言語モデルで生成された候補トピックに対して行列分解(MF:matrix factorization)を実行することにより、類似関係にあるトピックをグルーピングする段階を含んでよい。 According to another aspect, generating the topic groups may include grouping similar topics by performing matrix factorization (MF) on the keywords and the candidate topics generated by the language model.
また他の側面によると、前記キーワードに対して少なくとも1つの代表トピックを選定する段階は、前記トピック間の包含関係と同等関係のうちの少なくとも1つの関係を把握してグラフ埋め込み(graph embedding)を実行する段階、および前記グラフ埋め込みを利用した前記キーワードと前記トピックの間の確率に基づいて前記代表トピックを選定する段階を含んでよい。 According to another aspect, the step of selecting at least one representative topic for the keyword may include a step of grasping at least one of an inclusion relationship and an equivalence relationship between the topics and performing graph embedding, and a step of selecting the representative topic based on a probability between the keyword and the topic using the graph embedding.
また他の側面によると、前記関心トピックを選定する段階は、前記ユーザが入力した検索語と前記ユーザがクリックした商品のタグのうちの少なくとも1つの活動キーワードと関係が設定されたトピックを前記関心トピックとして選定してよい。 According to another aspect, the step of selecting the topic of interest may select a topic that is related to at least one of the activity keywords among the search term entered by the user and the tag of the product clicked by the user as the topic of interest.
また他の側面によると、前記ユーザに個人化された推薦情報を提供する段階は、前記関心トピックと関係が設定されたキーワードのうちで前記ユーザの活動と関連する少なくとも1つのキーワードを関連キーワードとして推薦する段階を含んでよい。 According to another aspect, the step of providing the user with personalized recommendation information may include the step of recommending at least one keyword related to the user's activity as a related keyword from among the keywords related to the topic of interest.
また他の側面によると、前記ユーザに個人化された推薦情報を提供する段階は、前記関心トピックと関係が設定されたキーワードのうちで前記ユーザの活動と関連する少なくとも1つのキーワードを関連キーワードとして選定する段階、およびインターネット上のアイテムのうちで前記関連キーワードと関連するアイテムを推薦する段階を含んでよい。 According to another aspect, the step of providing the user with personalized recommendation information may include selecting at least one keyword related to the user's activity from among the keywords related to the topic of interest as a related keyword, and recommending items on the Internet that are related to the related keyword.
さらに他の側面によると、前記関連キーワードと関連するアイテムを推薦する段階は、前記ユーザのプロフィール情報と前記関心トピックのうちの少なくとも1つを利用して推薦アイテムを選定する段階を含んでよい。 According to yet another aspect, the step of recommending items related to the related keywords may include selecting recommended items using at least one of the user's profile information and the topics of interest.
前記方法を前記コンピュータシステムに実行させるためのコンピュータプログラムを提供する。 A computer program for executing the method on the computer system is provided.
コンピュータシステムであって、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、前記少なくとも1つのプロセッサは、インターネット上で使用されるキーワードに対して、言語モデルを利用して前記キーワードのトピックを生成して前記キーワードと前記トピックの間に関係を構築し、前記キーワードと前記トピックの関係を利用してインターネット上のユーザの活動に対応する少なくとも1つの関心トピックを選定し、前記関心トピックに基づいて前記ユーザに個人化された推薦情報を提供することを特徴とする、コンピュータシステムを提供する。 A computer system is provided, comprising at least one processor configured to execute computer-readable instructions contained in a memory, the at least one processor utilizing a language model to generate topics for keywords used on the Internet and build relationships between the keywords and the topics, utilizing the relationships between the keywords and the topics to select at least one topic of interest corresponding to the user's activities on the Internet, and providing personalized recommendation information to the user based on the topic of interest.
本発明の実施形態によると、大規模言語モデルを利用することで、キーワードとトピックの間の意味論的関係を示す、新たな概念の関心事データを生成することができる。 According to an embodiment of the present invention, by utilizing a large-scale language model, it is possible to generate new conceptual interest data that shows semantic relationships between keywords and topics.
本発明の実施形態によると、キーワードとトピックの関係を利用することで、インターネット上のユーザの行動を明示的な単語で表現することが可能な関心トピックに要約することができる。 According to an embodiment of the present invention, by utilizing the relationship between keywords and topics, a user's activity on the Internet can be summarized into topics of interest that can be expressed in explicit words.
本発明の実施形態によると、ユーザの関心トピックという明示的な理由に基づいて、当該ユーザに個人化された推薦を提供することができる。 Embodiments of the present invention allow for personalized recommendations to be provided to a user based explicitly on the user's topics of interest.
以下、本発明の実施形態について、添付の図面を参照しながら詳しく説明する。 The following describes in detail an embodiment of the present invention with reference to the attached drawings.
本発明の実施形態は、個人化推薦技術に関する。 Embodiments of the present invention relate to personalized recommendation technology.
本明細書で具体的に開示される事項を含む実施形態は、インターネット上のユーザの行動を明示的な単語(すなわち、関心トピック)に要約することができ、ユーザの関心トピックを利用してインターネット上のアイテムを個人化して推薦することができる。 Embodiments including those specifically disclosed herein can summarize a user's behavior on the Internet into explicit words (i.e., topics of interest) and can utilize the user's topics of interest to personalize and recommend items on the Internet.
本発明の実施形態に係る個人化推薦システムは、少なくとも1つのコンピュータシステムによって実現されてよく、本発明の実施形態に係る個人化推薦方法は、個人化推薦システムに含まれる少なくとも1つのコンピュータシステムによって実行されてよい。このとき、コンピュータシステムにおいては、本発明の一実施形態に係るコンピュータプログラムがインストールされて実行されてよく、コンピュータシステムは、実行されたコンピュータプログラムの制御にしたがって本発明の実施形態に係る個人化推薦方法を実行してよい。上述したコンピュータプログラムは、コンピュータシステムと結合して個人化推薦方法をコンピュータに実行させるためにコンピュータ読み取り可能な記録媒体に記録されてよい。 The personalized recommendation system according to the embodiment of the present invention may be realized by at least one computer system, and the personalized recommendation method according to the embodiment of the present invention may be executed by at least one computer system included in the personalized recommendation system. In this case, a computer program according to an embodiment of the present invention may be installed and executed in the computer system, and the computer system may execute the personalized recommendation method according to the embodiment of the present invention according to the control of the executed computer program. The above-mentioned computer program may be recorded in a computer-readable recording medium in combination with the computer system to cause the computer to execute the personalized recommendation method.
図1は、本発明の一実施形態における、ネットワーク環境の例を示した図である。図1のネットワーク環境は、複数の電子機器110、120、130、140、複数のサーバ150、160、およびネットワーク170を含む例を示している。このような図1は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が図1のように限定されることはない。また、図1のネットワーク環境は、本実施形態に適用可能な環境のうちの一例を説明したものに過ぎず、本実施形態に適用可能な環境が図1のネットワーク環境に限定されることはない。 Figure 1 is a diagram showing an example of a network environment in one embodiment of the present invention. The network environment in Figure 1 shows an example including multiple electronic devices 110, 120, 130, 140, multiple servers 150, 160, and a network 170. Figure 1 is merely an example for explaining the invention, and the number of electronic devices and the number of servers are not limited to those shown in Figure 1. Furthermore, the network environment in Figure 1 is merely an example of an environment applicable to this embodiment, and the environment applicable to this embodiment is not limited to the network environment in Figure 1.
複数の電子機器110、120、130、140は、コンピュータ装置によって実現される固定端末や移動端末であってよい。複数の電子機器110、120、130、140の例としては、スマートフォン、携帯電話、ナビゲーション、PC(personal computer)、ノート型PC、デジタル放送用端末、PDA(Personal Digital Assistant)、PMP(Portable Multimedia Player)、タブレット、ゲームコンソール、ウェアラブルデバイス、IoT(Internet of Things)デバイス、VR(Virtual Reality)デバイス、AR(Augmented Reality)デバイスなどがある。一例として、図1では、電子機器110の例としてスマートフォンを示しているが、本発明の実施形態において、電子機器110は、実質的に無線または有線通信方式を利用し、ネットワーク170を介して他の電子機器120、130、140および/またはサーバ150、160と通信することのできる多様な物理的なコンピュータシステムのうちの1つを意味してよい。 The electronic devices 110, 120, 130, and 140 may be fixed terminals or mobile terminals realized by computer devices. Examples of the electronic devices 110, 120, 130, and 140 include smartphones, mobile phones, navigation systems, personal computers (PCs), notebook PCs, digital broadcasting terminals, personal digital assistants (PDAs), portable multimedia players (PMPs), tablets, game consoles, wearable devices, Internet of Things (IoT) devices, virtual reality (VR) devices, and augmented reality (AR) devices. As an example, FIG. 1 shows a smartphone as an example of the electronic device 110, but in an embodiment of the present invention, the electronic device 110 may refer to one of a variety of physical computer systems that can communicate with other electronic devices 120, 130, 140 and/or servers 150, 160 via a network 170 using a substantially wireless or wired communication method.
通信方式が限定されることはなく、ネットワーク170が含むことのできる通信網(一例として、移動通信網、有線インターネット、無線インターネット、放送網)を利用する通信方式だけではなく、機器間の近距離無線通信が含まれてもよい。例えば、ネットワーク170は、PAN(personal area network)、LAN(local area network)、CAN(campus area network)、MAN(metropolitan area network)、WAN(wide area network)、BBN(broadband network)、インターネットなどのネットワークのうちの1つ以上の任意のネットワークを含んでよい。さらに、ネットワーク170は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター-バスネットワーク、ツリーまたは階層的ネットワークなどを含むネットワークトポロジのうちの任意の1つ以上を含んでもよいが、これらに限定されることはない。 The communication method is not limited, and may include not only a communication method using a communication network that the network 170 can include (for example, a mobile communication network, a wired Internet, a wireless Internet, or a broadcast network), but also short-range wireless communication between devices. For example, the network 170 may include any one or more of a personal area network (PAN), a local area network (LAN), a campus area network (CAN), a metropolitan area network (MAN), a wide area network (WAN), a broadband network (BBN), the Internet, and the like. Furthermore, the network 170 may include any one or more of a network topology including, but not limited to, a bus network, a star network, a ring network, a mesh network, a star-bus network, a tree or a hierarchical network.
サーバ150、160それぞれは、複数の電子機器110、120、130、140とネットワーク170を介して通信して命令、コード、ファイル、コンテンツ、サービスなどを提供する1つ以上のコンピュータ装置によって実現されてよい。例えば、サーバ150は、ネットワーク170を介して接続した複数の電子機器110、120、130、140に第1サービスを提供するシステムであってよく、サーバ160も、ネットワーク170を介して接続した複数の電子機器110、120、130、140に第2サービスを提供するシステムであってよい。より具体的な例として、サーバ150は、複数の電子機器110、120、130、140においてインストールされて実行されるコンピュータプログラムであるアプリケーションを通じて、該当のアプリケーションが目的とするサービス(一例として、個人化推薦サービスなど)を第1サービスとして複数の電子機器110、120、130、140に提供してよい。他の例として、サーバ160は、上述したアプリケーションのインストールおよび実行のためのファイルを複数の電子機器110、120、130、140に配布するサービスを第2サービスとして提供してよい。 Each of the servers 150 and 160 may be realized by one or more computer devices that communicate with the multiple electronic devices 110, 120, 130, and 140 via the network 170 to provide instructions, codes, files, content, services, and the like. For example, the server 150 may be a system that provides a first service to the multiple electronic devices 110, 120, 130, and 140 connected via the network 170, and the server 160 may also be a system that provides a second service to the multiple electronic devices 110, 120, 130, and 140 connected via the network 170. As a more specific example, the server 150 may provide a service (such as a personalized recommendation service, for example) targeted by an application, which is a computer program installed and executed in the multiple electronic devices 110, 120, 130, and 140, as a first service to the multiple electronic devices 110, 120, 130, and 140. As another example, the server 160 may provide, as a second service, a service of distributing files for installing and executing the above-mentioned application to multiple electronic devices 110, 120, 130, and 140.
図2は、本発明の一実施形態における、コンピュータシステムの例を示したブロック図である。上述した複数の電子機器110、120、130、140それぞれやサーバ150、160それぞれは、図2に示したコンピュータシステム200によって実現されてよい。 Figure 2 is a block diagram showing an example of a computer system in one embodiment of the present invention. Each of the multiple electronic devices 110, 120, 130, and 140 and each of the servers 150 and 160 described above may be realized by the computer system 200 shown in Figure 2.
このようなコンピュータシステム200は、図2に示すように、メモリ210、プロセッサ220、通信インタフェース230、および入力/出力インタフェース240を含んでよい。 Such a computer system 200 may include a memory 210, a processor 220, a communication interface 230, and an input/output interface 240, as shown in FIG. 2.
メモリ210は、コンピュータ読み取り可能な記録媒体であって、RAM(random access memory)、ROM(read only memory)、およびディスクドライブのような永続的大容量記録装置を含んでよい。ここで、ROMやディスクドライブのような永続的大容量記録装置は、メモリ210とは区分される別の永続的記録装置としてコンピュータシステム200に含まれてもよい。また、メモリ210には、オペレーティングシステムと、少なくとも1つのプログラムコードが記録されてよい。このようなソフトウェア構成要素は、メモリ210とは別のコンピュータ読み取り可能な記録媒体からメモリ210にロードされてよい。このような別のコンピュータ読み取り可能な記録媒体は、フロッピー(登録商標)ドライブ、ディスク、テープ、DVD/CD-ROMドライブ、メモリカードなどのコンピュータ読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータ読み取り可能な記録媒体ではない通信インタフェース230を通じてメモリ210にロードされてもよい。例えば、ソフトウェア構成要素は、ネットワーク170を介して受信されるファイルによってインストールされるコンピュータプログラムに基づいてコンピュータシステム200のメモリ210にロードされてよい。 The memory 210 is a computer-readable recording medium and may include a RAM (random access memory), a ROM (read only memory), and a permanent mass storage device such as a disk drive. Here, a permanent mass storage device such as a ROM or a disk drive may be included in the computer system 200 as a separate permanent storage device separate from the memory 210. In addition, the memory 210 may store an operating system and at least one program code. Such software components may be loaded into the memory 210 from a computer-readable recording medium separate from the memory 210. Such separate computer-readable recording medium may include a computer-readable recording medium such as a floppy drive, a disk, a tape, a DVD/CD-ROM drive, a memory card, etc. In another embodiment, the software components may be loaded into the memory 210 through a communication interface 230 that is not a computer-readable recording medium. For example, software components may be loaded into the memory 210 of the computer system 200 based on a computer program that is installed by a file received over the network 170.
プロセッサ220は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ210または通信インタフェース230によって、プロセッサ220に提供されてよい。例えば、プロセッサ220は、メモリ210のような記録装置に記録されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。 The processor 220 may be configured to process computer program instructions by performing basic arithmetic, logic, and input/output operations. The instructions may be provided to the processor 220 by the memory 210 or the communication interface 230. For example, the processor 220 may be configured to execute instructions received according to program code recorded in a recording device such as the memory 210.
通信インタフェース230は、ネットワーク170を介してコンピュータシステム200が他の装置(一例として、上述した記録装置)と互いに通信するための機能を提供してよい。一例として、コンピュータシステム200のプロセッサ220がメモリ210のような記録装置に記録されたプログラムコードにしたがって生成した要求や命令、データ、ファイルなどが、通信インタフェース230の制御にしたがってネットワーク170を介して他の装置に伝達されてよい。これとは逆に、他の装置からの信号や命令、データ、ファイルなどが、ネットワーク170を経てコンピュータシステム200の通信インタフェース230を通じてコンピュータシステム200に受信されてよい。通信インタフェース230を通じて受信された信号や命令、データなどは、プロセッサ220やメモリ210に伝達されてよく、ファイルなどは、コンピュータシステム200がさらに含むことのできる記録媒体(上述した永続的記録装置)に記録されてよい。 The communication interface 230 may provide a function for the computer system 200 to communicate with other devices (for example, the above-mentioned recording device) via the network 170. As an example, requests, commands, data, files, etc. generated by the processor 220 of the computer system 200 according to program code recorded in a recording device such as the memory 210 may be transmitted to other devices via the network 170 under the control of the communication interface 230. Conversely, signals, commands, data, files, etc. from other devices may be received by the computer system 200 through the communication interface 230 of the computer system 200 via the network 170. The signals, commands, data, etc. received through the communication interface 230 may be transmitted to the processor 220 or the memory 210, and the files, etc. may be recorded on a recording medium (the above-mentioned permanent recording device) that the computer system 200 may further include.
入力/出力インタフェース240は、入力/出力装置250とのインタフェースのための手段であってよい。例えば、入力装置は、マイク、キーボード、またはマウスなどの装置を、出力装置は、ディスプレイ、スピーカのような装置を含んでよい。他の例として、入力/出力インタフェース240は、タッチスクリーンのように入力と出力のための機能が1つに統合された装置とのインタフェースのための手段であってもよい。入力/出力装置250は、コンピュータシステム200と1つの装置で構成されてもよい。 The input/output interface 240 may be a means for interfacing with the input/output device 250. For example, the input device may include devices such as a microphone, keyboard, or mouse, and the output device may include devices such as a display and a speaker. As another example, the input/output interface 240 may be a means for interfacing with a device that integrates functions for input and output into one, such as a touch screen. The input/output device 250 may be configured as a single device together with the computer system 200.
また、他の実施形態において、コンピュータシステム200は、図2の構成要素よりも少ないか多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、コンピュータシステム200は、上述した入力/出力装置250のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、データベースなどのような他の構成要素をさらに含んでもよい。 Also, in other embodiments, computer system 200 may include fewer or more components than those of FIG. 2. However, most prior art components need not be explicitly shown in the figures. For example, computer system 200 may be implemented to include at least some of the input/output devices 250 described above, and may further include other components such as a transceiver, a database, etc.
以下では、関心トピックに基づいた個人化推薦のための方法およびシステムの具体的な実施形態について説明する。 Specific embodiments of methods and systems for personalized recommendations based on topics of interest are described below.
図3は、本発明の一実施形態における、コンピュータシステムのプロセッサが含むことができる構成要素の例を示したブロック図であり、図4は、本発明の一実施形態における、コンピュータシステムが実行することができる個人化推薦方法の一例を示したフローチャートである。 Figure 3 is a block diagram showing an example of components that may be included in a processor of a computer system in one embodiment of the present invention, and Figure 4 is a flowchart showing an example of a personalized recommendation method that may be executed by a computer system in one embodiment of the present invention.
本実施形態に係るコンピュータシステム200は、クライアントを対象に、クライアント上にインストールされた専用アプリケーションやコンピュータシステム200と関連するウェブ/モバイルサイトへの接続によって個人化推薦サービスを提供してよい。 The computer system 200 of this embodiment may provide a personalized recommendation service to a client through a dedicated application installed on the client or through a connection to a web/mobile site associated with the computer system 200.
コンピュータシステム200のプロセッサ220は、以下で説明する個人化推薦方法を実行するための構成要素として、図3に示すように、データ生成部310、関心トピック選定部320、および個人化推薦部330を含んでよい。実施形態によって、プロセッサ220の構成要素は、選択的にプロセッサ220に含まれても除外されてもよい。また、実施形態によって、プロセッサ220の構成要素は、プロセッサ220の機能の表現のために分離されても併合されてもよい。 The processor 220 of the computer system 200 may include a data generation unit 310, an interest topic selection unit 320, and a personalized recommendation unit 330, as shown in FIG. 3, as components for performing the personalized recommendation method described below. Depending on the embodiment, the components of the processor 220 may be selectively included or excluded from the processor 220. Also, depending on the embodiment, the components of the processor 220 may be separated or combined to express the functions of the processor 220.
このようなプロセッサ220およびプロセッサ220の構成要素は、以下で説明する個人化推薦方法に含まれる段階を実行するようにコンピュータシステム200を制御してよい。例えば、プロセッサ220およびプロセッサ220の構成要素は、メモリ210が含むオペレーティングシステムのコードと、少なくとも1つのプログラムのコードとによる命令(instruction)を実行するように実現されてよい。 Such processor 220 and components of processor 220 may control computer system 200 to execute steps included in the personalized recommendation method described below. For example, processor 220 and components of processor 220 may be implemented to execute instructions from operating system code and at least one program code contained in memory 210.
ここで、プロセッサ220の構成要素は、コンピュータシステム200に記録されたプログラムコードが提供する命令にしたがってプロセッサ220によって実行される、互いに異なる機能(different functions)の表現であってよい。例えば、コンピュータシステム200がキーワードとトピックの関係を現す関心事データを生成するように上述した命令にしたがってコンピュータシステム200を制御するプロセッサ220の機能的表現として、データ生成部310が利用されてよい。 Here, the components of the processor 220 may be representations of different functions executed by the processor 220 according to instructions provided by the program code recorded in the computer system 200. For example, the data generator 310 may be used as a functional representation of the processor 220 that controls the computer system 200 according to the above-mentioned instructions so that the computer system 200 generates interest data representing relationships between keywords and topics.
プロセッサ220は、コンピュータシステム200の制御と関連する命令がロードされたメモリ210から必要な命令を読み取ってよい。この場合、前記読み取られた命令は、プロセッサ220が以下で説明する個人化推薦方法を実行するように制御するための命令を含んでよい。 The processor 220 may read the necessary instructions from the memory 210 loaded with instructions related to the control of the computer system 200. In this case, the read instructions may include instructions for controlling the processor 220 to perform the personalized recommendation method described below.
以下で説明する個人化推薦方法に含まれる段階は、図に示したものとは異なる順序で実行されてもよいし、段階のうちの一部が省略されたり追加の過程がさらに含まれたりしてもよい。 The steps in the personalized recommendation method described below may be performed in a different order than shown in the figures, some steps may be omitted, or additional processes may be included.
図4を参照すると、段階410で、データ生成部310は、キーワードとトピックの間の意味論的関係を現す、新たな概念の関心事データを生成してよい。データ生成部310は、インターネット上で使用されるキーワードそれぞれに対して、当該キーワードに相応しいトピックを生成してよい。このとき、キーワードとは、検索時に使用されるキーワードである検索語、ある情報のメタデータとして付与されたキーワード、分類を示すタグなどのように、インターネット上の情報検索や情報分類に使用されるすべてのキーワードを包括したものを意味してよい。例えば、データ生成部310は、購入したい商品を検索するための目的で使用されるショッピング性検索語、ショッピング推薦に使用されるショッピング性タグなどに対して関心事データを生成してよい。キーワード「糸こんにゃく」とトピック「ダイエット」の間に関係が構築されていると仮定すれば、ユーザAが検索語「糸こんにゃく」を利用して商品を検索したり、タグ「糸こんにゃく」が付与された商品をクリックしたりするとき、ユーザAの行動から読み取れる関心事を明示的な単語「ダイエット」に要約することができる。一例として、データ生成部310は、検索語やタグなどに使用されるキーワードに対して、当該キーワードを使用するユーザの関心事として表現することができるトピックを言語モデルで生成することにより、キーワードとトピックの関係を現す関心事データを生成してよい。データ生成部310は、言語モデルの入力文となるプロンプト(prompt)で与えられたキーワードに相応しいトピックを生成してキーワードとトピックの関係を構築してよい。キーワードとトピックの関係データは、一定の周期単位でアップデートされてよい。 Referring to FIG. 4, in step 410, the data generating unit 310 may generate interest data of a new concept that represents a semantic relationship between a keyword and a topic. The data generating unit 310 may generate a topic suitable for each keyword used on the Internet. In this case, the keyword may mean a comprehensive term that includes all keywords used for information search and information classification on the Internet, such as a search term that is a keyword used during a search, a keyword assigned as metadata for certain information, and a tag that indicates a classification. For example, the data generating unit 310 may generate interest data for a shopping search term used for the purpose of searching for a product to be purchased, a shopping tag used for shopping recommendations, and the like. Assuming that a relationship is established between the keyword "itokonnyaku" and the topic "diet", when user A searches for a product using the search term "itokonnyaku" or clicks on a product tagged with "itokonnyaku", the interest that can be read from the behavior of user A can be summarized as the explicit word "diet". As an example, the data generating unit 310 may generate interest data representing a relationship between a keyword and a topic by generating a topic that can be expressed as an interest of a user who uses a keyword used in a search term or tag in a language model. The data generating unit 310 may construct a relationship between a keyword and a topic by generating a topic appropriate for a keyword given in a prompt that is an input sentence of the language model. The relationship data between a keyword and a topic may be updated at regular intervals.
段階420で、関心トピック選定部320は、キーワードとトピックの関係を利用して、インターネット上のユーザの活動に対応する少なくとも1つのトピックをユーザの関心トピックとして選定してよい。関心トピック選定部320は、ユーザ活動キーワード(リアルタイム入力される検索語、またはここ最近の一定期間内の検索語やクリック商品のタグなど)を基準に、当該キーワードと関係が設定されたトピックをユーザの関心トピックとして選定してよい。 In step 420, the interest topic selection unit 320 may select at least one topic corresponding to the user's activity on the Internet as the user's interest topic by using the relationship between the keyword and the topic. The interest topic selection unit 320 may select a topic related to a user activity keyword (such as a search term entered in real time, or a recent search term or clicked product tag within a certain period of time) as the user's interest topic.
段階430で、個人化推薦部330は、ユーザの関心トピックに基づいて個人化された推薦を提供してよい。個人化推薦部330は、ユーザの関心トピックと関係が設定されたキーワードを利用して個人化推薦情報を提供してよい。一例として、個人化推薦部330は、ユーザの関心トピックに属するキーワード(検索語、タグなど)のうちの少なくとも1つのキーワードを関連キーワードとして推薦してよい。このとき、個人化推薦部330は、埋め込み方法論(例えば、word2vec、FastTextなど)に基づいてキーワード間の類似度を測定してよく、ユーザの関心トピックに属するキーワードのうちでユーザ活動キーワードと類似のキーワードを関連キーワードとして選定してよい。また、個人化推薦部330は、行列分解(MF:matrix factorization)モデルを利用して、ユーザの関心トピックに属するキーワードのうちでユーザが選好するキーワードを関連キーワードとして選定してよい。ユーザをUとし、ユーザ活動キーワードをIとするとき、U×Iサイズのインタラクションデータに対して行列分解を実行することにより、各キーワードのユーザ選好度を求めてよい。ユーザの関心トピックに属するキーワードに対して選好度を求めた後、選好度が一定レベル以上となるキーワードをユーザ活動キーワードの関連キーワードとして推薦してよい。ユーザ活動キーワードが一定レベル以上となるユーザに対しては行列分解モデルを利用して関連キーワードを推薦してよく、ユーザ活動キーワードが一定レベル未満のユーザに対しては埋め込み方法論を利用して関連キーワードを推薦してよい。他の例として、個人化推薦部330は、ユーザの関心トピックに応じて、関連キーワードに基づいてインターネット上のアイテムを推薦してよい。例えば、個人化推薦部330は、関連キーワードと関連するアイテムとして、多数のユーザが関連キーワードを検索語として入力して実際にクリックした商品の一部を推薦商品として提供してよい。このとき、クリック商品のうちでもここ最近のクリック商品に加重値をおいて優先的に推薦されるように適用してよい。また、クリック商品のうち、ユーザのプロフィール情報(例えば、性別、年齢、位置など)とマッチングする他のユーザまたはユーザと関心トピックが等しい他のユーザがクリックした商品を、当該ユーザの推薦商品として選定してよい。 In step 430, the personalized recommendation unit 330 may provide personalized recommendations based on the user's topics of interest. The personalized recommendation unit 330 may provide personalized recommendation information using keywords related to the user's topics of interest. As an example, the personalized recommendation unit 330 may recommend at least one keyword (search term, tag, etc.) belonging to the user's topics of interest as a related keyword. In this case, the personalized recommendation unit 330 may measure the similarity between keywords based on an embedding methodology (e.g., word2vec, FastText, etc.) and may select keywords similar to the user activity keywords from among the keywords belonging to the user's topics of interest as related keywords. In addition, the personalized recommendation unit 330 may select keywords preferred by the user from among the keywords belonging to the user's topics of interest as related keywords using a matrix factorization (MF) model. When a user is U and a user activity keyword is I, a user preference for each keyword may be obtained by performing matrix decomposition on interaction data of U×I size. After obtaining the preference for the keyword belonging to the user's topic of interest, a keyword having a preference level of a certain level or higher may be recommended as a related keyword of the user activity keyword. For a user whose user activity keyword is at a certain level or higher, a related keyword may be recommended using a matrix decomposition model, and for a user whose user activity keyword is below a certain level, a related keyword may be recommended using an embedding methodology. As another example, the personalized recommendation unit 330 may recommend an item on the Internet based on the related keyword according to the user's topic of interest. For example, the personalized recommendation unit 330 may provide some of the products that a large number of users have actually clicked by inputting the related keyword as a search term as an item related to the related keyword as a recommended product. In this case, a weight may be applied to the recently clicked products among the clicked products so that they are preferentially recommended. Additionally, from among the clicked products, products clicked by other users who match the user's profile information (e.g., gender, age, location, etc.) or who have the same topics of interest as the user may be selected as recommended products for that user.
ユーザの関心トピックに基づいて推薦されるアイテムとしてショッピング商品を例に挙げて説明したが、これに限定されてはならない。例えば、カフェ、ブログ、ニュース、動画などのような多様なプラットフォームやチャンネルなどのコンテンツが推薦アイテムとして活用されてよい。 Although shopping items have been described as an example of items recommended based on a user's topics of interest, this is not intended to be limiting. For example, content from various platforms and channels such as cafes, blogs, news, videos, etc. may be used as recommended items.
図5は、本発明の一実施形態における、プロンプトを利用したデータ生成過程の一例を説明するためのフローチャートである。 Figure 5 is a flowchart illustrating an example of a data generation process using prompts in one embodiment of the present invention.
図5を参照すると、段階501で、プロセッサ220は、サンプルデータセットを利用して言語モデルの入力プロンプトを構成してよい。プロセッサ220は、事前に定められたキーワードと当該キーワードのトピックを正解が定められたサンプルデータとして利用してよい。予め定められたサンプルデータペアの他に個別のデータセットが存在してもよく、実施形態によっては、データセット内でキーワードと当該キーワードのトピックからなるサンプルデータペアを選定して利用してよい。プロセッサ220は、与えられたNLP問題の特性が適切に反映された専用プロンプトテンプレートを製作してよく、このとき、プロンプトテンプレートにはタスクの定義やメタ情報が含まれてよい。言い換えれば、プロセッサ220は、データセットから選択されたサンプルデータを利用して自然語形態のプロンプトを構成することができる。このとき、プロンプトは、言語モデルが理解可能な形式で製作され、言語モデルの入力として与えられる。プロセッサ220は、サンプルデータがラベルのあるデータの場合、ラベル情報とともに入力文が生成されるようにプロンプトを設計してよい。プロンプトの形式自体は多様に構成されてよく、一例として、プロンプトは、キーワードサンプルと当該キーワードのトピックがサンプルとして構成されてよい。本実施形態において、プロンプトは、少なくとも1つ以上のキーワードと当該キーワードのトピックからなるサンプルデータペアと、ターゲットキーワードで構成されてよい。プロンプト構成の詳細な方法については、図6を参照しながら説明する。 Referring to FIG. 5, in step 501, the processor 220 may use a sample dataset to configure an input prompt for the language model. The processor 220 may use a predefined keyword and a topic of the keyword as sample data for which a correct answer is defined. In addition to the predefined sample data pair, a separate dataset may exist, and in some embodiments, a sample data pair consisting of a keyword and a topic of the keyword may be selected and used within the dataset. The processor 220 may create a dedicated prompt template that appropriately reflects the characteristics of a given NLP problem, and in this case, the prompt template may include a task definition and meta information. In other words, the processor 220 may configure a natural language prompt using sample data selected from the dataset. In this case, the prompt is created in a format that the language model can understand and is provided as an input for the language model. If the sample data is labeled data, the processor 220 may design the prompt so that an input sentence is generated together with label information. The format of the prompt itself may be configured in various ways, and as an example, the prompt may be configured with a keyword sample and a topic of the keyword as a sample. In this embodiment, the prompt may be composed of a sample data pair consisting of at least one keyword and a topic of the keyword, and a target keyword. A detailed method of constructing the prompt will be described with reference to FIG. 6.
段階502で、プロセッサ220は、段階501で構成されたプロンプトを言語モデルに入力し、言語モデルから与えられたターゲットキーワードのトピックを理解してよい。プロセッサ220は、プロンプト入力文を言語モデルに入力した後、言語モデルの生成あるいは完成機能による言語生成結果としてターゲットキーワードのトピックを取得してよい。プロセッサ220は、プロンプトを言語モデルに入力し、言語モデルでプロンプトに含まれたサンプルの自然語パターンを分析することにより、当該パターンを有する新たな結果を得ることができる。 In step 502, the processor 220 may input the prompt constructed in step 501 into a language model and understand the topic of the given target keyword from the language model. After inputting the prompt input sentence into the language model, the processor 220 may obtain the topic of the target keyword as a language generation result by the generation or completion function of the language model. The processor 220 may input the prompt into the language model and obtain a new result having the pattern by analyzing the sample natural language pattern included in the prompt in the language model.
図6~7は、本発明の一実施形態における、データ生成の一例を示した図である。 Figures 6 and 7 show an example of data generation in one embodiment of the present invention.
図6を参照すると、プロセッサ220は、サンプルデータとして選定されたキーワードサンプルと当該キーワードに対する関心事として表現することができるトピックからなるサンプルデータペアを利用して、言語モデルの入力文となるプロンプト610を構成してよい。 Referring to FIG. 6, the processor 220 may use sample data pairs consisting of keyword samples selected as sample data and topics that can be expressed as interests for the keywords to construct a prompt 610 that serves as an input sentence for the language model.
プロセッサ220は、少なくとも1つのサンプルデータペアとターゲットキーワードで構成されたプロンプト610を言語モデルの入力とし、言語モデルがターゲットキーワードに対するトピックを生成するようにしてよい。すなわち、言語モデルの完成機能によってターゲットキーワードの内容に該当するトピックを生成してよい。 The processor 220 may input a prompt 610 consisting of at least one sample data pair and a target keyword to a language model, and the language model may generate a topic for the target keyword. That is, a topic corresponding to the content of the target keyword may be generated by a completion function of the language model.
プロセッサ220は、[キーワード+トピック]形態のサンプルデータペアと[ターゲットキーワード]で構成されたプロンプト610を利用し、プロンプトに含まれたサンプルデータのパターンにしたがってターゲットキーワードに対するトピックを生成してよい。 The processor 220 may use a prompt 610 consisting of a sample data pair in the form of [keyword + topic] and a [target keyword] to generate a topic for the target keyword according to the pattern of the sample data included in the prompt.
言い換えれば、プロセッサ220は、キーワードと当該キーワードのトピックをサンプルとして提供し、サンプルのパターンにしたがってターゲットキーワードに該当するトピックを生成することができる。 In other words, the processor 220 can provide keywords and topics of the keywords as samples and generate topics corresponding to the target keywords according to the patterns of the samples.
図7を参照すると、プロセッサ220は、与えられたキーワード701に対して、言語モデル700を利用して当該キーワード701に相応しい候補トピック702を生成してよい。例えば、言語モデル700は、キーワード「糸こんにゃく」が与えられれば、当該キーワードのトピックとしてダイエット、ダイエット食事、ダイエット飲み物、サラダチキンブランド、体脂肪管理、インボディ、デトックスダイエットなどを生成してよい。 Referring to FIG. 7, for a given keyword 701, the processor 220 may use a language model 700 to generate candidate topics 702 appropriate for the keyword 701. For example, when the keyword "itokonnyaku" is given, the language model 700 may generate topics for the keyword such as diet, diet food, diet drink, salad chicken brand, body fat management, inbody, detox diet, etc.
言語モデル700で生成される候補トピック702は、言語モデル700の特性(多様性、偶然性など)上、ワーディングは異なるが同じ意味の単語、範疇が互いに異なる単語などのように一貫性のない単語を生成するという問題がある。 Due to the characteristics of the language model 700 (diversity, randomness, etc.), the candidate topics 702 generated by the language model 700 have the problem of generating inconsistent words, such as words with different wordings but the same meaning, or words in different categories.
プロセッサ220は、キーワード701との関係を構築するために、言語モデル700で生成された候補トピック702をグルーピングして代表トピックを選定する必要がある。 In order to build a relationship with the keyword 701, the processor 220 needs to group the candidate topics 702 generated by the language model 700 and select a representative topic.
図8~11は、本発明の一実施形態における、トピック選定過程の一例を示した図である。 Figures 8 to 11 show an example of a topic selection process in one embodiment of the present invention.
先ず、プロセッサ220は、キーワードに対して生成された候補トピックに対して、トピック間の類似度に基づいて類似関係にあるトピックを選別してよい。 First, the processor 220 may select topics that are similar to the candidate topics generated for a keyword based on the similarity between the topics.
一例として、図8を参照すると、プロセッサ220は、行列分解(MF)に基づいてキーワードと言語モデルで生成された候補トピックをモデリングする方法により、類似関係にあるトピックをグルーピングしてよい。 As an example, referring to FIG. 8, the processor 220 may group similarly related topics using a method of modeling candidate topics generated by keywords and language models based on matrix factorization (MF).
他の例として、図9を参照すると、プロセッサ220は、キーワードに対して生成された候補トピックをすべて連結して(concatenate)文章(sentence)で表現し、各候補トピックを個別の単語で表現して埋め込み学習を実行することにより、類似関係にあるトピックをグルーピングしてよい。 As another example, referring to FIG. 9, the processor 220 may concatenate all the candidate topics generated for a keyword to represent them as a sentence, and then represent each candidate topic as an individual word to perform embedding learning, thereby grouping similar topics.
また他の例として、プロセッサ220は、ユーザが検索した記録を関心事を表現したトピックに置き換えた後、埋め込み学習を実行してよい。図10を参照すると、ユーザ検索記録が<糸こんにゃく、プロテイン、シッサス、ひよこ豆スナック、こんにゃくゼリー>などであるとき、それぞれの検索語をトピックに該当する単語に置き換えた後、置き換えられたトピックをすべて連結して文章で表現し、検索語それぞれを個別の単語で表現して埋め込み学習を実行することにより、類似関係にあるトピックをグルーピングしてよい。 As another example, the processor 220 may replace the record searched by the user with a topic expressing the user's interest and then perform embedding learning. Referring to FIG. 10, when the user search record is, for example, <itokonnyaku, protein, cissus, chickpea snack, konnyaku jelly>, each search term may be replaced with a word corresponding to the topic, and all the replaced topics may be linked together to express the search terms as individual words and embedding learning may be performed to group similar topics.
次に、プロセッサ220は、類似関係にあるトピックグループから代表トピックを選定してよい。プロセッサ220は、トピック同士の類似度に基づいて、グルーピングされたトピックグループを対象にしてトピックとの関係を把握することにより、代表となるトピックを選定してよい。 Next, the processor 220 may select a representative topic from the topic group that has a similar relationship. The processor 220 may select a representative topic by understanding the relationship between topics in the grouped topic group based on the similarity between the topics.
一例として、プロセッサ220は、インターネット上でキーワードを分類するカテゴリ(例えば、検索語カテゴリなど)を利用してトピックとの関係を構築してよい。例えば、図11に示すように、検索語<タンパク質シェイクボトル、QUESTプロテインバー、ナイキクルー、フィラパフォーマンスパンツ、ゼクシィミックスジョガー、アディダスTシャツ、ダンベル、バーピーテストマット、バーベル5kg、ケトルベル、バーンマシン>はすべてカテゴリ「自宅トレーニング」に該当し、このうち、<ナイキクルー、フィラパフォーマンスパント、ゼクシィミックスジョガー、アディダスTシャツ>はカテゴリ「スポーツウエア」に該当し、<ダンベル、バーピーテストマット、バーベル5kg、ケトルベル、バーンマシン>はカテゴリ「運動器具」に該当すると仮定する。言語モデルによってトピック「自宅トレーニング」、「スポーツウエア」、「運動器具」が生成されるとするとき、「スポーツウエア」に属する検索語が「自宅トレーニング」に含まれるため、トピック「自宅トレーニング」と「スポーツウエア」の間に関係を構築することができ、「運動器具」に属する検索語が「自宅トレーニング」に含まれるため、トピック「自宅トレーニング」と「運動器具」の間に関係を構築することができる。 As an example, the processor 220 may use categories (e.g., search term categories) that classify keywords on the Internet to build relationships with topics. For example, as shown in FIG. 11, it is assumed that the search terms <protein shake bottle, QUEST protein bar, Nike Crew, Fila performance pants, Zexy mix joggers, Adidas T-shirt, dumbbell, burpee test mat, barbell 5 kg, kettlebell, burn machine> all fall under the category "home training", of which <Nike Crew, Fila performance pants, Zexy mix joggers, Adidas T-shirt> fall under the category "sportswear", and <dumbbell, burpee test mat, barbell 5 kg, kettlebell, burn machine> fall under the category "exercise equipment". If the topics "home workout," "sportswear," and "exercise equipment" are generated by a language model, a relationship can be built between the topics "home workout" and "sportswear" because search terms belonging to "sportswear" are included in "home workout," and a relationship can be built between the topics "home workout" and "exercise equipment" because search terms belonging to "exercise equipment" are included in "home workout."
他の例として、プロセッサ220は、単語の包含関係と同等関係を利用してトピックとの関係を構築してよい。先ず、プロセッサ220は、類似関係にあるトピックグループから包含関係にあるトピックを探索する。例えば、トピックA「ダイエット」はトピックB「ダイエットメニュー」に完全に含まれる単語であるため、トピックBはトピックAに属する(包含関係)と仮定する。また、トピックAにa1、a2、a3という単語が含まれ、トピックBにa1、a2、a3、b1、b2という単語が含まれる場合、トピックBはトピックAを完全に含んでいるため、トピックAはトピックBに属する(包含関係)と仮定する。次に、プロセッサ220は、包含関係にあるトピックを除いた残りのトピックのうちから同等関係にあるトピックを探索する。例えば、キーワードCに対してトピックC1、C2、C3が生成された場合、トピックC1、C2、C3は同等な関係であると仮定する。プロセッサ220は、トピック間の包含関係と同等関係を利用してグラフ埋め込み(例えば、Knowledge Graph Embeddingなど)を実行してよい。言い換えれば、グラフ埋め込みで使用される関係として包含関係と同等関係を適用してよい。トピック間の関係を表現したグラフ埋め込み後に各キーワードがどのトピックに属するかを確率的に求め、確率基準で代表トピックを決定してよい。確率の他にも、トピック間の関係に基づいた階層構造で一定のデブス(depth)のトピックを代表トピックとして選定してもよい。 As another example, the processor 220 may use the inclusion and equivalence relationships of words to build relationships with topics. First, the processor 220 searches for topics in an inclusion relationship from a topic group that is in a similar relationship. For example, topic A "diet" is a word that is completely contained in topic B "diet menu", so it is assumed that topic B belongs to topic A (inclusion relationship). Also, if topic A contains words a1, a2, and a3, and topic B contains words a1, a2, a3, b1, and b2, topic B completely contains topic A, so it is assumed that topic A belongs to topic B (inclusion relationship). Next, the processor 220 searches for topics in an equivalence relationship from the remaining topics excluding the topics in the inclusion relationship. For example, if topics C1, C2, and C3 are generated for keyword C, it is assumed that topics C1, C2, and C3 are in an equivalence relationship. The processor 220 may perform graph embedding (e.g., Knowledge Graph Embedding, etc.) using the inclusion and equivalence relationships between topics. In other words, the inclusion and equivalence relationships may be applied as the relationships used in graph embedding. After embedding the graph expressing the relationships between topics, it may be determined probabilistically which topic each keyword belongs to, and the representative topic may be determined based on a probability criterion. In addition to probability, a topic of a certain depth in a hierarchical structure based on the relationships between topics may be selected as the representative topic.
ここで、プロセッサ220は、代表トピックを選定するための基準をチューニングしてよい。例えば、トピック間で単語がどのくらい重なるかを把握したり、トピック間の類似度を比較したりするなど、定量的かつ定性的な品質チューニングを行ってよい。 Here, the processor 220 may tune the criteria for selecting representative topics. For example, the processor 220 may perform quantitative and qualitative quality tuning, such as determining the degree of overlap of words between topics and comparing the similarity between topics.
また、プロセッサ220は、トピック間の関係に基づいて広範囲のトピックを除去する後処理ロジックを実行してよい。一例として、プロセッサ220は、トピック間の関係に基づいた階層構造において、下位階層のトピックが閾値上に多いトピックを代表トピックの選定対象から除外してよい。 The processor 220 may also execute post-processing logic to remove a wide range of topics based on the relationships between topics. As an example, the processor 220 may exclude from the selection of representative topics those topics that have a threshold number of topics in a lower hierarchy in a hierarchical structure based on the relationships between topics.
プロセッサ220は、各キーワードに対して多様なトピックが生成される場合、トピック間の関係に基づいた埋め込み学習により、代表となり得る少なくとも1つのトピックを最終的に選定して当該キーワードとの関係を構築してよい。 When multiple topics are generated for each keyword, the processor 220 may ultimately select at least one topic that can be representative by embedding learning based on the relationship between the topics, and build a relationship with the keyword.
図12~14は、本発明の一実施形態における、個人化推薦過程の一例を示した図である。 Figures 12-14 show an example of a personalized recommendation process in one embodiment of the present invention.
図12を参照すると、プロセッサ220は、ユーザが検索サービス画面1200上に検索語1201を入力する場合、検索語1201に対応する検索結果に個人化推薦情報1210を含んで提供してよい。 Referring to FIG. 12, when a user inputs a search term 1201 on a search service screen 1200, the processor 220 may provide search results corresponding to the search term 1201 including personalized recommendation information 1210.
一例として、プロセッサ220は、検索語1201に該当するキーワードと関係が設定されたトピックをユーザの関心トピック1211として選定した後、関心トピック1211に属するキーワードのうちで検索語1201と類似するかユーザが選好するキーワードである関連キーワード1212を個人化推薦情報1210として提供してよい。 As an example, the processor 220 may select topics related to the keywords corresponding to the search terms 1201 as topics of interest 1211 of the user, and then provide related keywords 1212, which are keywords similar to the search terms 1201 or preferred by the user among the keywords belonging to the topics of interest 1211, as personalized recommendation information 1210.
他の例として、プロセッサ220は、検索語1201に対して関連キーワード1212と関連するアイテム1213を個人化推薦情報1210として提供してよい。例えば、アイテム1213は、関連キーワード1212がタグとして登録された商品、他のユーザが関連キーワード1212で検索してクリックした商品、またはユーザとプロフィール(性別や年齢など)が類似する他のユーザがクリックした商品などが選定されてよい。 As another example, the processor 220 may provide items 1213 related to related keywords 1212 for the search term 1201 as personalized recommendation information 1210. For example, the items 1213 may be selected products for which the related keywords 1212 are registered as tags, products that other users have searched for and clicked on using the related keywords 1212, or products that other users with a similar profile (gender, age, etc.) to the user have clicked on.
図13を参照すると、プロセッサ220は、ユーザが個人化推薦領域1310を含んだサービス画面1300に接続する場合、ここ最近の一定期間内のユーザ活動に基づいて当該ユーザの関心トピック1311を提供してよい。このとき、プロセッサ220は、ユーザ活動キーワード(ここ最近の一定期間内の検索語やクリック商品のタグなど)と関係が設定されたトピックを当該ユーザの関心トピック1311として選定して個人化推薦領域1310に表示してよい。 Referring to FIG. 13, when a user accesses a service screen 1300 including a personalized recommendation area 1310, the processor 220 may provide the user with topics of interest 1311 based on the user's activity within a recent certain period of time. In this case, the processor 220 may select topics related to user activity keywords (such as search terms and clicked product tags within a recent certain period of time) as the user's topics of interest 1311 and display them in the personalized recommendation area 1310.
プロセッサ220は、個人化推薦領域1310に表示された関心トピック1311のうちから特定のトピックが選択される場合、図14に示すように、選択トピック1411に属するキーワードのうちでユーザ活動キーワードと類似するかユーザが選好するキーワードである関連キーワード1412を個人化推薦領域1310で提供してよい。 When a specific topic is selected from among the topics of interest 1311 displayed in the personalized recommendation area 1310, the processor 220 may provide in the personalized recommendation area 1310, as shown in FIG. 14, related keywords 1412, which are keywords belonging to the selected topic 1411 that are similar to the user activity keywords or are preferred by the user.
プロセッサ220は、関連キーワード1412とともに、関連キーワード1412と関連するアイテム1413を個人化推薦領域1310に表示してよい。例えば、アイテム1413は、関連キーワード1412がタグとして登録された商品、他のユーザが関連キーワード1412で検索してクリックした商品、またはユーザとプロフィールまたは関心トピック1311が類似する他のユーザがクリックした商品などが選定されてよい。 The processor 220 may display items 1413 related to the related keywords 1412 in the personalized recommendation area 1310 together with the related keywords 1412. For example, the items 1413 may be selected products for which the related keywords 1412 are registered as tags, products that other users have searched for and clicked on using the related keywords 1412, or products that other users who have a similar profile or topic of interest 1311 to the user have clicked on.
このように、本発明の実施形態によると、大規模言語モデルを利用してキーワードとトピックの間の意味論的関係を現す新たな概念のデータを生成することができ、キーワードとトピックの関係データに基づいてインターネット上のユーザの行動を明示的な単語(関心トピック)に要約し、これに基づいてユーザに個人化された推薦を提供することができる。 Thus, according to an embodiment of the present invention, a large-scale language model can be used to generate new conceptual data that represents semantic relationships between keywords and topics, and based on the keyword-topic relationship data, user behavior on the Internet can be summarized into explicit words (topics of interest), and personalized recommendations can be provided to the user based on this.
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および/またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ALU(arithmetic logic unit)、デジタル信号プロセッサ、マイクロコンピュータ、FPGA(field programmable gate array)、PLU(programmable logic unit)、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、1つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム(OS)およびOS上で実行される1つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを記録、操作、処理、および生成してもよい。理解の便宜のために、1つの処理装置が使用されるとして説明される場合もあるが、当業者であれば、処理装置が複数個の処理要素および/または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは1つのプロセッサおよび1つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。 The above-described devices may be realized by hardware components, software components, and/or a combination of hardware and software components. For example, the devices and components described in the embodiments may be realized using one or more general-purpose or special-purpose computers, such as a processor, controller, arithmetic logic unit (ALU), digital signal processor, microcomputer, field programmable gate array (FPGA), programmable logic unit (PLU), microprocessor, or various devices capable of executing and responding to instructions. The processing device may execute an operating system (OS) and one or more software applications that run on the OS. The processing device may also respond to the execution of the software and access, record, manipulate, process, and generate data. For ease of understanding, the description may be given as if one processing device is used, but one skilled in the art will understand that the processing device may include multiple processing elements and/or multiple types of processing elements. For example, a processing unit may include multiple processors or one processor and one controller. Other processing configurations, such as parallel processors, are also possible.
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの1つ以上の組み合わせを含んでもよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび/またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、コンピュータ記録媒体または装置に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で記録されても実行されてもよい。ソフトウェアおよびデータは、1つ以上のコンピュータ読み取り可能な記録媒体に記録されてよい。 The software may include computer programs, codes, instructions, or a combination of one or more of these, and may configure or instruct the processing device to operate as desired, either independently or collectively. The software and/or data may be embodied in any type of machine, component, physical device, computer storage medium, or device to be interpreted based on the processing device or to provide instructions or data to the processing device. The software may be distributed and stored or executed in a distributed manner on computer systems connected by a network. The software and data may be stored on one or more computer-readable storage media.
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータ読み取り可能な媒体に記録されてよい。ここで、媒体は、コンピュータ実行可能なプログラムを継続して記録するものであっても、実行またはダウンロードのために一時記録するものであってもよい。また、媒体は、単一または複数のハードウェアが結合した形態の多様な記録手段または格納手段であってよく、あるコンピュータシステムに直接接続する媒体に限定されることはなく、ネットワーク上に分散して存在するものであってもよい。媒体の例としては、ハードディスク、フロッピー(登録商標)ディスク、および磁気テープのような磁気媒体、CD-ROMおよびDVDのような光媒体、フロプティカルディスク(floptical disk)のような光磁気媒体、およびROM、RAM、フラッシュメモリなどを含み、プログラム命令が記録されるように構成されたものであってよい。また、媒体の他の例として、アプリケーションを配布するアプリケーションストアやその他の多様なソフトウェアを供給または配布するサイト、サーバなどで管理する記録媒体または格納媒体が挙げられる。 The method according to the embodiment may be realized in the form of program instructions executable by various computer means and recorded on a computer-readable medium. Here, the medium may be one that continuously records the computer-executable program or one that temporarily records it for execution or download. The medium may be one of various recording means or storage means in the form of a single or multiple hardware combined, and is not limited to a medium directly connected to a certain computer system, but may be one that is distributed over a network. Examples of the medium include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, magneto-optical media such as floptical disks, and ROMs, RAMs, flash memories, etc., configured to record program instructions. Other examples of the medium include recording media or storage media managed by application stores that distribute applications, or sites, servers, etc. that supply or distribute various other software.
以上のように、実施形態を、限定された実施形態および図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ/あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。 Although the embodiments have been described above based on limited embodiments and drawings, those skilled in the art will appreciate that various modifications and variations can be made from the above description. For example, the described techniques may be performed in an order different from that described, and/or the components of the described systems, structures, devices, circuits, etc. may be combined or combined in a manner different from that described, or may be counterbalanced or replaced by other components or equivalents, and still achieve suitable results.
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。 Therefore, different embodiments that are equivalent to the scope of the claims are within the scope of the attached claims.
220:プロセッサ
310:データ生成部
320:関心トピック選定部
330:個人化推薦部
220: Processor 310: Data Generation Unit 320: Interest Topic Selection Unit 330: Personalized Recommendation Unit
Claims (15)
前記コンピュータシステムは、メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサを含み、
前記方法は、
前記少なくとも1つのプロセッサにより、インターネット上で使用されるキーワードに対して、キーワードのサンプルと当該キーワードのトピックからなるサンプルデータペアとターゲットキーワードとで構成されたプロンプト(prompt)を言語モデル(language model)に入力して、前記ターゲットキーワードに該当する複数の候補トピックを生成し、前記候補トピックに対して、候補トピック間の類似度に基づいて類似関係にある候補トピックを選別し、類似関係にある候補トピック間の包含関係と、包含関係にある候補トピックを除いた候補トピック間の同等関係とを利用して、前記複数の候補トピック間の関係を表現したグラフ埋め込み(graph embedding)を実行し、前記グラフ埋め込みを利用して前記ターゲットキーワードと前記複数の候補トピックとの間に関係を構築する段階、および
前記少なくとも1つのプロセッサにより、前記ターゲットキーワードと前記複数の候補トピックの関係を利用して、インターネット上のユーザの活動に対応する少なくとも1つの関心トピックを選定する段階、および
前記少なくとも1つのプロセッサにより、前記関心トピックに基づいて前記ユーザに個人化された推薦情報を提供する段階
を含む、方法。 1. A method implemented on a computer system, comprising:
The computer system includes at least one processor configured to execute computer-readable instructions contained in a memory;
The method comprises:
inputting a prompt, which is composed of a sample data pair of a keyword sample and a topic of the keyword, and a target keyword, into a language model by the at least one processor for a keyword used on the Internet , to generate a plurality of candidate topics corresponding to the target keyword, selecting candidate topics having a similar relationship based on a similarity between the candidate topics, performing graph embedding to express a relationship between the plurality of candidate topics by using an inclusion relationship between the similar candidate topics and an equivalence relationship between the candidate topics excluding the inclusion relationship, and constructing a relationship between the target keyword and the plurality of candidate topics by using the graph embedding; selecting at least one interest topic corresponding to a user's activity on the Internet by the at least one processor by using the relationship between the target keyword and the plurality of candidate topics; and providing personalized recommendation information to the user based on the interest topics by the at least one processor.
インターネット上の情報検索または情報分類に使用される前記キーワードに関連して、当該キーワードを使用するユーザの関心事を示す、請求項1に記載の方法。 The topics of interest that are related to the keywords include:
The method of claim 1 , further comprising: indicating , in association with the keywords used to search for or categorize information on the Internet, the interests of a user using the keywords.
前記候補トピック間の包含関係と、前記候補トピック間の同等関係とを利用して把握された前記複数の候補トピック間の関係に基づいて、少なくとも1つの代表トピックを選定する段階
を含む、請求項1に記載の方法。 The constructing step includes:
The method of claim 1 , further comprising: selecting at least one representative topic based on relationships between the plurality of candidate topics grasped using inclusion relationships between the candidate topics and equivalence relationships between the candidate topics.
前記キーワードと前記言語モデルで生成された候補トピックに対して行列分解(MF:matrix factorization)を実行することによりグルーピングされる、請求項1に記載の方法。 The candidate topics having the similar relationship are:
The method of claim 1 , wherein the candidate topics are grouped by performing matrix factorization (MF) on the keywords and the candidate topics generated by the language model.
階層構造を構成する前記複数の候補トピック間の関係において、一定のデプス以上の候補トピックを代表トピックとして選定する、請求項3に記載の方法。 The step of selecting a representative topic includes:
The method according to claim 3 , further comprising the step of selecting a candidate topic having a certain depth or more in a relationship between the plurality of candidate topics forming a hierarchical structure as a representative topic .
前記ユーザが入力した検索語と前記ユーザがクリックした商品のタグのうちの少なくとも1つの活動キーワードと関係が設定されたトピックを前記関心トピックとして選定すること
を特徴とする、請求項1に記載の方法。 The step of selecting a topic of interest includes:
The method according to claim 1 , further comprising: selecting, as the topic of interest, a topic that is related to at least one of the activity keywords among the search term entered by the user and the tag of the product clicked by the user.
前記関心トピックと関係が設定されたキーワードのうちで前記ユーザの活動と関連する少なくとも1つのキーワードを関連キーワードとして推薦する段階
を含む、請求項1に記載の方法。 The step of providing the user with personalized recommendation information comprises:
The method of claim 1 , further comprising: recommending, as a related keyword, at least one keyword related to the user's activity among the keywords related to the topic of interest.
前記関心トピックと関係が設定されたキーワードのうちで前記ユーザの活動と関連する少なくとも1つのキーワードを関連キーワードとして選定する段階、および
インターネット上のアイテムのうちで前記関連キーワードと関連するアイテムを推薦する段階
を含む、請求項1に記載の方法。 The step of providing the user with personalized recommendation information comprises:
The method of claim 1 , comprising: selecting at least one keyword related to the user's activity among the keywords related to the topic of interest as a related keyword; and recommending items on the Internet that are related to the related keyword.
前記ユーザのプロフィール情報と前記関心トピックのうちの少なくとも1つを利用して推薦アイテムを選定する段階
を含む、請求項8に記載の方法。 The step of recommending an item related to the related keyword includes:
The method of claim 8 , comprising: selecting recommended items utilizing at least one of the user's profile information and the topics of interest.
メモリに含まれるコンピュータ読み取り可能な命令を実行するように構成された少なくとも1つのプロセッサ
を含み、
前記少なくとも1つのプロセッサは、
インターネット上で使用されるキーワードに対して、キーワードのサンプルと当該キーワードのトピックからなるサンプルデータペアとターゲットキーワードとで構成されたプロンプトを言語モデルに入力して、前記ターゲットキーワードに該当する複数の候補トピックを生成し、前記候補トピックに対して、候補トピック間の類似度に基づいて類似関係にある候補トピックを選別し、類似関係にある候補トピック間の包含関係と、包含関係にある候補トピックを除いた候補トピック間の同等関係とを利用して、前記複数の候補トピック間の関係を表現したグラフ埋め込みを実行し、前記グラフ埋め込みを利用して前記ターゲットキーワードと前記複数の候補トピックとの間に関係を構築し、
前記ターゲットキーワードと前記複数の候補トピックの関係を利用してインターネット上のユーザの活動に対応する少なくとも1つの関心トピックを選定し、
前記関心トピックに基づいて前記ユーザに個人化された推薦情報を提供すること
を特徴とする、コンピュータシステム。 1. A computer system comprising:
at least one processor configured to execute computer readable instructions contained in a memory;
The at least one processor
For a keyword used on the Internet, a prompt consisting of a sample data pair consisting of a keyword sample and a topic of the keyword, and a target keyword is input to a language model to generate a plurality of candidate topics corresponding to the target keyword, candidate topics having a similar relationship are selected from the candidate topics based on the similarity between the candidate topics, and a graph embedding is performed to express the relationship between the plurality of candidate topics using an inclusion relationship between the similar candidate topics and an equivalence relationship between the candidate topics excluding the inclusion relationship, and a relationship is constructed between the target keyword and the plurality of candidate topics using the graph embedding ,
selecting at least one topic of interest corresponding to the user's activity on the Internet using the relationship between the target keyword and the plurality of candidate topics;
providing personalized recommendations to the user based on the topics of interest.
インターネット上の情報検索または情報分類に使用される前記キーワードに関連して、当該キーワードを使用するユーザの関心事を示す、請求項11に記載のコンピュータシステム。 The topics of interest that are related to the keywords include:
12. The computer system of claim 11 , associated with the keywords used to search for or categorize information on the Internet, to indicate interests of a user using the keywords.
前記候補トピック間の包含関係と、前記候補トピック間の同等関係とを利用して把握された前記複数の候補トピック間の関係に基づいて、少なくとも1つの代表トピックを選定すること
を特徴とする、請求項11に記載のコンピュータシステム。 The at least one processor
The computer system according to claim 11, further comprising: selecting at least one representative topic based on the relationships between the plurality of candidate topics grasped using the inclusion relationships between the candidate topics and the equivalence relationships between the candidate topics.
階層構造を構成する前記複数の候補トピック間の関係において、一定のデプス以上の候補トピックを代表トピックとして選定すること
を特徴とする、請求項13に記載のコンピュータシステム。 The at least one processor
The computer system according to claim 13 , further comprising : selecting a candidate topic at a certain depth or higher as a representative topic in a relationship between the plurality of candidate topics forming a hierarchical structure.
前記関心トピックと関係が設定されたキーワードのうちで前記ユーザの活動と関連する少なくとも1つのキーワードを関連キーワードとして推薦するか、または前記インターネット上のアイテムのうちで前記関連キーワードと関連するアイテムを推薦すること
を特徴とする、請求項11に記載のコンピュータシステム。 The at least one processor
The computer system according to claim 11, further comprising: recommending at least one keyword related to the user's activity among the keywords related to the topic of interest as a related keyword; or recommending an item related to the related keyword among items on the Internet.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020220010593A KR20230114440A (en) | 2022-01-25 | 2022-01-25 | Method, system, and computer program for personalized recommendation based on topic of interest |
KR10-2022-0010593 | 2022-01-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2023108590A JP2023108590A (en) | 2023-08-04 |
JP7529344B2 true JP7529344B2 (en) | 2024-08-06 |
Family
ID=87475250
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022174072A Active JP7529344B2 (en) | 2022-01-25 | 2022-10-31 | Method, system, and computer program for personalized recommendations based on topics of interest |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7529344B2 (en) |
KR (1) | KR20230114440A (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010197706A (en) | 2009-02-25 | 2010-09-09 | Ntt Docomo Inc | Device and method for determining topic of conversation |
JP2012018412A (en) | 2004-01-20 | 2012-01-26 | Koninkl Philips Electronics Nv | Method for deciding topic of conversation, acquiring associated content and presenting content, and system thereof |
JP2018206361A (en) | 2017-06-07 | 2018-12-27 | 富士ゼロックス株式会社 | System and method for user-oriented topic selection and browsing, and method, program, and computing device for displaying multiple content items |
US20200233917A1 (en) | 2019-01-23 | 2020-07-23 | Keeeb Inc. | Data processing system for data search and retrieval augmentation and enhanced data storage |
-
2022
- 2022-01-25 KR KR1020220010593A patent/KR20230114440A/en unknown
- 2022-10-31 JP JP2022174072A patent/JP7529344B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012018412A (en) | 2004-01-20 | 2012-01-26 | Koninkl Philips Electronics Nv | Method for deciding topic of conversation, acquiring associated content and presenting content, and system thereof |
JP2010197706A (en) | 2009-02-25 | 2010-09-09 | Ntt Docomo Inc | Device and method for determining topic of conversation |
JP2018206361A (en) | 2017-06-07 | 2018-12-27 | 富士ゼロックス株式会社 | System and method for user-oriented topic selection and browsing, and method, program, and computing device for displaying multiple content items |
US20200233917A1 (en) | 2019-01-23 | 2020-07-23 | Keeeb Inc. | Data processing system for data search and retrieval augmentation and enhanced data storage |
Non-Patent Citations (1)
Title |
---|
Asahi Ushio 他,BERT is to NLP what AlexNet is to CV: Can Pre-trained Language Models Identify Analogies?,Proceedings of the 59th Annual Meeting of the Association for Computational Linguistics and the 11th International Joint Conference on Natural Language Processing,2021年08月06日,pages 3609-3624,[2023年12月13日検索],インターネット<URL:https://aclanthology.org/2021.acl-long.280.pdf> |
Also Published As
Publication number | Publication date |
---|---|
JP2023108590A (en) | 2023-08-04 |
KR20230114440A (en) | 2023-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101778679B1 (en) | Method and system for classifying data consisting of multiple attribues represented by sequences of text words or symbols using deep learning | |
RU2725659C2 (en) | Method and system for evaluating data on user-element interactions | |
KR100898454B1 (en) | Integrated search service system and method | |
US8301514B1 (en) | System, method, and computer readable medium for providing recommendations based on purchase phrases | |
US9910930B2 (en) | Scalable user intent mining using a multimodal restricted boltzmann machine | |
CN109271574A (en) | A kind of hot word recommended method and device | |
US12067065B2 (en) | System and method for integrating content into webpages | |
US9767417B1 (en) | Category predictions for user behavior | |
CN102822815A (en) | Method and system for action suggestion using browser history | |
US9852448B2 (en) | Identifying gaps in search results | |
CN109906450A (en) | For the method and apparatus by similitude association to electronic information ranking | |
Jiang et al. | Cloud service recommendation based on unstructured textual information | |
US9767204B1 (en) | Category predictions identifying a search frequency | |
US11375280B2 (en) | Systems and methods for evaluating models that generate recommendations | |
CN111400586A (en) | Group display method, terminal, server, system and storage medium | |
US10474670B1 (en) | Category predictions with browse node probabilities | |
Lytvyn et al. | An Intelligent System of the Content Relevance at the Ex-ample of Films According to User Needs | |
RU2586249C2 (en) | Search request processing method and server | |
US10387934B1 (en) | Method medium and system for category prediction for a changed shopping mission | |
KR102119518B1 (en) | Method and system for recommending product based style space created using artificial intelligence | |
CN103425767A (en) | Method and system for determining prompt data | |
JP7012803B2 (en) | Soaring search term provision method and system | |
CN116823410B (en) | Data processing method, object processing method, recommending method and computing device | |
JP7529344B2 (en) | Method, system, and computer program for personalized recommendations based on topics of interest | |
JP2023162154A (en) | Method, computer device and computer program for providing recommendation information based on local knowledge graph |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221031 |
|
A80 | Written request to apply exceptions to lack of novelty of invention |
Free format text: JAPANESE INTERMEDIATE CODE: A80 Effective date: 20221107 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231213 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231219 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240318 |
|
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: 20240625 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240719 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7529344 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |