JP7013957B2 - 生成プログラム、生成方法、情報処理装置および情報処理システム - Google Patents

生成プログラム、生成方法、情報処理装置および情報処理システム Download PDF

Info

Publication number
JP7013957B2
JP7013957B2 JP2018044476A JP2018044476A JP7013957B2 JP 7013957 B2 JP7013957 B2 JP 7013957B2 JP 2018044476 A JP2018044476 A JP 2018044476A JP 2018044476 A JP2018044476 A JP 2018044476A JP 7013957 B2 JP7013957 B2 JP 7013957B2
Authority
JP
Japan
Prior art keywords
code information
vector
word
unit
code
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
JP2018044476A
Other languages
English (en)
Other versions
JP2019159699A (ja
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2018044476A priority Critical patent/JP7013957B2/ja
Priority to US16/284,281 priority patent/US20190278791A1/en
Publication of JP2019159699A publication Critical patent/JP2019159699A/ja
Application granted granted Critical
Publication of JP7013957B2 publication Critical patent/JP7013957B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/31Indexing; Data structures therefor; Storage structures
    • G06F16/316Indexing structures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • G06F16/3347Query execution using vector based model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

本発明は、生成プログラム等に関する。
近年、解析対象のテキストデータを構成する形態素それぞれに基づいて、テキストデータからベクトルを生成するWord2Vec技術が存在する。たとえば、Word2Vec技術では、ある単語(形態素)と、ある単語に隣接する他の単語との関係に基づいて、各単語のベクトルを算出する処理を行う。
また、テキストデータのセンテンスのベクトル値を集計する場合に、ベクトルテーブルを用いて、各単語のベクトルを特定する従来技術がある。図11は、従来技術を説明するための図である。図11に示す従来技術では、センテンスデータ1aを基にして、各単語のベクトルを集計し、ベクトルデータ1bを生成する場合について説明する。
一例として、センテンスデータ1a「He likes sweet apple.」を構成する単語をすれぞれ、(He)(likes)(sweet)(apple)とする。従来技術は、ハッシュフィルタ2と、ベクトルテーブル3とを用いて、単語のベクトルを特定する。ハッシュフィルタ2は、単語のハッシュ値と、ベクトルテーブル3へのポインタとを対応付ける情報である。ベクトルテーブル3は、単語に対応するベクトルを保持するテーブルである。
たとえば、ハッシュフィルタ2に、単語「apple」のハッシュ値を入力すると、単語「apple」に対応するベクトルを格納するベクトルテーブル3の位置が特定される。説明の便宜上、単語「apple」のベクトルを「vec(apple)」と表記する。従来技術では、センテンスデータ1aに対して形態素解析を行うことで、センテンスデータ1aに含まれる各単語「He、likes、sweet、apple」を抽出し、ハッシュフィルタ2、ベクトルテーブル3を用いて、各単語のベクトルを集計することで、ベクトルデータ1bを生成する。
特開2010-198106号公報 特開2009-223801号公報 特開2009-086202号公報
しかしながら、上述した従来技術では、単語のベクトルを集計し、ベクトルデータの生成に要するメモリ容量を抑制することができないという問題がある。
たとえば、従来技術で用いるベクトルテーブルは、1つの言語あたり50万語に対してテーブルのデータ量が、400MBと大きいため、小規模のコンピュータのメモリ容量を圧迫し、プログラムの実行に支障を及ぼす。また、場合によってはベクトルテーブルをメモリに格納することが難しい場合もある。
1つの側面では、本発明は、単語のベクトルを集計し、ベクトルデータの生成に要するメモリ容量を抑制することができる生成プログラム、生成方法、情報処理装置および情報処理システムを提供することを目的とする。
第1の案では、コンピュータに次の処理を実行させる。コンピュータは、テキストデータに含まれる複数の単語にそれぞれ対応する複数の符号情報を受け付け、受け付けた複数の符号情報に基づき、複数の符号情報のうち、出現頻度が基準を超える複数の符号情報を特定する。コンピュータは、単語に対応するベクトルを、単語に対応する符号情報に関連付けて記憶する記憶部を参照して、特定した複数の符号情報にそれぞれ関連付けられた複数のベクトルを取得する。コンピュータは、取得した複数のベクトルに基づき、複数のベクトルを代表する代表ベクトルを生成する。
単語のベクトルを集計し、ベクトルデータの生成に要するメモリ容量を抑制することができる。
図1は、本実施例に係る情報処理装置の処理の一例を説明するための図である。 図2は、本実施例に係る情報処理装置の構成を示す機能ブロック図である。 図3は、コード変換部の処理を説明するための図である。 図4は、本実施例に係る第1演算部の構成を示す機能ブロック図である。 図5は、第1演算部のベクトルテーブルのデータ構造の一例を示す図である。 図6は、本実施例に係る第2演算部の構成を示す機能ブロック図である。 図7は、第2演算部のベクトルテーブルのデータ構造の一例を示す図である。 図8は、本実施例に係る第1演算部の処理手順を示すフローチャートである。 図9は、本実施例に係る第2演算部の処理手順を示すフローチャートである。 図10は、情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。 図11は、従来技術を説明するための図である。
以下に、本願の開示する生成プログラム、生成方法、情報処理装置および情報処理システムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
図1は、本実施例に係る情報処理装置の処理の一例を説明するための図である。図1に示すように、この情報処理装置(情報処理システム)は、第1演算部100と、第2演算部200とを有する。たとえば、第1演算部100は、PC(Personal Computer)等に対応し、第2演算部200は、PCに接続されるグラフィックカード等に対応する。第1演算部100は、第1演算装置の一例である。第2演算部200は、第2演算装置の一例である。
第1演算部100は、メインメモリ150と、補助記憶部160と、制御部170とを有する。たとえば、補助記憶部160は、ベクトルテーブル161を有する。ベクトルテーブル161は、低頻度の単語のコードと、ベクトルとを対応付けるテーブルである。制御部170は、CPU(Central Processing Unit)に対応する制御装置である。
制御部170は、圧縮テキストデータ10を受け付けると、圧縮テキストデータ10を、メインメモリ150に格納する。圧縮テキストデータ10は、テキストデータをコード化(圧縮)したデータである。たとえば、圧縮テキストデータ10には、コード化された複数の単語が含まれる。以下の説明では、適宜、コード化された単語を「単語コード」と表記する。メインメモリ150に格納された圧縮テキストデータ10は、第2演算部200にDMA(Direct Memory Access)転送される。
制御部170は、ベクトルテーブル161の一部のデータをメインメモリ150に逐次読み出し、圧縮テキストデータ10と、ベクトルテーブル161とを比較して、圧縮テキストデータ10に含まれる各単語コードのうち、低頻度の単語コードのベクトルを特定することで、低頻度ベクトルデータ10aを生成する。
制御部170は、第2演算部200から送信される高頻度ベクトルデータ10bを取得し、低頻度ベクトルデータ10aと、高頻度ベクトルデータ10bとを結合することで、圧縮テキストデータ10に対応するベクトルデータ20を生成する。
第2演算部200は、ビデオメモリ250と、制御部260とを有する。たとえば、制御部260は、GPU(Graphics Processing Unit)に対応する制御装置である。ビデオメモリ250は、ベクトルテーブル251を有する。ベクトルテーブル251は、高頻度の単語コードと、ベクトルとを対応付けるテーブルである。
制御部260は、DMA転送により、ビデオメモリ251に圧縮テキストデータ10が格納されると、圧縮テキストデータ10と、ベクトルテーブル251とを比較して、圧縮テキストデータ10に含まれる各単語コードのうち、高頻度の単語コードのベクトルを特定することで、高頻度ベクトルデータ10bを生成する。高頻度ベクトルデータ10bは、DMA転送により、第1演算部200に転送される。
上記のように、第2演算部200が、ベクトルテーブル251を常駐し、圧縮テキストデータ10に含まれる単語コードのうち、高頻度の単語コードに対応する高頻度ベクトルデータ10bを生成し、第1演算部200に転送する。
これに対して、第1演算部100は、ベクトルテーブル161の一部データを逐次読み出して、低頻度の単語コードに対応する低頻度ベクトルデータ10aを生成する。第1演算部100は、自身の生成した低頻度ベクトルデータ10aと、第2演算部200が生成した高頻度ベクトルデータ10bとを結合することで、圧縮テキストデータ10のベクトルデータ20を生成する。
第1演算部100は、ベクトルテーブル161の一部をメインメモリ150に読み出して、低頻度の単語コードの低頻度ベクトル10aを生成し、高頻度の単語コードの高頻度ベクトル10bの生成を、第2演算部200に依頼することで、単語のベクトルの生成に要するメモリ容量を抑制することができる。
また、第2演算部200は、ビデオメモリ250にベクトルテーブル251を常駐させるため、ベクトルテーブル251のデータを補助記憶装置から逐次読み出す場合と比較して、高頻度の単語コードの高頻度ベクトル10bを生成する処理を高速化することができる。
次に、本実施例に係る情報処理装置の構成の一例について説明する。図2は、本実施例に係る情報処理装置の構成を示す機能ブロック図である。図2に示すように、この情報処理装置50は、コード変換部55と、第1演算部100と、第2演算部200とを有する。
コード変換部55は、テキストデータを圧縮テキストデータ10に変換する処理部である。コード変換部55は、圧縮テキストデータを、第1演算部100に出力する。図2では一例として、コード圧縮部55が、第1演算部100の外部にある場合について説明するが、これに限定されるものではない。コード変換部55は、第1演算部100の内部にあってもよいし、情報処理装置50に接続する外部装置にコード変換部55に対応する機能を持たせてもよい。
図3は、コード変換部の処理を説明するための図である。図3に示すように、コード変換部55は、テキストデータ5を受け付けると、コード割当表55aを基にして、圧縮テキストデータ10を生成する。たとえば、コード割当表55aは、単語コードと、単語(高頻度単語および低頻度単語)とを対応付けるテーブルである。高頻度の単語は、1バイトまたは2バイトの単語コードに変換される。低頻度の単語は、3バイトの単語コードに変換される。
ここで、図3に示すように、高頻度単語の単語コードの先頭4ビットは「00h~90h」に含まれる。また、低頻度単語のコードの先頭4ビットは「A0h~F0h」に含まれる。このため、単語コードの先頭4ビットを参照することで、単語コードは、高頻度単語の単語であるか、低頻度単語の単語コードであるかを区別することができる。「h」は、数字が16進数であることを示す記号である。
説明の便宜上、各単語「Kataoka、likes、coffee、He、sweet、apple」に対応する単語コードを「コード(Kataoka)、コード(likes)、コード(coffee)、コード(He)、コード(sweet)、コード(apple)」と表記する。たとえば、単語「likes、coffee、He、sweet、apple」を高頻度単語とすると、各単語コード「コード(likes)、コード(coffee)、コード(He)、コード(sweet)、コード(apple)」の先頭4ビットは、「A0h~F0h」に含まれる。単語「Kataoka」を低頻度単語とすると、単語コード「コード(Kataoka)」の先頭4ビットは、「A0h~F0h」に含まれる。
続いて、図1で説明した第1演算部100の構成について説明する。図4は、本実施例に係る第1演算部の構成を示す機能ブロック図である。図4に示すように、この第1演算部100は、メインメモリ150と、補助記憶部160と、転送部155と、制御部170とを有する。
メインメモリ150は、圧縮テキストデータ10、低頻度ベクトルデータ10a、ベクトルデータ20を保持する記憶装置である。たとえば、メインメモリ150は、RAM(Random Access Memory)等に対応する。
圧縮テキストデータ10は、コード変換部55により受け付けるコード化(圧縮)されたテキストデータである。圧縮テキストデータ10には、コード化された複数の単語コードが含まれる。
低頻度ベクトルデータ10aは、圧縮テキストデータ10に含まれる複数の単語コードのうち、各低頻度単語の単語コードに対応する各ベクトル値を含むものである。
ベクトルデータ20は、圧縮テキストデータ10の各単語コードのベクトルを示す。図1で説明したように、ベクトルデータ20は、第1演算部100が生成した低頻度ベクトルデータ10aと、第2演算部200が生成した高頻度ベクトルデータ10bとを結合したものとなる。
転送部155は、メインメモリ150に格納された圧縮テキストデータ10を取得し、取得した圧縮テキストデータ10を、第2演算部200にDMA転送する処理部である。また、転送部155は、第2演算部200からDMA転送される高頻度ベクトルデータ10bを受信し、受信した高頻度ベクトルデータ10bを、メインメモリ150に格納する。高頻度ベクトルデータ10bの図示を省略する。転送部155は、第1転送部の一例である。
補助記憶部160は、ベクトルテーブル161を保持する記憶装置である。たとえば、補助記憶部160は、フラッシュメモリ(Flash Memory)などの半導体メモリ素子や、HDD(Hard Disk Drive)などの記憶装置に対応する。
ベクトルテーブル161は、低頻度の単語の単語コードのベクトル値を保持するテーブルである。図5は、第1演算部のベクトルテーブルのデータ構造の一例を示す図である。図5に示すように、ベクトルテーブル161は、低頻度単語コードと、ベクトル値とを対応付ける。低頻度単語コードは、低頻度の単語の単語コードを示すものである。ベクトル値は、Word2Vec技術等を基にして、単語コードに対して予め算出された単語のベクトル値である。本実施例では、ある低頻度単語コードのベクトル値を、vec()によって示すものとする。たとえば、低頻度単語コード「Kataoka」のベクトル値を「vec(Kataoka)」と表記する。なお、低頻度の単語の数は、約50万語である。
図4の説明に戻る。制御部170は、受付部171と、特定部172と、統合部173とを有する。制御部170は、CPUやMPU(Micro Processing Unit)などによって実現できる。
受付部171は、コード変換部55から、圧縮テキストデータ10を受け付ける処理部である。受付部171は、受け付けた圧縮テキストデータ10を、メインメモリ150に格納する。
特定部172は、圧縮テキストデータ10の各単語コードのうち、低頻度の単語コードを特定する。たとえば、特定部172は、単語コードの先頭4ビットを参照し、先頭4ビットが「A0h~F0h」のいずれかとなる単語コードを低頻度の単語コードとして特定する。低頻度の単語コードは、出現頻度が基準以下となる単語コードである。
特定部172は、特定した低頻度の単語コードと、ベクトルテーブル161との比較により、低頻度の単語コードに対応するベクトル値を取得する処理を、低頻度の単語コード毎に実行し、取得した各ベクトル値を、低頻度ベクトルデータ10aとして生成する。特定部172は、第1特定部の一例である。
統合部173は、低頻度ベクトルデータ10aと、第2演算部200からDMA転送される高頻度ベクトルデータ10bとを結合することで、ベクトルデータ20を生成する処理部である。統合部173は、圧縮テキストデータ10に含まれる各単語コードの順に、各単語コードのベクトル値を配列することで、ベクトルデータ20を生成してもよいし、圧縮テキストデータ10に含まれる各単語コードのベクトル値を集積(合計)したベクトル値を、ベクトルデータ20として生成してもよい。
続いて、図1で説明した第2演算部200の構成について説明する。図6は、本実施例に係る第2演算部の構成を示す機能ブロック図である。図6に示すように、この第2演算部200は、ビデオメモリ250と、転送部255と、制御部260とを有する。
ビデオメモリ250は、ベクトルテーブル251、圧縮テキストデータ10、高頻度ベクトルデータ10bを保持する記憶装置である。たとえば、ビデオメモリ250は、RAM等に対応する。
ベクトルテーブル251は、高頻度の単語の単語コードのベクトル値を保持するテーブルである。図7は、第2演算部のベクトルテーブルのデータ構造の一例を示す図である。図7に示すように、このベクトルテーブル251は、高頻度単語コードと、ベクトル値とを対応付ける。高頻度単語コードは、高頻度の単語の単語コードを示すものである。ベクトル値は、Word2Vec技術等を基にして、単語コードに対して予め算出された単語のベクトル値である。本実施例では、ある高頻度単語コードのベクトル値を、vec()によって示すものとする。たとえば、高頻度単語コード「apple」のベクトル値を「vec(apple)」と表記する。なお、高頻度の単語の数は、約4000語である。
圧縮テキストデータ10は、第1演算部100からDMA転送される圧縮テキストデータである。圧縮テキストデータ10に関する説明は、図4で説明した圧縮テキストデータ10に関する説明と同様である。
高頻度ベクトルデータ10bは、圧縮テキストデータ10に含まれる複数の単語コードのうち、各高頻度単語の単語コードに対応する各ベクトル値を含むものである。高頻度ベクトルデータ10bは、代表ベクトルの一例である。
転送部255は、第1演算部100からDMA転送される圧縮テキストデータ10を取得した場合に、取得した圧縮テキストデータ10を、ビデオメモリ250に格納する。また、転送部255は、ビデオメモリ250に格納された高頻度ベクトルデータ10bを取得し、取得した高頻度ベクトルデータ10bを、第1演算部100にDMA転送する。転送部255は、受付部および第2転送部の一例である。
制御部260は、特定部261を有する。制御部260は、GPUなどによって実現できる。
特定部261は、圧縮テキストデータ10の各単語コードのうち、高頻度の単語コードを特定する。たとえば、特定部261は、単語コードの先頭4ビットを参照し、先頭4ビットが「10h~90h」のいずれかとなる単語コードを高頻度の単語コードとして特定する。高頻度の単語コードは、出現頻度が基準を超える単語コードである。
特定部261は、特定した高頻度の単語コードと、ベクトルテーブル251との比較により、高頻度の単語コードに対応するベクトル値を取得する処理を、高頻度の単語コード毎に実行し、取得した各ベクトル値を、高頻度ベクトルデータ10bとして生成する。特定部261は、第2特定部の一例である。
特定部261は、各高頻度の単語コードのベクトル値を集積することで、高頻度ベクトルデータ10bを生成してもよいし、各ベクトル値を配列することで、高頻度ベクトルデータ10bを生成してもよい。
次に、本実施例に係る第1演算部100の処理手順の一例について説明する。図8は、本実施例に係る第1演算部の処理手順を示すフローチャートである。図8に示すように、第1演算部100の受付部171は、圧縮テキストデータ10を取得する(ステップS101)。第1演算部100の転送部155は、圧縮テキストデータ10を、第2演算部200にDMA転送する(ステップS102)。
第1演算部100の特定部172は、圧縮テキストデータ10を走査し、圧縮テキストデータ10に含まれる単語コードのうち、低頻度単語コードを抽出する(ステップS103)。特定部172は、ベクトルテーブル161を基にして、各低頻度単語コードのベクトル値を特定し、低頻度ベクトルデータ10aを生成する(ステップS104)。
転送部155は、第2演算部200から、DMA転送により高頻度ベクトルデータ10bを受信する(ステップS105)。第1演算部100の統合部173は、低頻度ベクトルデータ10aと、高頻度ベクトルデータ10bとを統合することで、ベクトルデータ20を生成する(ステップS106)。
次に、本実施例に係る第2演算部200の処理手順の一例について説明する。図9は、本実施例に係る第2演算部の処理手順を示すフローチャートである。図9に示すように、第2演算部200の転送部255は、第1演算部100から、DMA転送により、圧縮テキストデータ10を受信する(ステップS201)。
第2演算部200の特定部261は、圧縮テキストデータ10を走査し、圧縮テキストデータ10に含まれる単語コードのうち、高頻度単語コードを抽出する(ステップS202)。
特定部261は、ベクトルテーブル251を基にして、各高頻度単語コードのベクトル値を特定する(ステップS203)。特定部261は、各高頻度単語コードの各ベクトル値を集積することで、高頻度ベクトルデータ10bを生成する(ステップS204)。
転送部255は、DMA転送により、高頻度ベクトルデータ10bを第1演算部100に転送する(ステップS205)。
次に、本実施例に係る情報処理装置50の効果について説明する。情報処理装置50の第1演算部100は、ベクトルテーブル161の一部をメインメモリ150に読み出して、低頻度の単語コードの低頻度ベクトル10aを生成し、高頻度の単語コードの高頻度ベクトル10bの生成を、第2演算部200に依頼することで、単語のベクトルの生成に要するメモリ容量を抑制することができる。
情報処理装置50の第2演算部200は、ビデオメモリ250にベクトルテーブル251を常駐させて、高頻度ベクトルデータ10bを生成する。これにより、ベクトルテーブル251のデータを補助記憶装置から逐次読み出す場合と比較して、高頻度の単語コードの高頻度ベクトル10bを生成する処理を高速化することができる。
本実施例に係る情報処理装置50は、圧縮テキストデータ10の各単語コードが低頻度であるか高頻度であるかを判定する場合に、単語コードの先頭4ビットが所定のビットであるか否かにより、判定を行う。これにより、単語コードの全ビットを参照して判定する場合と比較して、各単語コードが低頻度であるか高頻度であるかを判定する処理を高速化することができる。
ところで、図1では、第1演算部100と第2演算部200でベクトルデータの生成を分担しているが、これに限定されるものではない。たとえば、第1演算部のメインメモリ150に高頻度のベクトルテーブル251を常駐し、第1演算部のみで、高頻度と低頻度のベクトルデータを生成することも可能である。また、図4に示した圧縮テキストデータについても、第1演算部のメインメモリ150からそのまま、第2演算部のビデオメモリ250にDMA転送しているが、これに限定されるものではない。たとえば、転送部155は、ベクトルテーブル161を参照して、圧縮テキストデータ10から、低頻度の単語コードを取り除き、低頻度の単語コードを取り除いた圧縮テキストデータ10を、第2演算部のビデオメモリ250にDMA転送してもよい。これにより、DMA転送によるデータ量を削減することができる。
次に、上記実施例に示した情報処理装置50と同様の機能を実現するコンピュータのハードウェア構成の一例について説明する。図10は、情報処理装置と同様の機能を実現するコンピュータのハードウェア構成の一例を示す図である。
図10に示すように、コンピュータ300は、各種演算処理を実行するCPU301と、ユーザからのデータの入力を受け付ける入力装置302と、ディスプレイ303とを有する。コンピュータ300は、有線または無線ネットワークを介して収録機器等との間でデータの授受を行うインターフェース装置304とを有する。
コンピュータ300は、グラフィックカード305を有する。グラフィックカード305のGPU(図示略)は、特定プロセスを実行する。特定プロセスの処理は、特定部261が実行する処理に対応するものである。
また、コンピュータ300は、各種情報を一時記憶するRAM306と、ハードディスク装置307とを有する。そして、各装置301~307は、バス308に接続される。
ハードディスク装置307は、受付プログラム307a、特定プログラム307b、統合プログラム307cを有する。CPU301は、各プログラム307a~307cを読み出してRAM306に展開する。
受付プログラム307aは、受付プロセス306aとして機能する。特定プログラム307bは、特定プロセス306bとして機能する。統合プログラム307cは、統合プロセス306cとして機能する。
受付プロセス306aの処理は、受付部171の処理に対応する。特定プロセス306bの処理は、特定部172の処理に対応する。統合プロセス306cの処理は、統合部173の処理に対応する。
RAM306とグラフィックカード305に含まれるビデオカードとは、DMA転送により、データをやり取りする。
なお、各プログラム307a~307cについては、必ずしも最初からハードディスク装置307に記憶させておかなくてもよい。例えば、コンピュータ300に挿入されるフレキシブルディスク(FD)、CD-ROM、DVD、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させておく。そして、コンピュータ300が各プログラム307a~307cを読み出して実行するようにしても良い。
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
(付記1)テキストデータに含まれる複数の単語にそれぞれ対応する複数の符号情報を受け付け、
受け付けた前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準を超える複数の符号情報を特定し、
単語に対応するベクトルを、前記単語に対応する符号情報に関連付けて記憶する記憶部を参照して、特定した前記複数の符号情報にそれぞれ関連付けられた複数のベクトルを取得し、
取得した前記複数のベクトルに基づき、前記複数のベクトルを代表する代表ベクトルを生成する
処理をコンピュータに実行させることを特徴とする生成プログラム。
(付記2)前記特定する処理は、符号情報の特定ビット位置の情報を基にして、出現頻度が基準を超える符号情報を、受け付けた複数の符号情報から特定することを特徴とする付記1に記載の生成プログラム。
(付記3)出現頻度が基準を超える符号情報のベクトルを示す高頻度ベクトルテーブルを補助記憶部から読み込み、前記高頻度ベクトルテーブルを前記記憶部に常駐させる処理を更にコンピュータに実行させることを特徴とする付記1または2に記載の生成プログラム。
(付記4)出現頻度が基準以下となる符号情報のベクトルを示す低頻度ベクトルテーブルを記憶する補助記憶部から、前記低頻度ベクトルテーブルのデータを逐次、読み込み、前記複数の符号情報のうち、出現頻度が基準以下となる符号情報のベクトルを演算する処理を更にコンピュータに実行させることを特徴とする付記1、2または3に記載の生成プログラム。
(付記5)コンピュータが実行する生成方法であって、
テキストデータに含まれる複数の単語にそれぞれ対応する複数の符号情報を受け付け、
受け付けた前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準を超える複数の符号情報を特定し、
単語に対応するベクトルを、前記単語に対応する符号情報に関連付けて記憶する記憶部を参照して、特定した前記複数の符号情報にそれぞれ関連付けられた複数のベクトルを取得し、
取得した前記複数のベクトルに基づき、前記複数のベクトルを代表する代表ベクトルを生成する
処理を実行することを特徴とする生成方法。
(付記6)前記特定する処理は、符号情報の特定ビット位置の情報を基にして、出現頻度が基準を超える符号情報を、受け付けた複数の符号情報から特定することを特徴とする付記5に記載の生成方法。
(付記7)出現頻度が基準を超える符号情報のベクトルを示す高頻度ベクトルテーブルを補助記憶部から読み込み、前記高頻度ベクトルテーブルを前記記憶部に常駐させる処理を更に実行することを特徴とする付記5または6に記載の生成方法。
(付記8)出現頻度が基準以下となる符号情報のベクトルを示す低頻度ベクトルテーブルを記憶する補助記憶部から、前記低頻度ベクトルテーブルのデータを逐次、読み込み、前記複数の符号情報のうち、出現頻度が基準以下となる符号情報のベクトルを演算する処理を更にコンピュータに実行させることを特徴とする付記5、6または7に記載の生成方法。
(付記9)テキストデータに含まれる複数の単語にそれぞれ対応する複数の符号情報を受け付ける受付部と、
受け付けた前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準を超える複数の符号情報を特定し、単語に対応するベクトルを、前記単語に対応する符号情報に関連付けて記憶する記憶部を参照して、特定した前記複数の符号情報にそれぞれ関連付けられた複数のベクトルを取得し、取得した前記複数のベクトルに基づき、前記複数のベクトルを代表する代表ベクトルを生成する特定部と
を有することを特徴とする情報処理装置。
(付記10)前記特定部は、符号情報の特定ビット位置の情報を基にして、出現頻度が基準を超える符号情報を、受け付けた複数の符号情報から特定することを特徴とする付記9に記載の情報処理装置。
(付記11)前記特定部は、出現頻度が基準を超える符号情報のベクトルを示す高頻度ベクトルテーブルを補助記憶部から読み込み、前記高頻度ベクトルテーブルを前記記憶部に常駐させる処理を更に実行することを特徴とする付記9または10に記載の情報処理装置。
(付記12)前記特定部は、出現頻度が基準以下となる符号情報のベクトルを示す低頻度ベクトルテーブルを記憶する補助記憶部から、前記低頻度ベクトルテーブルのデータを逐次、読み込み、前記複数の符号情報のうち、出現頻度が基準以下となる符号情報のベクトルを演算する処理を更に実行することを特徴とする付記9、10または11に記載の情報処理装置。
(付記13)第1演算装置と第2演算装置とを有する情報処理システムであって、
前記第1演算装置は、
テキストデータに含まれる複数の単語にそれぞれ対応する複数の符号情報を前記第2演算装置に転送する第1転送部と、
前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準以下となる複数の第1符号情報を特定し、単語に対応するベクトルを、前記単語に対応する前記第1符号情報に関連付けて記憶する第1記憶部を参照して、特定した前記複数の第1符号情報にそれぞれ関連付けられた複数のベクトルを取得する第1特定部と、
前記第2演算装置から転送される代表ベクトルと、前記複数のベクトルとを統合したベクトルデータを生成する統合部と、を有し、
前記第2演算装置は、
前記第1演算装置の前記第1転送部から、前記複数の符号情報を受け付ける受付部と、
受け付けた前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準を超える複数の第2符号情報を特定し、単語に対応するベクトルを、前記単語に対応する第2符号情報に関連付けて記憶する第2記憶部を参照して、特定した前記複数の符号情報にそれぞれ関連付けられた複数のベクトルを取得し、取得した前記複数のベクトルに基づき、前記複数のベクトルを代表する代表ベクトルを生成する第2特定部と、
前記代表ベクトルを前記第1演算装置に転送する第2転送部とを有することを特徴とする情報処理システム。
(付記14)前記第1転送部は、前記複数の符号情報から、前記複数の第1符号情報を除いた残りの符号情報を、前記第2演算装置に転送することを特徴とする付記13に記載の情報処理システム。
50 情報処理装置
55 コード変換部
100 第1演算部
150 メインメモリ
155,255 転送部
160 補助記憶部
161,251 ベクトルテーブル
170 制御部
171 受付部
172 特定部
173 統合部
200 第2演算部

Claims (7)

  1. テキストデータに含まれる複数の単語にそれぞれ対応する複数の符号情報を受け付け、
    受け付けた前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準を超える複数の符号情報を特定し、
    単語に対応するベクトルを、前記単語に対応する符号情報に関連付けて記憶する記憶部を参照して、特定した前記複数の符号情報にそれぞれ関連付けられた複数のベクトルを取得し、
    取得した前記複数のベクトルに基づき、前記複数のベクトルを代表する代表ベクトルを生成する
    処理をコンピュータに実行させることを特徴とする生成プログラム。
  2. 前記特定する処理は、符号情報の特定ビット位置の情報を基にして、出現頻度が基準を超える符号情報を、受け付けた複数の符号情報から特定することを特徴とする請求項1に記載の生成プログラム。
  3. 出現頻度が基準を超える符号情報のベクトルを示す高頻度ベクトルテーブルを補助記憶部から読み込み、前記高頻度ベクトルテーブルを前記記憶部に常駐させる処理を更にコンピュータに実行させることを特徴とする請求項1または2に記載の生成プログラム。
  4. コンピュータが実行する生成方法であって、
    テキストデータに含まれる複数の単語にそれぞれ対応する複数の符号情報を受け付け、
    受け付けた前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準を超える複数の符号情報を特定し、
    単語に対応するベクトルを、前記単語に対応する符号情報に関連付けて記憶する記憶部を参照して、特定した前記複数の符号情報にそれぞれ関連付けられた複数のベクトルを取得し、
    取得した前記複数のベクトルに基づき、前記複数のベクトルを代表する代表ベクトルを生成する
    処理を実行することを特徴とする生成方法。
  5. テキストデータに含まれる複数の単語にそれぞれ対応する複数の符号情報を受け付ける受付部と、
    受け付けた前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準を超える複数の符号情報を特定し、単語に対応するベクトルを、前記単語に対応する符号情報に関連付けて記憶する記憶部を参照して、特定した前記複数の符号情報にそれぞれ関連付けられた複数のベクトルを取得し、取得した前記複数のベクトルに基づき、前記複数のベクトルを代表する代表ベクトルを生成する特定部と
    を有することを特徴とする情報処理装置。
  6. 第1演算装置と第2演算装置とを有する情報処理システムであって、
    前記第1演算装置は、
    テキストデータに含まれる複数の単語にそれぞれ対応する複数の符号情報を前記第2演算装置に転送する第1転送部と、
    前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準以下となる複数の第1符号情報を特定し、単語に対応するベクトルを、前記単語に対応する前記第1符号情報に関連付けて記憶する第1記憶部を参照して、特定した前記複数の第1符号情報にそれぞれ関連付けられた複数のベクトルを取得する第1特定部と、
    前記第2演算装置から転送される代表ベクトルと、前記複数のベクトルとを統合したベクトルデータを生成する統合部と、を有し、
    前記第2演算装置は、
    前記第1演算装置の前記第1転送部から、前記複数の符号情報を受け付ける受付部と、
    受け付けた前記複数の符号情報に基づき、前記複数の符号情報のうち、出現頻度が基準を超える複数の第2符号情報を特定し、単語に対応するベクトルを、前記単語に対応する第2符号情報に関連付けて記憶する第2記憶部を参照して、特定した前記複数の符号情報にそれぞれ関連付けられた複数のベクトルを取得し、取得した前記複数のベクトルに基づき、前記複数のベクトルを代表する代表ベクトルを生成する第2特定部と、
    前記代表ベクトルを前記第1演算装置に転送する第2転送部とを有することを特徴とする情報処理システム。
  7. 前記第1転送部は、前記複数の符号情報から、前記複数の第1符号情報を除いた残りの符号情報を、前記第2演算装置に転送することを特徴とする請求項に記載の情報処理システム。
JP2018044476A 2018-03-12 2018-03-12 生成プログラム、生成方法、情報処理装置および情報処理システム Active JP7013957B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018044476A JP7013957B2 (ja) 2018-03-12 2018-03-12 生成プログラム、生成方法、情報処理装置および情報処理システム
US16/284,281 US20190278791A1 (en) 2018-03-12 2019-02-25 Non-transitory computer readable recording medium, method for generating, information processing device, and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018044476A JP7013957B2 (ja) 2018-03-12 2018-03-12 生成プログラム、生成方法、情報処理装置および情報処理システム

Publications (2)

Publication Number Publication Date
JP2019159699A JP2019159699A (ja) 2019-09-19
JP7013957B2 true JP7013957B2 (ja) 2022-02-01

Family

ID=67843980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018044476A Active JP7013957B2 (ja) 2018-03-12 2018-03-12 生成プログラム、生成方法、情報処理装置および情報処理システム

Country Status (2)

Country Link
US (1) US20190278791A1 (ja)
JP (1) JP7013957B2 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005275880A (ja) 2004-03-25 2005-10-06 Getronics Japan Ltd 字句をデータに変換する装置、方法及びプログラム
JP2009277100A (ja) 2008-05-15 2009-11-26 Nippon Telegr & Teleph Corp <Ntt> 文書特徴表現計算装置、及びプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05324730A (ja) * 1992-05-27 1993-12-07 Hitachi Ltd 文書情報検索装置
JP2823761B2 (ja) * 1992-12-24 1998-11-11 シャープ株式会社 文書検索装置
JP3019286B2 (ja) * 1993-10-21 2000-03-13 シャープ株式会社 文書検索装置
JPH07182354A (ja) * 1993-12-24 1995-07-21 Fujitsu Ltd 電子文書の作成方法
JP2000201080A (ja) * 1999-01-07 2000-07-18 Fujitsu Ltd 付加コ―ドを用いたデ―タ圧縮/復元装置および方法
CN102141977A (zh) * 2010-02-01 2011-08-03 阿里巴巴集团控股有限公司 一种文本分类的方法及装置
JP6118838B2 (ja) * 2014-08-21 2017-04-19 本田技研工業株式会社 情報処理装置、情報処理システム、情報処理方法、及び情報処理プログラム
US10740678B2 (en) * 2016-03-31 2020-08-11 International Business Machines Corporation Concept hierarchies

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005275880A (ja) 2004-03-25 2005-10-06 Getronics Japan Ltd 字句をデータに変換する装置、方法及びプログラム
JP2009277100A (ja) 2008-05-15 2009-11-26 Nippon Telegr & Teleph Corp <Ntt> 文書特徴表現計算装置、及びプログラム

Also Published As

Publication number Publication date
JP2019159699A (ja) 2019-09-19
US20190278791A1 (en) 2019-09-12

Similar Documents

Publication Publication Date Title
CN104008064A (zh) 用于多级存储器压缩的方法和***
CN107919943A (zh) 二进制数据的编码、解码方法和装置
US20150261990A1 (en) Method and apparatus for compressing dna data based on binary image
JP2011134102A (ja) 情報処理装置及び情報処理方法
KR20160016744A (ko) 플래시 메모리 장치에 데이터를 기록하는 방법, 플래시 메모리 장치, 및 저장 시스템
US10755073B2 (en) Biological-image processing unit and method and program for processing biological image
CN108171189A (zh) 一种视频编码方法、视频编码装置及电子设备
EP3119002B1 (en) Encoding program, encoding method, information processsing device, replacement program, and replacement method
JP7013957B2 (ja) 生成プログラム、生成方法、情報処理装置および情報処理システム
CN102339240B (zh) 检测设备上的状态丢失
JP2017163429A (ja) 時系列データ圧縮装置
US8688947B1 (en) Aligned data access
CN108416425A (zh) 一种卷积方法及装置
EP3070615A1 (en) Information processing apparatus, and data management method
EP3404839A1 (en) Encoding program, encoding device, and encoding method
CN115293076A (zh) 生成电路的方法、电子设备及存储介质
JP4382744B2 (ja) 画像情報抽出方法及び画像情報検索方法及びプログラム
JP4836915B2 (ja) アドレス処理
CN113239852A (zh) 一种基于隐私保护的隐私图像处理方法、装置及设备
US9135009B2 (en) Apparatus and method for compressing instructions and a computer-readable storage media therefor
KR101268452B1 (ko) 가상 세계를 기술하는 데이터 송수신 방법 및 장치
CN112580297B (zh) 一种编解码数据的方法、电子设备及存储介质
JP5895229B2 (ja) 配置決定装置、配置決定方法、データ構造、メモリ、アクセス装置及びメモリアクセス方法
KR100987028B1 (ko) 무작위 데이터가 가지는 정렬 구조의 불확실성을 산출하는 장치 및 그 방법, 상기 방법을 구현하는 프로그램이 기록된기록매체
EP3358748B1 (en) Coding program, coding method, coding device, decoding program, decoding method and decoding device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20201210

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20211022

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20211116

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20211207

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220103