Py学习  »  Python

开发者新闻 | 如何在 Python 中加速信号处理

NVIDIA开发者社区 • 3 年前 • 280 次点击  

如何在 Python 中加速信号处理 



这篇文章是关于 RAPIDS 生态系统的系列文章的第八部分。本系列探索和讨论了 RAPIDS 的各个方面,这些方面允许其用户解决 ETL (提取、转换、加载) 问题,构建ML(机器学习)DL (深度学习) 模型,探索可扩展图,处理信号和系统日志,或通过 BlazingSQL 使用 SQL 语言处理数据。

你可能意识到也可能没有意识到,你的电脑从几英里外的服务器接收到的每一点信息,你屏幕上显示的每一个像素,或者你的扬声器产生的每一个音调,都是通过“电线”发送的某种形式的信号。这个信号很可能是由发送端编码的,这样它就可以携带信息,而接收端则对其进行解码以供进一步使用。

信号非常丰富 : 音频、无线电波或其他电磁波 (如伽马、红外线或可见光)、无线通信、海浪等等。这些波浪有些是人为的,很多是自然产生的。甚至图像或股票市场时间序列也可以被看作信号来处理。

cuSignal 是 RAPIDS 生态系统的更新版本。它的目的是分析和处理任何形式的信号,并模仿 scikit-learn 信号库。然而,与 scikit-learn 不同的是,cuSignal 将 NVIDIA GPU 的功能引入到信号处理中,从而导致计算速度的数量级增长。






与电话网络集成 实现实时 AI 服务 



你们很多人可能都不认识我的公司 Ribbon Communications。我们最著名的是为通信服务提供商 (也被称为电话公司) 建立和保护大型电信网络。然而,很有可能在接下来的一两天里,你会在世界上的某个地方拨打我们的电话。除了服务提供商,我们还与大型企业有大量的合作经验,这些企业需要电信级服务,无论是因为它们的规模或其通信的关键性质。这包括大学、医疗机构、金融服务机构、政府机构等等。

不久前,我们的一位客户,世界上最大的投资银行之一,向 Ribbon 提出了一个问题。他们希望使用先进的 AI 来实时分析他们的呼叫中心,这样他们就可以根据基于 AI 的观察立即做出商业决策。他们希望能够提取音频流,立即将其转录为文本,然后立即分析文本以寻找诸如客户满意度、威胁行为和欺诈企图等问题。文本越早被转录,就越容易存储和搜索。我们的客户还可以使用它进行其他形式的趋势分析,可以发现即将出现的问题,例如,与某个代理的客户情绪。

任何尝试过搜索录音的人都能理解,为什么一家每天有数千个电话的银行宁愿存储抄写而不是音频,也宁愿使用 AI 工具来搜索问题,而不是传统的搜索工具。不幸的是,这家银行被几个常见的技术问题所阻碍:

▶ 银行需要一个安全元件,它可以位于数千个呼叫中心的中间,并复制所有的呼叫媒体流,以便将这些流发送到 AI 引擎。

▶ 因为元素处于这些调用的中间,所以它永远不会失败,也不能降级调用。它还必须非常安全,这样第三方就无法找到拦截信息流的方法。它也不能被破坏或超载使用 DoS 攻击。

▶ 电话网络使用一种不同于 AI 引擎接受的媒体格式:实时传输协议 (RTP)。银行不能仅仅将所有电话的原始音频流发送给 AI 引擎。

▶ 该银行希望使用实时音频流同时执行多个基于 AI 的服务。这意味着,他们需要同时向不同的AI服务发送多个实时音频副本,以使银行的不同用户能够分析数据,并将结果用于自己的目的。


由于银行无法克服这些问题,他们被迫以另一种格式录制呼叫,存储它们,然后将录音发送给 AI 引擎进行分析。录音不被接受,因为它带来了两个缺点:

▶ 转录和分析不是实时的,所以没有办法利用 AI 来应对现在发生的问题。这大大降低了它的价值。

▶ 录音会降低音频质量。众所周知,较低的音频质量会降低AI平台的转录精度。

▶ Ribbon 与 NVIDIA 合作开发了一个解决方案。我们利用我们在管理电话网络音频和信令方面的丰富经验,并将其与由 GPU 技术驱动的 NVIDIA Jarvis 高级对话 AI 平台相结合。





点击“阅读原文”了解更多开发者新闻

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/111266
 
280 次点击