4. 文本语料的数据分析4.1 标签数量分布4.2 句子长度分布4.3 词频统计与关键词词云5. 文本特征处理5.1 添加n-gram特征5.2 文本长度规范6. 文本数据增强6.1 回译数据增强法1️⃣ 概念一般基于google/百度/获取其他翻译接口将句子先翻译成另外 一种或者几种语言再翻译回原语言实现样本句子增多的方法2️⃣ 优势操作简便3️⃣ 存在问题短文本回译 语料易重复多次翻译语料易失真4️⃣ 高重复率解决办法连续的多语言翻译中文→韩文→日语→英文→中文一般不超过3次更多的翻译次数将产生效率低下,语义失真等问题6.2 使用 qwen-plus 实现回译数据增强法① 操作百炼API 参考上 —》OpenAI兼容-Chat左可看到 Python、Java 右 —》将内容拷贝到本地代码② API Key获取模型上 —》API Key左复制到 代码的环境配置文件.env 中代码实现1️⃣ 先导包从 dotenv中导入 load_dotenv包from dotenv import load_dotenv使用load_dotenv()加载 .env环境变量2️⃣ 获取客户端代理 client OpenAI(api_keyxx, base_urlxx)3️⃣ 导入提示词with open(./prompt.txt, r, encodingutf-8) as f: system_content f.read()4️⃣ 调用接口获取翻译结果completionclient.chat.completions.create(modelqwen-plus,messages[# 列表中多个元素每个元素有两个键值对组成role、content{role:system,content:system_content},# 提示词{role:user,content:sent},# 要翻译的文本])6.2.1 代码 homework: 使用 ds 实现回译数据增强法 todo 1 api-key2 model 指定模型 # 1 导包importosfromopenaiimportOpenAIfromdotenvimportload_dotenv load_dotenv()# 加载.env环境变量# 2 获取代理 客户端clientOpenAI(# 若没有配置环境变量请用百炼API Key将下行替换为api_keysk-xxxapi_keyos.getenv(DASHSCOPE_API_KEY),base_urlhttps://dashscope.aliyuncs.com/compatible-mode/v1,)# 3 导入提示词withopen(./prompt.txt,r,encodingutf-8)asf:system_contentf.read()sent我爱上海陆家嘴陆家嘴是真繁华。# 4 调用接口获取翻译结果completionclient.chat.completions.create(# 模型列表https://help.aliyun.com/zh/model-studio/getting-started/modelsmodelqwen-plus,# 自动帮忙指定了qwen-plus模型qwen-plus是一个文本模型messages[{role:system,content:system_content},# 提示词{role:user,content:sent},# 要翻译的文本])# 5 打印结果# print(completion)# print( * 100)# print(completion.model_dump_json())print(completion.choices[0].message.content)6.2.2 运行结果7. 迭代器生成器可迭代对象可迭代对象(iter) 选代器(iter next) 生成器(iter next yield)Iterator 和 Generator都可通过next()获取下一个元素fromcollections.abcimportIterable,Iterator,Generator# 可选代对象(iter)选代器(iter next)生成器(iter next yield)# Iterator 和 Generator都可通过next()获取下一个元素# 1.可迭代对象data[1,2,3]# list列表print(fdata是否是 可迭代对象{isinstance(data,Iterable)})# Trueprint(fdata是否是 迭代器{isinstance(data,Iterator)})# False# 2.迭代器ititer(data)print(fit是否是 可迭代对象{isinstance(it,Iterable)})# Trueprint(fit是否是 迭代器{isinstance(it,Iterator)})# Trueprint(fit是否是 生成器{isinstance(it,Generator)})# False# 3.生成器defmy_generator():yield1yield2yield3genmy_generator()print(fgen是否是 可迭代对象{isinstance(gen,Iterable)})# Trueprint(fgen是否是 迭代器{isinstance(gen,Iterator)})# Trueprint(fgen是否是 生成器{isinstance(gen,Generator)})# Trueprint(next(gen))# 1print(next(gen))# 2print(next(gen))# 3print(next(gen))# 此行会报错因为gen元素已经读完了
2. 文本预处理_2
发布时间:2026/5/27 17:41:49
4. 文本语料的数据分析4.1 标签数量分布4.2 句子长度分布4.3 词频统计与关键词词云5. 文本特征处理5.1 添加n-gram特征5.2 文本长度规范6. 文本数据增强6.1 回译数据增强法1️⃣ 概念一般基于google/百度/获取其他翻译接口将句子先翻译成另外 一种或者几种语言再翻译回原语言实现样本句子增多的方法2️⃣ 优势操作简便3️⃣ 存在问题短文本回译 语料易重复多次翻译语料易失真4️⃣ 高重复率解决办法连续的多语言翻译中文→韩文→日语→英文→中文一般不超过3次更多的翻译次数将产生效率低下,语义失真等问题6.2 使用 qwen-plus 实现回译数据增强法① 操作百炼API 参考上 —》OpenAI兼容-Chat左可看到 Python、Java 右 —》将内容拷贝到本地代码② API Key获取模型上 —》API Key左复制到 代码的环境配置文件.env 中代码实现1️⃣ 先导包从 dotenv中导入 load_dotenv包from dotenv import load_dotenv使用load_dotenv()加载 .env环境变量2️⃣ 获取客户端代理 client OpenAI(api_keyxx, base_urlxx)3️⃣ 导入提示词with open(./prompt.txt, r, encodingutf-8) as f: system_content f.read()4️⃣ 调用接口获取翻译结果completionclient.chat.completions.create(modelqwen-plus,messages[# 列表中多个元素每个元素有两个键值对组成role、content{role:system,content:system_content},# 提示词{role:user,content:sent},# 要翻译的文本])6.2.1 代码 homework: 使用 ds 实现回译数据增强法 todo 1 api-key2 model 指定模型 # 1 导包importosfromopenaiimportOpenAIfromdotenvimportload_dotenv load_dotenv()# 加载.env环境变量# 2 获取代理 客户端clientOpenAI(# 若没有配置环境变量请用百炼API Key将下行替换为api_keysk-xxxapi_keyos.getenv(DASHSCOPE_API_KEY),base_urlhttps://dashscope.aliyuncs.com/compatible-mode/v1,)# 3 导入提示词withopen(./prompt.txt,r,encodingutf-8)asf:system_contentf.read()sent我爱上海陆家嘴陆家嘴是真繁华。# 4 调用接口获取翻译结果completionclient.chat.completions.create(# 模型列表https://help.aliyun.com/zh/model-studio/getting-started/modelsmodelqwen-plus,# 自动帮忙指定了qwen-plus模型qwen-plus是一个文本模型messages[{role:system,content:system_content},# 提示词{role:user,content:sent},# 要翻译的文本])# 5 打印结果# print(completion)# print( * 100)# print(completion.model_dump_json())print(completion.choices[0].message.content)6.2.2 运行结果7. 迭代器生成器可迭代对象可迭代对象(iter) 选代器(iter next) 生成器(iter next yield)Iterator 和 Generator都可通过next()获取下一个元素fromcollections.abcimportIterable,Iterator,Generator# 可选代对象(iter)选代器(iter next)生成器(iter next yield)# Iterator 和 Generator都可通过next()获取下一个元素# 1.可迭代对象data[1,2,3]# list列表print(fdata是否是 可迭代对象{isinstance(data,Iterable)})# Trueprint(fdata是否是 迭代器{isinstance(data,Iterator)})# False# 2.迭代器ititer(data)print(fit是否是 可迭代对象{isinstance(it,Iterable)})# Trueprint(fit是否是 迭代器{isinstance(it,Iterator)})# Trueprint(fit是否是 生成器{isinstance(it,Generator)})# False# 3.生成器defmy_generator():yield1yield2yield3genmy_generator()print(fgen是否是 可迭代对象{isinstance(gen,Iterable)})# Trueprint(fgen是否是 迭代器{isinstance(gen,Iterator)})# Trueprint(fgen是否是 生成器{isinstance(gen,Generator)})# Trueprint(next(gen))# 1print(next(gen))# 2print(next(gen))# 3print(next(gen))# 此行会报错因为gen元素已经读完了