mindspore/docs/api/api_python/dataset/mindspore.dataset.Dataset.c...

34 lines
2.7 KiB
ReStructuredText
Raw Normal View History

2022-01-24 16:31:13 +08:00
.. py:method:: build_sentencepiece_vocab(columns, vocab_size, character_coverage, model_type, params)
2022-01-19 11:26:42 +08:00
2022-01-24 16:31:13 +08:00
迭代源数据集对象获取数据并构建SentencePiece词汇表。
2022-01-19 11:26:42 +08:00
2022-07-06 17:30:12 +08:00
参数:
- **columns** (list[str]) - 指定 `build_sentencepiece_vocab` 操作的输入列,会从该列获取数据构造词汇表。
- **vocab_size** (int) - 词汇表的容量。
- **character_coverage** (float) - 模型涵盖的字符百分比必须介于0.98和1.0之间。
对于具有丰富字符集的语言如日语或中文字符集推荐使用0.9995对于其他字符集较小的语言比如英语或拉丁文推荐使用1.0。
- **model_type** (SentencePieceModel) - 训练的SentencePiece模型类型可取值为'SentencePieceModel.UNIGRAM'、'SentencePieceModel.BPE'、'SentencePieceModel.CHAR'或'SentencePieceModel.WORD'。
当取值为'SentencePieceModel.WORD'时输入的数据必须进行预分词pretokenize。默认值SentencePieceModel.UNIGRAM。
- **params** (dict) - 如果希望使用SentencePiece的其他参数可以构造一个dict进行传入键为SentencePiece库接口的输入参数名值为参数值。
返回:
构建好的SentencePiece词汇表。
2022-01-19 11:26:42 +08:00
2022-01-24 16:31:13 +08:00
.. py:method:: build_vocab(columns, freq_range, top_k, special_tokens, special_first)
2022-01-19 11:26:42 +08:00
2022-01-24 16:31:13 +08:00
迭代源数据集对象获取数据并构建词汇表。
2022-01-19 11:26:42 +08:00
2022-01-24 16:31:13 +08:00
收集数据集中所有的不重复单词,并返回 `top_k` 个最常见的单词组成的词汇表(如果指定了 `top_k` )。
2022-01-19 11:26:42 +08:00
2022-07-06 17:30:12 +08:00
参数:
- **columns** (Union[str, list[str]]) - 指定 `build_vocab` 操作的输入列,会从该列获取数据构造词汇表。
- **freq_range** (tuple[int]) - 由(min_frequency, max_frequency)组成的整数元组,代表词汇出现的频率范围,在这个频率范围的词汇会被保存下来。
取值范围需满足0 <= min_frequency <= max_frequency <= 单词总数其中min_frequency、max_frequency的默认值分别设置为0、单词总数。
- **top_k** (int) - 使用 `top_k` 个最常见的单词构建词汇表。假如指定了参数 `freq_range` ,则优先统计给定频率范围内的词汇,再根据参数 `top_k` 选取最常见的单词构建词汇表。
如果 `top_k` 的值大于单词总数,则取所有单词构建词汇表。
- **special_tokens** (list[str]) - 指定词汇表的特殊标记special token如'[UNK]'、'[SEP]'。
- **special_first** (bool) - 是否将参数 `special_tokens` 指定的特殊标记添加到词汇表的开头。如果为True则放到开头否则放到词汇表的结尾。
返回:
构建好的词汇表。