"Tokens" (ネットエンコーダ)

NetEncoder["Tokens"]

標準的な英語の語彙を使って,文字列の単語を整数コードの列に変換するエンコーダを表す.

NetEncoder[{"Tokens","language"}]

指定の言語に標準語彙を使うエンコーダを表す.

NetEncoder[{"Tokens",{token1,token2,}}]

トークンの指定リストを語彙として使うエンコーダを表す.

NetEncoder[{"Tokens",,"param"value}]

追加のパラメータが指定されているエンコーダを表す.

詳細

  • NetEncoder[][input]はエンコーダを入力に適用し,出力を作る.
  • NetEncoder[][{input1,input2,}]はエンコーダを入力のリストに適用し,出力のリストを作る.
  • エンコーダへの入力は文字列またはトークンを表す文字列の付いたTextElementでなければならない.文字列の場合は,トークンへの分割が,"SplitPattern"の値に基づいて通常の式を使って行われる.
  • エンコーダの出力は,1と d+1の間の整数の列でなければならない.ただし,d は語彙内のトークンの数を表す.整数 d+1は入力内のトークンの中で,辞書に出ていないものを表すのに使われる.
  • NumericArrayの出力のタイプは,すべての可能な出力の整数値を表す最小の符号なし整数である.
  • ネットワークの構築時に"port"->NetEncoder[]を指定することで,エンコーダをネットワークの入力ポートに付加することができる.
  • パラメータ
  • 以下のパラメータが指定できる:
  • "IgnoreCase"Trueマッチするトークンを文字列から探すときに,大文字小文字の区別を無視するかどうか
    "SplitPattern"TemplateBox[{WordBoundary, paclet:ref/WordBoundary}, RefLink, BaseStyle -> {3ColumnTableMod}]入力文字列をトークンに分割するために使う文字列パターン
    "TargetLength"All削除,充填した後の最終的な文字列の長さ
  • パラメータ"IgnoreCase"->True を使うと,符号化される前にトークンが小文字に変換される.
  • パラメータ"TargetLength"->All を使うと,入力文字列中のすべてのトークンは符号化される
  • パラメータ"TargetLength"->n を使うと,入力文字列中の最初の n 個のトークンが符号化され,もし n 個に満たなかった場合は充填される.充填値は d+1で,d は語彙内のトークンの数を表す.
  • パラメータ"SplitPattern"->None を使うと,エンコーダへの入力がフォーム{"token1","token2",}の文字列のトークン化されたリストであると仮定される.

例題

すべて開くすべて閉じる

  (1)

英文のためのトークンエンコーダを作る:

英文を符号化する:

語彙外の単語は最大値のコードとして符号化される:

デフォルトによって,単語は単純な通常の式を使って検出される:

単語のリストはTextElementを使って明示的に渡される:

スコープ  (6)

デフォルトのトークンエンコーダを使って文を符号化する:

トークンの指定リストを与える:

区切りのパターンを含むトークンの指定リストを与える:

文字列が4要素の長さになるよう充填またはカットするように指定する:

組込みの辞書を使って言語を指定する:

TextElementとともにカスタムのトークン化を使う:

TextStructureの出力を使って,トークンインデックスのリストを計算する:

木構造が平板化する:

パラメータ  (3)

"IgnoreCase"  (1)

エンコーダの指定を"IgnoreCase"->Trueにすると,要素である文字が大文字小文字の違いがあるトークンでも同等であるとみなされる:

エンコーダの指定を"IgnoreCase"->Falseにすると,上のようにはならない;

"SplitPattern"  (2)

"SplitPattern"を使って数字を分離するエンコーダを作る:

エンコーダは1文字につきトークンを1つ出力する:

これは,連続する文字をすべて1つにまとめるデフォルトの振舞いとは異なる:

"SplitPattern"->None の指定でトークンが2つあるエンコーダを作る:

これでエンコーダは入力がトークンのリストであると考える:

エンコーダはこの場合も例のバッチに適用される: