自然语言数据加载工具
natlang的Python项目详细描述
natlang:自然语言数据加载工具
数据加载器/通用数据结构和其他工具
大多数代码与python2/3兼容。 对于特定模块的python版本,请检查 每个源文件。
0个。用法
使用pip安装将获得最新的测试版本natlang
。
> pip install natlang
或者,也可以使用以下命令从源代码安装:
> python setup.py install
如果要加载数据集,请执行以下操作:
> import natlang as nl
> data = nl.load(filePattern, format=ChoosenFormat)
> # ChoosenFormat here can be an actual imported format or string.
> # Alternatively, you can also pass a loader func in using nl.load(filePatttern, loader=func)
对于并行数据集:
> import natlang as nl
> data = nl.biload(srcPattern, tgtPattern, srcFormat, tgtFormat)
> # Loader option similar to nl.load also applies here. src stands for source, tgt stands for target.
一。格式
所有支持的格式都放在src/format
下。
目前正在测试以下格式:
txt
:简单文本格式。句子由\n
分隔,标记/单词是 用空白隔开。tree
:选区树格式。运行python -i format/tree.py
播放 在附近。semanticFrame
:propbank/nombank帧加载器。返回帧束 用于分析。AMR
:抽象意义表示。运行python -i format/AMR.py
到 到处玩。conll
:通用conll格式加载程序。默认为conll_.runpython -i format/conll.py
四处玩耍。
1.1推荐功能
对于支持从文件加载的格式,应该实现load
格式文件中的函数(见2.1)。
对于支持导出的格式,该格式的每个实例都应该
输出字符串的export
方法。
2.装载机
2.1单个装载机
每个格式都有自己的加载程序。
它被定义为format.FORMAT.load
。
load
函数具有以下接口:
def load(file, linesToLoad=sys.maxsize)
在测试时,load
函数需要解析文件
描述和阅读。
它将以列表的形式返回第一个linesToLoad
条目。
例如,如果希望使用“加载选区树”格式的文件(请参见
例如在tests/sampleTree.txt
中,可以执行以下操作:
from datatool.format import tree
x = tree.load("datatool/tests/sampleTree.txt")
2.2类ParallelDataLoader
这个类允许以任何格式加载并行语料库(l1,l2)。 可以分别为l1和l2端指定格式。
from datatool.loader import ParallelDataLoader
loader = ParallelDataLoader(srcFormat='txtOrTree', tgtFormat='txtOrTree')
这里,'txtOrTree'
是srcFormat
和tgtFormat
的默认值。
注意,在format
文件夹下,除了
格式,也只有加载程序,'txtOrTree'
可以处理
无论是tree
还是txt
。
初始化加载程序后,可以继续运行:
loader.load(fFile, eFile, linesToLoad)
加载程序将自动对齐平行文本并输出
元组,每个元组在l1和l2中都包含一个条目。
l1或l2为None
或长度为0的条目将被忽略。
三。出口商
用法:
from datatool.exporter import exportToFile, RealtimeExporter
3.1功能exportToFile
导出txt
格式数据集或tree
格式数据集(不是单个条目,但是
而是一个数据集)。
3.2类RealtimeExporter
代码很简单。 如果一个特定格式的导出功能需要相当长的时间,那么 建议使用方法。