4_1:文章の自動生成

charRNN() (LSTMGenerator()

LSTM (Long Short Term Memory、長短期記憶)ネットワークは、たとえばテキストの文字や音楽の音符など、連続しそのつながりの順番が意味を持つデータを扱うときに有用なニューラルネットワークのアーキテクチャの1タイプです。このクラスを使用すると、テキスト本体に訓練済みモデルを実行し、新しいテキストを生成させることができます。

自分のモデルがある場合、このチュートリアルを参考にするとモデルが訓練できます。また訓練済みモデルを使用することもできます。

ml5.LSTMGenerator()は廃止されたようで、サンプルコードはml5.charRNN()に置き換えられています。しかし公式のドキュメントは古いまま更新されていません。以下ではml5.LSTMGenerator()をml5.charRNN()に置き換えて訳しています。

シンタックス

ml5.LSTMGenerator(model, ?callback)
ml5.charRNN(model, ?callback)

パラメータ

model – 訓練されたLSTMモデルへのパス
callback – オプション。モデルがロードされたときに呼び出される関数。callbackが与えられない場合には、モデルがロードされたときに解決するPromiseを返す。

プロパティ

.ready – モデルがロードされたかどうかを表すブール値。
.model – 訓練済みのLSTMモデル
.vocabSize – ボキャブラリのサイズ(使用可能な文字の総数)

メソッド

.generate(options, ?callback) – 元になるテキスト(シードテキスト)をベースに、内容を生成する。文字列を返す。

options – seed、length、temperatureの入力パラメータを指定するオブジェクト。デフォルトのlengthは20、temperatureは0.5。seedはモデルからのランダムな文字。オブジェクトは次のようになる。

{
  seed: 'The meaning of pizza is'
  length: 20,
  temperature: 0.5
}

callback – オプション。モデルが内容を生成したときに呼び出される関数。callbackが与えられない場合には、モデルが新しい内容を生成したときに解決するPromiseを返す。

このほか、reset()やfeed()、predict()などのメソッドがあるようですが、ドキュメント化されていません。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA