get_tokenizer(トークナイザー、言語='en')
機能: トークナイザーを使用して文を分割します。
パラメータ:
-
トークナイザー: トークナイザー名。
渡された場合
None
、機能的には同等でありsimple_space_split()
、句読点は分割されません。に渡された場合
"basic_english"
、文字は小文字に変換されてスペースで分割され、句読点は分割されます。に渡された場合
可调用函数
、それが呼び出され、対応する結果が返されます。で渡されると
分词库名称
、対応する結果が返され、シソーラスには spacy、moses、toktok、revotk、subword などが含まれます。 -
言語: 言語名、デフォルトは です
en
。
例:
import torchtext
from torchtext.data.utils import get_tokenizer
# 传入None
tokenizer = get_tokenizer(None)
tokens = tokenizer("You can,\t\tnow\n\ninstall TorchText using pip!!!")
print(tokens)
# 传入"basic_english"
tokenizer = get_tokenizer("basic_english")
tokens = tokenizer("You can,\t\tnow\n\ninstall TorchText using pip!!!")
print(tokens)
# 传入可调用函数
def mySplit(text:str):
return text.split(" ")
tokenizer = get_tokenizer(mySplit)
tokens = tokenizer("You can,\t\tnow\n\ninstall TorchText using pip!!!")
print(tokens)
# 传入分词库名称
tokenizer = get_tokenizer("moses")
tokens = tokenizer("You can,\t\tnow\n\ninstall TorchText using pip!!!")
print(tokens)
結果の例:
['You', 'can,', 'now', 'install', 'TorchText', 'using', 'pip!!!']
['you', 'can', ',', 'now', 'install', 'torchtext', 'using', 'pip', '!', '!', '!']
['You', 'can,\t\tnow\n\ninstall', 'TorchText', 'using', 'pip!!!']
['You', 'can', ',', 'now', 'install', 'TorchText', 'using', 'pip', '!', '!', '!']
ngarms_iterator(token_list, ngrams)
機能: Ngram バッグワードセグメンテーションを生成します。
パラメータ:
- token_list: 単語の分割結果のリスト。
- ngrams: ワードのサイズのバッグ
例:
import torchtext
from torchtext.data.utils import get_tokenizer, ngrams_iterator
tokenizer = get_tokenizer("basic_english")
tokens = tokenizer("You can\t\tnow")
list(ngrams_iterator(tokens, 3))
結果の例:
['you', 'can', 'now', 'you can', 'can now', 'you can now']