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

JP6884116B2 - Information processing equipment, information processing methods, and programs - Google Patents

Information processing equipment, information processing methods, and programs Download PDF

Info

Publication number
JP6884116B2
JP6884116B2 JP2018050395A JP2018050395A JP6884116B2 JP 6884116 B2 JP6884116 B2 JP 6884116B2 JP 2018050395 A JP2018050395 A JP 2018050395A JP 2018050395 A JP2018050395 A JP 2018050395A JP 6884116 B2 JP6884116 B2 JP 6884116B2
Authority
JP
Japan
Prior art keywords
product
category
score
product data
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018050395A
Other languages
Japanese (ja)
Other versions
JP2019164402A (en
Inventor
智大 田中
智大 田中
光 浜出
光 浜出
立石 健二
健二 立石
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2018050395A priority Critical patent/JP6884116B2/en
Publication of JP2019164402A publication Critical patent/JP2019164402A/en
Application granted granted Critical
Publication of JP6884116B2 publication Critical patent/JP6884116B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

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

一般的に、ショッピングサイトなどで商品やサービスを販売する場合、それらの商品またサービスに対して階層的なカテゴリを付与することが行われている。これに関連し、テキストに含まれる特徴語と、カテゴリに関連する関連単語とに重み値が付されている場合、特徴語の重み値と、関連単語の重み値とのマッチスコアに基づいて、商品カテゴリを決定する技術が知られている(例えば、特許文献1参照)。 Generally, when a product or service is sold on a shopping site or the like, a hierarchical category is assigned to the product or service. In this regard, if the feature words in the text and the related words associated with the category are weighted, based on the match score between the feature word weights and the related word weights, A technique for determining a product category is known (see, for example, Patent Document 1).

特開2010−44584号公報Japanese Unexamined Patent Publication No. 2010-445884

しかしながら、従来の技術では、商品またはサービスが適切でないカテゴリに分類され、その結果、商品またはサービスの検索精度が低下する場合があった。 However, in the prior art, the goods or services may be classified into inappropriate categories, resulting in reduced search accuracy of the goods or services.

本発明は、上記の課題に鑑みてなされたものであり、商品またはサービスを、より適切なカテゴリに分類して検索精度を向上させることができる情報処理装置、情報処理方法、およびプログラムを提供することを目的としている。 The present invention has been made in view of the above problems, and provides an information processing device, an information processing method, and a program capable of classifying products or services into more appropriate categories and improving search accuracy. The purpose is.

本発明の一態様は、ネットワークを介して販売される商品またはサービスに関する商品データを取得する取得部と、階層的なカテゴリに分類された商品またはサービスの商品データを学習データとして、入力された商品データが示す商品またはサービスに対して階層的なカテゴリの分類結果を出力するように学習された分類器の出力結果に基づいて、前記取得部により取得された前記商品データが示す商品またはサービスのカテゴリを決定する決定部と、を備える情報処理装置である。
である。
One aspect of the present invention is an acquisition unit that acquires product data related to products or services sold via a network, and a product input using product data of products or services classified into hierarchical categories as learning data. Based on the output result of the classifier learned to output the classification result of the hierarchical category for the product or service indicated by the data, the category of the product or service indicated by the product data acquired by the acquisition unit. It is an information processing apparatus including a determination unit for determining.
Is.

本発明の一態様によれば、商品またはサービスを、より適切なカテゴリに分類して検索精度を向上させることができる。 According to one aspect of the present invention, goods or services can be classified into more appropriate categories to improve search accuracy.

第1実施形態における情報処理装置100を含む情報処理システム1の一例を示す図である。It is a figure which shows an example of the information processing system 1 including the information processing apparatus 100 in 1st Embodiment. サービス提供装置20により提供されるウェブページの一例を示す図である。It is a figure which shows an example of the web page provided by the service providing apparatus 20. 階層的なカテゴリの一例を示す図である。It is a figure which shows an example of a hierarchical category. 第1実施形態における情報処理装置100の構成の一例を示す図である。It is a figure which shows an example of the structure of the information processing apparatus 100 in 1st Embodiment. 第1実施形態における情報処理装置100による運用時の一連の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a series of processing at the time of operation by the information processing apparatus 100 in 1st Embodiment. 販売サイト取扱商品データ134の一例を示す図である。It is a figure which shows an example of the product data 134 handled on the sales site. 第1実施形態における分類器200の一例を示す図である。It is a figure which shows an example of the classifier 200 in 1st Embodiment. 時間経過に応じたRNN250の処理内容を並列に展開した図である。It is a figure which developed the processing contents of RNN250 according to the lapse of time in parallel. カテゴリの分類結果の一例を示す図である。It is a figure which shows an example of the classification result of a category. カテゴリ間違い候補リスト136の一例を示す図である。It is a figure which shows an example of the category error candidate list 136. 商品がランキング順に掲載された販売サイトのウェブページの一例を示す図である。It is a figure which shows an example of the web page of the sales site where products are listed in the order of ranking. 商品がランキング順に掲載された販売サイトのウェブページの一例を示す図である。It is a figure which shows an example of the web page of the sales site where products are listed in the order of ranking. 販売サイトに商品を登録する際の商品登録画面の一例を示す図である。It is a figure which shows an example of the product registration screen at the time of registering a product on a sales site. 販売サイトに商品を登録する際の商品登録画面の他の例を示す図である。It is a figure which shows another example of the product registration screen at the time of registering a product on a sales site. 第1実施形態における情報処理装置100による学習時の一連の処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a series of processing at the time of learning by the information processing apparatus 100 in 1st Embodiment. ラベルスムージング処理を説明するための図である。It is a figure for demonstrating the label smoothing process. ラベルスムージング処理を説明するための図である。It is a figure for demonstrating the label smoothing process. 第2実施形態における分類器200の一例を示す図である。It is a figure which shows an example of the classifier 200 in 2nd Embodiment. 第3実施形態における分類器200の一例を示す図である。It is a figure which shows an example of the classifier 200 in 3rd Embodiment. 実施形態の情報処理装置100のハードウェア構成の一例を示す図である。It is a figure which shows an example of the hardware composition of the information processing apparatus 100 of an embodiment.

以下、本発明を適用した情報処理装置、情報処理方法、およびプログラムを、図面を参照して説明する。 Hereinafter, an information processing apparatus, an information processing method, and a program to which the present invention is applied will be described with reference to the drawings.

[概要]
情報処理装置は、一以上のプロセッサにより実現される。情報処理装置は、ネットワークを介して販売される商品またはサービスに関する商品データを取得する。情報処理装置は、予め学習された分類器に基づいて、取得した商品データが示す商品またはサービスの分類先とするカテゴリを決定する。決定するカテゴリは、階層的な構造で規定されている。分類器は、階層的なカテゴリに分類された商品またはサービスの商品データを学習データとして、入力された商品データが示す商品またはサービスに対して階層的なカテゴリの分類結果を出力するように学習される。これのような分類器を利用することで、情報処理装置は、商品またはサービスを、より適切なカテゴリに分類することができ、その結果、商品またはサービスの検索精度を向上させることができる。以下、商品またはサービスをまとめて単に「商品」と称して説明する。
[Overview]
The information processing device is realized by one or more processors. The information processing device acquires product data related to products or services sold via a network. The information processing device determines the category to which the product or service indicated by the acquired product data is classified based on the classifier learned in advance. The categories to be determined are defined by a hierarchical structure. The classifier is trained to output the classification result of the hierarchical category for the product or service indicated by the input product data, using the product data of the product or service classified into the hierarchical category as training data. To. By utilizing such a classifier, the information processing apparatus can classify the goods or services into more appropriate categories, and as a result, the search accuracy of the goods or services can be improved. Hereinafter, the goods or services will be collectively referred to as "goods" and will be described.

<第1実施形態>
[全体構成]
図1は、第1実施形態における情報処理装置100を含む情報処理システム1の一例を示す図である。第1実施形態における情報処理システム1は、例えば、一以上の端末装置10と、サービス提供装置20と、情報処理装置100とを備える。これらの装置は、ネットワークNWを介して接続される。また、これらの装置のうち一部は、他の装置に仮想的な装置として包含されてもよく、例えば、サービス提供装置20の機能の一部または全部が、情報処理装置100の機能によって実現される仮想マシンであってもよい。
<First Embodiment>
[overall structure]
FIG. 1 is a diagram showing an example of an information processing system 1 including an information processing device 100 according to the first embodiment. The information processing system 1 in the first embodiment includes, for example, one or more terminal devices 10, a service providing device 20, and an information processing device 100. These devices are connected via the network NW. Further, a part of these devices may be included in another device as a virtual device. For example, a part or all of the functions of the service providing device 20 are realized by the functions of the information processing device 100. It may be a virtual machine.

図1に示す各装置は、ネットワークNWを介して種々の情報を送受信する。ネットワークNWは、例えば、インターネット、WAN(Wide Area Network)、LAN(Local Area Network)、プロバイダ端末、無線通信網、無線基地局、専用回線などを含む。なお、図1に示す各装置の全ての組み合わせが相互に通信可能である必要はなく、ネットワークNWは、一部にローカルなネットワークを含んでもよい。 Each device shown in FIG. 1 transmits and receives various information via the network NW. The network NW includes, for example, the Internet, a WAN (Wide Area Network), a LAN (Local Area Network), a provider terminal, a wireless communication network, a wireless base station, a dedicated line, and the like. It should be noted that not all combinations of the devices shown in FIG. 1 need to be able to communicate with each other, and the network NW may include a local network in part.

端末装置10は、例えば、スマートフォンなどの携帯電話、タブレット端末、各種パーソナルコンピュータなどの、入力装置、表示装置、通信装置、記憶装置、および演算装置を備える端末装置である。通信装置は、NIC(Network Interface Card)などのネットワークカード、無線通信モジュールなどを含む。端末装置10では、ウェブブラウザやアプリケーションプログラムなどのUA(User Agent)が起動し、ユーザの入力する内容に応じたリクエストをサービス提供装置20に送信する。また、UAが起動された端末装置10は、サービス提供装置20から取得した情報に基づいて、表示装置に各種画像を表示させる。 The terminal device 10 is a terminal device including an input device, a display device, a communication device, a storage device, and an arithmetic device, such as a mobile phone such as a smartphone, a tablet terminal, and various personal computers. The communication device includes a network card such as a NIC (Network Interface Card), a wireless communication module, and the like. In the terminal device 10, a UA (User Agent) such as a web browser or an application program is activated, and a request according to the content input by the user is transmitted to the service providing device 20. Further, the terminal device 10 in which the UA is activated causes the display device to display various images based on the information acquired from the service providing device 20.

サービス提供装置20は、例えば、UAとして起動されたウェブブラウザからのリクエストに応じてウェブページを端末装置10に提供するウェブサーバである。ウェブページは、例えば、インターネット上において商品を販売するショッピングサイトやオークションサイト、フリーマーケットサイト等のウェブサイト(以下、総称して「販売サイト」と称する)を構成するウェブページであってよい。また、サービス提供装置20は、検索サイトやSNS(Social Networking Service)、メールサービスなどの各種サービスを提供するウェブページを端末装置10に提供してもよい。また、サービス提供装置20は、UAとして起動されたアプリケーションからのリクエストに応じてコンテンツを端末装置10に提供することで、販売サイトなどの各種ウェブサイトと同様のサービスを提供するアプリケーションサーバであってもよい。 The service providing device 20 is, for example, a web server that provides a web page to the terminal device 10 in response to a request from a web browser started as a UA. The web page may be, for example, a web page constituting a website such as a shopping site, an auction site, or a free market site that sells products on the Internet (hereinafter, collectively referred to as a "sales site"). Further, the service providing device 20 may provide the terminal device 10 with a web page that provides various services such as a search site, an SNS (Social Networking Service), and a mail service. Further, the service providing device 20 is an application server that provides the same service as various websites such as a sales site by providing the content to the terminal device 10 in response to a request from an application started as a UA. May be good.

図2は、サービス提供装置20により提供されるウェブページの一例を示す図である。図示の例では、販売サイトのウェブページを模式的に示している。例えば、販売サイトのウェブページには、商品の画像(図中R1)、商品のタイトルを表す文章(図中R2)、商品のカテゴリを表す文章(R3)、商品の概要を表す文章(図中R4)といったコンテンツが含まれる。例えば、販売サイトに店舗を出店して商品を販売する販売者は、商品の画像や、商品のタイトルを表す文章、商品の概要を表す文章などを、出店する店舗のウェブページに商品を登録する時に入力する。また、販売者は、ウェブページに商品を登録する時に併せて、登録する商品に対して階層的なカテゴリを設定する。 FIG. 2 is a diagram showing an example of a web page provided by the service providing device 20. In the illustrated example, the web page of the sales site is schematically shown. For example, on the web page of the sales site, an image of the product (R1 in the figure), a sentence indicating the title of the product (R2 in the figure), a sentence indicating the category of the product (R3), and a sentence indicating the outline of the product (in the figure). Contents such as R4) are included. For example, a seller who opens a store on a sales site and sells a product registers the product on the web page of the store where the store is opened, such as an image of the product, a sentence indicating the title of the product, and a sentence indicating an outline of the product. Enter at times. In addition, the seller sets a hierarchical category for the registered product at the same time when the product is registered on the web page.

図3は、階層的なカテゴリの一例を示す図である。例えば、販売サイトでは、一般的に、最も上位の階層には、「ファッション」のような最も抽象的なカテゴリが設定され、2番目に上位の階層には、「ファッション」よりも具体的な「レディースファッション」のようなカテゴリが設定され、3番目に上位の階層には、「レディースファッション」よりも具体的な「レディースシューズ」のようなカテゴリが設定され、4番目に上位の階層には、「レディースシューズ」よりも具体的な「モカシンシューズ」のようなカテゴリが設定され、5番目に上位の階層には、「モカシンシューズ」よりも具体的なブランド名などがカテゴリとして設定される。 FIG. 3 is a diagram showing an example of hierarchical categories. For example, on a sales site, the highest level generally has the most abstract category such as "fashion", and the second highest level has a more specific "fashion" than "fashion". A category such as "ladies'fashion" is set, a category such as "ladies'shoes" that is more specific than "ladies' fashion" is set in the third highest hierarchy, and a category such as "ladies' shoes" is set in the fourth highest hierarchy. A category such as "moccasin shoes" that is more specific than "ladies' shoes" is set, and a brand name that is more specific than "moccasin shoes" is set as a category in the fifth higher hierarchy.

これらの階層的なカテゴリは、各店舗が独自に設定することができる。そのため、図2に例示するように、本来であれば、「モカシンシューズ」の上位のカテゴリを「レディースシューズ」のようなカテゴリとすべきところが、販売者が誤って、或いは意図して「アイスクリーム、ソフトクリーム」のようなファッションに関係のないカテゴリを付与する場合が発生し得る。 These hierarchical categories can be set independently by each store. Therefore, as illustrated in FIG. 2, the higher category of "moccasin shoes" should be a category such as "ladies' shoes", but the seller mistakenly or intentionally made "ice cream". It may happen that a category that is not related to fashion such as "soft serve ice cream" is given.

このようなカテゴリの設定間違いが生じた場合、販売サイトに出店する全店舗の商品を横断的に検索する際に、本来であれば検索されるべき商品が検索されなかったり、検索されるべきでない商品が検索されてしまったりする場合がある。例えば、「レディースシューズ」に関連した商品に対して、「アイスクリーム、ソフトクリーム」というカテゴリが設定された場合、販売サイトを利用してレディースシューズを探しているユーザに、その商品が掲載されたウェブページを提供することができなくなる。 If such a category setting error occurs, when searching across the products of all stores that open on the sales site, the products that should be searched are not searched or should not be searched. The product may be searched. For example, if the category "ice cream, soft serve" is set for a product related to "ladies'shoes", the product will be posted to users who are looking for ladies' shoes using the sales site. You will not be able to serve web pages.

また、「レディースシューズ」に関連した商品に対して、「アイスクリーム、ソフトクリーム」というカテゴリが設定された場合、販売サイトを利用してアイスクリームを探しているユーザに、「レディースシューズ」に関連した商品が掲載されたウェブページを誤って提供することになる。このように、カテゴリの設定間違いが生じた場合、販売サイトの利便性が低下しやすい。 In addition, if the category "ice cream, soft serve" is set for products related to "ladies'shoes", it is related to "ladies' shoes" to users who are looking for ice cream using the sales site. You will mistakenly provide a web page that contains the product you have purchased. In this way, when a category setting error occurs, the convenience of the sales site tends to decrease.

情報処理装置100は、販売サイトに登録された商品に関する商品データを取得し、取得した商品データを機械学習することで、販売者が商品に対して設定したカテゴリの設定間違いを検出する。商品データには、例えば、上述した商品の画像、商品のタイトル、商品のカテゴリ、商品の概要といった互いに種類が異なる複数のコンテンツが含まれる。すなわち、商品データは、互いに種類が異なる複数のデータの集合体(データセット)である。 The information processing device 100 acquires product data related to products registered on the sales site, and machine-learns the acquired product data to detect an error in setting a category set by the seller for the product. The product data includes a plurality of different types of contents such as the above-mentioned image of the product, the title of the product, the category of the product, and the outline of the product. That is, product data is a collection (data set) of a plurality of data of different types.

[情報処理装置の構成]
図4は、第1実施形態における情報処理装置100の構成の一例を示す図である。図示のように、情報処理装置100は、例えば、通信部102と、制御部110と、記憶部130とを備える。
[Configuration of information processing device]
FIG. 4 is a diagram showing an example of the configuration of the information processing apparatus 100 according to the first embodiment. As shown in the figure, the information processing device 100 includes, for example, a communication unit 102, a control unit 110, and a storage unit 130.

通信部102は、例えば、NIC等の通信インターフェースを含む。通信部102は、ネットワークNWを介して、端末装置10やサービス提供装置20などと通信する。 The communication unit 102 includes, for example, a communication interface such as a NIC. The communication unit 102 communicates with the terminal device 10, the service providing device 20, and the like via the network NW.

制御部110は、例えば、取得部112と、形態素解析部114と、カテゴリ決定部116と、リスト生成部118と、情報提供部120と、学習処理部122とを備える。リスト生成部118は、「抽出部」の一例である。 The control unit 110 includes, for example, an acquisition unit 112, a morphological analysis unit 114, a category determination unit 116, a list generation unit 118, an information providing unit 120, and a learning processing unit 122. The list generation unit 118 is an example of the “extraction unit”.

制御部110の構成要素は、例えば、CPU(Central Processing Unit)などのプロセッサが記憶部130に格納されたプログラムを実行することにより実現される。また、制御部110の構成要素の一部または全部は、LSI(Large Scale Integration)、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、またはGPU(Graphics Processing Unit)などのハードウェア(回路部;circuitry)により実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。 The components of the control unit 110 are realized, for example, by a processor such as a CPU (Central Processing Unit) executing a program stored in the storage unit 130. In addition, some or all of the components of the control unit 110 are hardware such as LSI (Large Scale Integration), ASIC (Application Specific Integrated Circuit), FPGA (Field-Programmable Gate Array), or GPU (Graphics Processing Unit). It may be realized by (circuit unit; circuitry), or it may be realized by the cooperation of software and hardware.

記憶部130は、例えば、HDD(Hard Disc Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、RAM(Random Access Memory)などの記憶装置により実現される。記憶部130には、ファームウェアやアプリケーションプログラムなどの各種プログラムの他に、分類器情報132、販売サイト取扱商品データ134、カテゴリ間違い候補リスト136が格納される。これらの詳細については後述する。 The storage unit 130 is realized by, for example, a storage device such as an HDD (Hard Disc Drive), a flash memory, an EEPROM (Electrically Erasable Programmable Read Only Memory), a ROM (Read Only Memory), and a RAM (Random Access Memory). In addition to various programs such as firmware and application programs, the storage unit 130 stores classifier information 132, sales site handling product data 134, and category error candidate list 136. Details of these will be described later.

[運用時の処理フロー]
以下、第1実施形態における情報処理装置100による運用時の一連の処理の流れをフローチャートに即して説明する。運用時とは、既に学習された分類器200を利用する状態である。図5は、第1実施形態における情報処理装置100による運用時の一連の処理の流れを示すフローチャートである。本フローチャートの処理は、例えば、所定の周期で繰り返し行われてもよい。
[Processing flow during operation]
Hereinafter, a series of processing flows during operation by the information processing apparatus 100 in the first embodiment will be described with reference to a flowchart. The operation time is a state in which the already learned classifier 200 is used. FIG. 5 is a flowchart showing a series of processing flows during operation by the information processing apparatus 100 according to the first embodiment. The processing of this flowchart may be repeated, for example, at a predetermined cycle.

まず、取得部112は、通信部102にサービス提供装置20と通信させ、サービス提供装置20から販売サイトで販売される各商品の商品データを取得する(S100)。そして、取得部112は、取得した複数の商品データを統合し、これを販売サイト取扱商品データ134として記憶部130に記憶させる。 First, the acquisition unit 112 causes the communication unit 102 to communicate with the service providing device 20, and acquires the product data of each product sold on the sales site from the service providing device 20 (S100). Then, the acquisition unit 112 integrates the acquired plurality of product data and stores the acquired product data in the storage unit 130 as the sales site handling product data 134.

図6は、販売サイト取扱商品データ134の一例を示す図である。図示のように、販売サイト取扱商品データ134は、販売サイトで販売される各商品の識別情報を示す商品IDに対して、各店舗の販売者が設定したカテゴリCijと、商品のタイトルと、商品の概要と、商品の画像とが対応付けられたデータである。販売サイト取扱商品データ134のレコードが各商品データを表している。カテゴリCijの「i」は、階層の深さ(最上位の階層から数えて何番目の階層であるのか)を表し、「j」は、各階層のカテゴリの種類を表している。例えば、「C11」は、最上位の階層のカテゴリが、「1」というカテゴリに設定されたことを表しており、「C25」は、2番目の階層(最上位の階層から1段深い階層)のカテゴリが、「5」というカテゴリに設定されたことを表している。 FIG. 6 is a diagram showing an example of product data 134 handled on the sales site. As shown in the figure, the product data 134 handled by the sales site includes a category C ij set by the seller of each store, a product title, and a product ID for the product ID indicating the identification information of each product sold on the sales site. It is data in which the outline of the product and the image of the product are associated with each other. The record of the product data 134 handled by the sales site represents each product data. “I” in category C ij represents the depth of the hierarchy (what number of hierarchy is counted from the highest hierarchy), and “j” represents the type of category in each hierarchy. For example, "C 11 " indicates that the category of the highest hierarchy is set to the category "1", and "C 25 " is the second hierarchy (one step deeper than the highest hierarchy). Hierarchy) category is set to the category "5".

次に、形態素解析部114は、販売サイト取扱商品データ134に含まれる各商品データに含まれる文章(タイトルおよび概要)に対して形態素解析を行う(S102)。例えば、形態素解析部114は、各商品データのタイトルおよび概要に対して形態素解析を行い、タイトルおよび概要の其々を複数の形態素に分割する。形態素解析部114は、形態素として分割した複数の単語(ワード)または語句(フレーズ)の其々をベクトル化する。 Next, the morphological analysis unit 114 performs morphological analysis on the sentences (title and summary) included in each product data included in the product data 134 handled by the sales site (S102). For example, the morphological analysis unit 114 performs morphological analysis on the title and summary of each product data, and divides each of the title and summary into a plurality of morphemes. The morphological analysis unit 114 vectorizes each of a plurality of words (words) or phrases (phrases) divided as morphemes.

例えば、形態素解析部114は、ワンホット表現と呼ばれる手法を用いて、単語や語句をベクトル化してもよいし、word2vecやGloVeのような分散表現または単語埋め込み表現(Word Embedding(s))と呼ばれる手法を用いて、単語や語句をベクトル化してもよい。 For example, the morphological analysis unit 114 may vectorize words and phrases by using a technique called one-hot expression, and is called a distributed expression such as word2vec or GloVe or a word embedding (s). Words and phrases may be vectorized using techniques.

ワンホット表現とは、予め用意された単語または語句のリスト(辞書)と、形態素解析で得られた単語または語句とを比較して、形態素解析で得られた単語または語句のうち、リストに出現した単語または語句の要素値が1、他の単語または語句の要素値が0となるような多次元のベクトルを生成する手法である。 One-hot expression is to compare a list (dictionary) of words or phrases prepared in advance with words or phrases obtained by morphological analysis, and appear in the list of words or phrases obtained by morphological analysis. This is a method of generating a multidimensional vector such that the element value of a word or phrase is 1 and the element value of another word or phrase is 0.

また、分散表現は、形態素解析で得られた単語または語句と、その単語または語句の前後で出現する単語または語句との共起性に基づいて、単語や語句をベクトル化する手法であり、例えば、予め用意された複数の単語や語句を含むコーパスに基づいて、形態素解析で得られた単語または語句の前後に出現する単語または語句の出現確率を求め、その出現確率を要素値とする多次元のベクトルを生成する手法である。 Further, the distributed expression is a method of vectorizing a word or phrase based on the co-occurrence of the word or phrase obtained by morphological analysis and the word or phrase appearing before or after the word or phrase, for example. , Based on a corpus containing a plurality of words or phrases prepared in advance, the appearance probability of a word or phrase that appears before or after the word or phrase obtained by morphological analysis is obtained, and the appearance probability is used as an element value. It is a method to generate a vector of.

例えば、形態素解析部114は、Countinuous Bag-of-WordsおよびSkip-gramの双方の学習モデルを適用したニューラルネットワークに形態素解析で得られた単語または語句を入力することで、その単語や語句が分散表現されたベクトルを生成してよい。 For example, the morphological analysis unit 114 disperses the words or phrases by inputting the words or phrases obtained by the morphological analysis into the neural network to which both the Countuous Bag-of-Words and Skip-gram learning models are applied. You may generate the represented vector.

形態素解析部114は、ベクトル化した単語または語句(以下、単語ベクトルと称する)を行ベクトルとした2階テンソルの行列(以下、単語行列と称する)を生成する。例えば、形態素解析部114は、形態素解析によってタイトルを10個の単語に分割した場合、10個の単語ベクトルの其々を行ベクトルとした単語行列(10行×n列の行列:nは単語ベクトルの次元数)を生成する。 The morphological analysis unit 114 generates a matrix of second-order tensors (hereinafter referred to as a word matrix) in which a vectorized word or phrase (hereinafter referred to as a word vector) is used as a row vector. For example, when the title is divided into 10 words by morphological analysis, the morphological analysis unit 114 uses a word matrix in which each of the 10 word vectors is a row vector (matrix of 10 rows × n columns: n is a word vector). The number of dimensions of) is generated.

次に、カテゴリ決定部116は、分類器情報132を参照して、分類器200を構築(生成)し、形態素解析部114によって生成された単語行列を、構築した分類器200に入力する(S104)。 Next, the category determination unit 116 constructs (generates) the classifier 200 with reference to the classifier information 132, and inputs the word matrix generated by the morphological analysis unit 114 into the constructed classifier 200 (S104). ).

分類器情報132は、分類器を定義した情報(プログラムまたはデータ構造)である。分類器200は、例えば、コンボリューショナルニューラルネットワーク(Convolutional Neural Network:CNN)や、リカレントネットワーク(Reccurent Neural Network:RNN)などの種々のニューラルネットワークによって実現される。 The classifier information 132 is information (program or data structure) that defines a classifier. The classifier 200 is realized by various neural networks such as a convolutional neural network (CNN) and a recurrent neural network (RNN), for example.

分類器情報132には、例えば、各ニューラルネットワークを構成する入力層、一以上の隠れ層(中間層)、出力層の其々に含まれるニューロン(ユニット)が互いにどのように結合されるのかという結合情報や、結合されたニューロン間で入出力されるデータに付与される結合係数などの各種情報が含まれる。結合情報とは、例えば、各層に含まれるニューロン数や、各ニューロンの結合先のニューロンの種類を指定する情報、各ニューロンを実現する活性化関数、隠れ層のニューロン間に設けられたゲートなどの情報を含む。ニューロンを実現する活性化関数は、例えば、正規化線形関数(ReLU関数)であってもよいし、シグモイド関数や、ステップ関数、その他の関数などであってもよい。ゲートは、例えば、活性化関数によって返される値(例えば1または0)に応じて、ニューロン間で伝達されるデータを選択的に通過させたり、重み付けたりする。結合係数は、活性化関数のパラメータであり、例えば、ニューラルネットワークの隠れ層において、ある層のニューロンから、より深い層のニューロンにデータが出力される際に、出力データに対して付与される重みを含む。また、結合係数は、各層の固有のバイアス成分などを含んでもよい。 In the classifier information 132, for example, how the neurons (units) contained in the input layer, one or more hidden layers (intermediate layers), and the output layers constituting each neural network are connected to each other. It includes various information such as connection information and connection coefficients given to data input / output between connected neurons. The connection information includes, for example, the number of neurons contained in each layer, information that specifies the type of neuron to which each neuron is connected, an activation function that realizes each neuron, a gate provided between neurons in the hidden layer, and the like. Contains information. The activation function that realizes the neuron may be, for example, a rectified linear function (ReLU function), a sigmoid function, a step function, or other function. The gate selectively passes or weights the data transmitted between neurons, for example, depending on the value returned by the activation function (eg 1 or 0). The coupling coefficient is a parameter of the activation function. For example, in a hidden layer of a neural network, when data is output from a neuron in a certain layer to a neuron in a deeper layer, the weight given to the output data is given. including. Further, the coupling coefficient may include a bias component peculiar to each layer.

図7は、第1実施形態における分類器200の一例を示す図である。第1実施形態における分類器200は、例えば、第1CNN210と、第2CNN220と、第3CNN230と、FCNN(Fully-Connected Neural Network)240と、RNN250とによって実現される。 FIG. 7 is a diagram showing an example of the classifier 200 according to the first embodiment. The classifier 200 in the first embodiment is realized by, for example, a first CNN 210, a second CNN 220, a third CNN 230, an FCNN (Fully-Connected Neural Network) 240, and an RNN 250.

第1CNN210および第2CNN220は、単語行列が入力されると、次元数が所定数のベクトルを出力するように学習されたコンボリューショナルニューラルネットワークである。 The first CNN 210 and the second CNN 220 are convolutional neural networks learned to output a vector having a predetermined number of dimensions when a word matrix is input.

例えば、単語行列を、各要素値が画素値に置き換わった画像とした場合、第1CNN210および第2CNN220は、入力された単語行列に相当する画像と所定のフィルタとを畳み込み(内積を求め)、所定のフィルタと重なる複数の画素を含む画像領域を、一つの単位領域に圧縮する。この単位領域には、畳み込みにより得られた単変量値が特徴量として対応付けられている。第1CNN210および第2CNN220は、画像上で所定のフィルタをシフト移動させながら畳み込み処理を繰り返し、複数の単位領域により形成されたコンボリューショナルレイヤと呼ばれる畳み込みの特徴量を画素値とした特徴画像を生成する。第1CNN210および第2CNN220は、各特徴画像のサイズ(次元数)をプーリング(例えばGlobal Average Pooling)などによって圧縮し、この結果を出力する。圧縮した特徴画像の其々には、単変量の特徴量が対応付けられているため、畳み込み処理の回数分だけ、畳み込みの特徴量を要素としてもつ多次元ベクトル(1階テンソル)が出力される。 For example, when the word matrix is an image in which each element value is replaced with a pixel value, the first CNN210 and the second CNN220 convolve (obtain the inner product) the image corresponding to the input word matrix and a predetermined filter, and predetermined. The image area containing a plurality of pixels overlapping with the filter of is compressed into one unit area. A univariate value obtained by convolution is associated with this unit area as a feature quantity. The first CNN 210 and the second CNN 220 repeat the convolution process while shifting a predetermined filter on the image to generate a feature image in which the feature amount of the convolution called a convolutional layer formed by a plurality of unit areas is used as a pixel value. To do. The first CNN 210 and the second CNN 220 compress the size (number of dimensions) of each feature image by pooling (for example, Global Average Pooling) and output the result. Since each of the compressed feature images is associated with a univariate feature, a multidimensional vector (first-order tensor) having the convolution feature as an element is output for the number of convolution processes. ..

第3CNN230は、画像が入力されると、次元数が所定数のベクトルを出力するように学習されたコンボリューショナルニューラルネットワークである。第3CNN230は、第1CNN210および第2CNN220と同様に、畳み込み処理の回数分の要素をもち、それらの要素が畳み込みの特徴量である多次元ベクトル(1階テンソル)を出力する。 The third CNN 230 is a convolutional neural network learned to output a vector having a predetermined number of dimensions when an image is input. Like the first CNN 210 and the second CNN 220, the third CNN 230 has elements for the number of times of the convolution process, and outputs a multidimensional vector (first-order tensor) in which these elements are features of the convolution.

例えば、カテゴリ決定部116は、商品タイトルから得られた単語行列を第1CNN210に入力し、商品概要から得られた単語行列を第2CNN220に入力し、商品画像を第3CNN230に入力する。これによって、各CNNは、入力されたデータを所定の次元数のベクトルに変換してFCNN240に出力する。 For example, the category determination unit 116 inputs the word matrix obtained from the product title into the first CNN 210, inputs the word matrix obtained from the product outline into the second CNN 220, and inputs the product image into the third CNN 230. As a result, each CNN converts the input data into a vector having a predetermined number of dimensions and outputs the data to the FCNN 240.

FCNN240は、各層のユニットの其々が、より階層の深い次の層のユニットの其々と接続されたニューラルネットワークである。なお、FCNN240は、中間層がない入力層のユニットの其々と出力層のユニットの其々とが互いに接続された2つの層であってもよい。例えば、FCNN240は、第1CNN210から出力されたベクトルの次元数が500、第2CNN220から出力されたベクトルの次元数が500、第3CNN230から出力されたベクトルの次元数が200である場合、それらの全てのベクトルの次元数の総和である1200次元の一つのベクトルを出力する。 FCNN240 is a neural network in which each of the units of each layer is connected to each of the units of the next layer having a deeper layer. The FCNN240 may be two layers in which each of the input layer units having no intermediate layer and each of the output layer units are connected to each other. For example, in FCNN240, when the number of dimensions of the vector output from the first CNN210 is 500, the number of dimensions of the vector output from the second CNN220 is 500, and the number of dimensions of the vector output from the third CNN230 is 200, all of them. Outputs one vector of 1200 dimensions, which is the sum of the number of dimensions of the vector of.

RNN250は、例えば、ネットワークの中間層がLSTM(Long short-term memory)であるRNNであり、1階テンソルであるベクトルが入力されると、そのベクトルの元になったタイトルや概要、画像に対応する商品の分類先とするカテゴリの確からしさ(尤もらしさ)を表すスコアを階層ごとに出力するように学習されたニューラルネットワークである。例えば、LSTMは、重みと状態変数との内積を計算する。数式(1)は、LSTMのゲートおよびニューロンの計算式を表している。状態変数とは、各ゲートによって求められるベクトルである。 The RNN250 corresponds to, for example, an RNN in which the middle layer of the network is an RSTM (Long short-term memory), and when a vector that is a first-order tensor is input, the title, outline, and image that are the basis of the vector are input. It is a neural network learned to output a score indicating the certainty (probability) of the category to which the product is classified for each layer. For example, LSTMs calculate the inner product of weights and state variables. Formula (1) represents the formula for calculating gates and neurons in LSTMs. A state variable is a vector obtained by each gate.

Figure 0006884116
Figure 0006884116

tは、RNN250によって繰り返し行われる再帰処理の処理周期(処理時刻)を表しており、xは、処理周期tにおいてFCNN240から入力されるベクトル(以下、入力ベクトル)を表し、hは、処理周期tにおいてRNN250により出力されるベクトル(以下、出力ベクトル)を表している。再帰処理とは、過去の処理周期で求めた出力ベクトルを、今回の処理周期での出力ベクトルの導出に利用することである。 t represents the processing cycle (processing time) of the recursive processing repeatedly performed by the RNN 250, x t represents the vector input from the FCNN 240 in the processing cycle t (hereinafter, input vector), and h t represents the processing. It represents a vector (hereinafter referred to as an output vector) output by the RNN 250 in the period t. Recursive processing is to use the output vector obtained in the past processing cycle to derive the output vector in the current processing cycle.

は、LSTMに含まれるインプットゲートによって出力されるベクトル(以下、インプットゲートベクトル)を表しており、σは、ゲートの活性化関数がシグモイド関数であることを表しており、Wは、入力ベクトルxを線形変換するための重みを表しており、Rは、前回の処理周期t−1の出力ベクトルht−1を線形変換するための重みを表しており、Qは、メモリーセルに記憶された前回の処理周期t−1の内部演算ベクトルct−1を線形変換するための重みを表しており、bは、インプットゲートのバイアス成分を表している。メモリーセルとは、一時的に内部演算ベクトルcを記憶させておくための記憶領域(LSTMブロック)である。 i t is the vector output by the input gates included in LSTM (hereinafter, input gate vector) represents the, sigma represents the possible activation function of the gate is a sigmoid function, W i is The weight for linearly converting the input vector x t is represented, R i represents the weight for linearly transforming the output vector h t-1 of the previous processing cycle t-1, and Q i is the internal calculation vector c t-1 of the processing cycle of the previous stored in the memory cell t-1 represents the weight for linear conversion, b i represents the bias component of the input gate. The memory cell is a storage area (LSTM block) for temporarily storing the internal calculation vector c.

例えば、RNN250は、重みWと入力ベクトルxとの内積値と、重みRと前回の出力ベクトルht−1との内積値と、重みQと前回の内部演算ベクトルct−1とのアダマール積(要素ごとの積)と、バイアス成分bとの和を変数としたシグモイド関数σを解くことで、処理周期tのインプットゲートベクトルiを導出する。 For example, RNN250 includes inner product value of the weight W i and the input vector x t, weight R i and the inner product value between the previous output vector h t-1, weight Q i and the previous internal operation vector c t-1 and Hadamard product (the product of each element) and, by solving the sigmoid function σ that the sum of the bias component b i as a variable, to derive the input gate vector i t of the processing cycle t.

は、LSTMに含まれるフォーゲットゲートによって出力されるベクトル(以下、フォーゲットゲートベクトル)を表しており、Wは、重みWと同様に、入力ベクトルxを線形変換するための重みを表しており、Rは、重みRと同様に、前回の処理周期t−1の出力ベクトルht−1を線形変換するための重みを表しており、Qは、重みQと同様に、メモリーセルに記憶された前回の処理周期t−1の内部演算ベクトルct−1を線形変換するための重みを表しており、bは、フォーゲットゲートのバイアス成分を表している。 f t is a vector output by FORGET gates included in LSTM (hereinafter, forget gate vector) represents the, W f, like weight W i, for linear transformation of the input vector x t It represents a weight, R f, like weight R i, the output vector h t-1 of the previous processing cycle t-1 represents the weight for linear conversion, Q f is the weight Q i Similarly, the weight for linearly converting the internal calculation vector c t-1 of the previous processing cycle t-1 stored in the memory cell is represented, and b f represents the bias component of the forget gate. There is.

例えば、RNN250は、重みWと入力ベクトルxとの内積値と、重みRと前回の出力ベクトルht−1との内積値と、重みQと前回の内部演算ベクトルct−1とのアダマール積と、バイアス成分bとの和を変数としたシグモイド関数σを解くことで、処理周期tのフォーゲットゲートベクトルfを導出する。 For example, the RNN 250 has an inner product value of the weight W f and the input vector x t , an inner product value of the weight R f and the previous output vector h t-1 , and the weight Q f and the previous internal operation vector c t-1. By solving the sigmoid function σ with the sum of the Hadamard product and the bias component b f as a variable, the forget gate vector ft of the processing period t is derived.

は、LSTMに含まれるメモリーセルに記憶させる内部演算ベクトルを表している。 c t denotes the internal operation vectors to be stored in the memory cells included in LSTM.

例えば、RNN250は、処理周期tのフォーゲットゲートベクトルfおよび後述するベクトルzのアダマール積と、処理周期t−1の内部演算ベクトルct‐1および処理周期tのフォーゲットゲートベクトルfのアダマール積との和を、処理周期tの内部演算ベクトルcとして導出する。 For example, RNN250 is forget gate vector processing cycle t f t and a Hadamard product of the vector z t to be described later, processing period t-1 for internal calculation vector c t-1 and the processing cycle t of Forget gate vector f t the sum of the Hadamard product of the derives as an internal operation vector c t processing cycle t.

は、重みWと入力ベクトルxとの内積値と、重みRと前回の出力ベクトルht−1との内積値と、バイアス成分bとの和を変数としたハイパポリックタンジェント関数tanhを解くことで導出される。Wは、重みWやWと同様に、入力ベクトルxを線形変換するための重みを表しており、Rは、重みRやRと同様に、前回の処理周期t−1の出力ベクトルht−1を線形変換するための重みを表しており、bは、メモリーセルのバイアス成分を表している。 z t is a hyperpolic whose variable is the sum of the inner product value of the weight W z and the input vector x t , the inner product value of the weight R z and the previous output vector h t-1 , and the bias component b z. It is derived by solving the tangent function tanh. W z represents a weight for linearly transforming the input vector x t like the weights Wi i and W f, and R f is the previous processing cycle t − like the weights R i and R f. The weight for linearly transforming the output vector h t-1 of 1 is represented, and b z represents the bias component of the memory cell.

は、LSTMに含まれるアウトプットゲートによって出力されるベクトル(以下、アウトプットゲートベクトル)を表しており、Wは、重みWなどと同様に、入力ベクトルxを線形変換するための重みを表しており、Rは、重みRなどと同様に、前回の処理周期t−1の出力ベクトルht−1を線形変換するための重みを表しており、Qは、メモリーセルに記憶された今回の処理周期tの内部演算ベクトルcを線形変換するための重みを表しており、bは、アウトプットゲートのバイアス成分を表している。 o t are vectors output by the output gates included in LSTM (hereinafter, output gate vector) represents the, W o, like the like the weight W i, to linear transformation of the input vector x t 's represents the weight, R o, as with such weight R i, represents the weight for linear conversion of the output vector h t-1 of the previous processing cycle t-1, Q o is memory represents a weight for linear conversion the internal operation vector c t of the current processing cycle t stored in the cell, b o represents a bias component of the output gate.

例えば、RNN250は、重みWと入力ベクトルxとの内積値と、重みRと前回の出力ベクトルht−1との内積値と、重みQと今回の内部演算ベクトルcとのアダマール積と、バイアス成分bとの和を変数としたシグモイド関数σを解くことで、処理周期tのアウトプットゲートベクトルoを導出する。 For example, RNN250 is the inner product value of the weight W o and the input vector x t, and the inner product value of the output vector h t-1 weight R o before, the weight Q o and the current internal operation vector c t and Hadamard product, by solving the sigmoid function σ that the sum of the bias component b o as variables, to derive the output gate vector o t of the processing cycle t.

RNN250は、アウトプットゲートベクトルoを導出すると、アウトプットゲートベクトルoと、内部演算ベクトルcを変数としたハイパポリックタンジェント関数tanhの解とのアダマール積を、処理周期tの出力ベクトルhとして導出する。 RNN250, when deriving the output gate vector o t, the output vector of the output and the gate vector o t, the Hadamard product of the solution of the internal calculation vector hyper Po Rick tangent function tanh with a c t as a variable, processing period t derived as h t.

出力ベクトルhの各要素値は、階層ごとのカテゴリのスコアを表している。例えば、h={e1,e2,e3,…e9,e10}であった場合、要素e1は、商品がカテゴリ1であることの確からしさを示すスコア(確率)を表し、要素e2は、商品がカテゴリ2であることの確からしさを示すスコアを表し、要素e3は、商品がカテゴリ3であることの確からしさを示すスコアを表し、以下、同様に、e4〜e10の各要素が、対応するカテゴリのスコアを表している。RNN250は、上述した数式に基づく計算を繰り返すことで、出力ベクトルを繰り返し導出する。 Each element value of the output vector h t represents the score of the category for each layer. For example, h t = {e1, e2 , e3, ... e9, e10} if it was, element e1 is product represents a score (probability) indicating the certainty of being the category 1, element e2 is commodity Represents a score indicating the certainty that the product is in category 2, and element e3 represents a score indicating the certainty that the product is in category 3. Hereinafter, similarly, each element of e4 to e10 corresponds to the score. It represents the score of the category. The RNN 250 repeatedly derives the output vector by repeating the calculation based on the above-mentioned mathematical formula.

図8は、時間経過に応じたRNN250の処理内容を並列に展開した図である。例えば、FCNN240から入力ベクトルxt1が入力された初回の処理周期t1では、RNN250は、出力ベクトルht1を出力する。初回処理時t1の出力ベクトルht1は、最も上位階層のカテゴリのスコアを要素として含んでおり、各要素は、例えば、ファッションや食品、家電、インテリア、スポーツ、ヘルスケア、自動車といったような各カテゴリのスコアである。 FIG. 8 is a diagram in which the processing contents of the RNN 250 according to the passage of time are developed in parallel. For example, in the first processing cycle t1 in which the input vector x t1 is input from the FCNN 240, the RNN 250 outputs the output vector h t1 . The output vector h t1 of t1 at the time of initial processing includes the score of the highest hierarchy category as an element, and each element includes each category such as fashion, food, home appliances, interior, sports, healthcare, and automobile. Is the score of.

次の処理周期t2では、RNN250は、初回の処理周期t1に入力された入力ベクトルxt1と、前回の処理周期t1の出力ベクトルht1とに基づいて、出力ベクトルht2を出力する。処理周期t2の出力ベクトルht2は、2番目の階層のカテゴリのスコアを要素として含んでいる。例えば、最上位階層のカテゴリのスコアのうち、「ファッション」のスコアが最も大きい場合、「ファッション」のスコアが出力ベクトルht2に最も反映されるため、出力ベクトルht2の各要素は、コートやジャケット、トップス、ボトムス、レディースシューズ、レディースバッグといったように、「ファッション」というカテゴリの下位階層のカテゴリのスコアとなる。 In the next processing cycle t2, the RNN 250 outputs an output vector h t2 based on the input vector x t1 input in the first processing cycle t1 and the output vector h t1 in the previous processing cycle t1. Output vector h t2 processing cycle t2 includes the scores of the second hierarchical category as an element. For example, of the score of the top-level hierarchy category, if the score of "fashion" is the largest, because the score of "fashion" is most reflected in the output vector h t2, each element of the output vector h t2 is, coat Ya It is the score of the lower category of the category "fashion" such as jackets, tops, bottoms, ladies'shoes, and ladies' bags.

次の処理周期t3では、RNN250は、初回の処理周期t1に入力された入力ベクトルxt1と、前回の処理周期t2の出力ベクトルht2とに基づいて、出力ベクトルht3を出力する。処理周期t3の出力ベクトルht3は、3番目の階層のカテゴリのスコアを要素として含んでいる。例えば、2番目の階層のカテゴリのスコアのうち、「レディースシューズ」のスコアが最も大きい場合、「レディースシューズ」のスコアが出力ベクトルht3に最も反映されるため、出力ベクトルht3の各要素は、スリッポンやパンプス、スニーカー、モカシン、サンダルといったように、「レディースシューズ」というカテゴリの下位階層のカテゴリのスコアとなる。 In the next processing cycle t3, the RNN 250 outputs the output vector h t3 based on the input vector x t1 input in the first processing cycle t1 and the output vector h t2 in the previous processing cycle t2. Output vector h t3 processing cycle t3 includes a score for the third hierarchical category as an element. For example, among the second score of the hierarchical categories, when the score of "Women's Shoes" is the largest, because the score of the "Women's Shoes" is most reflected in the output vector h t3, each element of the output vector h t3 is , Slip-ons, pumps, sneakers, moccasins, sandals, etc., which is the score of the lower category of the category "ladies'shoes".

このように、RNN250は、再帰処理を繰り返すことで、より階層が深いカテゴリのスコアを要素とする出力ベクトルを導出する。なお、RNN250は、最下層のカテゴリのスコアを要素とする出力ベクトルを導出するまで、再帰的に出力ベクトルを導出することを繰り返すものとする。例えば、RNN250の学習時に、最下層のカテゴリに対して所定の付加的情報(以下、エンドラベルと称する)が付与された商品データが利用された場合、RNN250は、エンドラベルが付与されたカテゴリのスコアを要素とする出力ベクトルを導出するまで再帰処理を繰り返す。これによって、例えば、「ファッション」のカテゴリの下位のカテゴリに「レディースシューズ」と「レディースバッグ」というカテゴリが存在し、それらのカテゴリから最下層のカテゴリまでに存在する階層数が互いに異なる場合でも、エンドラベルが付与されたカテゴリの階層までの階層数と同じ回数だけ再帰処理を繰り返すため、RNN250の再帰処理の回数(図8中のk)というハイパーパラメータを調整せずとも、各カテゴリの種類に応じて再帰処理の回数を動的に変更しながらスコアを求めることができる。 In this way, the RNN 250 derives an output vector having a score of a category with a deeper hierarchy as an element by repeating the recursive process. It should be noted that the RNN 250 repeats recursively deriving the output vector until the output vector having the score of the lowest layer category as an element is derived. For example, when the product data to which predetermined additional information (hereinafter referred to as an end label) is given to the lowest layer category is used during the learning of the RNN 250, the RNN 250 is the category to which the end label is given. The recursive process is repeated until the output vector whose element is the score is derived. As a result, for example, even if there are categories "ladies'shoes" and "ladies' bags" in the subcategories of the "fashion" category, and the number of layers existing from those categories to the lowest category is different from each other. Since the recursive process is repeated as many times as the number of layers up to the layer of the category to which the end label is attached, the type of each category can be selected without adjusting the hyper parameter of the number of recursive processes of RNN250 (k in FIG. 8). The score can be obtained while dynamically changing the number of recursive processes accordingly.

図5に戻り、次に、カテゴリ決定部116は、分類器200からカテゴリの分類結果を取得し、その分類結果に基づいて商品のカテゴリを決定する(S106)。カテゴリの分類結果には、RNN250が再帰処理ごとに出力した出力ベクトルが含まれており、その出力ベクトルには、最上層から最下層までの各階層のカテゴリのスコアの結果が要素として含まれている。 Returning to FIG. 5, next, the category determination unit 116 acquires the category classification result from the classifier 200, and determines the product category based on the classification result (S106). The category classification result includes the output vector output by RNN250 for each recursive process, and the output vector includes the result of the score of each layer category from the top layer to the bottom layer as an element. There is.

図9は、カテゴリの分類結果の一例を示す図である。図示のように、商品IDごとに、各階層のカテゴリが対応付けられた情報が分類結果として取得される。図中Cijは、上述したように、第i層目の種類jのカテゴリを表しており、種類jのカテゴリは、出力ベクトルの各要素のうち最も値が大きい要素に対応したカテゴリを表している。すなわち、種類jのカテゴリは、最もスコアが大きく、商品の分類先として最も確からしいカテゴリを表している。 FIG. 9 is a diagram showing an example of the classification result of the category. As shown in the figure, information associated with each hierarchy category is acquired as a classification result for each product ID. As described above, C ij in the figure represents the category of the type j of the i-th layer, and the category of the type j represents the category corresponding to the element having the largest value among each element of the output vector. There is. That is, the category of type j has the highest score and represents the most probable category as a product classification destination.

例えば、商品IDが「item_A」の商品に関する商品データを分類器200に入力したときに得られた出力ベクトルhが{e1,e2,e3,…e9,e10}であり、要素e1〜e10の其々が「1」〜「10」の其々のカテゴリのスコアに対応しているとする。このような場合に、要素e1が最も大きい場合、カテゴリ決定部116は、最上位の階層のカテゴリとして「1」というカテゴリが最も確からしいため、その商品の最上位の階層のカテゴリを「1」に決定する。また、2回目の再帰処理の出力ベクトルht+1が{e1,e2,e3,…e9,e10}であり、その中で要素e5が最も大きい場合、カテゴリ決定部116は、2番目の階層のカテゴリとして「5」というカテゴリが最も確からしいため、その商品の2番目の階層のカテゴリを「5」に決定する。 For example, the output vector h t obtained when the product data related to the product whose product ID is "item_A" is input to the classifier 200 is {e1, e2, e3 ... e9, e10}, and the elements e1 to e10. It is assumed that each corresponds to the score of each category of "1" to "10". In such a case, when the element e1 is the largest, the category determination unit 116 is most likely to have the category "1" as the category of the highest hierarchy, so that the category of the highest hierarchy of the product is "1". To decide. Further, when the output vector h t + 1 of the second recursive processing is {e1, e2, e3, ... e9, e10} and the element e5 is the largest among them, the category determination unit 116 is the category of the second layer. Since the category "5" is the most probable, the category of the second layer of the product is determined to be "5".

図5に戻り、次に、リスト生成部118は、販売サイト取扱商品データ134に含まれる各商品データと、分類器200によるカテゴリの分類結果とを比較して、販売サイトで販売される複数の商品の中から、販売者によって設定されたカテゴリが分類器200により分類されたカテゴリと異なる商品(以下、カテゴリ間違い商品候補と称する)を抽出する(S108)。 Returning to FIG. 5, the list generation unit 118 compares each product data included in the product data 134 handled by the sales site with the classification result of the category by the classifier 200, and a plurality of products sold on the sales site. From the products, products whose categories set by the seller are different from the categories classified by the classifier 200 (hereinafter referred to as category error product candidates) are extracted (S108).

次に、リスト生成部118は、抽出したカテゴリ間違い商品候補の集めたリストを、カテゴリ間違い候補リスト136として生成し、記憶部130に記憶させる(S110)。 Next, the list generation unit 118 generates a list of extracted category error product candidates as a category error candidate list 136 and stores it in the storage unit 130 (S110).

図10は、カテゴリ間違い候補リスト136の一例を示す図である。例えば、図6に例示した販売サイト取扱商品データ134と、図9に例示した分類器200によるカテゴリの分類結果とを比較した場合、商品IDが「item_B」の商品については第2階層のカテゴリが異なり(C21≠C27)、商品IDが「item_C」の商品については第1階層のカテゴリが異なると共に(C13≠C16)、第2階層のカテゴリも異なっている(C22≠C29)。このような場合、リスト生成部118は、販売サイトで販売される複数の商品の中から、商品IDが「item_B」の商品と商品IDが「item_C」の商品とを抽出し、図10に例示するようなカテゴリ間違い候補リスト136を生成する。 FIG. 10 is a diagram showing an example of the category error candidate list 136. For example, when comparing the product data 134 handled by the sales site illustrated in FIG. 6 with the classification result of the category by the classifier 200 illustrated in FIG. 9, the category of the second layer is the product whose product ID is "item_B". Different (C 21 ≠ C 27 ), the category of the first layer is different for the product with the product ID "item_C" (C 13 ≠ C 16 ), and the category of the second layer is also different (C 22 ≠ C 29). ). In such a case, the list generation unit 118 extracts a product having a product ID of "item_B" and a product having a product ID of "item_C" from a plurality of products sold on the sales site, and illustrates them in FIG. Generate a category error candidate list 136 that does.

図5に戻り、次に、情報提供部120は、通信部102を制御して、リスト生成部118により生成されたカテゴリ間違い候補リスト136を所定の端末装置10に送信し、所定の端末装置10を利用可能なユーザに、カテゴリ間違い商品候補として抽出された商品が真にカテゴリ間違いであるのか否かの正誤判定を依頼する(S112)。この際、情報提供部120は、カテゴリ間違い候補リスト136と共に、カテゴリ間違い商品候補の商品データを併せて送信してよい。 Returning to FIG. 5, the information providing unit 120 controls the communication unit 102 to transmit the category error candidate list 136 generated by the list generation unit 118 to the predetermined terminal device 10, and the predetermined terminal device 10 The user who can use the above is requested to determine whether or not the product extracted as the category error product candidate is truly a category error (S112). At this time, the information providing unit 120 may transmit the product data of the category error product candidate together with the category error candidate list 136.

所定の端末装置10は、例えば、クラウドソーシングの参加者のコンピュータなどであってよい。カテゴリ間違いの正誤判定を依頼されたユーザは、例えば、カテゴリ間違い候補リスト136と共に送られてきたカテゴリ間違い商品候補の商品データ(商品画像や商品概要など)を参照し、販売者が商品に対して設定したカテゴリが間違っているのか、分類器200によって分類されたカテゴリが間違っているのかを判定し、その判定結果を、端末装置10を用いて情報処理装置100に送信する。 The predetermined terminal device 10 may be, for example, a computer of a crowdsourcing participant. The user who is requested to judge the correctness of the category error refers to the product data (product image, product outline, etc.) of the category error product candidate sent together with the category error candidate list 136, and the seller makes the product. It is determined whether the set category is wrong or the category classified by the classifier 200 is wrong, and the determination result is transmitted to the information processing device 100 using the terminal device 10.

次に、情報提供部120は、通信部102が、所定の端末装置10からカテゴリ間違い候補リスト136の正誤の判定結果を取得するまで待機し(S114)、通信部102がカテゴリ間違い候補リスト136の正誤の判定結果を取得すると、カテゴリ間違い候補リスト136に含まれる一つまたは複数のカテゴリ間違い商品候補のうち、分類器200の分類結果であるカテゴリが正しく、販売者が設定したカテゴリが誤りであると判定された商品(以下、カテゴリ間違い商品)に基づいて、所定の情報をサービス提供装置20に提供(送信)する(S116)。 Next, the information providing unit 120 waits until the communication unit 102 acquires the correct / incorrect determination result of the category error candidate list 136 from the predetermined terminal device 10 (S114), and the communication unit 102 waits until the communication unit 102 obtains the correct / incorrect determination result of the category error candidate list 136. When the correct / incorrect judgment result is acquired, among one or more category incorrect product candidates included in the category error candidate list 136, the category that is the classification result of the classifier 200 is correct, and the category set by the seller is incorrect. Predetermined information is provided (transmitted) to the service providing device 20 based on the product determined to be (hereinafter, the product in the wrong category) (S116).

例えば、情報提供部120は、所定の情報として、分類器200の分類結果であるカテゴリが正しく、販売者が設定したカテゴリが誤りであると判定されたカテゴリ間違い商品のみを含むカテゴリ間違い候補リスト136をサービス提供装置20に送信してよい。これを受けたサービス提供装置20は、例えば、販売サイトにおけるカテゴリ間違い商品の検索ランキングを低下させてよい。サービス提供装置20は、「検索処理部」の一例である。 For example, the information providing unit 120 includes a category error candidate list 136 including only category error products for which it is determined that the category that is the classification result of the classifier 200 is correct and the category set by the seller is incorrect as predetermined information. May be transmitted to the service providing device 20. In response to this, the service providing device 20 may lower the search ranking of the wrong category product on the sales site, for example. The service providing device 20 is an example of a “search processing unit”.

図11および図12は、商品がランキング順に掲載された販売サイトのウェブページの一例を示す図である。図11の例では、A〜Zまでの商品がページ上部から下部にランキング順に掲載されている。これらの商品のうち、例えば、商品Aが、カテゴリ間違い商品としてカテゴリ間違い候補リスト136に含まれている場合、サービス提供装置20は、商品Aの検索ランキングを低下させて、図12に例示するように、商品Aの掲載位置をページ最上位からページ最下位に変更してよい。 11 and 12 are diagrams showing an example of a web page of a sales site in which products are listed in order of ranking. In the example of FIG. 11, the products A to Z are listed in the order of ranking from the top to the bottom of the page. Among these products, for example, when the product A is included in the category error candidate list 136 as a category error product, the service providing device 20 lowers the search ranking of the product A and illustrates it in FIG. In addition, the posting position of the product A may be changed from the top of the page to the bottom of the page.

また、例えば、情報提供部120は、所定の情報として、販売サイトにおいてカテゴリ間違い商品を販売する販売者に、現在商品に設定されたカテゴリを分類器200によって分類されたカテゴリに変更するように促す情報を、サービス提供装置20或いはカテゴリ間違い商品を販売する販売者の端末装置10に送信してもよい。サービス提供装置20は、情報処理装置100から所定の情報としてカテゴリ変更を促す情報を受信した場合、その情報を販売者の端末装置10に送信する。これによって、販売者は、商品のカテゴリを、より適切なものに変更することができる。 Further, for example, the information providing unit 120 urges the seller who sells the wrong category product on the sales site to change the category currently set for the product to the category classified by the classifier 200 as predetermined information. The information may be transmitted to the service providing device 20 or the terminal device 10 of the seller who sells the wrong category product. When the service providing device 20 receives information prompting the category change as predetermined information from the information processing device 100, the service providing device 20 transmits the information to the terminal device 10 of the seller. This allows the seller to change the category of the product to a more appropriate one.

なお、上述した説明では、販売サイトにおいて販売者が商品にカテゴリを設定した後に、その商品のカテゴリの設定間違いを検出するものとして説明したがこれに限られない。例えば、販売サイトにおいて販売者が商品にカテゴリを設定するタイミングで、その商品のカテゴリの設定間違いを検出してもよい。 In the above description, it is assumed that after the seller sets a category for a product on the sales site, an error in setting the category of the product is detected, but the present invention is not limited to this. For example, at the timing when the seller sets a category for a product on the sales site, an error in setting the category of the product may be detected.

図13は、販売サイトに商品を登録する際の商品登録画面の一例を示す図である。図示のような商品登録画面は、端末装置10の表示装置に表示されてよい。例えば、販売者が、商品登録画面に対して販売対象の商品のカテゴリを入力した場合、サービス提供装置20は、入力されたカテゴリを表す文章(テキスト)を情報処理装置100に送信する。この際、サービス提供装置20は、商品登録画面を介して、商品の画像や、商品の概要を表す文章、商品のタイトルを表す文章のうち一部または全部がカテゴリの入力以前に既に登録(アップロード)されている場合、カテゴリを表す文章と共に、これ(これら)の情報を商品データとして情報処理装置100に送信する。 FIG. 13 is a diagram showing an example of a product registration screen when registering a product on a sales site. The product registration screen as shown in the figure may be displayed on the display device of the terminal device 10. For example, when the seller inputs a category of a product to be sold on the product registration screen, the service providing device 20 transmits a sentence (text) representing the input category to the information processing device 100. At this time, the service providing device 20 has already registered (uploaded) a part or all of the product image, the text representing the product outline, and the text representing the product title via the product registration screen before the category is input. ), This (these) information is transmitted to the information processing apparatus 100 as product data together with the text indicating the category.

情報処理装置100は、サービス提供装置20から商品データを受信すると、分類器200に商品のカテゴリを分類させ、その分類結果をサービス提供装置20に返す。サービス提供装置20は、分類器200によるカテゴリの分類結果を受信すると、入力されたカテゴリと、分類器200により分類されたカテゴリとが異なるか否かを判定し、カテゴリが異なる場合、販売者にカテゴリを変更するように促すため、図中R1に示すように、販売者が入力したカテゴリが間違っていることを示す文字や画像と共に、正しいと推定されるカテゴリの候補を商品登録画面に表示させる。例えば、サービス提供装置20は、カテゴリの分類結果に含まれるカテゴリのスコアに基づいて、スコアの高い順にカテゴリの候補を商品登録画面に表示させる。図示の例では、商品登録画面に、「アイスクリーム」というカテゴリが入力されており、これに対して、「レディースシューズ」、「メンズシューズ」、「レディースバッグ」、「レディースアクセサリー」、「財布、ファッション小物」という同じ階層に属するカテゴリの候補と共に、それらのカテゴリの候補の其々のスコアが正解確率として提示されている。このように、商品登録画面において分類器200によって分類されたカテゴリをスコア(正解確率)と共に表示することで、カテゴリの入力時点で販売者にカテゴリを変更させるように促すことができる。 When the information processing device 100 receives the product data from the service providing device 20, the information processing device 100 causes the classifier 200 to classify the product categories, and returns the classification result to the service providing device 20. Upon receiving the classification result of the category by the classifier 200, the service providing device 20 determines whether or not the input category and the category classified by the classifier 200 are different, and if the categories are different, the seller is notified. In order to prompt the user to change the category, as shown in R1 in the figure, the candidate of the category presumed to be correct is displayed on the product registration screen together with the characters and images indicating that the category entered by the seller is incorrect. .. For example, the service providing device 20 displays category candidates on the product registration screen in descending order of score based on the category scores included in the category classification results. In the illustrated example, the category "ice cream" is entered on the product registration screen, whereas "ladies'shoes", "men's shoes", "ladies'bags", "ladies' accessories", "wallets," Along with the candidates of the categories belonging to the same hierarchy of "fashion accessories", the scores of the candidates of those categories are presented as the correct answer probability. In this way, by displaying the categories classified by the classifier 200 together with the score (correct answer probability) on the product registration screen, it is possible to urge the seller to change the category at the time of inputting the category.

また、販売サイトにおいて販売者が商品にカテゴリを設定するタイミングで、その商品のカテゴリの設定間違いを検出することに加えて、或いは代えて、販売者が商品にカテゴリを設定するよりも前に、その商品のカテゴリを提示(サジェスト)してもよい。 Also, at the timing when the seller sets the category for the product on the sales site, in addition to or instead of detecting the setting error of the category of the product, before the seller sets the category for the product, You may present (suggest) the category of the product.

図14は、販売サイトに商品を登録する際の商品登録画面の他の例を示す図である。例えば、商品登録画面において、販売者が商品のカテゴリを入力するよりも前に、商品の画像や、商品の概要を表す文章、商品のタイトルを表す文章のうち一部または全部を既に入力している場合、サービス提供装置20は、商品の画像や、商品の概要、商品のタイトルを含む商品データを情報処理装置100に送信する。 FIG. 14 is a diagram showing another example of the product registration screen when registering the product on the sales site. For example, on the product registration screen, before the seller enters the product category, some or all of the product image, the text representing the product outline, and the text representing the product title have already been entered. If so, the service providing device 20 transmits the product data including the product image, the product outline, and the product title to the information processing device 100.

情報処理装置100は、サービス提供装置20から商品データを受信すると、分類器200に商品のカテゴリを分類させ、その分類結果をサービス提供装置20に返す。サービス提供装置20は、分類器200によるカテゴリの分類結果を受信すると、その分類結果に含まれる商品のカテゴリを、商品登録画面の商品カテゴリの入力欄に表示させる。この際、情報処理装置100は、図中R2に示すように、分類器200を用いて商品のタイトルを自動的に決定したことを表す文字や画像を商品登録画面に表示させてよい。このように、販売者がカテゴリを入力するよりも前に、その商品の商品データからカテゴリを予測し、その予測結果であるカテゴリをサジェストすることで、販売サイトに商品を登録する際の利便性を向上させることができる。 When the information processing device 100 receives the product data from the service providing device 20, the information processing device 100 causes the classifier 200 to classify the product categories, and returns the classification result to the service providing device 20. When the service providing device 20 receives the classification result of the category by the classifier 200, the service providing device 20 displays the category of the product included in the classification result in the input field of the product category on the product registration screen. At this time, as shown in R2 in the figure, the information processing device 100 may display characters and images indicating that the title of the product is automatically determined by using the classifier 200 on the product registration screen. In this way, before the seller inputs the category, the category is predicted from the product data of the product, and the category that is the prediction result is suggested, which is convenient when registering the product on the sales site. Can be improved.

また、上述した説明では、カテゴリ決定部116が、分類器200の分類結果を参照し、各階層において最もスコアが大きいカテゴリが、その階層におけるカテゴリであると決定したがこれに限られない。例えば、カテゴリ決定部116は、各階層のカテゴリのスコアの全部が、或いは所定数以上のスコアが閾値未満である場合、RNN250に、一つ前の再帰処理を再び行わせ、カテゴリのスコアが閾値未満の階層の出力ベクトルをあらためて導出させてよい。例えば、RNN250が、処理周期t1において導出した出力ベクトルht1の複数の要素eのうち、最も値が大きい要素だけを残した出力ベクトルht1を基に処理周期t2において出力ベクトルht2を導出したとする。このような場合に、処理周期t2における出力ベクトルht2の要素eがいずれも閾値未満であった場合、すなわち、2番目の階層のカテゴリのスコアがいずれも閾値未満であった場合、カテゴリ決定部116は、RNN250に、処理周期t1の再帰処理を再び行わせる。この際、カテゴリ決定部116は、処理周期t1において導出した出力ベクトルht1の複数の要素eのうち、最も値が大きい要素を残すのではなく、例えば、2番目に値が大きい要素、或いは3番目や4番目に値が大きい要素を残した出力ベクトルht1を基にして、RNN250に出力ベクトルht2を導出させる。このように、最上位よりも深い階層のカテゴリの分類結果が曖昧である場合、最上位のカテゴリの分類が間違っている蓋然性が高いと判断して、最上位のカテゴリのスコアのうち、二番目以降に確からしいカテゴリのスコアを基に、次の階層のカテゴリのスコアを再計算させる。これによって、最上位のカテゴリの分類を間違ったことにより、それ以降の全ての階層のカテゴリ分類を間違ってしまうという再帰処理特有の事象が発生するのを抑制することができる。 Further, in the above description, the category determination unit 116 refers to the classification result of the classifier 200 and determines that the category having the highest score in each layer is the category in that layer, but the present invention is not limited to this. For example, the category determination unit 116 causes the RNN 250 to perform the previous recursive processing again when all the scores of the categories in each layer or the scores of a predetermined number or more are less than the threshold value, and the score of the category is the threshold value. The output vector of the hierarchy below may be derived again. For example, RNN250 is, among the plurality of elements e of the output vector h t1 derived in processing cycle t1, to derive the output vector h t2 most value based on the output vector h t1 leaving only a large factor in the processing cycle t2 And. In such a case, when the element e of the output vector h t2 in the processing cycle t2 were both less than the threshold value, i.e., if the score of the second hierarchy categories were all less than the threshold value, the category determining unit 116 causes the RNN 250 to perform the recursive processing of the processing cycle t1 again. At this time, the category determination unit 116 does not leave the element having the largest value among the plurality of elements e of the output vector h t1 derived in the processing cycle t1, for example, the element having the second largest value, or 3 The RNN 250 is made to derive the output vector h t2 based on the output vector h t1 in which the element having the fourth or fourth largest value is left. In this way, if the classification result of the category deeper than the highest level is ambiguous, it is judged that there is a high possibility that the classification of the highest level category is incorrect, and the score of the highest level category is the second. After that, based on the score of the probable category, the score of the category of the next hierarchy is recalculated. As a result, it is possible to suppress the occurrence of an event peculiar to recursive processing in which the classification of the highest-level category is incorrect and the category classification of all subsequent layers is incorrect.

[学習時の処理フロー]
以下、第1実施形態における情報処理装置100の学習時の一連の処理の流れをフローチャートに即して説明する。学習時とは、運用時に利用される分類器200を学習させる状態である。図15は、第1実施形態における情報処理装置100による学習時の一連の処理の流れを示すフローチャートである。
[Processing flow during learning]
Hereinafter, a series of processing flows during learning of the information processing apparatus 100 according to the first embodiment will be described with reference to a flowchart. The learning time is a state in which the classifier 200 used at the time of operation is trained. FIG. 15 is a flowchart showing a series of processing flows during learning by the information processing apparatus 100 according to the first embodiment.

まず、学習処理部122は、分類器200を学習させるために予め用意された複数の学習データの候補の中から、分類器200の性能を向上させ得る高品質な学習データを抽出するサンプリング処理を実施する(S200)。学習データの候補とは、正解とする商品のカテゴリが教師ラベル(教師データ)として対応付けられた商品データであり、例えば、販売サイト取扱商品データ134に含まれる商品データであってもよいし、これとは別に用意された商品データであってもよい。また、正解とする最下層のカテゴリには、上述したエンドラベルが教師ラベルとして付与されていてもよい。 First, the learning processing unit 122 performs sampling processing for extracting high-quality learning data that can improve the performance of the classifier 200 from a plurality of learning data candidates prepared in advance for training the classifier 200. Carry out (S200). The training data candidate is product data in which the correct product category is associated with a teacher label (teacher data), and may be, for example, product data included in the product data 134 handled by the sales site. Product data prepared separately from this may be used. Further, the above-mentioned end label may be given as a teacher label to the lowermost category which is the correct answer.

例えば、学習処理部122は、学習データの候補として扱われる複数の商品データのうち、ユーザがコンバージョンに至った商品データを高品質な学習データとして抽出する。コンバージョンとは、例えば、販売サイトに一覧形式で掲載された商品がクリック操作やタッチ操作によって選択され、その商品の購入ページに画面遷移することや、商品の購入ページで商品が購入されること、商品の購入ページに所定時間以上滞在することなど、販売者が期待する所定の行動をユーザが行ったことを意味する。 For example, the learning processing unit 122 extracts the product data that the user has converted from among the plurality of product data treated as candidates for the learning data as high-quality learning data. Conversion means, for example, that a product listed in a list format on a sales site is selected by a click operation or a touch operation, and the screen transitions to the product purchase page, or the product is purchased on the product purchase page. It means that the user has performed a predetermined action expected by the seller, such as staying on the purchase page of the product for a predetermined time or longer.

より具体的には、学習処理部122は、ユーザによって購入された回数が所定回数以上の商品に関する商品データを、高品質な学習データとして抽出する。また、学習処理部122は、ユーザがクリック操作やタッチ操作によって選択し、その商品の購入ページにアクセスして閲覧した回数が所定回数以上の商品に関する商品データを、高品質な学習データとして抽出してもよい。また、学習処理部122は、ユーザが商品の購入ページにアクセスしてから経過したページ滞在時間が所定時間以上の商品に関する商品データを、高品質な学習データとして抽出してもよい。 More specifically, the learning processing unit 122 extracts product data related to products purchased by the user more than a predetermined number of times as high-quality learning data. In addition, the learning processing unit 122 extracts product data related to a product that the user selects by a click operation or a touch operation, accesses the purchase page of the product, and browses the product a predetermined number of times or more, as high-quality learning data. You may. Further, the learning processing unit 122 may extract product data relating to a product having a page stay time of a predetermined time or more after the user accesses the product purchase page as high-quality learning data.

また、学習処理部122は、サンプリング処理として、学習データの候補として扱われる複数の商品データの中から、所定のカテゴリが教師ラベルとして付与された商品データを除外してもよい。所定のカテゴリとは、例えば「その他」のカテゴリである。 In addition, the learning processing unit 122 may exclude product data to which a predetermined category is assigned as a teacher label from a plurality of product data treated as candidates for learning data as sampling processing. The predetermined category is, for example, the "other" category.

次に、学習処理部122は、高品質な学習データとして抽出した複数の商品データに対してラベルスムージング処理を実施する(S202)。 Next, the learning processing unit 122 performs label smoothing processing on a plurality of product data extracted as high-quality learning data (S202).

図16および図17は、ラベルスムージング処理を説明するための図である。例えば、商品データに対して、正解とするカテゴリの種類を表す識別情報(図示の例では1〜10のいずれかの数値)が教師ラベルとして付与されている場合、正解のカテゴリのスコアは、100[%]として扱われ、正解でない他のカテゴリのスコアは、0[%]として扱われる。図16の例では、「4」のカテゴリが正解のカテゴリとして付与されており、「4」のカテゴリが100[%]、それ以外のスコアが0[%]となる。このような場合、学習処理部122は、ラベルスムージング処理として、図17に例示するように、正解のカテゴリのスコアを100[%]よりも小さくし、正解でない他のカテゴリのスコアを0[%]よりも大きくする。例えば、学習処理部122は、正解でない他のカテゴリの其々のスコアを、それらのスコアの上昇量の合計が正解のカテゴリのスコアの低下量と同じになるように一様に大きくする。このような処理によって、学習精度を向上させることができる。 16 and 17 are diagrams for explaining the label smoothing process. For example, when identification information (a numerical value of 1 to 10 in the illustrated example) indicating the type of the correct category is given to the product data as a teacher label, the score of the correct category is 100. Scores in other categories that are treated as [%] and are not correct are treated as 0 [%]. In the example of FIG. 16, the category of "4" is given as the correct answer category, the category of "4" is 100 [%], and the other scores are 0 [%]. In such a case, as a label smoothing process, the learning processing unit 122 sets the score of the correct answer category to less than 100 [%] and sets the score of the other non-correct category to 0 [%] as illustrated in FIG. ] To be larger than. For example, the learning processing unit 122 uniformly increases the scores of the other categories that are not correct so that the total increase in the scores is the same as the decrease in the scores in the correct category. By such a process, the learning accuracy can be improved.

次に、学習処理部122は、高品質な学習データとして抽出した複数の商品データの中から、着目する一つの商品データ(以下、着目学習データと称する)を選択する(S204)。 Next, the learning processing unit 122 selects one product data of interest (hereinafter referred to as attention learning data) from a plurality of product data extracted as high-quality learning data (S204).

次に、学習処理部122は、選択した着目学習データを分類器200に入力し、分類器200に、着目学習データが示す商品のカテゴリのスコアを導出させ、その導出させたスコアと、ラベルスムージング処理によって調整されたスコア(すなわち教師ラベル)との誤差が最小となるように分類器200のパラメータを学習する(S206)。分類器200のパラメータは、例えば、第1CNN210、第2CNN220、第3CNN230、FCNN240、およびRNN250(LSTM)の重みやバイアス成分である。また、教師ラベルとして最下層のカテゴリにエンドラベルが付与されている場合、分類器200のパラメータとして、RNN250の再帰処理の回数がカテゴリの階層数となるように学習される。 Next, the learning processing unit 122 inputs the selected learning data of interest to the classifier 200, causes the classifier 200 to derive the score of the product category indicated by the learning data of interest, and the derived score and label smoothing. The parameters of the classifier 200 are learned so that the error from the score adjusted by the process (that is, the teacher label) is minimized (S206). The parameters of the classifier 200 are, for example, the weights and bias components of the first CNN210, the second CNN220, the third CNN230, the FCNN240, and the RNN250 (LSTM). Further, when an end label is given to the lowermost category as a teacher label, it is learned as a parameter of the classifier 200 so that the number of recursive processes of the RNN 250 becomes the number of layers of the category.

次に、学習処理部122は、学習回数をインクリメントし(S208)、その学習回数が所定回数に達したか否かを判定する(S210)。 Next, the learning processing unit 122 increments the number of learnings (S208) and determines whether or not the number of learnings has reached a predetermined number (S210).

学習処理部122は、学習回数が所定回数に達した場合、ブートストラッピング処理を実施し(S212)、学習回数が所定回数に達していない場合、ブートストラッピング処理を省略する。ブートストラッピング処理とは、分類器200によって出力されたカテゴリのスコアに、学習データの教師ラベルとして決められたスコアを更新(アップデート)する処理である。このような処理によって、学習回数が所定回数以上行って分類器200を十分に学習した場合、学習データの教師ラベルが更新されるため、学習データの中に、本来であれば間違っているカテゴリが教師ラベルとして付与された商品データが含まれている場合でも学習精度を向上させることができる。 The learning processing unit 122 performs the bootstrapping process when the number of learnings reaches a predetermined number (S212), and omits the bootstrapping process when the number of learnings does not reach the predetermined number of times. The bootstrapping process is a process of updating (updating) the score determined as the teacher label of the learning data to the score of the category output by the classifier 200. By such processing, when the number of learnings is performed more than a predetermined number of times and the classifier 200 is sufficiently learned, the teacher label of the learning data is updated, so that the training data contains a category that is originally wrong. Learning accuracy can be improved even when the product data given as a teacher label is included.

次に、学習処理部122は、高品質な学習データとして抽出した複数の商品データの全てを着目学習データとして選択したか否かを判定し(S214)、未だ全ての商品データを着目学習データとして選択していない場合、S204の処理に戻り、新たな着目学習データを選択し、分類器200のパラメータを学習することを繰り返す。 Next, the learning processing unit 122 determines whether or not all of the plurality of product data extracted as high-quality learning data has been selected as the focus learning data (S214), and still uses all the product data as the focus learning data. If it is not selected, the process returns to S204, new learning data of interest is selected, and the parameters of the classifier 200 are repeatedly learned.

一方、学習処理部122は、全ての商品データを着目学習データとして選択した場合、本フローチャートの処理を終了する。 On the other hand, when all the product data are selected as the learning data of interest, the learning processing unit 122 ends the processing of this flowchart.

以上説明した第1実施形態によれば、ネットワークを介して販売される商品に関する商品データを取得し、階層的なカテゴリに分類された商品の商品データを学習データとして、入力された商品データが示す商品に対して階層的なカテゴリの分類結果を出力するように予め学習された分類器200の出力結果に基づいて、取得した商品データが示す商品のカテゴリを決定するため、商品(サービスも含む)を、より適切なカテゴリに分類して検索精度を向上させることができる。 According to the first embodiment described above, the input product data indicates that the product data related to the products sold via the network is acquired and the product data of the products classified into the hierarchical categories is used as learning data. In order to determine the product category indicated by the acquired product data based on the output result of the classifier 200 learned in advance so as to output the classification result of the hierarchical category for the product, the product (including the service) Can be classified into more appropriate categories to improve search accuracy.

また、上述した第1実施形態によれば、教師ラベルとして正解となるカテゴリと共に、そのカテゴリが最下層であることを示す情報(エンドラベル)が付与された商品データを学習データとして分類器200を学習させるため、商品ごとに最下層のカテゴリまでの階層数が異なる場合でも、エンドラベルが付与されたカテゴリの階層まで再帰処理を繰り返すため、RNN250の再帰処理の回数というハイパーパラメータを調整せずとも、各カテゴリの種類に応じて再帰処理の回数を動的に変更しながらスコアを求めることができ、更に、事前にカテゴリの階層の深さがわからなくとも、最下層までの各階層のカテゴリを分類することができる。 Further, according to the first embodiment described above, the classifier 200 is provided with product data to which information (end label) indicating that the category is the lowest layer is added as learning data together with a category that is a correct answer as a teacher label. In order to learn, even if the number of layers up to the lowest layer category is different for each product, the recursive process is repeated up to the layer of the category with the end label, so it is not necessary to adjust the hyperparameter of the number of recursive processes of RNN250. , Scores can be obtained while dynamically changing the number of recursive processes according to the type of each category, and even if the depth of the category hierarchy is not known in advance, the categories of each hierarchy up to the bottom layer are classified. can do.

また、上述した第1実施形態によれば、所定のサンプリング処理によって、高品質な学習データを抽出するため、ランダムに学習データをサンプリングする場合に比して、より精度良く分類器200を学習することができる。 Further, according to the first embodiment described above, in order to extract high-quality learning data by a predetermined sampling process, the classifier 200 is trained more accurately than in the case of randomly sampling the training data. be able to.

一般的に、販売者が「その他」に分類した商品は、本来であれば他のカテゴリの方がふさわしいのにもかかわらず間違って分類された商品であるのか、本当に「その他」のカテゴリとして正しい商品であるのかが判別しにくい。そのため、仮に、「その他」に分類された商品に関する商品データを学習データとしても、教師ラベルの信頼性が乏しくなり、分類器200の学習精度が向上し難い。これに対して、本実施形態では、高品質な学習データを抽出するときに、「その他」に分類された商品に関する商品データを学習データから除外するため、現在「その他」に分類されているが、本来であれば他のカテゴリに分類されるべき商品を、正しいカテゴリに分類することができる。一般的に、本当に「その他」にしか分類し得ない商品の数は、全体の数[%]にも満たないため、仮に、「その他」にしか分類し得ない商品を正しく分類できなくとも、大多数の他の商品を正しいカテゴリに分類することができるため、分類器としてのトータルの精度を向上させることができる。 In general, a product that the seller has classified as "Other" is really correct as a "Other" category, whether it is a product that is misclassified even though other categories are more suitable. It is difficult to determine whether it is a product. Therefore, even if the product data related to the products classified as "Other" is used as the learning data, the reliability of the teacher label becomes poor and it is difficult to improve the learning accuracy of the classifier 200. On the other hand, in the present embodiment, when extracting high-quality learning data, the product data related to the products classified as "other" is excluded from the learning data, so that the product data is currently classified as "other". , Products that should normally be classified in other categories can be classified in the correct category. In general, the number of products that can only be classified as "Other" is less than the total number [%], so even if products that can only be classified as "Other" cannot be correctly classified, Since the majority of other products can be classified into the correct category, the total accuracy of the classifier can be improved.

<第2実施形態>
以下、第2実施形態について説明する。上述した第1実施形態では、分類器200に再帰処理を行うRNN250が含まれているものとして説明した。これに対して、第2実施形態では、分類器200にRNN250が含まれていない点で上述した第1実施形態と相違する。以下、第1実施形態との相違点を中心に説明し、第1実施形態と共通する点については説明を省略する。なお、第2実施形態の説明において、第1実施形態と同じ部分については同一符号を付して説明する。
<Second Embodiment>
Hereinafter, the second embodiment will be described. In the first embodiment described above, it has been described that the classifier 200 includes an RNN 250 that performs recursive processing. On the other hand, the second embodiment differs from the first embodiment described above in that the classifier 200 does not include the RNN 250. Hereinafter, the differences from the first embodiment will be mainly described, and the points common to the first embodiment will be omitted. In the description of the second embodiment, the same parts as those of the first embodiment will be described with the same reference numerals.

図18は、第2実施形態における分類器200の一例を示す図である。第2実施形態における分類器200は、例えば、第1CNN210と、第2CNN220と、FCNN240と、単語埋め込みモデル260とによって実現される。 FIG. 18 is a diagram showing an example of the classifier 200 in the second embodiment. The classifier 200 in the second embodiment is realized by, for example, the first CNN210, the second CNN220, the FCNN240, and the word embedding model 260.

第2実施形態における商品データには、例えば、商品の画像や、商品のタイトル、商品の概要といったコンテンツに加えて、更に、販売サイトで商品を販売する各店舗の識別情報を表す店舗IDが含まれる。 The product data in the second embodiment includes, for example, content such as a product image, a product title, and a product outline, as well as a store ID representing identification information of each store that sells the product on the sales site. Is done.

第2実施形態における形態素解析部114は、商品データに含まれる店舗IDを、単語埋め込みモデル260に入力する。単語埋め込みモデル260は、例えば、店舗IDが入力されると、店舗IDを単語埋め込み表現によってベクトルに変換し、その店舗IDのベクトルを行ベクトルとした行列を出力するように学習されたニューラルネットワークである。 The morphological analysis unit 114 in the second embodiment inputs the store ID included in the product data into the word embedding model 260. The word embedding model 260 is, for example, a neural network learned to convert a store ID into a vector by a word embedding expression when a store ID is input and output a matrix using the vector of the store ID as a row vector. is there.

第2実施形態におけるFCNN240は、例えば、第1CNN210、第2CNN220、および単語埋め込みモデル260の其々から出力された行列を結合し、出力する。 The FCNN240 in the second embodiment combines and outputs the matrices output from each of the first CNN210, the second CNN220, and the word embedding model 260, for example.

第2実施形態におけるカテゴリ決定部116は、例えば、FCNN240の出力ベクトルの各要素をカテゴリのスコアと見做して、最もスコアが大きいカテゴリを、商品のカテゴリに決定する。 For example, the category determination unit 116 in the second embodiment regards each element of the output vector of the FCNN 240 as a category score, and determines the category having the highest score as the product category.

以上説明した第2実施形態によれば、商品のタイトルから生成した単語行列を第1CNN210に入力し、商品の概要から生成した単語行列を第2CNN220に入力し、店舗IDから生成した行列を単語埋め込みモデル260に入力し、これらの各モデルにより出力されたベクトルを統合し、その出力ベクトルの各要素に基づいて、商品のタイトル、商品の概要、および店舗IDを含む商品データの商品のカテゴリを決定するため、第1実施形態と同様に、商品(サービスも含む)をより適切なカテゴリに分類して、商品の検索精度を向上させることができる。 According to the second embodiment described above, the word matrix generated from the product title is input to the first CNN210, the word matrix generated from the product outline is input to the second CNN220, and the matrix generated from the store ID is embedded in words. Input to model 260, integrate the vectors output by each of these models, and determine the product category of the product data, including the product title, product overview, and store ID, based on each element of the output vector. Therefore, as in the first embodiment, the products (including services) can be classified into more appropriate categories to improve the search accuracy of the products.

また、上述した第2実施形態によれば、カテゴリの分類に店舗IDを利用するため、店舗ごとの出品しやすい商品の種類の傾向を基に、商品のカテゴリを決定することができる。 Further, according to the second embodiment described above, since the store ID is used for classifying the categories, the product categories can be determined based on the tendency of the types of products that are easy to sell for each store.

<第3実施形態>
以下、第3実施形態について説明する。第3実施形態では、分類器200に、RNN250に加えて、最上位の階層のカテゴリを分類する専用の分類器が含まれる点で上述した第1および第2実施形態と相違する。以下、第1および第2実施形態との相違点を中心に説明し、第1および第2実施形態と共通する点については説明を省略する。なお、第3実施形態の説明において、第1および第2実施形態と同じ部分については同一符号を付して説明する。
<Third Embodiment>
Hereinafter, the third embodiment will be described. The third embodiment differs from the first and second embodiments described above in that the classifier 200 includes, in addition to the RNN 250, a dedicated classifier that classifies the categories of the highest hierarchy. Hereinafter, the differences from the first and second embodiments will be mainly described, and the points common to the first and second embodiments will be omitted. In the description of the third embodiment, the same parts as those of the first and second embodiments will be described with the same reference numerals.

図19は、第3実施形態における分類器200の一例を示す図である。第3実施形態における分類器200は、例えば、第1CNN210と、第2CNN220と、第3CNN230と、FCNN240と、複数のRNN250と、最上位カテゴリ分類器270とによって実現される。 FIG. 19 is a diagram showing an example of the classifier 200 according to the third embodiment. The classifier 200 in the third embodiment is realized by, for example, a first CNN210, a second CNN220, a third CNN230, an FCNN240, a plurality of RNN250s, and a top category classifier 270.

最上位カテゴリ分類器270は、例えば、FCNN240からベクトルが入力されると、最上位の階層のカテゴリのスコアを要素とするベクトルを出力するように予め学習されたニューラルネットワークである。最上位カテゴリ分類器270により出力されるベクトルは、例えば、ワンホット表現のように、ある要素だけが1であり、その他の要素が0となるベクトルであってよい。 The top-level category classifier 270 is, for example, a neural network pre-learned to output a vector having a score of the category of the top-level hierarchy as an element when a vector is input from FCNN240. The vector output by the top-level category classifier 270 may be a vector in which only one element is 1 and the other elements are 0, as in the one-hot expression, for example.

複数のRNN240の其々は、最上位の階層のカテゴリ数と同じ数(最上位カテゴリ分類器270の出力ベクトルの次元数と同じ数)だけ用意され、各RNN250は、2番目以降の階層のカテゴリの正解が教師ラベルとして与えられた商品データに基づいて予め学習される。これによって、各RNN250が、最上位の階層を除いた2番目以降の階層のカテゴリを分類するため、一つのRNN250に、最上位から最下位までの各階層のカテゴリを分類させるものに比べて、各階層のカテゴリをより精度良く分類することができる。 Each of the plurality of RNN 240s is prepared in the same number as the number of categories in the uppermost layer (the same number as the number of dimensions of the output vector of the uppermost category classifier 270), and each RNN 250 is a category in the second and subsequent layers. The correct answer of is learned in advance based on the product data given as the teacher label. As a result, each RNN 250 classifies the categories of the second and subsequent layers excluding the highest layer, so that one RNN 250 classifies the categories of each layer from the highest level to the lowest level. The categories of each layer can be classified more accurately.

以上説明した第3実施形態によれば、最上位の階層のカテゴリを分類する専用の最上位カテゴリ分類器270によって、最上位の階層のカテゴリを分類した後に、最上位の階層の各カテゴリに特化して学習したRNN250によって、最上位の階層を除いた2番目以降の階層のカテゴリを分類するため、商品をより適切なカテゴリに分類することができ、その結果、商品の検索精度を向上させることができる。 According to the third embodiment described above, after classifying the categories of the highest hierarchy by the dedicated top category classifier 270 for classifying the categories of the highest hierarchy, each category of the highest hierarchy is specified. Since the categories of the second and subsequent hierarchies excluding the highest hierarchy are classified by the RNN250 learned by converting, the products can be classified into more appropriate categories, and as a result, the search accuracy of the products can be improved. Can be done.

<第4実施形態>
以下、第4実施形態について説明する。上述した第1から第3実施形態では、RNN250が、ネットワークの中間層がLSTMであるものについて説明した。これに対して、第4実施形態では、RNN250が、コンボリューショナルニューラルネットワークと、ネットワークの中間層がLSTMのRNNとを組み合わせたニューラルネットワーク(以下、CONVLSTMと称する)である点で上述した第1から第3実施形態と相違する。以下、第1から第3実施形態との相違点を中心に説明し、第1から第3実施形態と共通する点については説明を省略する。なお、第4実施形態の説明において、第1から第3実施形態と同じ部分については同一符号を付して説明する。
<Fourth Embodiment>
Hereinafter, the fourth embodiment will be described. In the first to third embodiments described above, the RNN 250 has described that the intermediate layer of the network is an LSTM. On the other hand, in the fourth embodiment, the RNN 250 is a neural network (hereinafter referred to as CONVLSTM) in which a convolutional neural network and an RNN whose intermediate layer of the network is LSTM are combined. It is different from the third embodiment. Hereinafter, the differences from the first to third embodiments will be mainly described, and the points common to the first to third embodiments will be omitted. In the description of the fourth embodiment, the same parts as those of the first to third embodiments will be described with the same reference numerals.

第4実施形態では、例えば、第1CNN210、第2CNN220、および第3CNN230の其々についてプーリング処理が省略されたり、FCNN240が省略されたりすることで、分類器200の上段に設けられた各種ニューラルネットワークなどから、RNN250に3階テンソルが入力される。 In the fourth embodiment, for example, various neural networks provided in the upper stage of the classifier 200 can be obtained by omitting the pooling process for each of the first CNN210, the second CNN220, and the third CNN230, or omitting the FCNN240. Then, the third-order tensor is input to the RNN250.

第4実施形態におけるRNN250は、例えば、コンボリューショナルニューラルネットワークと、ネットワークの中間層がLSTMであるRNNとの組み合わせたニューラルネットワーク(以下、CONVLSTMと称する)であり、3階テンソルが入力されると、そのテンソルの元になったタイトルや概要、画像に対応する商品の分類先とするカテゴリの確からしさ(尤もらしさ)を表すスコアを階層ごとに出力するように学習されたニューラルネットワークである。CONVLSTMは、上述したLSTMの各ゲートの計算式において、重みと状態変数との内積計算が畳み込み計算に変更されたものである。数式(2)は、CONVLSTMのゲートおよびニューロンの計算式を表している。 The RNN 250 in the fourth embodiment is, for example, a neural network (hereinafter referred to as CONVLSTM) in which a convolutional neural network and an RNN whose intermediate layer of the network is an LSTM are combined, and when a third-order tensor is input. , It is a neural network learned to output the score indicating the certainty (probability) of the title and outline of the tensor, and the category to which the product corresponding to the image is classified, for each layer. In the CONVLSTM, the inner product calculation of the weight and the state variable is changed to the convolution calculation in the above-mentioned calculation formula of each gate of the LSTM. Formula (2) represents the formula for calculating the gates and neurons of CONVLSTM.

Figure 0006884116
Figure 0006884116

第4実施形態におけるxは、処理周期tにおいて入力される3階テンソル(以下、入力テンソル)を表し、hは、処理周期tにおいてRNN250により出力される3階テンソル(以下、出力テンソル)を表している。 X t is in the fourth embodiment, the third floor tensor inputted in the processing cycle t (hereinafter, input tensor) represents, h t is 3 order tensor output by RNN250 in the processing cycle t (hereinafter, the output tensor) Represents.

例えば、第4実施形態におけるRNN250は、重みWと入力テンソルxとの畳み込み値と、重みRと前回の出力テンソルht−1との畳み込み値と、重みQと前回の内部演算テンソル(3階テンソル)ct−1とのアダマール積(要素ごとの積)と、バイアス成分bとの和を変数としたシグモイド関数σを解くことで、処理周期tのインプットゲートテンソル(3階テンソル)iを導出する。 For example, RNN250 in the fourth embodiment, the convolution values the weight W i and the input tensor x t, the convolution values the output tensor h t-1 weight R i and the previous weights Q i and the previous internal operation tensor and (3 tensor) Hadamard product of c t-1 (a product of each element), by solving the sigmoid function σ that the sum of the bias component b i as a variable, an input gate tensor processing cycle t (3 to derive the floor tensor) i t.

また、RNN250は、重みWと入力テンソルxとの畳み込み値と、重みRと前回の出力ベクトルht−1との畳み込み値と、重みQと前回の内部演算テンソルct−1とのアダマール積と、バイアス成分bとの和を変数としたシグモイド関数σを解くことで、処理周期tのフォーゲットゲートテンソルfを導出する。 Further, the RNN 250 has a convolution value of the weight W f and the input tensor x t , a convolution value of the weight R f and the previous output vector h t-1 , and a weight Q f and the previous internal calculation tensor c t-1. By solving the sigmoid function σ with the sum of the Hadamard product of and the bias component b f as a variable, the forget gate tensor ft of the processing period t is derived.

また、RNN250は、処理周期tのフォーゲットゲートテンソルfおよびテンソルzのアダマール積と、処理周期t−1の内部演算テンソルct‐1および処理周期tのフォーゲットゲートテンソルfのアダマール積との和を、処理周期tの内部演算テンソルcとして導出する。 Further, RNN250 includes a Hadamard product of Forget gate tensor f t and tensor z t of the processing cycle t, Hadamard the forget gate tensor f t of the internal processing cycle t-1 arithmetic tensor c t-1 and the processing period t the sum of the product, is derived as an internal operation tensor c t processing cycle t.

は、重みWと入力テンソルxとの畳み込み値と、重みRと前回の出力テンソルht−1との畳み込み値と、バイアス成分bとの和を変数としたハイパポリックタンジェント関数tanhを解くことで導出される。 z t is a hyperpolic with the sum of the convolution value of the weight W z and the input tensor x t , the convolution value of the weight R z and the previous output tensor h t-1 , and the bias component b z as variables. It is derived by solving the tangent function tanh.

また、RNN250は、重みWと入力テンソルxとの畳み込み値と、重みRと前回の出力テンソルht−1との畳み込み値と、重みQと今回の内部演算テンソルcとのアダマール積と、バイアス成分bとの和を変数としたシグモイド関数σを解くことで、処理周期tのアウトプットゲートテンソル(3階テンソル)oを導出する。 Further, RNN250 is of the convolution values the weight W o and the input tensor x t, the convolution values the output tensor h t-1 weight R o before, the weight Q o and the current internal operation tensor c t and Hadamard product, by solving the sigmoid function σ that the sum of the bias component b o as variables, to derive the output gate tensor (3-order tensor) o t of the processing cycle t.

RNN250は、アウトプットゲートテンソルoを導出すると、アウトプットゲートテンソルoと、内部演算テンソルcを変数としたハイパポリックタンジェント関数tanhの解とのアダマール積を、処理周期tの出力テンソルhとして導出する。 RNN250, when deriving the output gate tensor o t, the output tensor outputs and gate tensor o t, the Hadamard product of the solution of the hyper Po Rick tangent function tanh with the internal operation tensor c t as a variable, processing period t derived as h t.

出力テンソルhの各要素値は、上述した実施形態の出力ベクトルと同様に、階層ごとカテゴリのスコアを表している。RNN250は、上述した数式に基づく計算を繰り返すことで、出力テンソルを繰り返し導出する。 Each element value of the output tensor h t represents the score of the category for each layer, as in the output vector of the above-described embodiment. The RNN 250 repeatedly derives the output tensor by repeating the calculation based on the above-mentioned mathematical formula.

以上説明した第4実施形態によれば、分類器200のRNN250を、中間層がCONVLSTMであるRNNとするため、上述した第1から第3実施形態と比べて、商品(サービスも含む)を、更に適切なカテゴリに分類することができ、その結果、検索精度をより向上させることができる。 According to the fourth embodiment described above, since the RNN 250 of the classifier 200 is an RNN whose intermediate layer is CONVLSTM, the goods (including services) are compared with the first to third embodiments described above. It can be further classified into appropriate categories, and as a result, the search accuracy can be further improved.

<ハードウェア構成>
上述した実施形態の情報処理装置100は、例えば、図20に示すようなハードウェア構成により実現される。図20は、実施形態の情報処理装置100のハードウェア構成の一例を示す図である。
<Hardware configuration>
The information processing device 100 of the above-described embodiment is realized by, for example, a hardware configuration as shown in FIG. FIG. 20 is a diagram showing an example of the hardware configuration of the information processing apparatus 100 of the embodiment.

情報処理装置100は、NIC100−1、CPU100−2、RAM100−3、ROM100−4、フラッシュメモリやHDDなどの二次記憶装置100−5、およびドライブ装置100−6が、内部バスあるいは専用通信線によって相互に接続された構成となっている。ドライブ装置100−6には、光ディスクなどの可搬型記憶媒体が装着される。二次記憶装置100−5、またはドライブ装置100−6に装着された可搬型記憶媒体に格納されたプログラムがDMAコントローラ(不図示)などによってRAM100−3に展開され、CPU100−2によって実行されることで、制御部110が実現される。制御部110が参照するプログラムは、ネットワークNWを介して他の装置からダウンロードされてもよい。 The information processing device 100 includes NIC100-1, CPU100-2, RAM100-3, ROM100-4, secondary storage devices 100-5 such as flash memory and HDD, and drive devices 100-6, which are internal buses or dedicated communication lines. The configuration is interconnected by. A portable storage medium such as an optical disk is mounted on the drive device 100-6. A program stored in a portable storage medium mounted on the secondary storage device 100-5 or the drive device 100-6 is expanded into the RAM 100-3 by a DMA controller (not shown) or the like, and executed by the CPU 100-2. As a result, the control unit 110 is realized. The program referred to by the control unit 110 may be downloaded from another device via the network NW.

以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何ら限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。 Although the embodiments for carrying out the present invention have been described above using the embodiments, the present invention is not limited to these embodiments, and various modifications and substitutions are made without departing from the gist of the present invention. Can be added.

1…情報処理システム、10…端末装置、20…サービス提供装置、100…情報処理装置、102…通信部、110…制御部、112…取得部、114…形態素解析部、116…カテゴリ決定部、118…リスト生成部、120…情報提供部、122…学習処理部、130…記憶部、200…分類器 1 ... Information processing system, 10 ... Terminal device, 20 ... Service providing device, 100 ... Information processing device, 102 ... Communication unit, 110 ... Control unit, 112 ... Acquisition unit, 114 ... Morphological analysis unit, 116 ... Category determination unit, 118 ... list generation unit, 120 ... information providing unit, 122 ... learning processing unit, 130 ... storage unit, 200 ... classifier

Claims (15)

ネットワークを介して販売される商品またはサービスに関する商品データを取得する取得部と、
階層的なカテゴリに分類された商品またはサービスの商品データを学習データとして、入力された商品データが示す商品またはサービスに対して階層的なカテゴリの分類結果を出力するように学習された分類器の出力結果に基づいて、前記取得部により取得された前記商品データが示す商品またはサービスのカテゴリを決定する決定部と、
を備え、
前記分類器は、入力された前記商品データに互いに種類の異なる複数のコンテンツが含まれる場合、前記複数のコンテンツの其々の特徴に基づいて、入力された前記商品データの商品またはサービスの分類先とするカテゴリの確からしさを表すスコアを出力し、入力された前記商品データと、過去に前記商品データが入力されたときに導出した前記特徴および前記スコアに基づいて、入力された前記商品データの商品またはサービスのカテゴリのスコアを出力する再帰処理を繰り返す再帰型ニューラルネットワークを含み、
前記再帰型ニューラルネットワークは、前記再帰処理を繰り返すごとに、より階層が深いカテゴリのスコアを出力すると共に、前記再帰処理の処理周期ごとに、複数のカテゴリの其々についてスコアを導出し、複数のカテゴリの其々について導出したスコアのうち最も大きいスコアに基づいて、次回の処理周期におけるスコアを導出するものであり、
前記決定部は、
前記分類器により出力されたスコアに基づいて、前記取得部により取得された前記商品データが示す商品またはサービスのカテゴリを決定するものであり、
ある処理周期に、前記再帰型ニューラルネットワークによって複数のカテゴリの其々のスコアが出力された場合、前記複数のカテゴリの其々のスコアのうち一部または全部が閾値未満であるか否かを判定し、
前記複数のカテゴリの其々のスコアのうち一部または全部が閾値未満であると判定した場合、前記処理周期よりも前の処理周期において、前記再帰型ニューラルネットワークによって出力された前記複数のカテゴリの其々のスコアのうち、2番目以降に大きいスコアに基づくスコアを、前記処理周期におけるスコアとして前記再帰型ニューラルネットワークに導出させる、
情報処理装置。
An acquisition department that acquires product data related to products or services sold via the network,
A classifier trained to output the classification result of a hierarchical category for the product or service indicated by the input product data, using the product data of the product or service classified into the hierarchical category as training data. Based on the output result, a determination unit that determines the category of the product or service indicated by the product data acquired by the acquisition unit, and
With
When the input product data contains a plurality of contents of different types, the classifier classifies the product or service of the input product data based on the characteristics of each of the plurality of contents. A score representing the certainty of the category to be is output, and the input product data, the feature derived when the product data was input in the past, and the input product data based on the score are output. Contains a recursive neural network that repeats a recursive process that outputs a score for a product or service category.
The recurrent neural network outputs a score of a category having a deeper hierarchy each time the recursive processing is repeated, and derives a score for each of a plurality of categories for each processing cycle of the recursive processing. Based on the highest score derived for each category, the score for the next processing cycle is derived.
The decision unit
Based on the score output by the classifier, the category of the product or service indicated by the product data acquired by the acquisition unit is determined.
When the recursive neural network outputs the scores of a plurality of categories in a certain processing cycle, it is determined whether or not some or all of the scores of the plurality of categories are below the threshold value. And
When it is determined that a part or all of the scores of the plurality of categories is less than the threshold value, the plurality of categories output by the recurrent neural network in the processing cycle before the processing cycle. Of the respective scores, the score based on the second and subsequent largest scores is derived by the recurrent neural network as the score in the processing cycle.
Information processing device.
前記商品データには、商品またはサービスのタイトル、概要、および画像のうち少なくとも2つ以上のコンテンツが含まれる、
請求項1に記載の情報処理装置。
The product data includes at least two or more contents of the title, summary, and image of the product or service.
The information processing device according to claim 1.
前記再帰型ニューラルネットワークは、前記再帰処理を、学習時に前記学習データとして与えられた前記商品データが示す商品またはサービスのカテゴリの階層数と同じ回数分繰り返す、
請求項1または2に記載の情報処理装置。
The recurrent neural network repeats the recursive process as many times as the number of layers of the product or service category indicated by the product data given as the training data at the time of training.
The information processing device according to claim 1 or 2.
前記ネットワークを介して販売される商品またはサービスの中から、前記決定部によって決定されたカテゴリと、予め販売者によって設定されたカテゴリとが異なる商品またはサービスを抽出する抽出部と、
前記抽出部により抽出された商品またはサービスを販売する前記販売者の端末装置に、カテゴリを変更するように促す情報を提供する情報提供部と、を更に備える、
請求項1から3のうちいずれか1項に記載の情報処理装置。
An extraction unit that extracts products or services whose categories determined by the determination unit and the categories preset by the seller are different from the products or services sold via the network.
The terminal device of the seller who sells the goods or services extracted by the extraction unit is further provided with an information providing unit that provides information prompting the seller to change the category.
The information processing device according to any one of claims 1 to 3.
前記ネットワークを介して販売される商品またはサービスの中から、前記決定部によって決定されたカテゴリと、予め販売者によって設定されたカテゴリとが異なる商品またはサービスを抽出する抽出部と、
前記抽出部によって抽出された商品またはサービスの検索ランキングを低下させる検索処理部と、を更に備える、
請求項1から4のうちいずれか1項に記載の情報処理装置。
An extraction unit that extracts products or services whose categories determined by the determination unit and the categories preset by the seller are different from the products or services sold via the network.
A search processing unit that lowers the search ranking of the product or service extracted by the extraction unit is further provided.
The information processing device according to any one of claims 1 to 4.
商品またはサービスの販売時に販売者がカテゴリを設定した際に、前記販売者によって設定されたカテゴリと前記決定部によって決定されたカテゴリとが異なる場合、前記販売者が設定したカテゴリを、前記決定部によって決定されたカテゴリに変更するように促す情報を、前記販売者の端末装置に提供する情報提供部を更に備える、
請求項1から5のうちいずれか1項に記載の情報処理装置。
When the seller sets a category at the time of selling a product or service, if the category set by the seller and the category determined by the determination unit are different, the category set by the seller is selected as the determination unit. Further provided with an information providing unit that provides the terminal device of the seller with information prompting the change to the category determined by the seller.
The information processing device according to any one of claims 1 to 5.
商品またはサービスの販売時に、前記決定部によって決定されたカテゴリを、販売対象の商品またはサービスのカテゴリとして提示する情報提供部を更に備える、
請求項1から6のうちいずれか1項に記載の情報処理装置。
Further provided with an information providing unit that presents the category determined by the determination unit as the category of the product or service to be sold at the time of selling the product or service.
The information processing device according to any one of claims 1 to 6.
階層的なカテゴリに分類された商品またはサービスの商品データを学習データとして、入力された商品データが示す商品またはサービスに対して階層的なカテゴリの分類結果を出力するように、前記分類器を学習させる学習処理部を更に備える、
請求項1から7のうちいずれか1項に記載の情報処理装置。
The classifier is trained so as to output the classification result of the hierarchical category for the product or service indicated by the input product data using the product data of the product or service classified into the hierarchical category as training data. Further equipped with a learning processing unit to make
The information processing device according to any one of claims 1 to 7.
前記学習処理部は、前記学習データの候補となる複数の商品データのうち、ユーザが所定の行動に至った商品またはサービスに関する商品データを、前記学習データとして前記分類器を学習させる、
請求項8に記載の情報処理装置。
The learning processing unit trains the classifier using the product data related to the product or service that the user has reached a predetermined action as the learning data among the plurality of product data that are candidates for the learning data.
The information processing device according to claim 8.
前記所定の行動は、商品またはサービスを購入することを含み、
前記学習処理部は、前記ユーザによって購入された回数が所定回数以上の商品またはサービスに関する商品データを、前記学習データとして前記分類器を学習する、
請求項9に記載の情報処理装置。
The prescribed actions include purchasing goods or services.
The learning processing unit learns the classifier using product data related to products or services purchased by the user more than a predetermined number of times as the learning data.
The information processing device according to claim 9.
前記所定の行動は、商品またはサービスを閲覧することを含み、
前記学習処理部は、前記ユーザによって閲覧された回数が所定回数以上の商品またはサービスに関する商品データを、前記学習データとして前記分類器を学習する、
請求項9または10に記載の情報処理装置。
The prescribed actions include browsing goods or services.
The learning processing unit learns the classifier using product data related to products or services that have been viewed by the user a predetermined number of times or more as the learning data.
The information processing device according to claim 9 or 10.
前記所定の行動は、商品またはサービスを閲覧した時間が所定時間以上であることを含み、
前記学習処理部は、前記ユーザによって閲覧された時間が所定時間以上の商品またはサービスに関する商品データを、前記学習データとして前記分類器を学習する、
請求項9から11のうちいずれか1項に記載の情報処理装置。
The predetermined action includes the time when the product or service is browsed for a predetermined time or more.
The learning processing unit learns the classifier using product data related to products or services that have been viewed by the user for a predetermined time or longer as the learning data.
The information processing device according to any one of claims 9 to 11.
前記学習データの候補となる複数の商品データのうち、販売者が所定のカテゴリに分類した商品またはサービスの商品データを除いた前記複数の商品データを、前記学習データとして前記分類器を学習する学習処理部を更に備える、
請求項1から12のうちいずれか1項に記載の情報処理装置。
Learning to learn the classifier using the plurality of product data excluding the product data of products or services classified into a predetermined category by the seller from the plurality of product data candidates for the training data as the training data. Further equipped with a processing unit,
The information processing device according to any one of claims 1 to 12.
コンピュータが、
ネットワークを介して販売される商品またはサービスに関する商品データを取得し、
階層的なカテゴリに分類された商品またはサービスの商品データを学習データとして、入力された商品データが示す商品またはサービスに対して階層的なカテゴリの分類結果を出力するように学習された分類器の出力結果に基づいて、前記取得した前記商品データが示す商品またはサービスのカテゴリを決定し、
前記分類器は、入力された前記商品データに互いに種類の異なる複数のコンテンツが含まれる場合、前記複数のコンテンツの其々の特徴に基づいて、入力された前記商品データの商品またはサービスの分類先とするカテゴリの確からしさを表すスコアを出力し、入力された前記商品データと、過去に前記商品データが入力されたときに導出した前記特徴および前記スコアに基づいて、入力された前記商品データの商品またはサービスのカテゴリのスコアを出力する再帰処理を繰り返す再帰型ニューラルネットワークを含み、
前記再帰型ニューラルネットワークは、前記再帰処理を繰り返すごとに、より階層が深いカテゴリのスコアを出力すると共に、前記再帰処理の処理周期ごとに、複数のカテゴリの其々についてスコアを導出し、複数のカテゴリの其々について導出したスコアのうち最も大きいスコアに基づいて、次回の処理周期におけるスコアを導出するものであり、
前記決定する際に、
前記分類器により出力されたスコアに基づいて、前記取得された前記商品データが示す商品またはサービスのカテゴリを決定し、
ある処理周期に、前記再帰型ニューラルネットワークによって複数のカテゴリの其々のスコアが出力された場合、前記複数のカテゴリの其々のスコアのうち一部または全部が閾値未満であるか否かを判定し、
前記複数のカテゴリの其々のスコアのうち一部または全部が閾値未満であると判定した場合、前記処理周期よりも前の処理周期において、前記再帰型ニューラルネットワークによって出力された前記複数のカテゴリの其々のスコアのうち、2番目以降に大きいスコアに基づくスコアを、前記処理周期におけるスコアとして前記再帰型ニューラルネットワークに導出させる、
情報処理方法。
The computer
Get product data about products or services sold over the network
A classifier trained to output the classification result of a hierarchical category for the product or service indicated by the input product data, using the product data of the product or service classified into the hierarchical category as training data. Based on the output result, the category of the product or service indicated by the acquired product data is determined.
When the input product data contains a plurality of contents of different types, the classifier classifies the product or service of the input product data based on the characteristics of each of the plurality of contents. A score representing the certainty of the category to be is output, and the input product data, the feature derived when the product data was input in the past, and the input product data based on the score are output. Contains a recursive neural network that repeats a recursive process that outputs a score for a product or service category.
The recurrent neural network outputs a score of a category having a deeper hierarchy each time the recursive processing is repeated, and derives a score for each of a plurality of categories for each processing cycle of the recursive processing. Based on the highest score derived for each category, the score for the next processing cycle is derived.
In making the above decision
Based on the score output by the classifier, the category of the product or service indicated by the acquired product data is determined.
When the recursive neural network outputs the scores of a plurality of categories in a certain processing cycle, it is determined whether or not some or all of the scores of the plurality of categories are below the threshold value. And
When it is determined that a part or all of the scores of the plurality of categories is less than the threshold value, the plurality of categories output by the recurrent neural network in the processing cycle before the processing cycle. Of the respective scores, the score based on the second and subsequent largest scores is derived by the recurrent neural network as the score in the processing cycle.
Information processing method.
コンピュータに、
ネットワークを介して販売される商品またはサービスに関する商品データを取得する処理と、
階層的なカテゴリに分類された商品またはサービスの商品データを学習データとして、入力された商品データが示す商品またはサービスに対して階層的なカテゴリの分類結果を出力するように学習された分類器の出力結果に基づいて、前記取得した前記商品データが示す商品またはサービスのカテゴリを決定する処理と、
を実行させるためのプログラムであって、
前記分類器は、入力された前記商品データに互いに種類の異なる複数のコンテンツが含まれる場合、前記複数のコンテンツの其々の特徴に基づいて、入力された前記商品データの商品またはサービスの分類先とするカテゴリの確からしさを表すスコアを出力し、入力された前記商品データと、過去に前記商品データが入力されたときに導出した前記特徴および前記スコアに基づいて、入力された前記商品データの商品またはサービスのカテゴリのスコアを出力する再帰処理を繰り返す再帰型ニューラルネットワークを含み、
前記再帰型ニューラルネットワークは、前記再帰処理を繰り返すごとに、より階層が深いカテゴリのスコアを出力すると共に、前記再帰処理の処理周期ごとに、複数のカテゴリの其々についてスコアを導出し、複数のカテゴリの其々について導出したスコアのうち最も大きいスコアに基づいて、次回の処理周期におけるスコアを導出するものであり、
前記決定する処理において、前記コンピュータに、
前記分類器により出力されたスコアに基づいて、前記取得された前記商品データが示す商品またはサービスのカテゴリを決定させ、
ある処理周期に、前記再帰型ニューラルネットワークによって複数のカテゴリの其々のスコアが出力された場合、前記複数のカテゴリの其々のスコアのうち一部または全部が閾値未満であるか否かを判定させ、
前記複数のカテゴリの其々のスコアのうち一部または全部が閾値未満であると判定した場合、前記処理周期よりも前の処理周期において、前記再帰型ニューラルネットワークによって出力された前記複数のカテゴリの其々のスコアのうち、2番目以降に大きいスコアに基づくスコアを、前記処理周期におけるスコアとして前記再帰型ニューラルネットワークに導出させることを行わせる、
プログラム。
On the computer
The process of retrieving product data about products or services sold over the network,
A classifier trained to output the classification result of a hierarchical category for the product or service indicated by the input product data, using the product data of the product or service classified into the hierarchical category as training data. Based on the output result, the process of determining the category of the product or service indicated by the acquired product data, and
It is a program to execute
When the input product data contains a plurality of contents of different types, the classifier classifies the product or service of the input product data based on the characteristics of each of the plurality of contents. A score representing the certainty of the category to be is output, and the input product data, the feature derived when the product data was input in the past, and the input product data based on the score are output. Contains a recursive neural network that repeats a recursive process that outputs a score for a product or service category.
The recurrent neural network outputs a score of a category having a deeper hierarchy each time the recursive processing is repeated, and derives a score for each of a plurality of categories for each processing cycle of the recursive processing. Based on the highest score derived for each category, the score for the next processing cycle is derived.
In the process of determining, the computer
Based on the score output by the classifier, the category of the product or service indicated by the acquired product data is determined.
When the recursive neural network outputs the scores of a plurality of categories in a certain processing cycle, it is determined whether or not some or all of the scores of the plurality of categories are below the threshold value. Let me
When it is determined that a part or all of the scores of the plurality of categories is less than the threshold value, the plurality of categories output by the recurrent neural network in the processing cycle before the processing cycle. Among the respective scores, the score based on the second and subsequent largest scores is derived by the recurrent neural network as the score in the processing cycle.
program.
JP2018050395A 2018-03-19 2018-03-19 Information processing equipment, information processing methods, and programs Active JP6884116B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018050395A JP6884116B2 (en) 2018-03-19 2018-03-19 Information processing equipment, information processing methods, and programs

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018050395A JP6884116B2 (en) 2018-03-19 2018-03-19 Information processing equipment, information processing methods, and programs

Publications (2)

Publication Number Publication Date
JP2019164402A JP2019164402A (en) 2019-09-26
JP6884116B2 true JP6884116B2 (en) 2021-06-09

Family

ID=68066296

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018050395A Active JP6884116B2 (en) 2018-03-19 2018-03-19 Information processing equipment, information processing methods, and programs

Country Status (1)

Country Link
JP (1) JP6884116B2 (en)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021079448A1 (en) * 2019-10-23 2021-04-29 tryangle株式会社 Analysis device, method, and system for handmade article material
CN110930290B (en) * 2019-11-13 2023-07-07 东软睿驰汽车技术(沈阳)有限公司 Data processing method and device
JP7145901B2 (en) * 2020-02-13 2022-10-03 ヤフー株式会社 Information processing device, information processing method and information processing program
US11023814B1 (en) * 2020-02-18 2021-06-01 Coupang Corp. Computerized systems and methods for product categorization using artificial intelligence
KR102271810B1 (en) * 2020-11-23 2021-07-02 주식회사 엠로 Method and apparatus for providing information using trained model based on machine learning
CN112906396A (en) * 2021-04-01 2021-06-04 翻车信息科技(杭州)有限公司 Cross-platform commodity matching method and system based on natural language processing
EP4152235A4 (en) * 2021-07-26 2023-04-26 Rakuten Group, Inc. Information processing device, information processing method, and program
WO2023062668A1 (en) * 2021-10-11 2023-04-20 楽天グループ株式会社 Information processing device, information processing method, information processing system, and program
WO2023105609A1 (en) * 2021-12-07 2023-06-15 楽天グループ株式会社 Information processing device, information processing method, program, and learning model
US20240037190A1 (en) 2022-07-25 2024-02-01 Rakuten Group, Inc. Multi-output headed ensembles for product classification
WO2024219247A1 (en) * 2023-04-20 2024-10-24 株式会社Nttドコモ Teaching data correction device

Also Published As

Publication number Publication date
JP2019164402A (en) 2019-09-26

Similar Documents

Publication Publication Date Title
JP6884116B2 (en) Information processing equipment, information processing methods, and programs
CN111784455B (en) Article recommendation method and recommendation equipment
US20190065589A1 (en) Systems and methods for multi-modal automated categorization
CN109584006B (en) Cross-platform commodity matching method based on deep matching model
CN109145245A (en) Predict method, apparatus, computer equipment and the storage medium of clicking rate
CN115917535A (en) Recommendation model training method, recommendation device and computer readable medium
CN114201621A (en) Cross-modal retrieval model construction and retrieval method based on image-text cooperative attention
CN112487199B (en) User characteristic prediction method based on user purchasing behavior
WO2019233077A1 (en) Ranking of business object
WO2023011382A1 (en) Recommendation method, recommendation model training method, and related product
CN110209922A (en) Object recommendation method, apparatus, storage medium and computer equipment
JP7198408B2 (en) Trademark information processing device and method, and program
CN115244547A (en) Automatically and intelligently exploring design spaces
CN109189921A (en) Comment on the training method and device of assessment models
CN111949887A (en) Item recommendation method and device and computer-readable storage medium
CN109034960A (en) A method of more inferred from attributes based on user node insertion
CN111581529A (en) Course recommendation method and device combining student fitness and course collocation degree
KR102410715B1 (en) Apparatus and method for analyzing sentiment of text data based on machine learning
CN118043802A (en) Recommendation model training method and device
Ren et al. A co-attention based multi-modal fusion network for review helpfulness prediction
JP7082014B2 (en) Information processing equipment, information processing methods, and programs
CN115237732A (en) Operation prediction method and related device
CN115641179A (en) Information pushing method and device and electronic equipment
CN108960954B (en) Content recommendation method and system based on user group behavior feedback
CN116910357A (en) Data processing method and related device

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20191101

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20191108

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200312

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210126

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210202

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210311

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210511

R150 Certificate of patent or registration of utility model

Ref document number: 6884116

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250