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

NetEncoder["Characters"]

ASCII文字列を整数コードの数列に変換するエンコーダを表す.

NetEncoder[{"Characters",table}]

table 内の文字から成る文字列を変換するエンコーダを表す.

NetEncoder[{"Characters",table,form}]

文字列を出力のタイプ form に変換するエンコーダを表す.

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

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

詳細

  • NetEncoder[][input]はエンコーダを文字列に適用し,出力を作る.
  • NetEncoder[][{input1,input2,}]はエンコーダを文字列のリストに適用し,出力のリストを作る.
  • table によって指定される,文字からコードへのマッピングには,以下の形式が使える:
  • "c1c2"各文字 ci を連続する使用可能なコードにマップする
    "c1c2"nすべての文字 ci をコード n にマップする
    "c1c2"Automaticすべての文字 ci を次の使用可能なコードにマップする
    n;;mspecn から m の間の文字を spec にマップする
    {spec1,spec2,}speci からのコード列を割り当てる
  • 以下の記号文字グループが表の中で使用可能である:
  • Automatic表示可能なすべてのASCII文字プラス空白,タブ,改行
    LetterCharacteraからz,およびAからZまでの文字
    DigitCharacter0から9までの数字
    WordCharacterLetterCharacterDigitCharacterの結合
    PunctuationCharacter目に見えるすべてのASCII句読点記号
    WhitespaceCharacter空白,タブ,改行
    StartOfString文字列の始まりの前に置かれるバーチャル文字
    EndOfString文字列の終りの後に置かれるバーチャル文字
    _その他の割り当てられていない文字
  • NetEncoder["Characters"] は典型的な英語の散文に適しており,表示可能なすべてのASCII文字およびタブ,空白,改行から成る.
  • NetEncoder["Characters"]NetEncoder[{"Characters",{"\t","\n",FromCharacterCode[Range[32,126]]}}]に相当する.
  • form"Index"(デフォルト)であるとき,エンコーダの出力は入力文字列に呼応する整数コードで構成される.
  • form"UnitVector"であるとき,エンコーダの出力は n 次元の単位ベクトルで構成される.i 番目のベクトルは pi 番目の方向にあり,pii 番目の文字に呼応するコードである.
  • ネットワークの構築時に"port"->NetEncoder[]を指定すると,エンコーダをネットワークの入力ポートに付加することができる.
  • NetEncoder[{"Characters",}][["Alphabet"]]はエンコーダに認識される文字のリストを作り出す.
  • NetDecoder[NetEncoder[{"Characters",}]]は,指定のエンコーダと同じ符号化によってNetDecoder[{"Characters",}]を作り出す.
  • パラメータ
  • パラメータ"IgnoreCase"Trueを指定すると,大文字も小文字も同じ値として符号化される.デフォルト値は"IgnoreCase"Falseである.
  • デフォルトのパラメータ設定"TargetLength"->Allでは,入力文字列内のすべての文字が符号化される.
  • パラメータ"TargetLength"->n を使うと,入力文字列内の最初の n 個の文字は符号化される.n 個未満の場合は充填される.文字のリストにEndOfStringがある場合は.充填値がそれに関連付けられた整数コードになる.それ以外の場合は最後の文字に関連付けられたコードが使われる.

例題

すべて開くすべて閉じる

  (1)

文字エンコーダを作る:

文字列を符号化する:

スコープ  (7)

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

デフォルトの文字エンコーダでは,非ASCII文字はエラーになる:

未知の文字を特殊コードに送るエンコーダを作る:

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

大文字と小文字を区別しないように指定する:

特定のアルファベットを文字エンコーダに与える:

単位ベクトルに符号化してみる:

文字のセットを単一コードにマップする:

文字のセットを連続するコードにマップする:

エキストラコードを文字列の最初と最後に入れる:

特性と関係  (2)

デフォルトの"Characters"のエンコーダが認識する文字リストを抽出する:

NetDecoderNetEncoderから作り出す: