问题标签 [openfst]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
248 浏览

c++ - C++/OpenFST - 查找库和链接时出错

在 OpenFST网站上它说;

OpenFst 库是一个 C++ 模板库。在 C++ 中,在安装包含目录中包含并链接到安装库目录中的 libfst.so。

为简单起见,我的代码仅包含此内容;

我在/home/me/usr/include/ fst下有fstlib.h,在/home/me/usr/lib下有 libfst.so 。我试过这个;

基于此解决方案

但是我有很多关于找不到库的错误。像这样

你对它有什么建议?谢谢你。

0 投票
1 回答
2547 浏览

python - 无法安装 OpenFST Python 扩展

我试图根据指南安装 OpenFST Python 扩展。这样做有两种选择。
第一个选项是--enable-python在配置 OpenFst 期间发布,我尝试过但失败了。
所以我选择了第二个选项。我使用以下命令成功安装了 OpenFST:

然后我尝试openfst使用pip:安装 PyPi 包
pip install openfst
并收到以下错误:

谁能帮我解决这个问题?

我正在使用python 3.6 (anaconda)OpenFST-1.5.4Linux Mint 18.3.

0 投票
1 回答
58 浏览

c++ - 这个 OpenFST 函数中的 `Read` 来自哪里?

(这里是新手警告——我并不是真正的 C++ 程序员,只是发现自己需要用 Java 重新实现一些 C++ 代码。)

我试图从 OpenFST 中理解以下功能,以努力在 JOpenFST 中读取 OpenFST 二进制文件:

我无法确定此模板声明中的哪些内容保证了Readon的存在t。我意识到我的理解enable_ifis_class模糊,但我看不出有什么可以提供这样的方法。

也许它来自更广泛的背景?Read为所有类类型声明 a 的东西???以下是该util.h函数所在的导入:

感谢您对困惑的 Java 开发人员的耐心等待。

0 投票
2 回答
869 浏览

macos - MacOS Mojave:检查存档器 (ar) 界面时,./configure 脚本失败

./configure在构建使用 autoconf 的 OpenFST 包之前运行该命令。检查ar接口时脚本失败:

这似乎与这个问题有关,但我不明白如何使脚本使用正确的 MacOS 文件以便配置工作。

0 投票
1 回答
163 浏览

tensorflow - 如何将 OpenFST 链接到 tensorflow 自定义操作?

我正在尝试编译一个需要 OpenFST(http://www.openfst.org/twiki/bin/view/FST/WebHome)的 tensorflow 自定义操作。但是,我在运行时遇到了编译错误:

并得到一个未定义的符号错误undefined symbol: _ZN3fst21ConvertToLegalCSymbolEPSs,所以它无法找到链接的对象。

这是我正在使用的 CMake 文件:

包含外部库的 CMake 文件是否存在任何明显问题?没有太多编译C++的经验。

0 投票
1 回答
938 浏览

python - 如何编写包含持久 C++ 对象的 TensorFlow 自定义操作?

我正在开发一个 Tensorflow 序列模型,该模型通过 OpenFST 解码图(从二进制文件加载)对 Tensorflow 序列模型的 logits 输出进​​行波束搜索。

我编写了一个自定义操作,允许我在 logits 上执行解码,但每次,我在执行解码之前都会调用 fst::Read(BINARY_FILE) 操作。只要它保持很小,这可能没问题,但我想避免 I/O 开销。

我已经通读了 Tensorflow 自定义操作并试图找到类似的示例,但我仍然迷路了。基本上,我想在图中做的是:

这在 tensorflow 图之外的 Python 中当然很简单,但我最终需要将它移到一个普通的 TF-Serving 环境中,所以它需要被冻结到一个导出图中。有没有人遇到过类似的问题?

解决方案:

没有意识到您可以使用“OpKernel(context)”设置私有属性。只需使用该函数对其进行初始化。

编辑:关于我是如何做到的更多细节。还没有尝试服务。

在蟒蛇中:

0 投票
1 回答
932 浏览

python - 如何在 Windows 10 上安装和使用 Pynini?

OpenGrm Pynini是由 K.Gorman 开发的开源有限状态传感器 python 库,可在此处下载:http ://www.openfst.org/twiki/bin/view/GRM/Pynini

我希望能够在我的带有 PyCharm/IntelliJ 的 Windows 10 笔记本电脑上使用最新的 Pynini 版本 2.0.8 进行开发。问题是 Pynini 依赖于C++ OpenFST 1.7.3,它显然有一些问题要在 Windows 上构建。

到目前为止,我发现的解决方案或解决方法是:

但是有没有其他简单的方法可以让它像使用 Debian for Windows Subsystem for Linux (WSL) 一样工作?

0 投票
1 回答
219 浏览

c++ - 如何编辑 GrammarFst 的权重?

当您拥有标准 fst 时,您可以将其加载为 MutableFst 并执行以下操作:

这将改变内存中弧的值。

但是,当我有 ConstFst 时,我从 GrammarFst.instances_ 向量中获得了类似的东西:

我无法base_fst使用 MutableArcIterator 进行索引,因为它是 ConstFst。如果不对 Kaldi/Openfst 进行重大修改,这是否可能?

当我尝试这样做时:

我得到:

我的问题:

我需要instances_在运行时访问 GrammarFst 对象并更改弧权重。我目前不能这样做,因为 GrammarFst.instance_ 是 ConstFsts。

可行的解决方案:

  • 在运行时将 GrammarFst.instances_ 转换为 StdFst
  • 从磁盘加载时将 GrammarFst.instances_ 转换为 StdFst
  • 保存 GrammarFst 时将 GrammarFst.instances_ 保存为 StdFst

不起作用的解决方案:

  • 将整个 GrammarFst 保存为 StdFst,(因此取消引用 instances_ 并将它们复制到它们出现的主 fst 中的每个位置。这大大增加了文件大小(~10X)并且对我不起作用
0 投票
1 回答
276 浏览

linux - 安装 Openfst Thrax 时出错 [配置:错误:未找到 fst/fst.h 标头]

我尝试在 Ubuntu 上使用 安装 Thrax ./configure --enable-far=true --enable-pdt=true --enable-mpdt=true,但显示以下错误

我试过./configure --enable-far=true --enable-pdt=true --enable-mpdt=true --enable-fst=true了,但错误仍然存​​在

我也尝试设置CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib,但出现同样的错误。

我该如何解决这个问题?

0 投票
1 回答
37 浏览

speech-recognition - OpenFST 安装在看似随机的时间冻结

我正在尝试遵循 Jasper https://jasperproject.github.io/documentation/installation/的安装指南。但是,当我尝试sudo make install在 openfst-1.3.4/ 文件夹中运行时,安装将开始并到达一个随机点,然后看似冻结且没有进展。我正在尝试将其安装在 pi3 b+ 上。任何帮助将非常感激。