Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Watson-Nodejs语音到文本训练语言模型_Node.js_Modeling_Speech To Text_Ibm Watson - Fatal编程技术网

Node.js Watson-Nodejs语音到文本训练语言模型

Node.js Watson-Nodejs语音到文本训练语言模型,node.js,modeling,speech-to-text,ibm-watson,Node.js,Modeling,Speech To Text,Ibm Watson,我一直在使用watson speech@^0.7.5为体育客户的流媒体视频(HLS)生成字幕 此外,我还能够训练语言模型 我想使用RecognitizeElement和我的定制id来创建我的训练有素的语言模型。但是,我有两个问题: 1) 我认为认可元素已经被弃用了 我正在使用的库调用是 videoProps.stream = WatsonSpeechToText.recognizeElement({ element: myMediaElement, token: vide

我一直在使用watson speech@^0.7.5为体育客户的流媒体视频(HLS)生成字幕

此外,我还能够训练语言模型

我想使用RecognitizeElement和我的定制id来创建我的训练有素的语言模型。但是,我有两个问题:

1) 我认为认可元素已经被弃用了

我正在使用的库调用是

videoProps.stream = WatsonSpeechToText.recognizeElement({
      element: myMediaElement,
      token: videoProps.ctx.token,
      muteSource: false,
      autoPlay: false,
      model:videoProps.ctx.currentModel,
      timestamps: true,
      profanity_filter: true,
      inactivity_timeout: -1,
      continuous: true
    })
    .pipe(new WatsonSpeechToText.FormatStream());
但是,我注意到watson speech 0.19.3的API已经被删除。现在有别的选择吗

另外,我想使用我训练过的自定义语言模型。此API是否会更新以包含以下调用

element: myMediaElement,
          token: videoProps.ctx.token,
          muteSource: false,
          autoPlay: false,
          customization_id:videoProps.ctx.currentModel.replace('custom:',''),
          timestamps: true,
          profanity_filter: true,
          inactivity_timeout: -1,
          continuous: true
2) 我认为API不支持自定义id

在查看recognize-stream.js时,我注意到打开消息和查询参数都支持自定义id

我确实可以拉下源代码并进行更改,但再次确认元素已消失

谢谢,
Aaron。

我给你发了一封电子邮件,里面有一些其他的细节,但我会继续把重要部分复制到这里,以防其他人有同样的问题:

我有几个理由:

  • 转录质量降低-音频经过两个额外的转换步骤,导致转录质量低于其他转录给定源的方法

  • 输出不一致-由于浏览器的怪癖,原始音频流在不同的播放中会略有不同,在某些情况下会导致细微不同的转录。这使得STT服务看起来不一致

  • 暂停/快进/快退的奇怪之处-当音频从扬声器中传出时,转录是针对音频的,这意味着快退会得到重复的单词,暂停可能导致单词一分为二,等等。长时间的暂停或沉默也可能导致转录超时

我建议的解决方案是在服务器端执行转录,使用来提取和转换音频,然后将结果重新格式化为,并将其作为一个文件附加到视频上。这是更多的工作,但它产生了明显更好的结果

我已经问过演讲团队关于添加WebVVT作为一种输出格式来简化这一点,但我不知道是否/何时会发生

更新:如果您真的想在当前版本的SDK中使用旧的
recognizeElement()
方法,我将其作为示例带回:

为了回答第二个问题,现在从v0.20开始接受
自定义\u id
。但是请注意,公共STT服务目前不支持自定义