當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


R textrecipes step_tokenize_bpe 字符變量的 BPE 標記化


step_tokenize_bpe() 創建配方步驟的規範,該步驟將使用字節對編碼將字符預測器轉換為 token 變量。

用法

step_tokenize_bpe(
  recipe,
  ...,
  role = NA,
  trained = FALSE,
  columns = NULL,
  vocabulary_size = 1000,
  options = list(),
  res = NULL,
  skip = FALSE,
  id = rand_id("tokenize_bpe")
)

參數

recipe

一個recipe 對象。該步驟將添加到此配方的操作序列中。

...

一個或多個選擇器函數用於選擇受該步驟影響的變量。有關更多詳細信息,請參閱recipes::selections()

role

由於沒有創建新變量,因此此步驟未使用。

trained

指示預處理數量是否已估計的邏輯。

columns

將由 terms 參數(最終)填充的變量名稱字符串。在 recipes::prep.recipe() 訓練該步驟之前,這是 NULL

vocabulary_size

整數,表示最終詞匯表中的標記數量。默認為 1000。強烈鼓勵進行調整。

options

傳遞給分詞器的選項列表。

res

一旦 prep.recipe() 訓練了該預處理步驟,擬合的 tokenizers.bpe::bpe() 模型分詞器將存儲在此處。

skip

一個合乎邏輯的。當recipes::bake.recipe() 烘焙食譜時是否應該跳過此步驟?雖然所有操作都是在 recipes::prep.recipe() 運行時烘焙的,但某些操作可能無法對新數據進行(例如處理結果變量)。使用 skip = FALSE 時應小心。

id

該步驟特有的字符串,用於標識它。

recipe 的更新版本,其中新步驟添加到現有步驟(如果有)的序列中。

整理

當您tidy()這一步時,會出現一個帶有列terms(選擇的選擇器或變量)的tibble。

調整參數

此步驟有 1 個調整參數:

  • vocabulary_size : # 詞匯表中的唯一標記(類型:整數,默認值:1000)

箱重

底層操作不允許使用案例權重。

也可以看看

step_untokenize() 取消標記化。

標記化的其他步驟:step_tokenize_sentencepiece()step_tokenize_wordpiece()step_tokenize()

例子

library(recipes)
library(modeldata)
data(tate_text)

tate_rec <- recipe(~., data = tate_text) %>%
  step_tokenize_bpe(medium)

tate_obj <- tate_rec %>%
  prep()

bake(tate_obj, new_data = NULL, medium) %>%
  slice(1:2)
#> # A tibble: 2 × 1
#>       medium
#>    <tknlist>
#> 1 [8 tokens]
#> 2 [3 tokens]

bake(tate_obj, new_data = NULL) %>%
  slice(2) %>%
  pull(medium)
#> <textrecipes_tokenlist[1]>
#> [1] [3 tokens]
#> # Unique Tokens: 3

tidy(tate_rec, number = 1)
#> # A tibble: 1 × 2
#>   terms  id                
#>   <chr>  <chr>             
#> 1 medium tokenize_bpe_hu4WM
tidy(tate_obj, number = 1)
#> # A tibble: 1 × 2
#>   terms  id                
#>   <chr>  <chr>             
#> 1 medium tokenize_bpe_hu4WM
源代碼:R/tokenize_bpe.R

相關用法


注:本文由純淨天空篩選整理自大神的英文原創作品 BPE Tokenization of Character Variables。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。