自然语言处理的任务覆盖了从词到篇章的多个层次,常见的可以分为以下几类:
- 文本基础处理
这是最底层的任务,用于清洗和结构化文本。
· 分词:将连续文本切分成有意义的词或字(对中文等语言尤为重要)。
· 词性标注:为每个词标注名词、动词等词性。
· 命名实体识别:提取文本中的人名、地名、时间等专有名词。
- 文本理解与分析
旨在让机器把握文本的含义。
· 关键词提取:自动找出能代表文本核心内容的关键词或短语。
· 文本分类:将文本按主题、情感等类别归类,如新闻分类、垃圾邮件过滤。
· 情感分析:判断文本表达的情绪倾向,如正面、负面或中性。
· 文本匹配:判断两段文本的相似度或逻辑关系。
- 结构预测
分析文本内部的结构和关系。
· 句法分析:分析句子的语法结构,如主谓宾关系。
· 指代消解:确定代词(如"他"、"它")具体指代哪个名词。
· 关系抽取:从文本中抽取实体之间的语义关系,如从"比尔盖茨创立了微软"中抽取出(比尔盖茨,创始人,微软)。
- 自然语言生成
根据输入信息,生成人类可读的文本。
· 机器翻译:将一种语言的文本自动翻译成另一种语言。
· 文本摘要:将长文本压缩成短摘要,分为抽取式(摘录原文句子)和生成式(自己组织语言重写)。
· 文本生成:根据提示或数据生成连贯的新文本,如写诗、新闻报道等。
· 数据到文本:将结构化数据(如表格、JSON)转换成自然语言描述。
- 交互与对话
实现人机用自然语言交流。
· 问答系统:根据问题直接给出答案,如搜索引擎、智能客服。
· 对话系统:进行多轮交互,完成特定任务(如订票)或开放闲聊。
- 高级综合任务
通常需要融合以上多项能力。
· 信息抽取:从非结构化文本中抽取出结构化信息(如事件的时间、地点、人物等)。
· 语义解析:将自然语言转换成机器可执行的逻辑形式,如将"明天的天气"转为SQL查询语句。
- 信息检索
主要涉及从大规模文本集合中查找信息。
· 文档检索:根据查询词找出相关文档。
· 智能问答:在检索基础上进行答案抽取。
总的来说,这些任务有些侧重理解(如分类、情感分析),有些侧重生成(如翻译、摘要),而很多实际应用(如智能助手)则同时依赖多种任务。