当前位置: 首页 > news >正文

知识图谱(七)之数据处理

一数据标注回顾

1.1整体思路

  1. 现在我们有txt和txtroiginal.

txt里面是标注数据,txtoriginal里面是原始数据,数据如下:

txt:

txtoriginal:

  1. 根据标注数据和标签类型构建字典

这是标签类型:

  1. 遍历原始数据,通过索引和标签的字典,给想引得位置打上标签.通过索引查字典,如果能查到则将对应的value作为标签,否则打上o的标签.

二代码实现

2.1使用路径拼接读取数据

import os import json cur = os.getcwd() print(cur) os.chdir('..') cur = os.getcwd() print(f'修改以后的目录{cur}') path=os.path.join(cur,'data/labels.json') print(f'拼接后的路径{path}') labels=json.load(open(path,'r',encoding='utf-8')) print(f'labels->{labels}')

2.1.1补充os.getcwd()方法:这个方法的缺陷是其他包在导入使用这个方法的包后,获取到的是其他包的路径,会导致读取数据出现错误

报错的原因是路径输出的是当前文件夹的路径,因为输出的不是导入的包的路径,所以找不到相关文件.

2.2.2使用os.path.abspath()的方法可以避免这个问题

import os import json # 如何设计,让这个代码在调用时,相对路径不随着调用位置变化而变化 file_path = os.path.abspath(__file__) print(f'file_path-->{file_path}') base_dir = os.path.dirname(file_path) print(f'base_dir-->{base_dir}') # 路径拼接 path = os.path.join(base_dir, '../data/labels.json') print(f'拼接之后的路径2-->{path}') # 读取json文件 labels = json.load(open(path, 'r', encoding='utf-8')) print(f'labels-->{labels}')

拼接好路径以后,使用os.walk()读取路径下的文件

这个方法返回的是可迭代对象,用循环的方法遍历,分别返回的是:文件夹路径,文件夹列表,文件列表

results = os.walk(os.path.join(base_dir, '../data_origin')) print(f'results-->{results}') for dir_path, dirs, files in results: # 路径、文件夹(列表)、文件(列表) print('*'*50) print(f'dir_path-->{dir_path}') print(f'dirs-->{dirs}') print(f'files-->{files}')

2.2数据处理

先获取实体的英文名,然后用B-英文名或者I-英文名拼接,,得到每实体里面每个字的标签.

遍历原始文本,通过标签数据的索引给原始文本里面的字打标签,如果没有这个字的标签,就打O

2.2.1拼接的方法

拼接结果:

2.2.2遍历原始文本,给实体打标签

找到索引提取value,找不到索引打O

2.2.3最终结果

http://www.jsqmd.com/news/264628/

相关文章:

  • Z-Image-Turbo实战分享:构建多语言AI绘画平台的经验
  • 一键启动Qwen3-Embedding-4B:SGlang镜像开箱即用指南
  • FST ITN-ZH林业行业案例:林木数据标准化处理
  • PyTorch-2.x-Universal-Dev-v1.0部署教程:A800/H800显卡CUDA 12.1兼容性测试
  • FSMN-VAD服务启动失败?检查这五个关键点
  • 未来已来!Open-AutoGLM开启手机自动化新时代
  • 跨国公司员工管理:AI工坊统一生成全球分支机构证件照
  • Altium Designer中Gerber导出核心要点一文说清
  • 开源可商用小模型推荐:Qwen2.5-0.5B+弹性算力部署指南
  • HY-MT1.5-1.8B模型性能基准:不同硬件平台的对比测试
  • FFmpeg 下载 HLS 流媒体笔记
  • 基于SAM3大模型镜像的开放词汇分割实践|附Gradio交互部署
  • 2025年多语言检索趋势:Qwen3-Embedding-4B落地实战指南
  • Llama3-8B vs 通义千问2.5-7B-Instruct:英文任务性能全面对比
  • HY-MT1.5-1.8B量化实战:云端GPU快速测试不同精度效果
  • 开源AI模型部署新趋势:DeepSeek-R1蒸馏技术实战解析
  • 基于滑膜控制器的分数阶非线性悬架模型simulink建模与仿真
  • 医疗文献分析:Extract-Kit-1.0应用实例
  • 一键启动多语言语音理解,SenseVoiceSmall实战入门指南
  • 解决大图卡顿问题:lama修复系统性能调优建议
  • unet person image cartoon compound界面汉化:中英文切换功能实现思路
  • Fun-ASR+K8s部署指南:云端弹性伸缩实战
  • Windows苹果触控板精准驱动:解锁原生级手势体验完整教程
  • Wan2.2最佳实践:用云端GPU避免本地配置噩梦
  • Youtu-2B图像理解扩展:多模态能力前瞻分析教程
  • TurboDiffusion音频同步探索:视频生成后配乐技术路线图
  • 没N卡怎么跑FRCRN?云端AMD显卡兼容方案,成本不增反降
  • Z-Image-Turbo API封装:将本地模型服务化为REST接口教程
  • Z-Image-Turbo保姆级教程:8 NFEs实现亚秒级图像生成详细步骤
  • Python3.10长期运行:云端持久化环境不关机