LLM应用:传统NLP任务
LLM出来以后,知乎上就出现了“传统NLP已死”的言论,但是传统NLP真的就被扔进历史的垃圾桶了吗?

其实,尽管LLM具有出色的通用能力,但仍然无法有效应对低资源领域的自然语言处理任务,如小语种翻译。为了更好地解决这些任务,需要设计有效的方法(如微调或提示技术等),将所需要的任务信息或领域特定知识注入到LLM。在实践中,将大小模型进行融合,从而实现优势互补,也是一个有前景的技术方向。
本文将重点介绍LLM在三大类经典自然语言处理任务上的应用,包括序列标注、关系抽取以及文本生成任务,这些任务构成了许多现有自然语言处理系统和应用的基础。

1、序列标注
序列标注任务,如命名实体识别(NER)和词性标注(POS),是一种基础的自然语言处理任务。
通常来说,这类任务要求为输入文本序列中的每一个词项分配适当的语义类别标签,例如NER任务中经典的B-I-O标记方案(Beginning,Inside和Outside)。在深度学习时代,一种主流的技术方法是通过神经网络模型(如CNN、LSTM或BERT等)对于序列单元进行编码,然后再将编码后的序列作为特征输入到经典的条件随机场模型(CRF)中,进而CRF能够基于编码后的序列特征进行序列标签的结构化预测。
不同于传统方法,LLM可以通过上下文学习或基于特殊提示的方式解决序列标注任务,而无须使用B-I-O标记。
例如,仅需要给予大模型相关的提示(如“请识别出句子中包含的实体”)或任务示例(如“输入文本‘中华人民共和国今天成立了’,请抽取出其所包含的命名实体:‘中华人民共和国’”)即可自动抽取出实体。
然而,LLM在传统序列标注任务上也面临着许多挑战,特别是在识别具有罕见或歧义名称的特殊实体时。原因在于LLM可能会误解特殊实体的含义,将其与常见的非实体词混淆,从而难以根据上下文中的提示和示例准确将它们识别出来。
2、关系抽取
关系抽取任务关注于从非结构化文本数据中自动提取出蕴含的语义关系。
例如,当输入为“莱昂内尔·梅西出生在阿根廷”,其包含的语义关系三元组为“莱昂内尔·梅西-出生地-阿根廷”。通常来说,这类任务会被转化为文本分类或序列标注任务,并可以采用对应的技术方法进行解决。
由于大模型具有出色的推理能力,它能够借助特定提示方法(如上下文学习等)来完成关系抽取任务,并在涉及复杂推理场景的任务中相较于小模型更具优势。然而,当关系标签规模较为庞大时,这些知识信息难以完全通过上下文学习的方式注入到LLM中,可能会出现关系抽取效果较差的情况。
因此,为了提高对各种场景的适应能力,可以使用LLM和小型模型互相配合的方法。例如,利用小模型进行候选关系的初筛,再利用大模型进一步从初筛后的候选关系中推理出最合适关系;也可以采用LLM对于数据进行初步标注,从而丰富可用于训练的小模型的标注数据。这种基于两种模型结合的工作范式在信息抽取场景下具有较好的应用场景。
3、文本生成
文本生成,如机器翻译和自动摘要,是在现实应用中常见的自然语言处理任务。
目前,基于微调的小型语言模型已经被广泛部署于许多产品和系统中。由前述内容所述,LLM具备强大的文本生成能力,通过适当的提示方法,在很多生成任务中能够展现出接近人类的表现。此外,LLM的使用方式更为灵活,可以应对实际应用场景的很多特殊要求。
例如,在翻译过程中,LLM能够与用户形成交互,进一步提高生成质量。
然而,LLM难以有效处理低资源语言或领域下的文本生成任务,例如马拉地语到英语的翻译。这是因为预训练数据中缺乏低资源语言的数据语料,使得LLM无法有效掌握这些语言的语义知识与语法逻辑。

4、展望
LLM和传统小模型具有各自的优点:LLM可以为各种自然语言处理任务提供统一的解决方案,并能够在零样本和少样本场景下取得有竞争力的表现;而小模型能够部署在资源受限的条件下,可以根据目标任务进行特定的训练或调整,在有充足高质量标注数据的情况下可以获得不错的性能表现。在应用中,可以根据实际情况进行选择,综合考虑标注数据可用性、计算效率、部署成本等多方面因素。
在现实生活中,用户的需求通常较为灵活多变,很多任务的解决方案可能需要多次迭代,LLM为此提供了一种高效的人机协作方式,具有较好的应用前景(如办公助手)。尽管语言模型主要源于传统自然语言处理任务,但随着其相关技术的快速发展,LLM已经能够解决更复杂、更高级的任务,自然语言处理领域的研究范畴也不断被拓宽,研究范式也受到了重要影响。
【推广时间】
AI的三大基石是算法、数据和算力,其中数据和算法都可以直接从国内外最优秀的开源模型如Llama 3、Qwen 2获得,但是算力(或者叫做GPU)由于某些众所周知的原因,限制了大部分独立开发者或者中小型企业自建基座模型,因此可以说AI发展最大的阻碍在于算力。
给大家推荐一个性价比超高的GPU算力平台:UCloud云计算旗下的Compshare算力共享平台,目前注册送20元测试金,可以畅享7小时4090算力,预装了主流的大模型和环境的镜像,开箱即用,非常方便。

相关文章:
LLM应用:传统NLP任务
LLM出来以后,知乎上就出现了“传统NLP已死”的言论,但是传统NLP真的就被扔进历史的垃圾桶了吗? 其实,尽管LLM具有出色的通用能力,但仍然无法有效应对低资源领域的自然语言处理任务,如小语种翻译。为了更好地…...
基于Hadoop平台的电信客服数据的处理与分析③项目开发:搭建Kafka大数据运算环境---任务11:基础环境准备
任务描述 任务主要是安装配置基础环境,主要内容包括: 1、安装java Kafka和ZooKeeper都需要安装Java环境,推荐至少Java8及以上版本 2、安装ZooKeeper ZooKeeper是Kafka集群的必要组件 3、安装kafka Kafka版本包括使用的scala语言版本和kafka版…...
Golang中swtich中如何强制执行下一个代码块
switch 语句中的 case 代码块会默认带上 break,但可以使用 fallthrough 来强制执行下一个 case 代码块。 package mainimport ("fmt" )func main() {isSpace : func(char byte) bool {switch char {case : // 空格符会直接 break,返回 false…...
读书笔记-Java并发编程的艺术-第4章(Java并发编程基础)-第2节(启动和终止线程)
文章目录 4.2 启动和终止线程4.2.1 构造线程4.2.2 启动线程4.2.3 理解中断4.2.4 过期的suspend()、resume()和stop()4.2.5 安全地终止线程 4.2 启动和终止线程 在前面章节的示例中通过调用线程的start()方法进行启动,随着run()方法的执行完毕,线程也随之…...
通俗大白话理解Docker
什么是Docker Docker本质上是一种容器化技术,用于将应用程序及其所有依赖打包到一个标准化的单元中。这些单元(容器)可以在任何运行Docker的机器上运行。每个容器是相互隔离的,具有自己的文件系统、网络和进程空间。 以下是大白话…...
题解:CF1981C(Turtle and an Incomplete Sequence)
题解:CF1981C(Turtle and an Incomplete Sequence) Part 1:题意理解 地址链接:CF、洛谷。题面翻译:给定一个长度为 n n n 的序列 a a a,其中有一些元素未知,用 − 1 -1 −1 表示…...
Swift 中强大的 Key Paths(键路径)机制趣谈(上)
概览 小伙伴们可能不知道:在 Swift 语言中隐藏着大量看似“其貌不扬”实则却让秃头码农们“高世骇俗”,堪称卧虎藏龙的各种秘技。 其中,有一枚“不起眼”的小家伙称之为键路径(Key Paths)。如若将其善加利用ÿ…...
(十二)纹理和采样
纹理 在绘制三角形的过程中,将图片贴到三角形上进行显示的过程,就是纹理贴图的过程 uv坐标 如果如果图片尺寸和实际贴图尺寸不一致,就会导致像素不够用了的问题 纹理与采样 纹理对象(Texture):在GPU端,用来以一…...
QT创建地理信息shp文件编辑器shp_editor
空闲之余创建一个简单的矢量shp文件编辑器,加深对shp文件的理解。 一、启动程序 二、打开shp文件 三、显示shp文件的几何图形 四、双击右边表格中的feature,主窗体显示选中feature的各个节点。 五、鼠标在主窗体中选中feature的节点,按鼠标左…...
解析Kotlin中扩展函数与扩展属性【笔记摘要】
1.扩展函数 1.1 作用域:扩展函数写的位置不同,作用域就也不同 扩展函数可以写成顶层函数(Top-level Function),此时它只属于它所在的 package。这样你就能在任何类里使用它: package com.rengwuxianfun …...
【Java学习笔记】java图形界面编程
在前面的章节中,我们开发运行的应用程序都没有图形界面,但是很多应用软件,如Windows下的Office办公软件、扑克牌接龙游戏软件、企业进销存ERP系统等,都有很漂亮的图形界面。素以需要我们开发具有图形界面的软件。 Java图形界面编程…...
STM32入门笔记(03): ADC(SPL库函数版)(2)
A/D转换的常用技术有逐次逼近式、双积分式、并行式和跟踪比较式等。目前用的较多的是前3种。 A/D转换器的主要技术指标 转换时间 分辨率 例如,8位A/D转换器的数字输出量的变化范围为0~255,当输入电压的满刻度为5V时,数字量每变化…...
2024年7月2日 (周二) 叶子游戏新闻
老板键工具来唤去: 它可以为常用程序自定义快捷键,实现一键唤起、一键隐藏的 Windows 工具,并且支持窗口动态绑定快捷键(无需设置自动实现)。 卸载工具 HiBitUninstaller: Windows上的软件卸载工具 经典名作30周年新篇《恐怖惊魂夜…...
如何使用Spring Boot Profiles进行环境配置管理
如何使用Spring Boot Profiles进行环境配置管理 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将深入探讨如何利用Spring Boot Profiles来管理不同环境…...
Java错题归纳(二)
1、若有如下接口A的定义,下列哪些类下确实现了该接口:C interface A { void method1(int i); void method2(int j); } A class B implements A{ void method1( ) { } void method2( ) { } } B class B implements A { void method1(int i ) { }…...
Grafana面试题精选和参考答案
目录 Grafana是什么以及它的主要应用场景 Grafana支持的数据源 Grafana的体系结构及主要组件 Grafana如何实现数据的可视化和监控 Grafana支持的图表类型 如何在Grafana中创建和编辑仪表盘 Grafana的查询编辑器功能 Grafana支持的认证方式 Grafana的性能调优建议 Gra…...
Node版本管理工具 fnm 安装使用
fnm 是一个基于 Rust 开发的 Node 版本管理工具,它的目标是提供一个快速、简单且可靠的方式来管理 Node.js 的不同版本。同时,它是跨平台的,支持 macOS、Linux、Windows。🚀 Fast and simple Node.js version manager, built in R…...
vector模拟实现【C++】
文章目录 全部的实现代码放在了文章末尾准备工作包含头文件定义命名空间和类类的成员变量 迭代器迭代器获取函数 构造函数默认构造使用n个值构造迭代器区间构造解决迭代器区间构造和用n个值构造的冲突拷贝构造 析构函数swap【交换函数】赋值运算符重载emptysize和capacityopera…...
《每天5分钟用Flask搭建一个管理系统》第11章:测试与部署
第11章:测试与部署 11.1 测试的重要性 测试是确保应用质量和可靠性的关键步骤。它帮助开发者发现和修复错误,验证功能按预期工作。 11.2 Flask测试客户端的使用 Flask提供了一个测试客户端,可以在开发过程中模拟请求并测试应用的响应。 …...
Landsat数据从Collection1更改为Collection2
目录 问题解决 问题 需要注意!您使用的是废弃的陆地卫星数据集。为确保功能持续,请在2024年7月1日前更新。 在使用一些以前的代码时会遇到报错,因为代码里面用的是老的数据集 解决 对于地表反射率SR,需要在name中,将C01换为C02&…...
【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...
XCTF-web-easyupload
试了试php,php7,pht,phtml等,都没有用 尝试.user.ini 抓包修改将.user.ini修改为jpg图片 在上传一个123.jpg 用蚁剑连接,得到flag...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
(十)学生端搭建
本次旨在将之前的已完成的部分功能进行拼装到学生端,同时完善学生端的构建。本次工作主要包括: 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...
现代密码学 | 椭圆曲线密码学—附py代码
Elliptic Curve Cryptography 椭圆曲线密码学(ECC)是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础,例如椭圆曲线数字签…...
leetcodeSQL解题:3564. 季节性销售分析
leetcodeSQL解题:3564. 季节性销售分析 题目: 表:sales ---------------------- | Column Name | Type | ---------------------- | sale_id | int | | product_id | int | | sale_date | date | | quantity | int | | price | decimal | -…...
Spring AI与Spring Modulith核心技术解析
Spring AI核心架构解析 Spring AI(https://spring.io/projects/spring-ai)作为Spring生态中的AI集成框架,其核心设计理念是通过模块化架构降低AI应用的开发复杂度。与Python生态中的LangChain/LlamaIndex等工具类似,但特别为多语…...
算法:模拟
1.替换所有的问号 1576. 替换所有的问号 - 力扣(LeetCode) 遍历字符串:通过外层循环逐一检查每个字符。遇到 ? 时处理: 内层循环遍历小写字母(a 到 z)。对每个字母检查是否满足: 与…...
在Mathematica中实现Newton-Raphson迭代的收敛时间算法(一般三次多项式)
考察一般的三次多项式,以r为参数: p[z_, r_] : z^3 (r - 1) z - r; roots[r_] : z /. Solve[p[z, r] 0, z]; 此多项式的根为: 尽管看起来这个多项式是特殊的,其实一般的三次多项式都是可以通过线性变换化为这个形式…...
Web后端基础(基础知识)
BS架构:Browser/Server,浏览器/服务器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存储在服务端。 优点:维护方便缺点:体验一般 CS架构:Client/Server,客户端/服务器架构模式。需要单独…...
