(57)【特許請求の範囲】
【請求項１】
コンピュータで実現される方法であって、
複数の因子で表現されるデータを入力とし、第１モデルに基づいて、前記データを構成する因子それぞれに対して前記因子に該当する単語のシーケンス学習によって前記因子のシーケンス情報が含まれたワードベクトルを表現する段階、
前記第１モデルの出力を入力とし、第２モデルに基づいて、前記因子のシーケンス情報が含まれたワードベクトルを利用して前記データのカテゴリ分類のためのカテゴリ別の点数を算出する段階、および
前記カテゴリ別の点数を利用して前記データに対する少なくても１つのカテゴリを決定する段階
を含むことを特徴とする、コンピュータで実現される方法。
【請求項２】
前記データのカテゴリを分類するための学習モデルとして、前記第１モデルであるＲＮＮモデルと前記第２モデルであるＦＦＮＮモデルが１つのモデルとして併合されたＲＮＮ−ＦＦＮＮモデルを利用することを特徴とする、請求項１に記載のコンピュータで実現される方法。
【請求項３】
前記ＲＮＮ−ＦＦＮＮモデルは、前記ＦＦＮＮモデルにおけるカテゴリ分類エラー情報が前記ＲＮＮモデルに伝達され、前記ＲＮＮモデルでの学習に利用されること
を特徴とする、請求項２に記載のコンピュータで実現される方法。
【請求項４】
前記因子のシーケンス情報が含まれたワードベクトルを表現する段階は、
前記データを構成する因子別に、各因子に該当する単語の順次的データを学習するための個別ＲＮＮを割り当てること
を特徴とする、請求項２に記載のコンピュータで実現される方法。
【請求項５】
前記因子のシーケンス情報が含まれたワードベクトルを表現する段階は、
前記第１モデルで前記データを構成する因子それぞれに対し、前記因子のシーケンス情報を表現した多次元実数ベクトルを出力すること
を特徴とする、請求項１に記載のコンピュータで実現される方法。
【請求項６】
前記因子のシーケンス情報が含まれたワードベクトルを表現する段階は、
前記データを構成する因子別に、各因子に該当する単語の順次的データを学習するための個別ＲＮＮを割り当てる段階、および
前記因子別に割り当てられた個別ＲＮＮで単語の順次入力が完了すると、前記順次入力された単語を実数ベクトルで表現して１つのベクトルとして接合する段階
を含むことを特徴とする、請求項１に記載のコンピュータで実現される方法。
【請求項７】
言語前処理器を利用して前記データに含まれた一部のテキスト情報をフィルタリングする段階
をさらに含むことを特徴とする、請求項１に記載のコンピュータで実現される方法。
【請求項８】
前記データのカテゴリ分類のためのカテゴリ別の点数を算出する段階は、
前記データと関連するカテゴリ集合に対し、前記ワードベクトルと対応するカテゴリ確率を計算すること
を特徴とする、請求項１に記載のコンピュータで実現される方法。
【請求項９】
前記ＦＦＮＮモデルにおいて、前記データの実際のカテゴリを示すベクトル値と前記ワードベクトルと対応するカテゴリを示すベクトル値との差を前記カテゴリ分類エラー情報として前記ＲＮＮモデルに伝達すること
を特徴とする、請求項３に記載のコンピュータで実現される方法。
【請求項１０】
請求項１〜９のうちのいずれか一項に記載の方法をコンピュータに実行させるコンピュータプログラム。
【請求項１１】
１つ以上のプロセッサを含むサーバのシステムであって、
前記１つ以上のプロセッサは、
複数の因子で表現されるデータのカテゴリを分類するための学習モデルを提供する学習処理部、および
前記学習モデルの学習結果に基づいて前記データのカテゴリを分類するカテゴリ分類部
を備え、
前記学習処理部は、
前記データを入力とし、第１モデルに基づいて、前記データを構成する因子それぞれに対して前記因子に該当する単語のシーケンス学習によって前記因子のシーケンス情報が含まれたワードベクトルを表現し、前記第１モデルの出力を入力とし、第２モデルに基づいて、前記因子のシーケンス情報が含まれたワードベクトルを利用して前記データのカテゴリ分類のためのカテゴリ別の点数を算出し、
前記カテゴリ分類部は、
前記カテゴリ別の点数を利用して前記データに対する少なくても１つのカテゴリを決定すること
を特徴とする、システム。
【請求項１２】
前記学習処理部は、
前記データのカテゴリを分類するための学習モデルとして、前記第１モデルであるＲＮＮモデルと前記第２モデルであるＦＦＮＮモデルが１つのモデルとして併合されたＲＮＮ−ＦＦＮＮモデルを利用することを特徴とする、請求項１１に記載のシステム。
【請求項１３】
前記ＲＮＮ−ＦＦＮＮモデルは、前記ＦＦＮＮモデルにおけるカテゴリ分類エラー情報が前記ＲＮＮモデルに伝達され、前記ＲＮＮモデルにおける学習に利用されること
を特徴とする、請求項１２に記載のシステム。
【請求項１４】
前記学習処理部は、
前記データを構成する因子別に、各因子に該当する単語の順次的データを学習するための個別のＲＮＮを割り当てること
を特徴とする、請求項１２に記載のシステム。
【請求項１５】
前記学習処理部は、
前記第１モデルで前記データを構成する因子それぞれに対し、前記因子のシーケンス情報を表現した多次元実数ベクトルを出力すること
を特徴とする、請求項１１に記載のシステム。
【請求項１６】
前記学習処理部は、
前記データを構成する因子別に、各因子に該当する単語の順次的データを学習するための個別のＲＮＮを割り当てた後、
前記因子別に割り当てられた個別のＲＮＮで単語の順次入力が完了すると、前記順次入力された単語を実数ベクトルで表現して１つのベクトルとして接合すること
を特徴とする、請求項１２に記載のシステム。
【請求項１７】
前記１つ以上のプロセッサは、
言語前処理器によって前記データに含まれた一部のテキスト情報をフィルタリングする前処理部
をさらに備えることを特徴とする、請求項１１に記載のシステム。
【請求項１８】
前記学習処理部は、
前記データと関連するカテゴリ集合に対し、前記ワードベクトルと対応するカテゴリ確率を計算すること
を特徴とする、請求項１１に記載のシステム。
【請求項１９】
前記学習処理部は、
前記ＦＦＮＮモデルにおいて、前記データの実際のカテゴリを示すベクトル値と前記ワードベクトルと対応するカテゴリを示すベクトル値との差を前記カテゴリ分類エラー情報として前記ＲＮＮモデルに伝達すること
を特徴とする、請求項１３に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
以下の説明は、データがテキスト単語あるいは記号のシーケンスを値として有する少なくとも１つ以上の因子で構成されるとき、該当データを自動で分類するディープラーニングモデルおよび学習アルゴリズム技術に関する。
【背景技術】
【０００２】
インターネット使用の大衆化に伴い、インターネットショッピングモールを利用した商品および財貨サービスの流通販売が活発化しているなか、最近ではスマートフォンなどを利用したモバイルビジネスの機会が拡大しており、モバイルショッピング市場も急激に増加している。
【０００３】
これに伴い、インターネットショッピングモールの数は幾何級数的に増加している。そんな中、各インターネットショッピングモールでは、ユーザのアクセス容易性を高めるために、モールインモール（ｍａｌｌ  ｉｎ  ｍａｌｌ）方式でインターネットショッピングモールを運営する方式を採択している。ここで、モールインモール方式とは、所定の仲介ショッピングモールを介してユーザが各インターネットショッピングモールにアクセスできるようにする方式を意味する。
【０００４】
一般的に、仲介ショッピングモールのようなショッピングサービスを運営するショッピングシステムでは、購入者が所望とする商品情報を検索するようになっていることから、サイトで販売される商品情報を購入者が容易に見つけ出せるように検索環境を提供している。
【０００５】
ショッピングシステムでは、商品情報を多様なカテゴリに分類して格納しておき、カテゴリに基づく検索によって所望の情報を検索できるようにしている。商品のカテゴリを自動的に分類する技術は、サービス側面においては極めて重要な技術であり、現在は大部分のショッピングシステムで商品カテゴリに対する自動分類システムを構築して運営している。
【０００６】
例えば、韓国特許公開公報第１０−２００４−００２１７８９号（公開日２００４年０３月１１日）「商品情報登録方法およびシステム」では、複数のショッピングモールから受信した商品情報を、商品情報提供サーバに登録された商品との比較およびマッチング作業によって適切な商品名とカテゴリで自動登録する技術が開示されている。
【０００７】
しかし、時間が経つにつれて登録商品や取扱商品の数が幾何級数的に増加することから、現在使用されている自動分類システムの性能が適切に追従できず、カテゴリ分類の正確度を保障することができなくなっている。
【０００８】
ディープラーニング（Ｄｅｅｐ  ｌｅａｒｎｉｎｇ）は、イメージ、音声認識、パターン認識などのような多様な分類問題において、Ｓｕｐｐｏｒｔ  ｖｅｃｔｏｒ  ｍａｃｈｉｎｅ（ＳＶＭ）、Ｂａｙｅｓｉａｎ  ｎｅｔｗｏｒｋ（ＢＮ）、ｄｅｃｉｓｉｏｎ  ｔｒｅｅ（ＤＴ）、ｋ−ｔｈ  ｎｅａｒｅｓｔ  ｎｅｉｇｈｂｏｒ（ｋＮＮ）などのような既存の分類モデルに比べて高い正確度を示しており、特に、テキストシーケンス形態で表現されるデータを分類する問題では、Ｃｏｎｖｏｌｕｔｉｏｎａｌ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ（ＣＮＮ）、Ｒｅｃｕｒｓｉｖｅ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ、ｒｅｃｕｒｒｅｎｔ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ（ＲＮＮ）などは、既存のＴＦ／ＩＤＦに基づくＢａｇ  ｏｆ  ｗｏｒｄｓやｎ−ｇｒａｍに基づくモデルに比べて優れた性能を示している。しかし、テキストシーケンスが長くなるほど性能が低下するケースが発生しており、データが複数の因子変数で構成され且つ各因子変数のテキスト単語のシーケンスで表現される場合において、これを１つの単語シーケンスとして接合してモデルに入力する場合、意味の模倣性又は類似性およびシーケンス長さの増加によって分類性能が低下する恐れがある。例えば、オンラインショッピングモールの商品情報データは、商品名、ショッピングモール名、商品カテゴリ層情報、ブランド名、製造社名などのような多様なテキスト情報で表現されるが、これを１つの単語シーケンスとして接合させると、その意味が曖昧になる虞がある。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】韓国公開特許第１０−２００４−００２１７８９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
ベイジアンネットワーク（Ｂａｙｅｓｉａｎ  ｎｅｔｗｏｒｋ）あるいはデシジョンツリー（又は決定木）（ｄｅｃｉｓｉｏｎ  ｔｒｅｅ）方式を利用した既存の商品カテゴリ自動分類器の性能限界を克服するために、ディープラーニング技法を利用した新しい方式の商品カテゴリ自動分類器を提供する。
【００１１】
複数の因子で表現されるデータを１つの単語／記号シーケンスとして接合させた後に学習する既存のディープラーニングモデルの限界を克服するために、本発明では、データを構成する各因子別にＲＮＮを割り当て、分類のために複数のＲＮＮの出力値を入力値として使用するＦＦＮＮを用いた新たな形態のディープラーニングモデルに基づく自動分類器を提供する。
【課題を解決するための手段】
【００１２】
コンピュータで実現される方法であって、複数の因子で表現されるデータを入力とし、第１モデルで前記データを構成する因子それぞれに対して前記因子に該当する単語のシーケンス学習によって前記因子のシーケンス情報が含まれたワードベクトルを表現する段階、前記第１モデルの出力を入力とし、第２モデルで前記因子のシーケンス情報が含まれたワードベクトルを利用して前記データのカテゴリ分類のためのカテゴリ別の点数を算出する段階、および前記カテゴリ別の点数を利用して前記データに対する少なくても１つのカテゴリを決定する段階を含むことを特徴とする、コンピュータで実現される方法を提供する。
【００１３】
１つ以上のプロセッサを含むサーバのシステムであって、前記１つ以上のプロセッサは、複数の因子で表現されるデータのカテゴリを分類するための学習モデルを提供する学習処理部、および前記学習モデルの学習結果に基づいて前記データのカテゴリを分類するカテゴリ分類部を備え、前記学習処理部は、前記データを入力とし、第１モデルで前記データを構成する因子それぞれに対して前記因子に該当する単語のシーケンス学習によって前記因子のシーケンス情報が含まれたワードベクトルを表現し、前記第１モデルの出力を入力とし、第２モデルで前記因子のシーケンス情報が含まれたワードベクトルを利用して前記データのカテゴリ分類のためのカテゴリ別に点数を算出し、前記カテゴリ分類部は、前記カテゴリ別の点数を利用して前記データに対する少なくても１つのカテゴリを決定することを特徴とする、システムを提供する。
【発明の効果】
【００１４】
ベイジアンネットワークあるいは決定木方式を利用した既存の商品カテゴリ自動分類器の性能限界を克服するために、ディープラーニング技法を利用した新たな方式の商品カテゴリ自動分類器を提供する。これにより、商品カテゴリに対する自動分類性能が向上し、カテゴリ分類のために発生する費用を減少させることができる上に、カテゴリ分類の正確度を高めることができ、商品を登録する販売者と商品を検索あるいは購入する購入者の両方の満足度を高めることができる。
【００１５】
既存の単一ＲＮＮあるいはＣＮＮを用いたディープラーニングモデルが、単語あるいは記号のシーケンスが長くなったりデータが複数の因子で構成されたりすると性能が低下するといった限界を克服するために、複数のＲＮＮおよびＦＦＮＮを結合させた新たな形態のテキスト／記号シーケンスデータ自動分類器、およびこれを学習するための学習アルゴリズムを提供する。したがって、向上した自動分類モデルを多様なドメイン問題に適用することでサービス品質の向上を期待することができる。例えば、商品メタデータから詳細カテゴリを自動分類する問題に適用することにより、分類正確度が向上し、商品を登録した販売者と商品を検索あるいは購入する購入者の両方の満足度を高めることができる上に、オンラインニュースの詳細セクションの自動分類によってオンラインニュース独自の満足度を高めることができる。さらに、映画、ニュース、ブログ、商品などに対するユーザコメントの肯定／否定分類に適用することで、コンテンツ推薦の正確度向上にも活用することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の一実施形態における、ネットワーク環境の例を示した図である。
【図２】本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。
【図３】本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示した図である。
【図４】本発明の一実施形態における、サーバが実行することのできる方法の例を示したフローチャートである。
【図５】本発明の一実施形態における、商品のメタデータからカテゴリを自動分類する過程を説明するための例示図である。
【図６】本発明の一実施形態における、メタデータの例に対するモデル構造を示した図である。
【図７】本発明の一実施形態における、商品カテゴリ分類のためのＲＮＮ−ＦＦＮＮ学習モジュールを示した図である。
【図８】本発明の一実施形態における、ＲＮＮ−ＦＦＮＮ学習モデルを利用した商品カテゴリ分類過程を示した図である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施形態について、添付の図面を参照しながら詳細に説明する。
【００１８】
本実施形態は、複数の因子で表現されるデータを自動で分類する技術に関し、特に、データを構成する各因子別にＲＮＮ（Ｒｅｃｕｒｒｅｎｔ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋｓ）を割り当て、分類のために複数のＲＮＮの出力値を入力値として使用するＦＦＮＮ（ｆｅｅｄ  ｆｏｒｗａｒｄ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）を用いた新たな形態のディープラーニングモデルに基づく自動分類器を提供する。
【００１９】
本明細書において、「複数の因子で表現されるデータ」とは、テキスト単語あるいは記号のシーケンスを値として有する少なくとも１つ以上の因子で構成されたデータを意味するが、一例として、商品情報や映画、ニュース、ブログ掲示物のようなコンテンツなどが該当する。以下では「複数の因子で表現されるデータ」の代表的な例として商品情報を挙げ、商品情報メタデータから商品のカテゴリを自動で分類する実施形態について具体的に説明する。
【００２０】
図１は、本発明の一実施形態における、ネットワーク環境の例を示した図である。
【００２１】
図１は、本発明の一実施形態における、ネットワーク環境の例を示した図である。図１のネットワーク環境は、複数の電子機器１１０、１２０、１３０、１４０、複数のサーバ１５０、１６０、およびネットワーク１７０を含む例を示している。このような図１は、発明の説明のための一例に過ぎず、電子機器の数やサーバの数が図１のように限定されることはない。
【００２２】
複数の電子機器１１０、１２０、１３０、１４０は、固定端末や移動端末であってよい。複数の電子機器１１０、１２０、１３０、１４０の例としては、スマートフォン、携帯電話、ナビゲーション、ＰＣ、ノート型パソコン、デジタル放送用端末、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、ＰＭＰ（Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、タブレットなどがある。一例として、電子機器１（１１０）は、無線または有線通信方式を利用し、ネットワーク１７０を介して他の電子機器１２０、１３０、１４０および／またはサーバ１５０、１６０と通信してよい。
【００２３】
通信方式が限定されることはなく、ネットワーク１７０が含むことのできる通信網（一例として、移動通信網、有線インターネット、無線インターネット、放送網）を活用する通信方式だけではなく、機器間の近距離無線通信が含まれてもよい。例えば、ネットワーク１７０は、ＰＡＮ（ｐｅｒｓｏｎａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＬＡＮ（ｌｏｃａｌ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＣＡＮ（ｃａｍｐｕｓ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＭＡＮ（ｍｅｔｒｏｐｏｌｉｔａｎ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＷＡＮ（ｗｉｄｅ  ａｒｅａ  ｎｅｔｗｏｒｋ）、ＢＢＮ（ｂｒｏａｄｂａｎｄ  ｎｅｔｗｏｒｋ）、インターネットなどのネットワークのうちの１つ以上の任意のネットワークを含んでよい。さらに、ネットワーク１７０は、バスネットワーク、スターネットワーク、リングネットワーク、メッシュネットワーク、スター−バスネットワーク、ツリーまたは層的（ｈｉｅｒａｒｃｈｉｃａｌ）ネットワークなどを含むネットワークトポロジのうちの任意の１つ以上を含んでもよいが、これらに限定されることはない。
【００２４】
サーバ１５０、１６０それぞれは、複数の電子機器１１０、１２０、１３０、１４０とネットワーク１７０を介して通信して命令、コード、ファイル、コンテンツ、サービスなどを提供するコンピュータ装置または複数のコンピュータ装置で実現されてよい。
【００２５】
一例として、サーバ１６０は、ネットワーク１７０を介して接続した電子機器１（１１０）にアプリケーションのインストールのためのファイルを提供してよい。この場合、電子機器１（１１０）は、サーバ１６０から提供されたファイルを利用してアプリケーションをインストールしてよい。また、電子機器１（１１０）が含むオペレーティングシステム（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ：ＯＳ）または少なくとも１つのプログラム（一例として、ブラウザや前記インストールされたアプリケーション）の制御にしたがってサーバ１５０に接続し、サーバ１５０が提供するサービスやコンテンツの提供を受けてもよい。例えば、電子機器１（１１０）がアプリケーションの制御にしたがってネットワーク１７０を介してサービス要請メッセージをサーバ１５０に送信すると、サーバ１５０は、サービス要請メッセージに対応するコードを電子機器１（１１０）に送信してよく、電子機器１（１１０）は、アプリケーションの制御にしたがってコードに基づいた画面を構成して表示することにより、ユーザにコンテンツを提供してよい。
【００２６】
他の例として、サーバ１５０は、ショッピングサービスを提供するショッピングサーバシステムで実現されてよい。これにより、サーバ１５０と関連する他のサーバ１６０は、サーバ１５０が提供するショッピングサービスを利用することで、販売される商品のカテゴリを自動で分類する商品カテゴリ分類器の役割を担ってよい。さらに他の例として、サーバ１５０は、ショッピングサーバシステムであると同時に、商品のカテゴリを自動で分類する商品カテゴリ分類器の役割も共に担うように実現されることも可能である。
【００２７】
図２は、本発明の一実施形態における、電子機器およびサーバの内部構成を説明するためのブロック図である。図２では、１つの電子機器に対する例として第１電子機器１１０の内部構成を、１つのサーバに対する例としてサーバ１５０の内部構成を説明する。他の電子機器１２０、１３０、１４０やサーバ１６０も、同一または類似の内部構成を有してよい。
【００２８】
第１電子機器１１０とサーバ１５０は、メモリ２１１、２２１、プロセッサ２１２、２２２、通信モジュール２１３、２２３、および入力／出力インタフェース２１４、２２４を含んでよい。メモリ２１１、２２１は、コンピュータで読み取り可能な記録媒体であって、ＲＡＭ（ｒａｎｄｏｍ  ａｃｃｅｓｓ  ｍｅｍｏｒｙ）、ＲＯＭ（ｒｅａｄ  ｏｎｌｙ  ｍｅｍｏｒｙ）、およびディスクドライブのような永久大容量記憶装置（ｐｅｒｍａｎｅｎｔ  ｍａｓｓ  ｓｔｏｒａｇｅ  ｄｅｖｉｃｅ）を含んでよい。また、メモリ２１１、２２１には、オペレーティングシステムと、少なくとも１つのプログラムコード（一例として、電気機器１（１１０）にインストールされ駆動するブラウザや上述したアプリケーションなどのためのコード）が格納されてよい。このようなソフトウェア構成要素は、ドライブメカニズム（ｄｒｉｖｅ  ｍｅｃｈａｎｉｓｍ）を利用してメモリ２１１、２２１とは別のコンピュータで読み取り可能な記録媒体からロードされてよい。このような別のコンピュータで読み取り可能な記録媒体は、フロッピードライブ、ディスク、テープ、ＤＶＤ／ＣＤ−ＲＯＭドライブ、メモリカードなどのコンピュータで読み取り可能な記録媒体を含んでよい。他の実施形態において、ソフトウェア構成要素は、コンピュータで読み取り可能な記録媒体ではない通信モジュール２１３、２２３を通じてメモリ２１１、２２１にロードされてもよい。例えば、少なくとも１つのプログラムは、開発者またはアプリケーションのインストールファイルを配布するファイル配布システム（一例として、上述したサーバ１６０）がネットワーク１７０を介して提供するファイルによってインストールされるプログラム（一例として、上述したアプリケーション）に基づいてメモリ２１１、２２１にロードされてよい。
【００２９】
プロセッサ２１２、２２２は、基本的な算術、ロジック、および入出力演算を実行することにより、コンピュータプログラムの命令を処理するように構成されてよい。命令は、メモリ２１１、２２１または通信モジュール２１３、２２３によって、プロセッサ２１２、２２２に提供されてよい。例えば、プロセッサ２１２、２２２は、メモリ２１１、２２１のような記録装置に格納されたプログラムコードにしたがって受信される命令を実行するように構成されてよい。
【００３０】
通信モジュール２１３、２２３は、ネットワーク１７０を介して電子機器１（１１０）とサーバ１５０とが互いに通信するための機能を提供してもよいし、他の電子機器（一例として、電子機器２（１２０））または他のサーバ（一例として、サーバ１６０）と通信するための機能を提供してもよい。一例として、電子機器１（１１０）のプロセッサ２１２がメモリ２１１のような記録装置に格納されたプログラムコードにしたがって生成した要求が、通信モジュール２１３の制御にしたがってネットワーク１７０を介してサーバ１５０に伝達されてよい。これとは逆に、サーバ１５０のプロセッサ２２２の制御にしたがって提供される制御信号や命令、コンテンツ、ファイルなどが、通信モジュール２２３とネットワーク１７０を経て電子機器１（１１０）の通信モジュール２１３を通じて電子機器１（１１０）に受信されてもよい。例えば、通信モジュール２１３を通じて受信されたサーバ１５０の制御信号や命令などは、プロセッサ２１２やメモリ２１１に伝達されてよく、コンテンツやファイルなどは、電子機器１（１１０）がさらに含むことのできる格納媒体に格納されてよい。
【００３１】
入力／出力インタフェース２１４、２２４は、入力／出力装置２１５とのインタフェースのための手段であってよい。例えば、入力装置は、キーボードまたはマウスなどの装置を、出力装置は、アプリケーションの通信セッションを表示するためのディスプレイのような装置を含んでよい。他の例として、入力／出力インタフェース２１４は、タッチスクリーンのように入力と出力のための機能が１つに統合された装置とのインタフェースのための手段であってもよい。より具体的な例として、電子機器１（１１０）のプロセッサ２１２は、メモリ２１１にロードされたコンピュータプログラムの命令を処理するにあたり、サーバ１５０や電子機器２（１２０）が提供するデータを利用して構成されるサービス画面やコンテンツが、入力／出力インタフェース２１４を通じてディスプレイに表示されてよい。
【００３２】
また、他の実施形態において、電子機器１（１１０）およびサーバ１５０は、図２の構成要素よりも多くの構成要素を含んでもよい。しかし、大部分の従来技術的構成要素を明確に図に示す必要はない。例えば、電子機器１（１１０）は、上述した入力／出力装置２１５のうちの少なくとも一部を含むように実現されてもよいし、トランシーバ、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）モジュール、カメラ、各種センサ、データベースなどのような他の構成要素をさらに含んでもよい。
【００３３】
図３は、本発明の一実施形態における、サーバのプロセッサが含むことのできる構成要素の例を示した図であり、図４は、本発明の一実施形態における、サーバが実行することのできる商品カテゴリ分類方法の例を示したフローチャートである。図３ではある１つのサーバのプロセッサが含むことのできる構成要素を示しているが、サーバは、図１と図２を参照しながら説明したサーバ１５０、１６０のうちのいずれか１つに該当してよい。図３に示すように、サーバのプロセッサ３００は、前処理部３１０、学習処理部３２０、およびカテゴリ分類部３３０を備えてよい。このようなプロセッサ３００の構成要素は、図４の商品カテゴリ分類方法が含む段階４１０〜４３０を実行するようにサーバを制御してよく、このような制御のために、該当サーバのメモリが含むオペレーティングシステムと少なくとも１つのプログラムのコードを実行するように実現されてよい。
【００３４】
先ず、商品のカテゴリを分類する関連技術について、次のように簡単に説明する。
【００３５】
（１）言語学習（Ｗｏｒｄ  ｅｍｂｅｄｄｉｎｇ）モデル
−神経網（Ｎｅｕｒａｌ  ｎｅｔｗｏｒｋ）モデルを利用してテキスト単語を多次元実数ベクトルで表現し、単語間の意味／構造の類似性を２つのベクトル間の距離で表現可能にした言語モデル。
【００３６】
（２）ＲＮＮ（Ｒｅｃｕｒｒｅｎｔ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋｓ）モデル
−神経網の隠れ層（ｈｉｄｄｅｎ  ｌａｙｅｒ）で再帰的な入力が可能なようにモデルを修正することにより、順次的に（ｓｅｑｕｅｎｔｉａｌ）入力されるか因子（ｆｅａｔｕｒｅ）の順序（ｓｅｑｕｅｎｃｅ）が入力によって与えられるデータからパターンを効果的に学習することが可能な、時間的側面が考慮された神経網モデル。
【００３７】
（３）ＦＦＮＮ（Ｆｅｅｄｆｏｗａｒｄ  ｎｅｕｒａｌ  ｎｅｔｗｏｒｋｓ）モデル
−神経網モデルの初期に提案され、事前学習（ｐｒｅｔｒａｉｎｉｎｇ）技法を使用せずにバックプロパゲーション（ｂａｃｋｐｒｏｐａｇａｔｉｏｎ）方法だけで学習が行われる、典型的な多重層神経網モデル。
【００３８】
（４）この他にも、ユニグラム（Ｕｎｉｇｒａｍ）、ＳＶＭ（ｓｕｐｐｏｒｔ  ｖｅｃｔｏｒ  ｍａｃｈｉｎｅ）、ＫＮＮ（ｋ−ｔｈ  ｎｅａｒｅｓｔ  ｎｅｉｇｈｂｏｒ）を利用して階層的な分類技法でメタ情報から商品を自動分類するモデルなどがある。
【００３９】
本発明では、大量の商品を分類するために、商品別に単語あるいは記号値で表現されるメタ情報が与えられるとき、各商品のカテゴリを自動で分類するモデルとしてディープラーニングに基づく方法を適用する。特に、本発明では、上述したモデルのうちの１つ以上のＲＮＮとＦＦＮＮを１つのモデルとして併合し、ＦＦＮＮにおける分類エラー情報がＲＮＮのモデル学習に活用されるようにするＥ２Ｅ（ｅｎｄ−ｔｏ−ｅｎｄ）形態の商品カテゴリ分類モデルを提供する。
【００４０】
本発明に係る商品カテゴリ分類モデルでは、単語をワードベクトルで表現する言語学習と分離した形態ではなく、ＲＮＮとＦＦＮＮを１つに併合することにより、１つのモデルで言語学習はもちろん、学習されたワードベクトルから商品のカテゴリ分類を実行できるようにしたＥ２Ｅモデルと、このモデルを学習するための新たなアルゴリズムを含む。
【００４１】
既存のＲＮＮとＦＦＮＮの学習のためには、各モデルのための逆伝播（又はバックプロパゲーション）に基づく学習アルゴリズムが広く用いられているが、本発明で提案する学習アルゴリズムは、ＦＦＮＮで発生したカテゴリ分類エラー情報をＲＮＮに伝達してＲＮＮの加重値学習に用いることにより、ワードベクトルが単語シーケンス情報を表現するだけでなく、カテゴリをより正確に分類するための必要な情報まで反映することができる。
【００４２】
本発明では、シーケンス学習に適したＲＮＮを利用することにより、テキストメタデータ語句（文章）全体の意味を利用するだけでなく、商品名、大分類／中分類情報、ブランド、ショッピングモール、イメージ情報などのような多様な形態の因子に対する別途のＲＮＮを学習することによって性能を高めることができ、新たな単語までも、学習された言語学習方法に基づくベクトル値で容易に表現することができる。
【００４３】
段階４１０で、前処理部３１０は、それぞれの商品に対して与えられたメタデータの前処理を言語前処理器で実行してよい。一例として、商品カテゴリ分類の場合に、メタデータは、商品名、ショッピングモール情報（ＩＤまたは名称）、ブランド情報（ＩＤまたは名称）、大分類／中分類などのような因子情報を含み、ニュース記事セクション分類の場合には、タイトル、逆順配置されたタイトル単語シーケンス、本文構成文章などのような因子情報を含む。前処理部３１０は、形態素分析器や索引語抽出器などのような言語前処理器を利用して与えられたメタデータから無意味なテキスト情報をフィルタリングしてよい。
【００４４】
段階４２０で、学習処理部３２０は、ＲＮＮとＦＦＮＮが１つのモデルとして併合されたＲＮＮ−ＦＦＮＮモデルを利用してメタデータを構成する各因子の単語を実数ベクトルで表現してよく、実数ベクトルによるカテゴリ別の点数を算出してよい。このとき、学習処理部３２０は、前処理されたメタデータをＲＮＮの入力とし、ＲＮＮで因子それぞれに対し、因子に該当する単語のシーケンス学習によって因子のシーケンス情報が含まれたワードベクトルを表現してよく（４２１）、この後、ＲＮＮの出力をＦＦＮＮの入力とし、ＦＦＮＮでシーケンス情報が含まれたワードベクトルを利用してカテゴリ別の点数を算出してよい（４２２）。
【００４５】
詳細に説明すると、商品のメタデータを構成する各因子の単語は、順にあらかじめ学習された各因子別のＲＮＮの入力によって与えられる。各因子の単語に対して順に入力が完了すると、ＲＮＮでは新たな出力実数ベクトル値が生成され、各出力因子ベクトルは１つのベクトルとして接合される。この後、接合された実数ベクトルは、予め学習されたＦＦＮＮの入力によって与えられ、ＦＦＮＮで各カテゴリ別の点数が算出されて出力される。したがって、商品メタ情報の場合には、カテゴリ分類に意味がなかったり必要のないノイズ（例えば、商品と実際には関連がないか関連性の低い単語など）が含まれる場合があるため、このようなメタ情報からカテゴリを正確に分類するために、学習処理部３２０は、ワードベクトルが単語シーケンス情報を表現するようにＲＮＮを利用してメタ情報に対するシーケンス学習を先に行った後、ＲＮＮのシーケンス学習結果をＦＦＮＮの入力とし、ＦＦＮＮでシーケンス情報が含まれたワードベクトルから該当商品のカテゴリを分類することができる。
【００４６】
段階４３０で、カテゴリ分類部３３０は、商品のメタデータに対してＲＮＮ−ＦＦＮＮモデルに基づいて出力されたカテゴリ別の点数を利用して該当商品のカテゴリを決定して分類してよい。一例として、カテゴリ分類部３３０は、商品のメタデータに対して出力されたカテゴリ別の点数のうちで最も高い点数のカテゴリを該当商品のカテゴリとして設定してよい。他の例として、ニュースセクション分類では、野球、サッカー、海外野球、海外サッカー、国会／政党、行政、国防／外交などのような詳細セクションに対する点数が算出され、最も高い点数のセクションに設定可能である。
【００４７】
図５は、商品のメタデータからカテゴリを自動分類する過程を説明するための例示図である。
【００４８】
Ｓｔｅｐ１．商品名、ショッピングモールＩＤ、ブランド名、大分類／中分類を因子情報として含むメタデータが与えられる。
【００４９】
＜例＞商品名（１）：ヒラヒラなびく［夏ビーチ］スタイルのスタイリッシュワンピース！！！、ショッピングモール（２）：ワンツーモール、ブランド名（３）：ＡＢＡＣ、大分類／中分類（４）：衣類／女性衣類
Ｓｔｅｐ２．Ｓｔｅｐ１で与えられたメタデータの因子情報別に言語前処理器を利用して前処理を実行する。
【００５０】
＜例＞商品名：ヒラヒラ［夏ビーチ］スタイルスタイリッシュワンピース！！！、ショッピングモール：ワンツーモール、ブランド名：ＡＢＡＣ、大分類／中分類：衣類／女性衣類
→１．ヒラヒラ夏ビーチスタイルスタイリッシュワンピース、２．ワンツーモール、３．ＡＢＡＢ、４．衣類女性衣類
Ｓｔｅｐ３．Ｓｔｅｐ２で前処理された各因子別の単語は、順に予め学習された各因子別のＲＮＮの入力として与えられる。また、各因子の単語に対してＲＮＮ−ＦＦＮＮモデルでの順次入力が完了すると、ＲＮＮでは各単語に対する実数ベクトル値（ｕ）が生成され、各出力因子ベクトルは１つのベクトルとして接合される。
【００５１】
＜例＞１．ヒラヒラ夏ビーチスタイルスタイリッシュワンピース、２．ワンツーモール、３．ＡＢＡＢ、４．衣類女性衣類
→ｕ（１）＝｛０．１、…、−１．２｝／ｕ（２）＝｛−０．３、…、０．４｝、／ｕ（３）＝｛０．２、…、０．７｝／ｕ（４）＝｛０．４、…、−１．３｝
Ｓｔｅｐ４．Ｓｔｅｐ３で接合された実数ベクトル（ｕ）は、予め学習されたＦＦＮＮの入力として与えられ、ＦＦＮＮの出力によって各カテゴリ別の点数（ｙ’’）が算出される。
【００５２】
＜例＞１．ヒラヒラ夏ビーチスタイルスタイリッシュワンピース、２．ワンツーモール、３．ＡＢＡＢ、４．衣類女性衣類
→ｕ（１）＝｛０．１、…、−１．２｝／ｕ（２）＝｛−０．３、…、０．４｝、／ｕ（３）＝｛０．２、…、０．７｝／ｕ（４）＝｛０．４、…、−１．３｝→ｙ’’＝｛シューズ＝０．０１、…、ワンピース＝０．７６、…、カメラ＝０．０２｝
図６は、図５の例に対するモデル構造図である。図６に示すように、メタデータの各因子別の単語は、該当因子のＲＮＮ（例えば、商品名−ＲＮＮ、ブランド−ＲＮＮ、ショッピングモール−ＲＮＮ）の入力によって与えられて実数ベクトルで表現され、ＲＮＮの出力である各出力因子ベクトルは、ＦＦＮＮの入力となり、ＦＦＮＮによってカテゴリ別の点数として定義されてよい。
【００５３】
以下、商品カテゴリ分類過程について具体的に説明する。
【００５４】
以下の方法は、図３と図４を参照しながら説明したプロセッサ３００の構成要素によって実行されてよい。
【００５５】
プロセッサ３００は、与えられた商品メタデータに対し、形態素分析器あるいは索引語抽出器などのような言語前処理器を利用して無意味なテキスト情報をフィルタリングしてよい。一例として、プロセッサ３００は、メタデータを構成する各因子別に助詞や助動詞などのような不必要な品詞の単語や特殊記号（例えば、！、？、／など）などを除去し、体言や語根に該当する単語を抽出してよい。
【００５６】
プロセッサ３００は、商品名、ブランド名、ショッピングモールＩＤ、イメージ因子などのような商品メタデータを構成するそれぞれの因子の順次的データ値を学習するための別途のＲＮＮ（商品因子−ＲＮＮ）を割り当ててよい。例えば、プロセッサ３００は、メタデータの因子が商品名、ブランド名、ショッピングモールで構成される場合、各因子に対して学習されたＲＮＮ、すなわち、商品名−ＲＮＮ、ブランド名−ＲＮＮ、ショッピングモール名−ＲＮＮを割り当ててよい。
【００５７】
商品メタデータに対しては、ハングル（より一般的には、言葉を表現するための表音文字）、言語、記号、固有ＩＤなどを区分せず、すべてをテキスト単語として仮定してモデルに入力され、入力された単語は学習によってｎ次元実数ベクトルで表現される。
【００５８】
商品メタデータがＭ種類の因子で表現されるとき、ｍ番目のメタデータ因子は、Ｘ（ｍ）＝｛Ｘ（ｍ）１、…、Ｘ（ｍ）ｎ｝で表現される。このとき、ｎ値は０よりも大きい任意の定数であり、例えば、１００、２００、３００などの値を設定してよいが、これに限定されることはなく、設定された数字は、ＲＮＮの最初の隠れ層（ｈｉｄｄｅｎ  ｌａｙｅｒ）のノード数と同じである。
＜例１＞ 
シューズ→［０．１２、−０．８１、…、０．４３］
＜例２＞ 
１３５３４→［０．５４、…、−１．２２］
それぞれの商品因子−ＲＮＮは、テキスト単語あるいは記号のシーケンスを学習し、入力シーケンスが終了すると、シーケンス全体の情報を表現する多次元実数ベクトルを出力する。このとき、出力される実数ベクトルの大きさは、入力された単語の実数ベクトルの大きさと必ずしも同じである必要はない。
【００５９】
＜例＞ビーチにぴったりなブーツ→ＲＮＮ→［−１．３４、…、０．２２］
商品メタデータがＭ種類の因子で表現されるとき、商品カテゴリ分類モデルはＭ個のＲＮＮと１つのＦＦＮＮで構成され、それぞれのＲＮＮはＲＮＮ（１）、…、ＲＮＮ（Ｍ）と定義し、各ＲＮＮから出力されるベクトルはｕ（１）＝｛ｕ（１）１、…、ｕ（１）ｎ｝、…、ｕ（Ｍ）＝｛ｕ（Ｍ）１、…、ｕ（Ｍ）ｎ｝と定義する。また、出力されるベクトルは、接合によって１つのＭ×ｎ次元のベクトルｕ＝｛ｕ（１）、…、ｕ（Ｍ）｝で表現される。
【００６０】
ＲＮＮモジュールから生成された出力ベクトルｕは、ＦＦＮＮの入力として与えられ、ＦＦＮＮの出力層（ｏｕｔｐｕｔ  ｌａｙｅｒ）は、商品カテゴリ集合に属するカテゴリと同じ数の出力ノードを含む。
【００６１】
与えられた商品メタ情報ｘは、ＲＮＮ−ＦＦＮＮモデルによって各カテゴリ別の点数として定義されてよい。商品カテゴリの数をＫとすると、商品がｋ番目のカテゴリであるときの点数はｆ（ｙｋ｜ｘ；θ）と定義されてよく、点数が最も大きいカテゴリが該当商品のカテゴリとして設定されてよい。カテゴリ点数を定義した上述の式において、ｙｋはｋ番目のカテゴリ、ｘはメタデータのワードベクトル、θはモデルパラメータを意味する。
【００６２】
カテゴリの点数としては、Ｐ（ｙｋ｜ｘ）＝ｇ（ｙｋ｜ｘ）／（Σｙ∈Ｙｇ（ｙｋ｜ｘ））のように確率が用いられてよいが、これに限定されることはない。上の式において、Ｙはすべての商品カテゴリ集合であり、関数ｆ（ｙ｜ｘ）は、指数（ｅｘｐｏｎｅｎｔｉａｌ）関数のように最小値が０よりも大きい多様な関数が用いられてよい。
【００６３】
学習過程でエラーを定義するために、商品カテゴリは、｜Ｙ｜次元のベクトルｙ＝｛ｙ１、…、ｙ｜ｙ｜｝で定義される。例えば、Ｙ＝｛ワンピース、シューズ、カメラ｝であるとき、カメラという商品のカテゴリベクトルｙは、ｙ＝｛０、０、１｝のように表現されてよい。このとき、ベクトルの値が０と１に限定されるのではなく、実際のカテゴリ値とその他の値が異なる値で与えられてもよい。また、実際のカテゴリベクトルをｙ’、モデルによって分類されたカテゴリベクトルをｙ’’とすると、Ｅ＝ΣＮｎ＝１δ（ｙ’、ｙ’’）と定義される。式において、Ｎは学習に用いられた訓練データの数であり、δ（ｙ’、ｙ’’）は２つのベクトルの差を示す関数であり、学習はエラー値が最小化する方向に進行する。関数としては、クロス−エントロピ（ｃｒｏｓｓ−ｅｎｔｒｏｐｙ）やユークリッド距離などのような多様な値が用いられてよい。
【００６４】
ＦＦＮＮの出力ノードで計算されたエラー値は、レイヤを経て下に逆伝播されて各ＲＮＮの加重値行列を計算するのに用いられ、これによってＲＮＮとＦＦＮＮの学習が同時に進むようになる。
【００６５】
例えば、Ｙ＝｛ワンピース、シューズ、カメラ｝であるとき、与えられた商品がシューズである場合はｙ’＝｛０、１、０｝で表現され、モデルがカテゴリベクトルの値を確率で定義するときにはｙ’’＝｛０．１、０．７、０．２｝と仮定する。また、エラーδ（ｙ’、ｙ’’）＝１／２（ｙ’−ｙ’’）２で定義すると、各カテゴリ別のエラーは｛０、００５、０．０４５、０．０２｝となる。各カテゴリ別のエラーは、一般的に広く使用されるＦＦＮＮの逆伝播アルゴリズムによってＦＦＮＮの入力層（ｉｎｐｕｔ  ｌａｙｅｒ）まで伝達する。ＦＦＮＮが１０個のノードを含む１個の隠れ層を含むモデルであると仮定するとき、入力層の１番目のノードのエラー情報はδ１＝（Σ１０ｋ＝１δ１ｗ１ｋ）ｈ’（ｎｅｔ１）となり、上の式において、δｋはＦＦＮＮの入力層の直ぐ上の層の各ノードに伝達されたエラー情報であり、ｈはＲＮＮの出力層に用いられた活性化（ａｃｔｉｖａｔｉｏｎ）関数であり、ｈ’は活性化関数の微分を意味する。ｈ関数として、シグモイド（ｓｉｇｍｏｉｄ）やハイパーボリックタンジェント（又は双曲線正接関数）（ｔａｎｈ）のような微分最大値が１と同じであるか１よりも小さい多様な関数が用いられてよい。また、ｎｅｔ１は、１番目の入力ノードとして入力されるＲＮＮの下位層出力値および同じ層の直前時間の出力値を含んだＲＮＮのすべての入力情報を意味する。これにより、ＦＦＮＮのカテゴリエラー情報がＲＮＮに伝達されるようになる。
【００６６】
モデルが２つのＲＮＮ（ＲＮＮ１、ＲＮＮ２）で構成され、各ＲＮＮの出力ワードベクトルの大きさが２であると仮定すると、ＦＦＮＮの入力ノードの個数は２×２＝４つとなる。また、ＦＦＮＮの入力ノードのうち、前の２つはＲＮＮ１の出力ノードに該当し、後ろの２つはＲＮＮ２の出力ノードに該当する。このとき、伝達されたＦＦＮＮの入力ノードエラー情報値が｛−０．０２、０．０３、０．０５、−０．０３｝であるとすると、｛−０．０２、０．０３｝はＲＮＮ１の各層別の加重値を算出するための時間考慮逆伝播アルゴリズムの出力エラー情報値として用いられ、｛０．０５、−０．０３｝はＲＮＮ２の加重値を算出するための出力エラー情報値として用いられる。各ＲＮＮの加重値は、出力層ノードに伝達されたエラー値から一般的に広く用いられる時間考慮逆伝播アルゴリズムを利用して学習されてよい。
【００６７】
学習の性能向上のために、ＲＮＮとＦＦＮＮは複数の層で構成されてよく、下の層の出力値は上位層の入力値として与えられ、隣接する層を構成するノードはエッジ形態で連結し、各エッジ別に加重値が付与される。また、入力データは、モデル学習の性能と効率性を考慮し、全体が一度に与えられずに部分集合に分けられて部分集合単位で学習することが可能である。
【００６８】
上述したように、本発明では、ＲＮＮとＦＦＮＮを併合したＲＮＮ−ＦＦＮＮモデルを利用することにより、言語学習とアイテム学習、およびカテゴリ分類を同時に実行するモデルを提供することができる
上述したＲＮＮ−ＦＦＮＮ学習モジュールは図７のとおりであり、ＲＮＮ−ＦＦＮＮ学習モジュールを利用した商品カテゴリ分類過程は図８のとおりである。
【００６９】
図７は、本発明の一実施形態における、商品カテゴリ分類のためのＲＮＮ−ＦＦＮＮ学習モジュールを示した図である。
【００７０】
図７を参照すると、商品カテゴリ分類のための学習モデル、ＲＮＮ−ＦＦＮＮ学習モジュール７２０は、ＲＮＮモデルの学習モジュールであるＲＮＮモジュール７２１とＦＦＮＮモデルの学習モジュールであるＦＦＮＮモジュール７２２とが併合されて構成されてよい。商品のメタデータがＮ個の因子で表現される場合、ＲＮＮモジュール７２１は、Ｎ個の商品因子−ＲＮＮ（商品因子１ＲＮＮ、…、商品因子ｎＲＮＮ）モデルを含んでよい。
【００７１】
商品カテゴリおよびメタデータＤＢ７０１から分類対象となる商品のメタデータが与えられるが、このとき、メタデータは、テキスト前処理モジュール７１０によって無意味なテキスト情報（例えば、助詞、助動詞など）がフィルタリングされた後、前処理されたメタデータテキスト文章／単語ＤＢ７０２に格納および維持されてよい。
【００７２】
前処理されたメタデータは、ＲＮＮモジュール７２１の入力によって与えられるが、このとき、メタデータの各因子別の単語は、該当因子の学習ＲＮＮ（商品因子１ＲＮＮ、…、商品因子ｎＲＮＮ）に順に入力される。ＲＮＮモジュール７２１ではメタデータの各因子別の単語を実数ベクトルに変換し、各因子別に１つのベクトルとして接合されたワードベクトルを取得する。
【００７３】
ＲＮＮモジュール７２１から生成されたワードベクトルは、ＦＦＮＮモジュール７２２の入力として与えられる。ＦＦＮＮモジュール７２２の出力層は、商品カテゴリおよびメタデータＤＢ７０１に定義されたカテゴリの数だけの出力ノードを含んでよい。ＦＦＮＮモジュール７２２は、メタデータに対して生成されたワードベクトルを各カテゴリ別の点数として定義してよいが、このとき、点数が最も大きいカテゴリが商品のカテゴリとして設定されてよい。
【００７４】
特に、ＦＦＮＮモジュール７２２で発生したカテゴリエラー情報は、ＦＦＮＮモジュール７２２の層（出力層、隠れ層、入力層）を経て逆伝播されてＲＮＮモジュール７２１の商品因子−ＲＮＮモデルに伝達されることにより、ＲＮＮモジュール７２１の加重値学習に用いられてよい。言い換えれば、ＦＦＮＮモジュール７２２における分類エラー情報は、ＲＮＮモジュール７２１に伝達され、商品因子−ＲＮＮの各層別の加重値を算出するための時間考慮逆伝播アルゴリズムの出力エラー情報値として用いられてよい。
【００７５】
図８は、本発明の一実施形態における、ＲＮＮ−ＦＦＮＮ学習モデルを利用した商品カテゴリ分類過程を示した図である。図８のカテゴリ分類過程は、図３と図４を参照しながら説明したプロセッサ３００の構成要素によって実行されてよい。
【００７６】
プロセッサ３００は、商品メタ情報８１０が与えられると、形態素分析器あるいは索引語抽出器などのような言語前処理器を利用して無意味なテキスト情報をフィルタリングすることにより、メタデータに対する前処理を実行してよい（８０１）。
【００７７】
プロセッサ３００は、ＲＮＮとＦＦＮＮとが併合されたＲＮＮ−ＦＦＮＮモデル８２０を利用して前処理されたメタデータを構成する各因子の単語を実数ベクトルで表現してよく、実数ベクトルによるカテゴリ確率（各カテゴリ別の点数）を算出してよい（８０２）。
【００７８】
プロセッサ３００は、商品のメタデータに対するＲＮＮ−ＦＦＮＮモデル８２０の結果、すなわち、カテゴリ別の点数を利用して該当商品に対して少なくとも１つの最終カテゴリ（例えば、点数が最も高いカテゴリ）８３０を決定し、決定された最終カテゴリ８３０を該当商品情報にマッピングしてよい（８０３）。
【００７９】
このように、本発明の実施形態によると、ベイジアンネットワークあるいは決定木方式を利用した既存の商品カテゴリ自動分類器の性能限界を克服するために、ディープラーニング技法を利用した新たな方式の商品カテゴリ自動分類器を提供する。これにより、商品カテゴリに対する自動分類性能が向上し、カテゴリ分類のために発生する費用を減少させることができる上に、カテゴリ分類正確度を高めることができ、商品を登録した販売者と商品を検索あるいは購入する購入者の両方の満足度を高めることができる。
【００８０】
上述した装置は、ハードウェア構成要素、ソフトウェア構成要素、および／またはハードウェア構成要素とソフトウェア構成要素との組み合わせによって実現されてよい。例えば、実施形態で説明された装置および構成要素は、プロセッサ、コントローラ、ＡＬＵ（ａｒｉｔｈｍｅｔｉｃ  ｌｏｇｉｃ  ｕｎｉｔ）、デジタル信号プロセッサ、マイクロコンピュータ、ＦＰＧＡ（ｆｉｅｌｄ  ｐｒｏｇｒａｍｍａｂｌｅ  ｇａｔｅ  ａｒｒａｙ）、ＰＬＵ（ｐｒｏｇｒａｍｍａｂｌｅ  ｌｏｇｉｃ  ｕｎｉｔ）、マイクロプロセッサ、または命令を実行して応答することができる様々な装置のように、１つ以上の汎用コンピュータまたは特殊目的コンピュータを利用して実現されてよい。処理装置は、オペレーティングシステム（ＯＳ）および前記ＯＳ上で実行される１つ以上のソフトウェアアプリケーションを実行してよい。また、処理装置は、ソフトウェアの実行に応答し、データにアクセスし、データを格納、操作、処理、および生成してもよい。理解の便宜のために、１つの処理装置が使用されるとして説明される場合もあるが、当業者は、処理装置が複数個の処理要素および／または複数種類の処理要素を含んでもよいことが理解できるであろう。例えば、処理装置は、複数個のプロセッサまたは１つのプロセッサおよび１つのコントローラを含んでよい。また、並列プロセッサのような、他の処理構成も可能である。
【００８１】
ソフトウェアは、コンピュータプログラム、コード、命令、またはこれらのうちの１つ以上の組み合わせを含んでもよく、思うままに動作するように処理装置を構成したり、独立的または集合的に処理装置に命令したりしてよい。ソフトウェアおよび／またはデータは、処理装置に基づいて解釈されたり、処理装置に命令またはデータを提供したりするために、いかなる種類の機械、コンポーネント、物理装置、仮想装置、コンピュータ格納媒体または装置、または伝送される信号波に永久的または一時的に具現化されてよい。ソフトウェアは、ネットワークによって接続されたコンピュータシステム上に分散され、分散された状態で格納されても実行されてもよい。ソフトウェアおよびデータは、１つ以上のコンピュータで読み取り可能な記録媒体に格納されてよい。
【００８２】
実施形態に係る方法は、多様なコンピュータ手段によって実行可能なプログラム命令の形態で実現されてコンピュータで読み取り可能な媒体に記録されてよい。前記コンピュータで読み取り可能な媒体は、プログラム命令、データファイル、データ構造などを単独でまたは組み合わせて含んでよい。前記媒体に記録されるプログラム命令は、実施形態のために特別に設計されて構成されたものであってもよいし、コンピュータソフトウェア当業者に公知な使用可能なものであってもよい。コンピュータで読み取り可能な記録媒体の例としては、ハードディスク、フロッピーディスク、および磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光媒体、フロプティカルディスク（ｆｌｏｐｔｉｃａｌ  ｄｉｓｋ）のような光磁気媒体、およびＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を格納して実行するように特別に構成されたハードウェア装置が含まれる。プログラム命令の例は、コンパイラによって生成されるもののような機械語コードだけではなく、インタプリタなどを使用してコンピュータによって実行される高級言語コードを含む。上述したハードウェア装置は、実施形態の動作を実行するために１つ以上のソフトウェアモジュールとして動作するように構成されてもよく、その逆も同じである。
【００８３】
以上のように、実施形態を、限定された実施形態と図面に基づいて説明したが、当業者であれば、上述した記載から多様な修正および変形が可能であろう。例えば、説明された技術が、説明された方法とは異なる順序で実行されたり、かつ／あるいは、説明されたシステム、構造、装置、回路などの構成要素が、説明された方法とは異なる形態で結合されたりまたは組み合わされたり、他の構成要素または均等物によって対置されたり置換されたとしても、適切な結果を達成することができる。
【００８４】
したがって、異なる実施形態であっても、特許請求の範囲と均等なものであれば、添付される特許請求の範囲に属する。
【図１】
0006446602.tif 000002
【図２】
0006446602.tif 000003
【図３】
0006446602.tif 000004
【図４】
0006446602.tif 000005
【図５】
0006446602.tif 000006
【図６】
0006446602.tif 000007
【図７】
0006446602.tif 000008
【図８】
0006446602.tif 000009