Nvtext 词干提取#

group 词干提取

枚举

enum class letter_type#

用于指定要检查的字母类型。

enumerator CONSONANT#

字母是辅音。

enumerator VOWEL#

字母不是辅音。

函数

std::unique_ptr<cudf::column> is_letter(cudf::strings_column_view const &input, letter_type ltype, cudf::size_type character_index, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回一个布尔列,指示输入字符串的 character_index 位置的字符是辅音还是元音。

判断辅音和元音的方法在以下论文中描述:https://tartarus.org/martin/PorterStemmer/def.txt

输入列中的每个字符串应包含一个单一的、小写的单词(或子词),不含标点符号和空白字符,否则该字符串的度量值将是未定义的。

此外,该算法仅适用于英文单词。

Example:
st = ["trouble", "toy", "syzygy"]
b1 = is_letter(st, VOWEL, 1)
b1 is now [false, true, true]

负索引值将从每个字符串的末尾开始检查字符。也就是说,对于 character_index < 0,检查字符串 input[i] 的字母位于位置 input[i].length + character_index

Example:
st = ["trouble", "toy", "syzygy"]
b2 = is_letter(st, CONSONANT, -1) // last letter checked in each string
b2 is now [false, true, false]

输入列中行 i 的空元素会在输出列中产生相应的行 i 的空条目。

参数:
  • input – 要测量词语的字符串列

  • ltype – 指定要检查的字母类型

  • character_index – 要检查每个字符串中的字符位置

  • stream – 用于设备内存操作和内核启动的 CUDA 流

  • mr – 用于分配返回列的设备内存的设备内存资源

返回值:

新的 BOOL(布尔)列

std::unique_ptr<cudf::column> is_letter(cudf::strings_column_view const &input, letter_type ltype, cudf::column_view const &indices, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回一个布尔列,指示 input[i] 中位于 indices[i] 位置的字符是辅音还是元音。

判断辅音和元音的方法在以下论文中描述:https://tartarus.org/martin/PorterStemmer/def.txt

输入列中的每个字符串应包含一个单一的、小写的单词(或子词),不含标点符号和空白字符,否则该字符串的度量值将是未定义的。

此外,该算法仅适用于英文单词。

Example:
st = ["trouble", "toy", "syzygy"]
ix = [3, 1, 4]
b1 = is_letter(st, VOWEL, ix)
b1 is now [true, true, false]

负索引值将从每个字符串的末尾开始检查字符。也就是说,如果 indices[i] < 0,检查字符串 strings[i] 的字母位于位置 strings[i].length + indices[i]

Example:
st = ["trouble", "toy", "syzygy"]
ix = [3, -2, 4] // 2nd to last character in st[1] is checked
b2 = is_letter(st, CONSONANT, ix)
b2 is now [false, false, true]

输入列中行 i 的空元素会在输出列中产生相应的行 i 的空条目。

抛出:
参数:
  • input – 要测量词语的字符串列

  • ltype – 指定要检查的字母类型

  • indices – 要检查每个字符串中的字符位置

  • stream – 用于设备内存操作和内核启动的 CUDA 流

  • mr – 用于分配返回列的设备内存的设备内存资源

返回值:

新的 BOOL(布尔)列

std::unique_ptr<cudf::column> porter_stemmer_measure(cudf::strings_column_view const &input, rmm::cuda_stream_view stream = cudf::get_default_stream(), rmm::device_async_resource_ref mr = cudf::get_current_device_resource_ref())#

返回字符串列的 Porter Stemmer 度量值。

Porter 词干提取用于通过移除英文单词的复数和时态结尾来规范化单词。词干提取度量涉及计算字符串内的辅音/元音模式。参考论文:https://tartarus.org/martin/PorterStemmer/def.txt

输入列中的每个字符串应包含一个单一的、小写的单词(或子词),不含标点符号和空白字符,否则该字符串的度量值将是未定义的。

此外,该算法仅适用于英文单词。

Example:
st = ["tr", "troubles", "trouble"]
m = porter_stemmer_measure(st)
m is now [0,2,1]

输入列中行 i 的空元素会在输出列中产生相应的行 i 的空条目。

参数:
  • input – 要测量词语的字符串列

  • mr – 用于分配返回列的设备内存的设备内存资源

  • stream – 用于设备内存操作和内核启动的 CUDA 流

返回值:

新的 INT32(整数)度量值列