(57)【要約】【課題】より広範に仕様情報を補完することができる情報処理装置、情報処理方法、及びプログラムを提供することである。【解決手段】情報処理装置は、ネットワークを介して販売される商品に関するデータであって、フォーマットとして複数の情報種別の仕様情報が規定されている商品データを取得する取得部と、前記取得部により取得された一以上の情報種別の前記仕様情報から他の情報種別の仕様情報を推定する際に、前記他の情報種別に対応した推定手段により推定を行う推定部と、を備える。【選択図】図６
2020042403.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して販売される商品に関するデータであって、フォーマットとして複数の情報種別の仕様情報が規定されている商品データを取得する取得部と、
前記取得部により取得された一以上の前記情報種別の前記仕様情報から他の情報種別の仕様情報を推定する際に、前記他の情報種別に対応した推定手段により推定を行う推定部と、
を備える情報処理装置。
【請求項２】
前記情報種別には、前記商品の商品名と、商品説明と、カテゴリとが含まれ、
前記カテゴリに対応した推定手段は、ニューラルネットワークを用いる推定手段であり、
前記推定部は、前記商品データに含まれる前記商品の商品名と、商品説明とのうち、少なくとも一方を前記ニューラルネットワークに入力することによって、前記カテゴリを推定する、
請求項１に記載の情報処理装置。
【請求項３】
前記情報種別には、前記商品のブランド名が含まれ、
前記ブランド名に対応した推定手段は、ブランド名と商品の商品名を対応付けたブランド商品辞書に基づくマッチング処理を用いる推定手段であり、
前記推定部は、前記商品データに含まれる前記商品の商品名とのうち少なくとも一方の少なくとも一部と、前記ブランド商品辞書に含まれる商品名とが一致する場合、当該ブランド商品辞書における前記一致した商品名に対応付けられたブランド名を、前記商品のブランド名と推定する、
請求項１又は請求項２に記載の情報処理装置。
【請求項４】
前記情報種別には、前記商品の一以上の性能情報と、商品名、又は商品説明と、カテゴリとが含まれ、
前記性能情報に対応した推定手段は、ロジスティック回帰を用いる推定手段であり、
前記推定部は、前記カテゴリから前記性能情報のセットを特定し、前記商品名、又は商品説明に基づくロジスティック回帰を行って、前記特定した前記性能情報のセットを補完するように前記性能情報を推定する、
請求項１から請求項３のうちいずれか一項に記載の情報処理装置。
【請求項５】
前記情報種別には、前記商品の商品名と、商品説明と、前記商品を識別可能な商品識別情報とが含まれ、
前記商品識別情報に対応した推定手段は、形態素解析を用いる推定手段であり、
前記推定部は、前記商品の商品名と、商品説明とのうち少なくとも一方を形態素解析し、解析結果と合致する前記商品識別情報が既に付されている前記商品名を、前記商品の商品識別情報と推定する、
請求項１から請求項４のうちいずれか一項に記載の情報処理装置。
【請求項６】
前記商品の中から、前記推定部によって推定された前記仕様情報と、予め販売者によって設定された前記仕様情報とが異なる前記商品を抽出する抽出部と、
前記抽出部により抽出された前記商品を販売する前記販売者の端末装置に、仕様情報を変更するように促す情報を提供する情報提供部と、を更に備える、
請求項１から５のうちいずれか１項に記載の情報処理装置。
【請求項７】
前記商品の販売時に販売者が仕様情報を設定した際に、前記販売者によって設定された仕様情報と前記推定部によって推定された仕様情報とが異なる場合、前記販売者が設定した仕様情報を、前記推定部によって推定された仕様情報に変更するように促す情報を、前記販売者の端末装置に提供する情報提供部を更に備える、
請求項１から６のうちいずれか１項に記載の情報処理装置。
【請求項８】
前記商品の販売時に、前記推定部によって推定された仕様情報を、販売対象の前記商品の仕様情報として提示する情報提供部を更に備える、
請求項１から７のうちいずれか１項に記載の情報処理装置。
【請求項９】
コンピュータが、
ネットワークを介して販売される商品に関するデータであって、フォーマットとして複数の情報種別の仕様情報が規定されている商品データを取得し、
取得された一以上の情報種別の前記仕様情報から他の情報種別の仕様情報を推定する際に、前記他の情報種別に対応した推定手段により推定する、
情報処理方法。
【請求項１０】
コンピュータに、
ネットワークを介して販売される商品に関するデータであって、フォーマットとして複数の情報種別の仕様情報が規定されている商品データを取得させ、
取得された一以上の情報種別の前記仕様情報から他の情報種別の仕様情報を推定する際に、前記他の情報種別に対応した推定手段により推定させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
ショッピングサイトなどで商品を販売する場合、販売者がそれらの商品に関する仕様情報を入力し、入力された仕様情報がサイトに表示される場合がある。販売者が仕様情報を十分に入力しない場合、購買者は、自身が購入する商品を適切に検索できない場合があった。これに対し、特定マッピング関係に基づいて、入力されていない仕様情報を補完する技術が知られている（例えば、特許文献１参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１５−５３１１２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の技術では、特定マッピング関係が確立されていない仕様情報を補完することができない場合があった。
【０００５】
本発明は、上記の課題に鑑みてなされたものであり、より広範に仕様情報を補完することができる情報処理装置、情報処理方法、及びプログラムを提供することを目的としている。
【課題を解決するための手段】
【０００６】
本発明の一態様は、ネットワークを介して販売される商品に関するデータであって、フォーマットとして複数の情報種別の仕様情報が規定されている商品データを取得する取得部と、前記取得部により取得された一以上の情報種別の前記仕様情報から他の情報種別の仕様情報を推定する際に、前記他の情報種別に対応した推定手段により推定を行う推定部と、を備える情報処理装置である。
【発明の効果】
【０００７】
本発明の一態様によれば、より広範に仕様情報を補完することができることができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態に係る情報処理装置の機能を含む情報処理システム１の一例を示す図である。
【図２】ショッピングサーバ２０により提供されるウェブページをブラウザが再生することによって表示される画面の一例を示す図である。
【図３】入稿管理装置３０により提供されるウェブページをブラウザが再生することによって表示される画面の一例を示す図である。
【図４】カテゴリ選択に係るウェブページをブラウザが再生することによって表示される画面の一例を示す図である。
【図５】入稿管理装置３０に入稿された商品に関する情報の一例を示す図である。
【図６】本実施形態に係るショッピングサーバ２０の構成の一例を示す図である。
【図７】欠落商品データリスト４０４の内容の一例を示す図である。
【図８】ＮＮ処理部３０６により実行される処理の流れの一例を示すフローチャートである。
【図９】分類器５００の構成の一例を示す図である。
【図１０】時間経過に応じたＲＮＮ５５０の処理内容を並列に展開した図である。
【図１１】カテゴリの推定結果の一例を示す図である。
【図１２】ブランドマッチング処理部３０８により実行されるの処理の流れの一例を示すフローチャートである。
【図１３】ブランド商品辞書情報４０８の内容の一例を示す図である。
【図１４】セット情報４１０の内容の一例を示す図である。
【図１５】ロジスティック回帰処理部３１０により実行される性能情報の推定処理の流れの一例を示すフローチャートである。
【図１６】ロジスティック回帰処理部３１０により実行されるロジスティック回帰モデルの学習処理の流れの一例を示すフローチャートである。
【図１７】ロジスティック回帰モデルの学習に用いられる教師データ４１２の内容の一例を示す図である。
【図１８】ＪＡＮコードマッチング処理部３１２により実行される処理の流れの一例を示すフローチャートである。
【図１９】ＪＡＮコード辞書情報４１４の内容の一例を示す図である。
【図２０】商品名のテキストの一例を示す図である。
【図２１】販売サイトに商品を登録する際の商品登録画面の一例を示す図である。
【図２２】販売サイトに商品を登録する際の商品登録画面の他の例を示す図である。
【発明を実施するための形態】
【０００９】
以下、本発明を適用した情報処理装置、情報処理方法、及びプログラムを、図面を参照して説明する。
【００１０】
［概要］
情報処理装置は、一以上のプロセッサにより実現される。情報処理装置は、ネットワークを介して販売される商品又はサービス（以下、商品等）に関するデータであって、フォーマットとして複数の情報種別を含んで構成される仕様情報が規定されている商品データを取得する。以下、商品、又はサービスをまとめて単に「商品」と称して説明する。情報種別とは、例えば、商品名、商品説明、カテゴリ、商品の性能情報、商品を識別可能な識別情報（例えば、ＪＡＮ（Japanese Article Number）コード）等である。情報処理装置は、取得された一以上の情報種別の仕様情報から、他の情報種別の仕様情報を推定する際に、推定する他の情報種別に対応した推定手段により推定を行う。ここで、情報種別は、特徴がそれぞれ異なるため、推定手段もそれぞれ異なるものを使用した方が、より適切に推定することができる。これによって、情報処理装置は、従来の方法では困難であった仕様情報の補完をすることができ、より広範に仕様情報を補完することができる。情報処理装置は、例えば、ショッピングサーバの一機能として実現される。これに限らず、情報処理装置は、ショッピングサーバに情報提供する装置であってもよい。また、情報処理装置は、ショッピングサーバではなく、検索サイトやＳＮＳ（Social Networking Service）、メールサービスなどの各種サービスを提供するサーバに内蔵され、またはこれらに情報提供する装置であってもよい。
【００１１】
＜実施形態＞
［全体構成］
図１は、本実施形態に係る情報処理装置の機能を含む情報処理システム１の一例を示す図である。本実施形態に係る情報処理システム１は、例えば、ショッピングサーバ２０と、入稿管理装置３０と、一以上の端末装置１０とを備える。これらの装置は、ネットワークＮＷを介して接続される。また、これらの装置のうち一部は、他の装置に仮想的な装置として包含されてもよく、例えば、入稿管理装置３０の機能の一部、又は全部が、ショッピングサーバ２０の機能によって実現される仮想マシンであってもよい。
【００１２】
図１に示す各装置は、ネットワークＮＷを介して種々の情報を送受信する。ネットワークＮＷは、例えば、インターネット、ＷＡＮ（Wide Area Network）、ＬＡＮ（Local Area Network）、プロバイダ端末、無線通信網、無線基地局、専用回線などを含む。なお、図１に示す各装置の全ての組み合わせが相互に通信可能である必要はなく、ネットワークＮＷは、一部にローカルなネットワークを含んでもよい。
【００１３】
端末装置１０は、例えば、スマートフォンなどの携帯電話、タブレット端末、各種パーソナルコンピュータなどの、入力装置、表示装置、通信装置、記憶装置、および演算装置を備える端末装置である。通信装置は、ＮＩＣ（Network Interface Card）などのネットワークカード、無線通信モジュールなどを含む。端末装置１０では、ウェブブラウザやアプリケーションプログラムなどのＵＡ（User Agent）が起動する。端末装置１０には、購買者端末装置１０ａと販売者端末装置１０ｂがある。購買者端末装置１０ａは、販売サイトの購買者の入力に応じたリクエストを、ショッピングサーバ２０に送信する。また、ＵＡが起動された購買者端末装置１０ａは、ショッピングサーバ２０から取得した情報に基づいて、購買者端末装置１０ａが備える表示装置に各種画像を表示させる。販売者端末装置１０ｂは、販売サイトの販売者の入力に応じたリクエストを、ショッピングサーバ２０、又は入稿管理装置３０に送信する。また、ＵＡが起動された販売者端末装置１０ｂは、ショッピングサーバ２０、又は入稿管理装置３０から取得した情報に基づいて、販売者端末装置１０ｂが備える表示装置に各種画像を表示させる。但し、購買者端末装置１０ａと販売者端末装置１０ｂの間にハードウェア的な相違は無くてもよく、利用者の属性に応じて便宜上、名称を分けているだけである。
【００１４】
ショッピングサーバ２０は、例えば、ＵＡとして起動されたウェブブラウザからのリクエストに応じてウェブページを購買者端末装置１０ａに提供するウェブサーバである。また、ショッピングサーバ２０は、ＵＡとして起動されたアプリケーションからのリクエストに応じてコンテンツを端末装置１０に提供することで、販売サイトなどの各種ウェブサイトと同様のサービスを提供するアプリケーションサーバであってもよい。ウェブページは、例えば、インターネット上において商品を販売するショッピングサイトやオークションサイト、フリーマーケットサイト等のウェブサイト（以下、総称して「販売サイト」と称する）を構成するウェブページであってよい。また、ショッピングサーバ２０は、情報処理装置としての機能を有する。情報処理装置の詳細については、後述する。
【００１５】
図２は、ショッピングサーバ２０により提供されるウェブページをブラウザが再生することによって表示される画面の一例を示す図である。販売サイトのウェブページには、例えば、商品の画像（図中Ｒ１）、商品のタイトルを表すテキスト（図中Ｒ２）、商品の仕様情報（又は、商品の性能情報）を表すテキスト（図中Ｒ３）、商品のカテゴリを表すテキスト（図中Ｒ４）、商品説明を表すテキスト（図中Ｒ５）などが含まれる。この画面は、例えば、販売サイトにクエリを入力して行う検索の結果、表示されるお奨め商品の中から一つの商品が選択されることで表示される。
【００１６】
図１に戻り、入稿管理装置３０は、販売者端末装置１０ｂにウェブページその他のインターフェースを提供する。ウェブページは、販売サイトにおいて販売される商品に関する情報を入稿（登録）するウェブサイト（以下、「入稿サイト」）を構成するウェブページであってよい。
【００１７】
図３は、入稿管理装置３０により提供されるウェブページをブラウザが再生することによって表示される画面の一例を示す図である。入稿サイトのウェブページには、例えば、商品の画像をアップロードするドラッグ・アンド・ドロップ欄（図中Ｒ６）、商品名を入力する入力欄（図中Ｒ７）、商品を識別可能な識別情報（以下、ＪＡＮコード）を入力する入力欄（図中Ｒ８）、商品説明を入力する入力欄（図中Ｒ９）、カテゴリを選択するカテゴリ選択ウェブページに進むボタン（図中Ｂ１）などが含まれる。
【００１８】
図４は、カテゴリ選択に係るウェブページをブラウザが再生することによって表示される画面の一例を示す図である。図４は、図３においてボタンＢ１をクリックすることによって入稿管理装置３０により提供されるウェブページをブラウザが再生することによって表示される画像である。カテゴリ選択に係るウェブページには、商品のカテゴリを選択する選択欄（図中Ｒ１０）と、選択欄Ｒ９によって選択されたカテゴリを、商品のカテゴリとして決定するボタン（図中Ｂ２）といったコンテンツが含まれる。販売者は、ウェブページに商品を登録する時に併せて、登録する商品に対して階層的なカテゴリを設定する。
【００１９】
販売サイトでは、一般的に、最も上位の階層には、「ファッション」のような最も抽象的なカテゴリが設定され、２番目に上位の階層には、「ファッション」よりも具体的な「レディースシューズ」のようなカテゴリが設定され、３番目に上位の階層には、「レディースシューズ」よりも具体的な「ローファー、モカシン」のようなカテゴリが設定され、４番目に上位の階層には、「ローファー、モカシン」よりも具体的なサイズなどがカテゴリとして設定される。本実施形態において、カテゴリの階層構造は、最上位階層から最下位階層までの階層数が最大で４つである場合について説明する。
【００２０】
図５は、入稿管理装置３０に入稿された商品に関する情報（以下、商品データ）の一例を示す図である。商品データには、販売サイトにおいて商品を識別する識別情報（図示する商品ＩＤ）と、商品名と、商品説明と、商品の画像と、商品のカテゴリと、商品のブランド名と、商品の性能情報と、商品のＪＡＮコードとを示す情報が、互いに対応付けられた情報である。入稿管理装置３０は、入稿された商品データを、ネットワークＮＷを介してショッピングサーバ２０に送信する。商品名と、商品説明と、商品の画像と、商品のカテゴリと、商品のブランド名と、性能情報と、ＪＡＮコードとのそれぞれは、「情報種別」の一例である。情報種別に対応して入力される各種情報は、仕様情報の一部である。
【００２１】
ここで、商品データに含まれる仕様情報の一部が欠落していると、図２に示すような販売サイトのウェブページに表される情報が少なくなり、購買者による商品の検索精度を高めることが困難である。本実施形態の情報処理装置は、複数の情報種別の仕様情報が含まれる商品データから、欠落している情報種別の仕様情報を、当該欠落している情報種別に対応した推定手段により推定を行い、欠落した情報種別の仕様情報をより広範に補完する。
【００２２】
［ショッピングサーバ２０の構成］
図６は、本実施形態に係るショッピングサーバ２０の構成の一例を示す図である。ショッピングサーバ２０は、例えば、ショッピングサイト提供部２００と、記憶部２１０と、商品データ処理部３００と、記憶部４００と、を備える。ショッピングサイト提供部２００は、例えば、販売管理部２０２を備える。商品データ処理部３００は、例えば、取得部３０２と、欠落商品データ抽出部３０４と、ＮＮ処理部（ニューラルネットワーク処理部）３０６と、ブランドマッチング処理部３０８と、ロジスティック回帰処理部３１０と、ＪＡＮコードマッチング処理部３１２と、商品データ更新部３１４とを備える。ショッピングサイト提供部２００及び商品データ処理部３００の各部は、例えば、ＣＰＵ（Central Processing Unit）などのハードウェアプロセッサがプログラム（ソフトウェア）を実行することにより実現される。また、これらの構成要素のうち一部、又は全部は、ＬＳＩ（Large Scale Integration）やＡＳＩＣ（Application Specific Integrated Circuit）、ＦＰＧＡ（Field-Programmable Gate Array）、ＧＰＵ（Graphics Processing Unit）などのハードウェア（回路部；circuitryを含む）によって実現されてもよいし、ソフトウェアとハードウェアの協働によって実現されてもよい。プログラムは、予めＨＤＤ（Hard Disk Drive）やフラッシュメモリなどの記憶装置（非一過性の記憶媒体を備える記憶装置）に格納されていてもよいし、ＤＶＤやＣＤ−ＲＯＭなどの着脱可能な記憶媒体（非一過性の記憶媒体）に格納されており、記憶媒体がドライブ装置に装着されることでインストールされてもよい。また、ショッピングサイト提供部２００と商品データ処理部３００は、一体のプロセッサによって実現されてもよく、別体のプロセッサによって実現されてもよい。商品データ処理部３００と、記憶部４００とを合わせたものは、「情報処理装置」の一例である。
【００２３】
記憶部２１０には、例えば、取扱商品データベース２１２が記憶される。記憶部４００には、例えば、補完前取扱商品データベース４０２と、欠落商品データリスト４０４とが記憶される。記憶部２１０、及び記憶部４００は、例えば、ＲＡＭ（Random Access Memory）、ＨＤＤ、フラッシュメモリ、ＳＤカード等によって実現される。取扱商品データベース２１２は、販売サイトにおいて取り扱われる商品の商品データを示す情報である。取扱商品データベース２１２には、商品の商品データであり、補完後の商品データを１レコードとし、一以上のレコードが含まれる。補完前取扱商品データベース４０２には、入稿管理装置３０から受信した商品の商品データであり、補完前の商品データを１レコードとする、一以上のレコードが含まれる。欠落商品データリスト４０４の詳細については、後述する。
【００２４】
［ショッピングサイト提供部２００について］
販売管理部２０２は、販売サイトが提供するサービスのうち販売に関する部分の処理を行う。販売管理部２０２は、例えば、販売サイトのインターフェースとなる各種画面を購買者端末装置１０ａに提供する。
【００２５】
販売管理部２０２は、販売サイトのクエリ入力欄に入力されたクエリを検索キーにして取扱商品データベース２１２を検索し、当該クエリが仕様情報として対応付けられた商品に関するウェブページ（例えば、図２のウェブぺージ）を購買者端末装置１０ａに提供する。また、販売管理部２０２は、購買者端末装置１０ａのユーザ（つまり、購買者）の入力装置に対する操作に応じて画面を遷移させる。販売管理部２０２は、例えば、購買者端末装置１０ａに対して購買者によって商品の購入を実行する操作が行われた際に、この取引に係る決済の処理を行う。決済の処理は、例えば、決済の処理を実行する決済サーバ（不図示）に、この売買に係る決済の情報を送信し、決済の処理を依頼する処理である。
【００２６】
［商品データ処理部３００について］
取得部３０２は、入稿管理装置３０から入稿された商品データを示す情報を取得する。取得部３０２は、取得した商品データを１レコードとして補完前取扱商品データベース４０２に追加し、記憶部４００に記憶させる。
【００２７】
欠落商品データ抽出部３０４は、補完前取扱商品データベース４０２に含まれるレコードのうち、仕様情報が欠落しているレコード（つまり、商品データ）を抽出する。欠落商品データ抽出部３０４は、例えば、補完前取扱商品データベース４０２に含まれるレコードのうち、１つ、又は複数の情報種別の仕様情報が欠落しているレコードを抽出し、欠落商品データリスト４０４に追加する。
【００２８】
図７は、欠落商品データリスト４０４の内容の一例を示す図である。図７に示される通り、欠落商品データリスト４０４は、商品データと同様の情報種別の仕様情報が互いに対応付けられた情報である。欠落商品データリスト４０４のレコードは、仕様情報のうち、１つ、又は複数の情報種別の仕様情報が欠落している。図７に示される一例では、商品ＩＤ「ｉｔｅｍ＿Ａ」のレコードが、「カテゴリ」の仕様情報が欠落し、商品ＩＤ「ｉｔｅｍ＿Ｂ」のレコードが、「ブランド名」の仕様情報が欠落し、商品ＩＤ「ｉｔｅｍ＿Ｃ」のレコードが、「性能情報」の仕様情報が欠落し、商品ＩＤ「ｉｔｅｍ＿Ｃ」のレコードが、「ＪＡＮコード」の仕様情報が欠落している。
【００２９】
図６に戻り、ＮＮ処理部３０６は、情報種別が「商品名」の仕様情報、又は情報種別が「商品説明」の仕様情報に少なくとも欠落がなく、且つ情報種別が「カテゴリ」の仕様情報が欠落している商品データについて、ニューラルネットを用いて「カテゴリ」を推定する。
【００３０】
ブランドマッチング処理部３０８は、情報種別が「商品名」の仕様情報、又は情報種別が「商品説明」の仕様情報に少なくとも欠落がなく、且つ情報種別が「ブランド名」の仕様情報が欠落している商品データについて、マッチング処理によって「ブランド名」を推定する。
【００３１】
ロジスティック回帰処理部３１０は、情報種別が「商品名」の仕様情報、又は情報種別が「商品説明」の仕様情報と、情報種別が「カテゴリ」の仕様情報とに少なくとも欠落がなく、且つ情報種別が「性能情報」の仕様情報が欠落している商品データについて、ロジスティック回帰を用いてによって「性能情報」を推定する。
【００３２】
ＪＡＮコードマッチング処理部３１２は、情報種別が「商品名」の仕様情報、又は情報種別が「商品説明」の仕様情報に少なくとも欠落がなく、且つ情報種別が「ＪＡＮコード」の仕様情報が欠落している商品データについて、形態素解析によって「ＪＡＮコード」を推定する。
【００３３】
商品データ更新部３１４は、上述したＮＮ処理部３０６、ブランドマッチング処理部３０８、ロジスティック回帰処理部３１０、及びＪＡＮコードマッチング処理部３１２の少なくともいずれかによって推定された仕様情報を、補完前取扱商品データベース４０２の対応するレコードに反映させ、補完前取扱商品データベース４０２を更新する。そして、商品データ更新部３１４は、更新した補完前取扱商品データベース４０２を取扱商品データベース２１２として、取扱商品データベース２１２に記憶させ、取扱商品データベース２１２を更新する。
【００３４】
ＮＮ処理部３０６、ブランドマッチング処理部３０８、ロジスティック回帰処理部３１０、及びＪＡＮコードマッチング処理部３１２のうち一部または全部、或いはこれらの組み合わせは、「推定部」の一例である。以下、ＮＮ処理部３０６、ブランドマッチング処理部３０８、ロジスティック回帰処理部３１０、及びＪＡＮコードマッチング処理部３１２の処理の詳細について説明する。
【００３５】
［ＮＮ処理部３０６について］
ＮＮ処理部３０６は、例えば、情報種別が「カテゴリ」の仕様情報が欠落している商品データについて、当該商品データに含まれる商品名と、商品説明とのうち、少なくとも一方をニューラルネットワークに入力することによって、カテゴリを推定する。以降の説明では、ＮＮ処理部３０６が商品データに含まれる商品名、及び商品説明に加えて、商品の画像をカテゴリの推定に用いる場合について説明する。
【００３６】
図８は、ＮＮ処理部３０６により実行される処理の流れの一例を示すフローチャートである。まず、ＮＮ処理部３０６は、欠落商品データリスト４０４のうち、情報種別が「カテゴリ」の仕様情報が欠落している商品データを取得する（Ｓ１００）。
次に、ＮＮ処理部３０６は、取得した商品データのうち、ある商品データについて、当該商品データに含まれる商品名と、商品説明とを形態素解析し、商品名と、商品説明とのそれぞれを、複数の形態素に分割する（Ｓ１０２）。形態素解析は、例えばＭｅＣＡＢなどの形態素解析エンジンを利用して行われる。ＮＮ処理部３０６は、形態素として分割した複数の単語（ワード）、又は語句（フレーズ）のそれぞれをベクトル化する。
【００３７】
ＮＮ処理部３０６は、例えば、ワンホット表現と呼ばれる手法を用いて、単語や語句をベクトル化してもよいし、word2vecやGloVeのような分散表現、又は単語埋め込み表現（Word Embedding(s)）と呼ばれる手法を用いて、単語や語句をベクトル化してもよい。
【００３８】
ワンホット表現とは、予め用意された単語、又は語句のリスト（辞書）と、形態素解析で得られた単語、又は語句とを比較して、形態素解析で得られた単語、又は語句のうち、リストに出現した単語、又は語句の要素値が１、他の単語、又は語句の要素値が０となるような多次元のベクトルを生成する手法である。
【００３９】
また、分散表現は、形態素解析で得られた単語、又は語句と、その単語、又は語句の前後で出現する単語、又は語句との共起性に基づいて、単語や語句をベクトル化する手法であり、例えば、予め用意された複数の単語や語句を含むコーパスに基づいて、形態素解析で得られた単語、又は語句の前後に出現する単語、又は語句の出現確率を求め、その出現確率を要素値とする多次元のベクトルを生成する手法である。
【００４０】
例えば、ＮＮ処理部３０６は、Countinuous Bag-of-WordsおよびSkip-gramの双方の学習モデルを適用したニューラルネットワークに形態素解析で得られた単語、又は語句を入力することで、その単語や語句が分散表現されたベクトルを生成してよい。
【００４１】
ＮＮ処理部３０６は、ベクトル化した単語、又は語句（以下、単語ベクトルと称する）を行ベクトルとした２階テンソルの行列（以下、単語行列と称する）を生成する。例えば、ＮＮ処理部３０６は、形態素解析によってタイトルを１０個の単語に分割した場合、１０個の単語ベクトルの其々を行ベクトルとした単語行列（１０行×ｎ列の行列：ｎは単語ベクトルの次元数）を生成する。
【００４２】
次に、ＮＮ処理部３０６は、分類器情報４０６を参照して、分類器５００を構築（生成）し、ＮＮ処理部３０６が生成した単語行列を、構築した分類器５００に入力する（Ｓ１０４）。
【００４３】
分類器情報４０６は、分類器５００を定義した情報（プログラム、又はデータ構造）である。分類器５００は、例えば、コンボリューショナルニューラルネットワーク（Convolutional Neural Network：ＣＮＮ）や、リカレントネットワーク（Reccurent Neural Network：ＲＮＮ）などの種々のニューラルネットワークによって実現される。
【００４４】
分類器情報４０６には、例えば、各ニューラルネットワークを構成する入力層、一以上の隠れ層（中間層）、出力層の其々に含まれるニューロン（ユニット）が互いにどのように結合されるのかという結合情報や、結合されたニューロン間で入出力されるデータに付与される結合係数などの各種情報が含まれる。結合情報とは、例えば、各層に含まれるニューロン数や、各ニューロンの結合先のニューロンの種類を指定する情報、各ニューロンを実現する活性化関数、隠れ層のニューロン間に設けられたゲートなどの情報を含む。ニューロンを実現する活性化関数は、例えば、正規化線形関数（ＲｅＬＵ関数）であってもよいし、シグモイド関数や、ステップ関数、その他の関数などであってもよい。ゲートは、例えば、活性化関数によって返される値（例えば１、又は０）に応じて、ニューロン間で伝達されるデータを選択的に通過させたり、重み付けたりする。結合係数は、活性化関数のパラメータであり、例えば、ニューラルネットワークの隠れ層において、ある層のニューロンから、より深い層のニューロンにデータが出力される際に、出力データに対して付与される重みを含む。また、結合係数は、各層の固有のバイアス成分などを含んでもよい。
【００４５】
図９は、分類器５００の構成の一例を示す図である。本実施形態における分類器５００は、例えば、第１ＣＮＮ５１０と、第２ＣＮＮ５２０と、第３ＣＮＮ５３０と、ＦＣＮＮ（Fully-Connected Neural Network）２４０と、ＲＮＮ５５０とによって実現される。
【００４６】
第１ＣＮＮ５１０および第２ＣＮＮ５２０は、単語行列が入力されると、次元数が所定数のベクトルを出力するように学習されたコンボリューショナルニューラルネットワークである。
【００４７】
例えば、単語行列を、各要素値が画素値に置き換わった画像とした場合、第１ＣＮＮ５１０および第２ＣＮＮ５２０は、入力された単語行列に相当する画像と所定のフィルタとを畳み込み（内積を求め）、所定のフィルタと重なる複数の画素を含む画像領域を、一つの単位領域に圧縮する。この単位領域には、畳み込みにより得られた単変量値が特徴量として対応付けられている。第１ＣＮＮ５１０および第２ＣＮＮ５２０は、画像上で所定のフィルタをシフト移動させながら畳み込み処理を繰り返し、複数の単位領域により形成されたコンボリューショナルレイヤと呼ばれる畳み込みの特徴量を画素値とした特徴画像を生成する。第１ＣＮＮ５１０および第２ＣＮＮ５２０は、各特徴画像のサイズ（次元数）をプーリング（例えばGlobal Average Pooling）などによって圧縮し、この結果を出力する。圧縮した特徴画像の其々には、単変量の特徴量が対応付けられているため、畳み込み処理の回数分だけ、畳み込みの特徴量を要素としてもつ多次元ベクトル（１階テンソル）が出力される。
【００４８】
第３ＣＮＮ５３０は、画像が入力されると、次元数が所定数のベクトルを出力するように学習されたコンボリューショナルニューラルネットワークである。第３ＣＮＮ５３０は、第１ＣＮＮ５１０および第２ＣＮＮ５２０と同様に、畳み込み処理の回数分の要素をもち、それらの要素が畳み込みの特徴量である多次元ベクトル（１階テンソル）を出力する。
【００４９】
例えば、ＮＮ処理部３０６は、商品タイトルから得られた単語行列を第１ＣＮＮ５１０に入力し、商品概要から得られた単語行列を第２ＣＮＮ５２０に入力し、商品画像を第３ＣＮＮ５３０に入力する。これによって、各ＣＮＮは、入力されたデータを所定の次元数のベクトルに変換してＦＣＮＮ５４０に出力する。
【００５０】
ＦＣＮＮ５４０は、各層のユニットの其々が、より階層の深い次の層のユニットの其々と接続されたニューラルネットワークである。なお、ＦＣＮＮ５４０は、中間層がない入力層のユニットの其々と出力層のユニットの其々とが互いに接続された２つの層であってもよい。例えば、ＦＣＮＮ５４０は、第１ＣＮＮ５１０から出力されたベクトルの次元数が５００、第２ＣＮＮ５２０から出力されたベクトルの次元数が５００、第３ＣＮＮ５３０から出力されたベクトルの次元数が２００である場合、それらの全てのベクトルの次元数の総和である１２００次元の一つのベクトルを出力する。
【００５１】
ＲＮＮ５５０は、例えば、ネットワークの中間層がＬＳＴＭ（Long short-term memory）であるＲＮＮであり、１階テンソルであるベクトルが入力されると、そのベクトルの元になったタイトルや概要、画像に対応する商品の分類先とするカテゴリの確からしさ（尤もらしさ）を表すスコアを階層ごとに出力するように学習されたニューラルネットワークである。例えば、ＬＳＴＭは、重みと状態変数との内積を計算する。式（１）は、ＬＳＴＭのゲートおよびニューロンの計算式を表している。状態変数とは、各ゲートによって求められるベクトルである。
【００５２】
【数１】
2020042403.tif 000003
【００５３】
ｔは、ＲＮＮ５５０によって繰り返し行われる再帰処理の処理周期（処理時刻）を表しており、ｘｔは、処理周期ｔにおいてＦＣＮＮ５４０から入力されるベクトル（以下、入力ベクトル）を表し、ｈｔは、処理周期ｔにおいてＲＮＮ５５０により出力されるベクトル（以下、出力ベクトル）を表している。再帰処理とは、過去の処理周期で求めた出力ベクトルを、今回の処理周期での出力ベクトルの導出に利用することである。
【００５４】
ｉｔは、ＬＳＴＭに含まれるインプットゲートによって出力されるベクトル（以下、インプットゲートベクトル）を表しており、σは、ゲートの活性化関数がシグモイド関数であることを表しており、Ｗｉは、入力ベクトルｘｔを線形変換するための重みを表しており、Ｒｉは、前回の処理周期ｔ−１の出力ベクトルｈｔ−１を線形変換するための重みを表しており、Ｑｉは、メモリーセルに記憶された前回の処理周期ｔ−１の内部演算ベクトルｃｔ−１を線形変換するための重みを表しており、ｂｉは、インプットゲートのバイアス成分を表している。メモリーセルとは、一時的に内部演算ベクトルｃを記憶させておくための記憶領域（ＬＳＴＭブロック）である。
【００５５】
例えば、ＲＮＮ５５０は、重みＷｉと入力ベクトルｘｔとの内積値と、重みＲｉと前回の出力ベクトルｈｔ−１との内積値と、重みＱｉと前回の内部演算ベクトルｃｔ−１とのアダマール積（要素ごとの積）と、バイアス成分ｂｉとの和を変数としたシグモイド関数σを解くことで、処理周期ｔのインプットゲートベクトルｉｔを導出する。
【００５６】
ｆｔは、ＬＳＴＭに含まれるフォーゲットゲートによって出力されるベクトル（以下、フォーゲットゲートベクトル）を表しており、Ｗｆは、重みＷｉと同様に、入力ベクトルｘｔを線形変換するための重みを表しており、Ｒｆは、重みＲｉと同様に、前回の処理周期ｔ−１の出力ベクトルｈｔ−１を線形変換するための重みを表しており、Ｑｆは、重みＱｉと同様に、メモリーセルに記憶された前回の処理周期ｔ−１の内部演算ベクトルｃｔ−１を線形変換するための重みを表しており、ｂｆは、フォーゲットゲートのバイアス成分を表している。
【００５７】
例えば、ＲＮＮ５５０は、重みＷｆと入力ベクトルｘｔとの内積値と、重みＲｆと前回の出力ベクトルｈｔ−１との内積値と、重みＱｆと前回の内部演算ベクトルｃｔ−１とのアダマール積と、バイアス成分ｂｆとの和を変数としたシグモイド関数σを解くことで、処理周期ｔのフォーゲットゲートベクトルｆｔを導出する。
【００５８】
ｃｔは、ＬＳＴＭに含まれるメモリーセルに記憶させる内部演算ベクトルを表している。
【００５９】
例えば、ＲＮＮ５５０は、処理周期ｔのフォーゲットゲートベクトルｆｔおよび後述するベクトルｚｔのアダマール積と、処理周期ｔ−１の内部演算ベクトルｃｔ‐１および処理周期ｔのフォーゲットゲートベクトルｆｔのアダマール積との和を、処理周期ｔの内部演算ベクトルｃｔとして導出する。
【００６０】
ｚｔは、重みＷｚと入力ベクトルｘｔとの内積値と、重みＲｚと前回の出力ベクトルｈｔ−１との内積値と、バイアス成分ｂｚとの和を変数としたハイパポリックタンジェント関数ｔａｎｈを解くことで導出される。Ｗｚは、重みＷｉやＷｆと同様に、入力ベクトルｘｔを線形変換するための重みを表しており、Ｒｆは、重みＲｉやＲｆと同様に、前回の処理周期ｔ−１の出力ベクトルｈｔ−１を線形変換するための重みを表しており、ｂｚは、メモリーセルのバイアス成分を表している。
【００６１】
ｏｔは、ＬＳＴＭに含まれるアウトプットゲートによって出力されるベクトル（以下、アウトプットゲートベクトル）を表しており、Ｗｏは、重みＷｉなどと同様に、入力ベクトルｘｔを線形変換するための重みを表しており、Ｒｏは、重みＲｉなどと同様に、前回の処理周期ｔ−１の出力ベクトルｈｔ−１を線形変換するための重みを表しており、Ｑｏは、メモリーセルに記憶された今回の処理周期ｔの内部演算ベクトルｃｔを線形変換するための重みを表しており、ｂｏは、アウトプットゲートのバイアス成分を表している。
【００６２】
例えば、ＲＮＮ５５０は、重みＷｏと入力ベクトルｘｔとの内積値と、重みＲｏと前回の出力ベクトルｈｔ−１との内積値と、重みＱｏと今回の内部演算ベクトルｃｔとのアダマール積と、バイアス成分ｂｏとの和を変数としたシグモイド関数σを解くことで、処理周期ｔのアウトプットゲートベクトルｏｔを導出する。
【００６３】
ＲＮＮ５５０は、アウトプットゲートベクトルｏｔを導出すると、アウトプットゲートベクトルｏｔと、内部演算ベクトルｃｔを変数としたハイパポリックタンジェント関数ｔａｎｈの解とのアダマール積を、処理周期ｔの出力ベクトルｈｔとして導出する。
【００６４】
出力ベクトルｈｔの各要素値は、階層ごとのカテゴリのスコアを表している。例えば、ｈｔ＝｛ｅ１，ｅ２，ｅ３，…ｅ９，ｅ１０｝であった場合、要素ｅ１は、商品がカテゴリ１であることの確からしさを示すスコア（確率）を表し、要素ｅ２は、商品がカテゴリ２であることの確からしさを示すスコアを表し、要素ｅ３は、商品がカテゴリ３であることの確からしさを示すスコアを表し、以下、同様に、ｅ４〜ｅ１０の各要素が、対応するカテゴリのスコアを表している。ＲＮＮ５５０は、上述した数式に基づく計算を繰り返すことで、出力ベクトルを繰り返し導出する。
【００６５】
図１０は、時間経過に応じたＲＮＮ５５０の処理内容を並列に展開した図である。例えば、ＦＣＮＮ５４０から入力ベクトルｘｔ１が入力された初回の処理周期ｔ１では、ＲＮＮ５５０は、出力ベクトルｈｔ１を出力する。初回の処理周期ｔ１の出力ベクトルｈｔ１は、最も上位階層のカテゴリのスコアを要素として含んでおり、各要素は、例えば、ファッションや食品、家電、インテリア、スポーツ、ヘルスケア、自動車といったような各カテゴリのスコアである。
【００６６】
次の処理周期ｔ２では、ＲＮＮ５５０は、初回の処理周期ｔ１に入力された入力ベクトルｘｔ１と、前回の処理周期ｔ１の出力ベクトルｈｔ１とに基づいて、出力ベクトルｈｔ２を出力する。処理周期ｔ２の出力ベクトルｈｔ２は、２番目の階層のカテゴリのスコアを要素として含んでいる。例えば、最上位階層のカテゴリのスコアのうち、「ファッション」のスコアが最も大きい場合、「ファッション」のスコアが出力ベクトルｈｔ２に最も反映されるため、出力ベクトルｈｔ２の各要素は、コートやジャケット、トップス、ボトムス、レディースシューズ、レディースバッグといったように、「ファッション」というカテゴリの下位階層のカテゴリのスコアとなる。
【００６７】
次の処理周期ｔ３では、ＲＮＮ５５０は、初回の処理周期ｔ１に入力された入力ベクトルｘｔ１と、前回の処理周期ｔ２の出力ベクトルｈｔ２とに基づいて、出力ベクトルｈｔ３を出力する。処理周期ｔ３の出力ベクトルｈｔ３は、３番目の階層のカテゴリのスコアを要素として含んでいる。例えば、２番目の階層のカテゴリのスコアのうち、「レディースシューズ」のスコアが最も大きい場合、「レディースシューズ」のスコアが出力ベクトルｈｔ３に最も反映されるため、出力ベクトルｈｔ３の各要素は、スリッポンやパンプス、スニーカー、モカシン、サンダルといったように、「レディースシューズ」というカテゴリの下位階層のカテゴリのスコアとなる。
【００６８】
このように、ＲＮＮ５５０は、再帰処理を繰り返すことで、より階層が深いカテゴリのスコアを要素とする出力ベクトルを導出する。なお、ＲＮＮ５５０は、最下層のカテゴリのスコアを要素とする出力ベクトルを導出するまで、再帰的に出力ベクトルを導出することを繰り返すものとする。例えば、ＲＮＮ５５０の学習時に、最下層のカテゴリに対して所定の付加的情報（以下、エンドラベルと称する）が付与された商品データが利用された場合、ＲＮＮ５５０は、エンドラベルが付与されたカテゴリのスコアを要素とする出力ベクトルを導出するまで再帰処理を繰り返す。これによって、例えば、「ファッション」のカテゴリの下位のカテゴリに「レディースシューズ」と「レディースバッグ」というカテゴリが存在し、それらのカテゴリから最下層のカテゴリまでに存在する階層数が互いに異なる場合でも、エンドラベルが付与されたカテゴリの階層までの階層数と同じ回数だけ再帰処理を繰り返すため、ＲＮＮ５５０の再帰処理の回数（図１０中のｋ）というハイパーパラメータを調整せずとも、各カテゴリの種類に応じて再帰処理の回数を動的に変更しながらスコアを求めることができる。
【００６９】
図８に戻り、次に、ＮＮ処理部３０６は、分類器５００からカテゴリの推定結果を取得し、その推定結果に基づいて商品のカテゴリを推定する（Ｓ１０６）。カテゴリの推定結果には、ＲＮＮ５５０が再帰処理ごとに出力した出力ベクトルが含まれており、その出力ベクトルには、最上層から最下層までの各階層のカテゴリのスコアの結果が要素として含まれている。ＮＮ処理部３０６は、Ｓ１００において取得されたすべての商品データについて、Ｓ１０２〜Ｓ１０６の処理が行われるまでの間、処理を繰り返し（Ｓ１０８）、処理を終了する。
【００７０】
図１１は、カテゴリの推定結果の一例を示す図である。図示のように、商品ＩＤごとに、各階層のカテゴリが対応付けられた情報が推定結果として取得される。図中Ｃｉｊの「ｉ」は、階層の深さ（最上位の階層から数えて何番目の階層であるのか）を表し、「ｊ」は、各階層のカテゴリの種類を表し、且つ出力ベクトルの各要素のうち最も値が大きい要素に対応したカテゴリを表している。すなわち、種類ｊのカテゴリは、最もスコアが大きく、商品の分類先として最も確からしいカテゴリを表している。
【００７１】
例えば、商品ＩＤが「ｉｔｅｍ＿Ａ」の商品に関する商品データを分類器５００に入力したときに得られた出力ベクトルｈｔが｛ｅ１，ｅ２，ｅ３，…ｅ９，ｅ１０｝であり、要素ｅ１〜ｅ１０の其々が「１」〜「１０」の其々のカテゴリのスコアに対応しているとする。このような場合に、要素ｅ１が最も大きい場合、ＮＮ処理部３０６は、最上位の階層のカテゴリとして「１」というカテゴリが最も確からしいため、その商品の最上位の階層のカテゴリを「１」に決定する。また、２回目の再帰処理の出力ベクトルｈｔ＋１が｛ｅ１，ｅ２，ｅ３，…ｅ９，ｅ１０｝であり、その中で要素ｅ５が最も大きい場合、ＮＮ処理部３０６は、２番目の階層のカテゴリとして「５」というカテゴリが最も確からしいため、その商品の２番目の階層のカテゴリを「５」と推定する。
【００７２】
［ブランドマッチング処理部３０８について］
ブランドマッチング処理部３０８は、例えば、情報種別が「ブランド名」の仕様情報が欠落している商品データについて、当該商品データに含まれる商品名と、商品説明とのうち、少なくとも一方と、ブランド商品辞書情報４０８とに基づいて、マッチング処理を行い、ブランド名を推定する。以降の説明では、ブランドマッチング処理部３０８が、商品データに含まれる商品名、及び商品説明をブランド名の推定に用いる場合について説明する。
【００７３】
図１２は、ブランドマッチング処理部３０８により実行されるの処理の流れの一例を示すフローチャートである。まず、ブランドマッチング処理部３０８は、欠落商品データリスト４０４のうち、情報種別が「ブランド名」の仕様情報が欠落している商品データを取得する（Ｓ２００）。次に、ブランドマッチング処理部３０８は、取得した商品データのうち、ある商品データについて、当該商品データに含まれる商品名と、商品説明とを形態素解析し、商品名と、商品説明とのそれぞれを複数の形態素に分割する（Ｓ２０２）。ブランドマッチング処理部３０８による商品名と商品説明との形態素解析処理は、ＮＮ処理部３０６による商品名と商品説明との形態素解析処理と同様であるため、説明を省略する。次に、ブランドマッチング処理部３０８は、形態素解析で得られた単語、又は語句と、ブランド商品辞書情報４０８に含まれる商品名とが一致、又は合致するか否かを判定する（Ｓ２０４）。
【００７４】
図１３は、ブランド商品辞書情報４０８の内容の一例を示す図である。図１３に示される通り、ブランド商品辞書情報４０８は、ブランド商品辞書を示す情報である。ブランド商品辞書には、ブランド名と、当該ブランド名のブランドの商品の商品名とが互いに対応付けられる。ブランド商品辞書は、例えば、各ブランドによって予め生成されてもよく、販売サイトに予め定められてもよい。なお、ブランド商品辞書には、同一の商品の商品名として複数の商品名（例えば、カタカナや英語等の異なる文字表記）が含まれていてもよい。ブランドマッチング処理部３０８は、形態素解析で得られた単語、又は語句を検索キーにしてブランド商品辞書を検索し、当該単語、又は語句が商品名として対応付けられたブランド名を特定する。
【００７５】
図１２に戻り、ブランドマッチング処理部３０８は、特定したブランド名を、当該商品データのブランド名と推定する（Ｓ２０６）。ブランドマッチング処理部３０８は、Ｓ２００において取得されたすべての商品データについて処理が行われるまでの間、Ｓ２０２〜Ｓ２０６の処理を繰り返し（Ｓ２０８）、処理を終了する。
【００７６】
［ロジスティック回帰処理部３１０について］
ロジスティック回帰処理部３１０は、例えば、情報種別が「性能情報」の仕様情報が欠落している商品データについて、当該商品データに含まれるカテゴリに基づいて、性能情報のセットを特定し、当該商品データに含まれる商品名、又は商品説明に基づくロジスティック回帰を行って、性能情報のセットを補完するように、性能情報を推定する。以降の説明では、ロジスティック回帰処理部３１０が商品データに含まれる商品名、及び商品説明を性能情報の推定に用いる場合について説明する。
【００７７】
ここで、性能情報のセットについて説明する。図１４は、セット情報４１０の内容の一例を示す図である。セット情報４１０は、性能情報のセットを示す情報である。性能情報のセットは、ある商品の性能情報を一以上組み合わせたセットである。性能情報のセットは、カテゴリ毎に組み合わせられる性能情報がそれぞれ異なる。性能情報のセットとして組み合わせられる性能情報は、例えば、予め販売サイトによって規定される。図１４において、セット情報４１０には、最上位階層のカテゴリと、当該カテゴリに対応する性能情報とが互いに対応付けられた、最上位階層のカテゴリ毎の性能情報のセットが含まれる。性能情報のセットに含まれる性能情報は、例えば、２値によって選択可能な情報である。例えば、図１４において、最上位階層のカテゴリである「時計」には、「時計」の性能を示す際に用いられる性能情報のセットとして、「ＧＰＳ（Global Positioning System）機能  有／無」、「動力  （電池／自動巻き）」、及び「防水機能  有／無」の性能情報が組み合わせられる。
【００７８】
なお、２値によって選択することが困難な性能情報（カテゴリが「時計」であれば、例えば、色、寿命、素材等）については、選択肢のそれぞれを性能情報としてもよい。選択肢のそれぞれを性能情報とする場合、色の性能情報でれば、例えば、「茶  正／否」、「黒  正／否」、或いは「ゴールド  正／否」等である。以降の説明において、性能情報の２値の情報（例えば、有無、電池／自動巻き等）を、正否とも記載する。
【００７９】
以下、ロジスティック回帰モデルを用いた性能情報の推定処理について説明し、次にロジスティック回帰モデルの学習（生成）方法について説明する。本実施形態では、ロジスティック回帰処理部３１０が教師データに基づいてジスティック回帰モデルを学習する処理を行う場合について説明する。
【００８０】
図１５は、ロジスティック回帰処理部３１０により実行される性能情報の推定処理の流れの一例を示すフローチャートである。まず、ロジスティック回帰処理部３１０は、欠落商品データリスト４０４のうち、情報種別が「性能情報」の仕様情報が欠落している商品データを取得する（Ｓ３００）。次に、ロジスティック回帰処理部３１０は、取得した商品データのうち、ある商品データ（以下、対象商品データ）について、当該商品データに含まれるカテゴリに基づいて、性能情報のセットを特定する。（Ｓ３０２）。次に、ロジスティック回帰処理部３１０は、対象商品データに含まれる商品名と、商品説明とのそれぞれを、複数の形態素に分割する（Ｓ３０４）。ロジスティック回帰処理部３１０による商品名と商品説明との形態素解析処理は、ＮＮ処理部３０６、及びブランドマッチング処理部３０８による商品名と商品説明との形態素解析処理と同様であるため、説明を省略する。
【００８１】
次に、ロジスティック回帰処理部３１０は、Ｓ３０２において特定された性能情報のセットのうち、推定対象の性能情報（以下、対象性能情報）の第１ロジスティック回帰モデルに、Ｓ３０４の形態素解析によって得た単語、又は語句を入力し、出力として性能情報が正である確率（以下、正側目的変数ｙ１）を取得する（Ｓ３０６）。第１ロジスティック回帰モデルは、性能情報のセットが正であることを推定する際に用いられるロジスティック回帰モデルである。次に、ロジスティック回帰処理部３１０は、第２ロジスティック回帰モデルに、Ｓ３０４の形態素解析によって得た単語、又は語句を入力し、出力として性能情報が否である確率（以下、否側目的変数ｙ２）を取得する（Ｓ３０８）。第２ロジスティック回帰モデルは、性能情報が否であることを推定する際に用いられるロジスティック回帰モデルである。各性能情報に対応する第１ロジスティック回帰モデル、及び第２ロジスティック回帰モデルは、後述するロジスティック回帰処理部３１０の処理によって学習され、記憶部４００に記憶される。以降の説明において、正側目的変数ｙ１、及び否側目的変数ｙ２を互いに区別しない場合には、総称して目的変数ｙと記載する。目的変数ｙの導出方法は、式（２）によって示される。
【００８２】
【数２】
2020042403.tif 000004
【００８３】
式（２）において、ｅは、自然対数の底である。回帰係数｛α１、α２、…αｉ｝は、性能情報毎に値が異なり、ロジスティック回帰モデルの学習によって値が定められる。説明変数｛β１、β２、…βｉ｝は、目的変数ｙに影響を及ぼす変数であり、説明変数｛β１、β２、…βｉ｝の各要素には、形態素解析によって得た単語、又は語句が対応する。例えば、説明変数の要素β１が、「衛星」という単語に対応する場合、Ｓ３０４の形態素解析によって得た単語、又は語句に「衛星」が含まれる場合、要素β１は「１」の値をとり、含まれない場合、要素β１は「０」の値をとる。
【００８４】
次に、ロジスティック回帰処理部３１０は、取得した正側目的変数ｙ１と、否側目的変数ｙ２とに基づいて、性能情報を推定する（Ｓ３１０）。例えば、ロジスティック回帰処理部３１０は、正側目的変数ｙ１が第１閾値より大きく、且つ否側目的変数ｙ２が、第２閾値未満である場合に、対象性能情報が正であると推定し、正側目的変数ｙ１が第３閾値未満であり、且つ否側目的変数ｙ２が第４閾値閾値より大きい場合に、対象性能情報が否であると推定する。各閾値は、第１閾値＞第２閾値、第３閾値＜第４閾値の関係である。第１閾値及び第３閾値と、第２閾値及び第４閾値とは、それぞれ同じ値であってもよく、異なる値であってもよい。
【００８５】
ロジスティック回帰処理部３１０は、Ｓ３０２において特定された性能情報のセットのうち、すべての性能情報について処理が行われるまでの間、Ｓ３０４〜Ｓ３１０の処理を繰り返し（Ｓ３１２）、Ｓ３００において取得されたすべての商品データについて処理が行われるまでの間、Ｓ３０２〜Ｓ３１２の処理を繰り返し（Ｓ３１４）、処理を終了する。
【００８６】
図１６は、ロジスティック回帰処理部３１０により実行されるロジスティック回帰モデルの学習処理の流れの一例を示すフローチャートである。まず、ロジスティック回帰処理部３１０は、ロジスティック回帰モデルの学習対象の性能情報を決定する（Ｓ４００）。次に、ロジスティック回帰処理部３１０は、決定した性能情報（以下、学習性能情報）が性能情報のセットに含まれる商品データであり、且つ当該学習性能情報と、商品名、又は商品説明とが欠落していない商品データを抽出する（Ｓ４０２）。次に、ロジスティック回帰処理部３１０は、抽出した商品データのうち、ある商品データについて、当該商品データに含まれる商品名と、商品説明とを形態素解析し、商品名と、商品説明とのそれぞれを複数の形態素に分割する（Ｓ４０４）。Ｓ４０４の処理において、ロジスティック回帰処理部３１０は、形態素解析で得られた単語、又は語句のうち、重複する単語、又は語句をフィルタリングする。したがって、ロジスティック回帰処理部３１０の形態素解析で得られた単語、又は語句には、重複する単語、又は語句が存在しないものとする。ロジスティック回帰処理部３１０は、Ｓ４０２において抽出されたすべての商品データについてＳ４０４の処理を繰り返す（Ｓ４０６）。
【００８７】
次に、ロジスティック回帰処理部３１０は、形態素解析で得られた単語、又は語句に基づいて、ロジスティック回帰モデルの教師データ４１２を生成する（Ｓ４０８）。図１７は、ロジスティック回帰モデルの学習に用いられる教師データ４１２の内容の一例を示す図である。図１７に示される教師データ４１２は、学習対象性能情報が「ＧＰＳ機能  有／無」を推定する際に用いられるロジスティック回帰モデルを学習するためのデータである。図１７において、教師データ４１２は、商品ＩＤと、説明変数｛β１、β２、…βｉ｝とが互いに対応付けられたレコードを、一以上含むデータである。ロジスティック回帰処理部３１０は、例えば、教師データ４１２を生成し、記憶部４００に記憶させる。
【００８８】
図１７において、補完前取扱商品データベース４０２には、性能情報として「ＧＰＳ機能  有／無」が含まれる商品データとして、商品ＩＤが「ｉｔｅｍ＿Ｖ」〜「ｉｔｅｍ＿Ｚ」の５つの商品の商品データが含まれており、ロジスティック回帰処理部３１０は、Ｓ４００において当該５つの商品の商品データを抽出する。「ｉｔｅｍ＿Ｖ」〜「ｉｔｅｍ＿Ｚ」の商品の中で、「ｉｔｅｍ＿Ｖ」〜「ｉｔｅｍ＿Ｘ」の商品が、「ＧＰＳ機能  有」の商品であり、「ｉｔｅｍ＿Ｙ」〜「ｉｔｅｍ＿Ｚ」の商品が、「ＧＰＳ機能  無」の商品である。
【００８９】
説明変数｛β１、β２、…βｉ｝の各要素は、形態素解析で得られた単語、又は語句にそれぞれ対応する。なお、図中ｉは、ステップＳ３０４の形態素解析で得られた単語、又は語句の数（ただし、重複する単語、又は語句を除く）である。図１６において、説明変数の要素β１は、「衛星」という単語に対応し、要素β２は、「ソーラー」という単語に対応し、要素βｉは、「長時間」という単語に対応する。
【００９０】
ロジスティック回帰処理部３１０は、各商品データを形態素解析で得られた単語、又は語句に基づいて、各商品ＩＤに対応する説明変数｛β１、β２、…βｉ｝の各要素に値を付す。ロジスティック回帰処理部３１０は、例えば、形態素解析で得られた単語、又は語句に、説明変数｛β１、β２、…βｉ｝のある要素に対応する単語、又は語句が含まれる場合、当該要素の値として「１」を付し、含まれない場合、当該要素の値として「０」を付す。
【００９１】
図１６に戻り、ロジスティック回帰処理部３１０は、生成した教師データ４１２に基づいて、第１ロジスティック回帰モデルの回帰係数｛α１、α２、…αｍ｝と、及び第２ロジスティック回帰モデルの回帰係数｛α１、α２、…αｍ｝とをそれぞれ学習する（Ｓ４１０）。ロジスティック回帰処理部３１０は、上述した式（２）の説明変数｛β１、β２、…βｉ｝として、Ｓ４０８において生成した教師データ４１２のレコードを代入し、且つ目的変数ｙに当該レコードの性能情報の正否（つまり、「１」又は「０」）を代入することによって、回帰係数｛α１、α２、…αｍ｝を導出する。そして、ロジスティック回帰処理部３１０は、導出された複数の回帰係数｛α１、α２、…αｍ｝を最小二乗法や、最尤推定によって推定することにより、ロジスティック回帰モデルを学習する。ロジスティック回帰処理部３１０は、すべての性能情報について、Ｓ４００〜Ｓ４１０の処理が行われるまでの間、処理を繰り返し（Ｓ４１２）、学習したロジスティック回帰モデルを４００に記憶させ、処理を終了する。
【００９２】
［ＪＡＮコードマッチング処理部３１２について］
ＪＡＮコードマッチング処理部３１２は、例えば、情報種別が「ＪＡＮコード」の仕様情報が欠落している商品データについて、当該商品データに含まれる商品名と、商品説明とのうち、少なくとも一方と、ＪＡＮコード辞書情報４１４とに基づいて、マッチング処理を行い、ＪＡＮコードを推定する。以降の説明では、ＪＡＮコードマッチング処理部３１２が、商品データに含まれる商品名、及び商品説明をＪＡＮコードの推定に用いる場合について説明する。
【００９３】
図１８は、ＪＡＮコードマッチング処理部３１２により実行される処理の流れの一例を示すフローチャートである。まず、ＪＡＮコードマッチング処理部３１２は、欠落商品データリスト４０４のうち、情報種別が「ＪＡＮコード」の仕様情報が欠落している商品データを取得する（Ｓ５００）。次に、ＪＡＮコードマッチング処理部３１２は、取得した商品データのうち、ある商品データについて、当該商品データに含まれる商品名と、商品説明とを形態素解析し、商品名と、商品説明とのそれぞれを複数の形態素に分割する（Ｓ５０２）。ＪＡＮコードマッチング処理部３１２による商品名と商品説明との形態素解析処理は、ＮＮ処理部３０６、ブランドマッチング処理部３０８、及びロジスティック回帰処理部３１０による商品名と商品説明との形態素解析処理と同様であるため、説明を省略する。次に、ＪＡＮコードマッチング処理部３１２は、形態素解析で得られた単語、又は語句と、ＪＡＮコード辞書に含まれる商品名とが一致、又は合致するか否かを判定する（Ｓ５０４）。
【００９４】
図１９は、ＪＡＮコード辞書情報４１４の内容の一例を示す図である。図１９に示される通り、ＪＡＮコード辞書情報４１４は、ＪＡＮコード辞書を示す情報である。ＪＡＮコード辞書には、ＪＡＮコードと、当該ＪＡＮコードのブランドの商品の商品名とが互いに対応付けられる。なお、ＪＡＮコードには、同一の商品の商品名として複数の商品名（例えば、カタカナや英語等の異なる文字表記）が含まれていてもよい。ＪＡＮコードマッチング処理部３１２は、形態素解析で得られた単語、又は語句を検索キーにしてＪＡＮコード辞書を検索し、当該単語、又は語句が商品名として対応付けられたＪＡＮコードを特定する。
【００９５】
ＪＡＮコードマッチング処理部３１２は、例えば、補完前取扱商品データベース４０２のうち、ＪＡＮコードが欠落していない商品データに含まれる商品名や商品説明に基づいて、予めＪＡＮコード辞書を生成してもよい。また、ＪＡＮコード辞書は、ＪＡＮコードを申請する企業(例えば、商品の製造者や販売者)から提供されるものであってもよい。
【００９６】
図１８に戻り、ロジスティック回帰処理部３１０は、特定したＪＡＮコードを、当該商品のＪＡＮコードと推定する（Ｓ５０６）。ＪＡＮコードマッチング処理部３１２は、Ｓ５００において取得されたすべての商品データについて処理が行われるまでの間、Ｓ５０２〜Ｓ５０８の処理を繰り返し（Ｓ５０８）、処理を終了する。
【００９７】
なお、上述では、ＪＡＮコードマッチング処理部３１２が商品名、及び商品説明を形態素解析する場合について説明したが、これに限られない。ＪＡＮコードマッチング処理部３１２は、商品名、及び商品名に形態素解析とは異なる処理を行い、商品名に対応する単語、又は語句を取得してもよい。図２０は、商品名のテキストの一例を示す図である。図２０に示される通り、販売サイトでは、一般的に、商品名や商品説明として、商品に関するテキストがスペース区切りによって入力される。ＪＡＮコードマッチング処理部３１２は、商品名、及び商品説明の、スペースによって区切られる１つのブロックを、単語、及び語句として取得してもよい。なお、この場合、ＪＡＮコードマッチング処理部３１２は、商品そのものの特徴に関するテキスト以外のテキスト（例えば、「明日着」や「１０％ＯＦＦ」等）をフィルタリングしてもよい。
【００９８】
［実施形態のまとめ］
以上説明したように、本実施形態のショッピングサイト提供部２００は、複数の情報種別の仕様情報が規定されている商品データについて、一以上の情報種別（この一例では、商品名、商品説明、商品の画像、商品のカテゴリ、商品のブランド名、性能情報、及びＪＡＮコード）の仕様情報から、他の情報種別の仕様情報を推定する際に、推定対象の情報種別に対応した推定手段（この一例では、ニューラルネットワーク、マッチング処理、ロジスティック回帰、及び形態素解析）に対応した推定手段により推定を行うことにより、商品データの仕様情報をより広範に補完することができ、その結果、商品の検索精度を向上させることができる。
【００９９】
［変形例］
以下、上述した実施形態の変形例について説明する。実施形態では、商品データのうち、欠落している仕様情報を推定し、補完する場合について説明した。変形例では、販売者が、販売サイトに商品を入稿する際に、仕様情報が誤っている場合には、仕様情報の変更を促す場合について説明する。なお、上述した実施形態と同様の構成については、同一の符号を付し、説明を省略する。
【０１００】
図２１は、販売サイトに商品を登録する際の商品登録画面の一例を示す図である。図示のような商品登録画面は、販売者端末装置１０ｂの表示装置に表示される。以下、販売者が入力する仕様情報が、「カテゴリ」である場合を一例に説明する。例えば、販売者が、商品登録画面に対して販売対象の商品のカテゴリを入力した場合、入稿管理装置３０は、入力されたカテゴリを表すテキスト（テキスト）をショッピングサーバ２０に送信する。この際、入稿管理装置３０は、商品登録画面を介して、商品の画像や、商品の概要を表すテキスト、商品のタイトルを表すテキストのうち一部または全部がカテゴリの入力以前に既に登録（アップロード）されている場合、カテゴリを表すテキストと共に、これ（これら）の情報を商品データとしてショッピングサーバ２０に送信する。
【０１０１】
ショッピングサーバ２０は、入稿管理装置３０から商品データを受信すると、ＮＮ処理部３０６は、分類器５００に商品のカテゴリを分類させ、その分類結果を入稿管理装置３０に返す。入稿管理装置３０は、分類器５００によるカテゴリの分類結果を受信すると、入力されたカテゴリと、分類器５００により分類されたカテゴリとが異なるか否かを判定し、カテゴリが異なる場合、販売者にカテゴリを変更するように促すため、図中Ｒ１に示すように、販売者が入力したカテゴリが間違っていることを示す文字や画像と共に、正しいと推定されるカテゴリの候補を商品登録画面に表示させる。例えば、入稿管理装置３０は、カテゴリの分類結果に含まれるカテゴリのスコアに基づいて、スコアの高い順にカテゴリの候補を商品登録画面に表示させる。図示の例では、商品登録画面に、「アイスクリーム」というカテゴリが入力されており、これに対して、「レディースシューズ」、「メンズシューズ」、「レディースバッグ」、「レディースアクセサリー」、「財布、ファッション小物」という同じ階層に属するカテゴリの候補と共に、それらのカテゴリの候補の其々のスコアが正解確率として提示されている。このように、商品登録画面において分類器５００によって分類されたカテゴリをスコア（正解確率）と共に表示することで、カテゴリの入力時点で販売者にカテゴリを変更させるように促すことができる。
【０１０２】
また、販売サイトにおいて販売者が商品にカテゴリを設定するタイミングで、その商品のカテゴリの設定間違いを検出することに加えて、或いは代えて、販売者が商品にカテゴリを設定するよりも前に、その商品のカテゴリを提示（サジェスト）してもよい。
【０１０３】
図２２は、販売サイトに商品を登録する際の商品登録画面の他の例を示す図である。例えば、商品登録画面において、販売者が商品のカテゴリを入力するよりも前に、商品の画像や、商品の概要を表すテキスト、商品のタイトルを表すテキストのうち一部または全部を既に入力している場合、入稿管理装置３０は、商品の画像や、商品の概要、商品のタイトルを含む商品データをショッピングサーバ２０に送信する。
【０１０４】
ショッピングサーバ２０は、入稿管理装置３０から商品データを受信すると、分類器５００に商品のカテゴリを分類させ、その分類結果を入稿管理装置３０に返す。入稿管理装置３０は、分類器５００によるカテゴリの分類結果を受信すると、その分類結果に含まれる商品のカテゴリを、商品登録画面の商品カテゴリの入力欄に表示させる。この際、ショッピングサーバ２０は、図中Ｒ２に示すように、分類器５００を用いて商品のタイトルを自動的に決定したことを表す文字や画像を商品登録画面に表示させてよい。このように、販売者がカテゴリを入力するよりも前に、その商品の商品データからカテゴリを予測し、その予測結果であるカテゴリをサジェストすることで、販売サイトに商品を登録する際の利便性を向上させることができる。
【０１０５】
以上、本発明を実施するための形態について実施形態を用いて説明したが、本発明はこうした実施形態に何ら限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【符号の説明】
【０１０６】
１…情報処理システム、１０…端末装置、１０ａ…購買者端末装置、１０ｂ…販売者端末装置、２０…ショッピングサーバ、３０…入稿管理装置、２００…ショッピングサイト提供部、２０２…販売管理部、２１０…記憶部、２１２…取扱商品データベース、３００…商品データ処理部、３０２…取得部、３０４…欠落商品データ抽出部、３０６…ＮＮ処理部、３０８…ブランドマッチング処理部、３１０…ロジスティック回帰処理部、３１２…コードマッチング処理部、３１４…商品データ更新部、４００…記憶部、４０２…補完前取扱商品データベース、４０４…欠落商品データリスト、４０６…分類器情報、４０８…ブランド商品辞書情報、４１０…セット情報、４１２…教師データ、４１４…コード辞書情報、５００…分類器
【図１】
2020042403.tif 000005
【図２】
2020042403.tif 000006
【図３】
2020042403.tif 000007
【図４】
2020042403.tif 000008
【図５】
2020042403.tif 000009
【図６】
2020042403.tif 000010
【図７】
2020042403.tif 000011
【図８】
2020042403.tif 000012
【図９】
2020042403.tif 000013
【図１０】
2020042403.tif 000014
【図１１】
2020042403.tif 000015
【図１２】
2020042403.tif 000016
【図１３】
2020042403.tif 000017
【図１４】
2020042403.tif 000018
【図１５】
2020042403.tif 000019
【図１６】
2020042403.tif 000020
【図１７】
2020042403.tif 000021
【図１８】
2020042403.tif 000022
【図１９】
2020042403.tif 000023
【図２０】
2020042403.tif 000024
【図２１】
2020042403.tif 000025
【図２２】
2020042403.tif 000026