词频统计是指输入一些字符串(手动输入或者从指定的文件读取),用程序来统计这些字符串中总共有多少个单词,每个单词出现的次数。单词的总数(即为Total)为不重复的单词数总和。本文为您介绍PAI-Studio提供的词频统计。

词频指词的频率,即词在一定的语料中出现的次数。请在对文档进行分词的基础上,按行保序输出对应文档ID列(docId)对应的词,统计指定文档ID列对应文档内容(docContent)的词频。

配置组件

您可以通过以下任意一种方式,配置词频统计参数:
  • 可视化方式
    页签 参数 描述
    字段设置 选择文档ID列 选择文档ID列。
    选择文档内容列 选择文档内容列。
    执行调优 核心数
    每个核心的内存 单个节点内存大小,单位为MB。
  • PAI命令方式
    pai -name doc_word_stat
        -project algo_public
        -DinputTableName=tdl_doc_test_split_word
        -DdocId=docid
        -DdocContent=content
        -DoutputTableNameMulti=doc_test_stat_multi
        -DoutputTableNameTriple=doc_test_stat_triple
        -Dlifecycle=7
    参数名称 是否必选 描述 默认值
    inputTableName 输入表名称。
    docId 标识文档ID的列名,仅可指定一列。
    docContent 标识文档内容的列名,仅可指定一列。
    outputTableNameMulti 输出保序词语表名。
    outputTableNameTriple 输出词频统计表名。
    inputTablePartitions 输入表中,参与训练的分区。系统支持以下格式:
    • Partition_name=value
    • name1=value1/name2=value2:多级分区
    说明 指定多个分区时,分区之间使用英文逗号(,)分隔。
    选择所有分区
    lifecycle 输出表生命周期。正整数。 -1

示例

采用阿里分词实例数据中,将分别将输出表的两个列作为词频统计的输入参数:
  • 选择文档ID列:ID。
  • 选择文档内容列:text经过词频统计运算后,生成的结果见本组件中第一个输出参数展示图。
PAI命令行
pai -name doc_word_stat
    -project algo_public
    -DinputTableName=tdl_doc_test_split_word
    -DdocId=id
    -DdocContent=content
    -DoutputTableNameMulti=doc_test_stat_multi
    -DoutputTableNameTriple=doc_test_stat_triple
    -DinputTablePartitions="region=cctv_news"
    -Dlifecycle=7

输入参数:经过分词组件生成两列—文档ID列和分词后的文档内容列。

两个输出参数:
  • 第一个输出端:输出表包含idwordcount三个字段。1
    说明 count用于统计每个文档中,对应word词汇出现的次数。
  • 第二个输出端:输出包含idword两个字段。2

    本端口输出表按词语在文档中出现的顺序依次输出,没有统计词语的出现次数,因此同一文档中某个词汇可能出现多条记录。 包输出表格式主要用于兼容Word2Vec组件。

常见问题

  • 参数outputTableNameMulti指定的表是docId列及docId列对应的文档内容(docContent)完成分词后,按各个词语在文档中出现的顺序依次输出。
  • 参数outputTableNameTriple指定的表输出docId列及docId列对应的文档内容(docContent