トークン カウント ベクトル器

テキストの標本のコレクションをトークンのカウントのベクトルに変換します。

コンストラクタのパラメータ

  • $tokenizer (Tokenizer) - トークナイザ オブジェクト (以下を見てください)
  • $minDF (float) - 標本の頻度が指定された閾値より厳密に低いトークンを無視します。この値は文字通りの意味でカットオフとも呼ばれます。(デフォルト 0)
use Phpml\FeatureExtraction\TokenCountVectorizer;
use Phpml\Tokenization\WhitespaceTokenizer;

$vectorizer = new TokenCountVectorizer(new WhitespaceTokenizer());

変換

テキストの標本のコレクションを変換するには、transform メソッドを使います。例:

$samples = [
    'Lorem ipsum dolor sit amet dolor',
    'Mauris placerat ipsum dolor',
    'Mauris diam eros fringilla diam',
];

$vectorizer = new TokenCountVectorizer(new WhitespaceTokenizer());
$vectorizer->transform($samples)
// return $vector = [
//    [0 => 1, 1 => 1, 2 => 2, 3 => 1, 4 => 1],
//    [5 => 1, 6 => 1, 1 => 1, 2 => 1],
//    [5 => 1, 7 => 2, 8 => 1, 9 => 1],
//];

語彙

getVocabulary() メソッドを使って語彙を抽出することができます。例:

$vectorizer->getVocabulary();
// return $vocabulary = ['Lorem', 'ipsum', 'dolor', 'sit', 'amet', 'Mauris', 'placerat', 'diam', 'eros', 'fringilla'];

トークナイザ

  • WhitespaceTokenizer - 空白によってトークンを選択します。
  • WordTokenizer - 2つ以上のアルファベットの文字のトークンを選択します(句読点は完全に無視され、常にトークンの区切りとして扱われます)。