SequencePredict

SequencePredict[{seq1,seq2,}]

与えられた列に基づいてSequencePredictorFunction[]を生成する.

SequencePredict[training,seq]

与えられた訓練列から列 seq の中の次の要素を予測しようとする.

SequencePredict[training,{seq1,seq2,}]

seqiのそれぞれについての予測を与える.

SequencePredict["name",seq]

"name"で表される組込みの列予測器を使う.

SequencePredict[,seq,prop]

seq に関連付けられた予測の指定された特性を与える.

詳細とオプション

  • seqiはトークンまたは文字列のリストでよい.
  • seqiは,もとになる無限列の順序付けられていない部分列であると仮定される.
  • SequencePredict[,seq,prop]の特性はSequencePredictorFunction[]で与えられ,以下が含まれる.
  • "NextElement"最も可能性が高い次の要素
    "NextElement"n個別に最も可能性が高い次の n 個の要素
    "NextSequence"n最も可能性が高い次の長さ n の要素列
    "RandomNextElement"次の要素の分布からのランダムなサンプル
    "RandomNextElement"n次の列の分布からのランダムなサンプル
    "Probabilities"可能なすべての次の要素についての確率の連想
    "SequenceProbability"指定された列を生成する予測器についての確率
    "SequenceLogProbability"列を生成する予測器についての対数確率
    "Properties"使用可能な全特性のリスト
  • 次は,組込みの列予測器の例である.
  • "Chinese"文字ベースの中国語テキスト
    "English"文字ベースの英語テキスト
    "French"文字ベースのフランス語テキスト
    "German"文字ベースのドイツ語テキスト
    "Portuguese"文字ベースのポルトガル語テキスト
    "Russian"文字ベースのロシア語テキスト
    "Spanish"文字ベースのスペイン語テキスト
  • 次のオプションを与えることができる.
  • FeatureExtractor Automatic列の前処理をどのように行うか
    Method Automatic使用する予測アルゴリズム
    PerformanceGoal Automaticパフォーマンスのどの面について最適化するか
    RandomSeeding1234どのような擬似乱数生成器のシードを内部的に使うべきか
  • 次は,文字列に使われるFeatureExtractorのよく使われる設定である.
  • "SegmentedCharacters"文字の列として解釈される文字列(デフォルト)
    "SegmentedWords"単語の列として解釈される文字列
  • 次は,PerformanceGoalの可能な設定である.
  • "Memory"予測器の保存に必要な条件を最小にする
    "Quality"予測器の確度を最大にする
    "Speed"予測器の速度を最大にする
    "TrainingSpeed"予測器の生成にかかる時間を最小にする
    Automatic速度,確度,メモリの自動トレードオフ
  • PerformanceGoal{goal1,goal2,}は,自動的に goal1goal2等を組み合せる.
  • RandomSeedingの可能な設定
  • Automatic関数が呼び出されるたびに自動的にシードを変える
    Inherited外部シードの乱数を使う
    seed明示的な整数または文字列をシードとして使う
  • 次はMethodの可能な設定である.
  • "Markov"マルコフモデル
  • SequencePredict[,Method{"Markov","Order"order}]order はマルコフ過程のメモリサイズに相当する.
  • SequencePredict[,"SequenceProbability"]では,未知の要素について保存される確率質量がある.
  • SequencePredict[training,{},prop]{}は空の列ではなく列の空リストとして解釈される.

例題

すべて開くすべて閉じる

  (1)

列の集合について列予測器を訓練する:

新たな列の次の要素を予測する:

列が与えられた場合に次の要素の確率を得る:

上記の分布に従ってランダムに次の要素を得る:

複数の予測を一度に得る:

最も可能性が高い次の要素を予測し,この中間予測を使ってその次の要素を予測する:

最も可能性が高い次の列を予測する:

上記の列の確率を比較する:

スコープ  (4)

カスタム文字列予測器  (3)

列予測器を列のリストについて訓練する:

与えられた列に続く文字を予測する:

次の4文字を予測する:

各文字が与えられた列に続く確率を得る:

列予測器を一般的な英単語のリストについて訓練する.各単語は文字列として扱われる:

列が与えられた際に,次に来る確率が最も高い文字を予測する:

前の例では,各単語は無限列の部分列とみなされた.記号 | を使って単語間の境界を記す:

単語の境界を知っている新たな列予測器を構築する:

英語のような単語の語頭を生成する:

ExampleDataから本をロードする:

列予測器をこの本で訓練する:

ランダムな列をこの本のスタイルでサンプルとして取り出す:

文字列を文字の列ではなく単語の列として解釈する別の列予測器を訓練する:

連続する10単語(スペースと句読点は単語とみなす)で上記の文字列を完成する:

組込み文字列予測器  (1)

"English"の組込み文字列予測器をダウンロードする:

与えられた文字列の対数確率を得る:

オプション  (5)

FeatureExtractor  (2)

文字レベルではなく単語レベルで予測するように訓練テキストを前処理する:

上記の文字列を連続する10単語(スペースや句読点も単語とみなす)で完成する:

訓練テキストを小文字に前処理し,より文字数が多い場合のよりよい統計を得る:

PerformanceGoal  (2)

結果のモデルメモリのフットプリントを重視して分類器を訓練する:

自動的に生成されたモデルサイズと比較する:

完全な列確率空間を探る際に,計算時間と精度を調整する:

速度を重視して近似した探索:

緻密な探索を重視すると計算時間が長くなる:

結果を比較する:

Method  (1)

訓練部分列について訓練されたマルコフ過程にメモリサイズ3を指定する:

考えられる問題  (1)

空リストは中に列がないリストとして解釈され,空リストが返される:

空の列を完成する最も可能性が高い次の要素を得るため,曖昧さを避けるためにこれを2番目のリストにネストさせる:

Wolfram Research (2017), SequencePredict, Wolfram言語関数, https://reference.wolfram.com/language/ref/SequencePredict.html (2017年に更新).

テキスト

Wolfram Research (2017), SequencePredict, Wolfram言語関数, https://reference.wolfram.com/language/ref/SequencePredict.html (2017年に更新).

CMS

Wolfram Language. 2017. "SequencePredict." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2017. https://reference.wolfram.com/language/ref/SequencePredict.html.

APA

Wolfram Language. (2017). SequencePredict. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/SequencePredict.html

BibTeX

@misc{reference.wolfram_2024_sequencepredict, author="Wolfram Research", title="{SequencePredict}", year="2017", howpublished="\url{https://reference.wolfram.com/language/ref/SequencePredict.html}", note=[Accessed: 03-December-2024 ]}

BibLaTeX

@online{reference.wolfram_2024_sequencepredict, organization={Wolfram Research}, title={SequencePredict}, year={2017}, url={https://reference.wolfram.com/language/ref/SequencePredict.html}, note=[Accessed: 03-December-2024 ]}