跳转到主要内容

从维基词典抓取音素到音节数据

项目描述

WikiPron

PyPI version Supported Python versions CircleCI Paper Conference

WikiPron 是一个用于从 Wiktionary 中挖掘多语言发音数据的命令行工具和 Python API,同时也是一个使用此工具挖掘出的发音词典数据库。

如果您在研究中使用了 WikiPron,请引用以下文献:

Jackson L. Lee, Lucas F.E. Ashby, M. Elizabeth Garza, Yeonju Lee-Sikka, Sean Miller, Alan Wong, Arya D. McCarthy, 和 Kyle Gorman (2020)。在《第 12 届语言资源与评估会议论文集》中,《使用 WikiPron 进行大规模多语言发音挖掘》。[链接] [bibtex]

命令行工具

安装

pip install wikipron

用法

快速开始

安装后,终端命令 wikipron 将可用。以下是一个基本示例,该命令抓取了法语 G2P 数据:

wikipron fra

指定语言

语言由三个字母的 ISO 639-3 语言代码表示,例如,fra 代表法语。以下是可抓取的语言的完整列表,这些语言在 Wiktionary 中都有发音条目。[链接]

指定方言

可以使用 --dialect 标志可选地指定目标方言。方言名称可以在 Wiktionary 的转录中找到。例如,"(UK, US) IPA: /təˈmɑːtəʊ/"。要限制为方言的并集,请使用管道字符 '|': 例如,--dialect='General American | US'。即使此标志的值不同,也会选择缺乏方言指定的转录。

指定转录级别

默认情况下,WikiPron 选择括号中的广泛发音 /like this/。可以使用 --narrow 标志选择窄式转录 [like this]。请注意,某些语言只有广泛或窄式转录(例如,俄语只有后者)。

分割

默认情况下,使用 segments 库将转录分割为空白字符。分割通常将 IPA 标点符号和修饰符放在“父”符号上。例如,[kʰæt] 显示为 kʰ æ t。可以使用 --no-segment 标志禁用此功能。

括号

一些转录包含括号以表示替代发音。除非使用 --no-skip-parens 标志,否则在抓取时忽略括号(但不包括内容)。

输出

抓取的数据组织成每行一个 <单词,发音> 对,单词和发音之间用制表符分隔。请注意,发音是 国际音标 (IPA),用空格分隔,以正确处理组合和修饰符标点符号,以便于建模,例如,我们有 kʰ æ t 而不是 k ʰ æ t

为了说明,以下是 WikiPron 抓取的法国数据片段:

accrémentitielle    a k ʁ e m ɑ̃ t i t j ɛ l
accrescent  a k ʁ ɛ s ɑ̃
accrétion   a k ʁ e s j ɔ̃
accrétions  a k ʁ e s j ɔ̃

默认情况下,抓取的数据出现在终端中。要保存数据到 TSV 文件,请将标准输出重定向到您选择的文件名。

wikipron fra > fra.tsv

高级选项

wikipron 终端命令有一系列选项可以配置您的抓取运行。要获取选项的完整列表,请运行 wikipron -h

Python API

底层模块也可以从 Python 中使用。标准工作流程如下:

import wikipron

config = wikipron.Config(key="fra")  # French, with default options.
for word, pron in wikipron.scrape(config):
    ...

数据

我们还可以提供使用 WikiPron 矿掘的超过 300 万个单词/发音对数据库

模型

我们在单独的存储库中托管图形到音素模型和建模软件

开发

存储库

WikiPron 的源代码托管在 GitHub 上 https://github.com/CUNY-CL/wikipron,那里的开发也在进行。

对于尚未通过 pip 发布或自行修改代码库的最新更改,您可以通过 GitHub 和 git 获取最新源代码

  1. 在您的 GitHub 账户上创建 wikipron 存储库的分支。

  2. 本地,确保您处于某种类型的虚拟环境(venv、virtualenv、conda 等)中。

  3. 在虚拟环境中以“可编辑”模式下载并安装库,以及核心和开发依赖项

    git clone https://github.com/<your-github-username>/wikipron.git
    cd wikipron
    pip install -U pip setuptools
    pip install -r requirements.txt
    pip install --no-deps -e .
    

我们在 CHANGELOG.md 中记录了显著的变化。

贡献

对于问题、错误报告和功能请求,请提交问题

如果您想为 wikipron 代码库做出贡献,请参阅 CONTRIBUTING.md

许可协议

WikiPron 在 Apache 2.0 许可下发布。有关详细信息,请参阅 LICENSE.txt

请注意,data/ 目录中的 Wiktionary 数据有自己的许可条款

项目详情


下载文件

下载适合您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源代码分发

wikipron-1.3.3.tar.gz (23.8 kB 查看哈希值)

上传时间 源代码

构建分发

wikipron-1.3.3-py3-none-any.whl (27.4 kB 查看哈希值)

上传时间 Python 3

支持者:

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面