分类
Python学习 程序设计

转载:如何让 python 处理速度翻倍?内含代码

本文转载自:机器之心 · 阿里技术

https://www.jiqizhixin.com/articles/2019-12-25-2

阿里妹导读:作为在日常开发生产中非常实用的语言,有必要掌握一些python用法,比如爬虫、网络请求等场景,很是实用。但python是单线程的,如何提高python的处理速度,是一个很重要的问题,这个问题的一个关键技术,叫协程。本篇文章,讲讲python协程的理解与使用,主要是针对网络请求这个模块做一个梳理,希望能帮到有需要的同学。

分类
ASRT 后端开发 软件开发

深度学习模型最佳部署方式:用Python实现HTTP服务器作API接口

    当训练和测试完成一个深度学习模型之后,如果我们打算将这个算法模型上线,投入生产环境部署使用,那么我们就需要做一些额外的处理工作。由于深度学习模型对于算力需求较大,在上线过程中,一般有减小网络规模、使用专用硬件和通过C/S架构联网进行云端计算这三种方式。AI柠檬博主推荐使用第三种方式,即模型部署于服务器端,客户端通过网络将输入数据发送至服务器,计算得结果后传递给客户端。5G时代就在眼前,IPv6协议大规模部署,万物即将互联,尤其是无线移动互联网作为重要的基础设施是大势所趋。通过联网,即使是成本最低的低端的硬件,也可以在不损失精度的情况下,能够以更快的速度得到深度学习模型的计算结果。例如,ASRT语音识别系统就是以这种方式进行模型的部署的,已经能够为AI柠檬网站提供语音识别服务,用于语音搜索等任务。

分类
ASRT 程序设计 软件开发

ASRT项目发布Python版SDK啦

       ASRT项目最近新上线了Python3版的SDK,并在GitHub与国内的Gitee上同步开源,以方便各位使用Python直接测试ASRT最终的使用效果,欢迎大家使用。开源项目地址为:

https://github.com/nl8590687/ASRT_SDK_Python3

https://gitee.com/ailemon/ASRT_SDK_Python3

       大家也可以直接接入使用AI柠檬部署的ASRT语音识别服务API接口,详见ASRT语音识别项目文档( https://asrt.ailemon.net/docs/ )。由于后端服务器的规模和性能限制,以及网络的延迟,可能存在着等待时间偏长的问题,请耐心等待。

分类
ASRT 智能语音技术

Python复现谷歌SpecAugment数据增强算法

       谷歌在2019年提出了用于语音识别数据增强的SpecAugment算法,基本原理是对频谱图进行各种遮盖,例如横向进行频率范围遮盖,以及纵向进行时间段遮盖,也可以将二者组合起来,如图所示。本文将以代码来介绍在实际应用中如何复现SpecAugment算法,并介绍如何将该代码应用到AI柠檬的ASRT语音识别系统( https://github.com/nl8590687/ASRT_SpeechRecognition )的训练中。

分类
ASRT Python学习 程序设计

Python实现录音和播放功能

我们在需要跟用户使用语音进行交互的场景中,经常需要使用到录音的功能,比如网络语音通话和语音助手等,而完整的从底层实现录音功能往往是相当困难的,通常通过调用相关API来实现。这里我们介绍一种使用Python(3.x)中的PyAudio软件包来实现录音的方法。

分类
ASRT Python学习

为Keras包装一个线程安全的数据生成器

我们在使用Keras训练深度学习模型时,往往不能一次将数据全部加载进内存中,那样会导致内存不足的问题。包括Keras在内的深度学习框架提供了动态数据加载的模式,也就是说,需要使用到哪些数据时,才会加载哪些数据,而Keras需要我们自己定义一个数据生成器,并通过多线程的机制调用我们传入的数据生成器,克服硬盘的IO速度瓶颈,以实现数据的动态加载。

分类
Python学习 操作系统原理 程序设计

使用C语言和Python基于MPI并行计算PI的值

圆周率PI是一个很神奇的数字,自古以来,包括数学家在内的很多人都曾使用过各种各样的算法去估算PI的真实值,并且都取得了一定的成就。古巴比伦人使用3.125作为PI的近似值,约公元前1700年的古埃及人则提出PI=3.1604,中国的祖冲之(430-501)则使用355/113作为近似值,使得PI值精确到了7位数。随着计算机的问世,以及科学技术发展的需要,PI的近似值目前精确位数早已突破万亿位。PI值除了有其每一位、每两位、每三位都符合均匀分布的统计规律特性之外,还可以用来检测计算机硬件的可靠性,而且,也可以用来入门并行计算。

分类
Python学习

python实现socket通信

python可以用来实现两个主机进程之间的TCP通信,就是通过使用socket套接字来实现的,我们可以基于此,来实现一些应用层协议,以达到不同主机之间的进程通信的目的。这一点,除了普通的网络应用程序(如聊天工具和游戏等)之外,在分布式系统中,也有着很大的用途,比如机器学习需要在多台计算机中进行并行计算的时候。

服务器/客户机模型(C/S模型)如图:

TCP服务器/客户端模型

分类
Python学习

python3.5 安装使用MySQL支持库

用Python做机器学习、大数据、数据挖掘、爬虫什么,基本上都会用到数据库,而我们一般使用的是SQL数据库,即关系数据库。我们最常用的两款关系数据库就是MySQL和SQL Server。本文会介绍如何在Python3下安装对MySQL进行调用的支持库。

分类
Python学习

Python实现多进程运行

在这篇文章里,我将列出一种python下的实现多进程并发执行程序的方法。我们经常需要通过并发来实现一些功能,为了加速计算或者最大程度利用CPU等等。Python中有一种方法可以实现多进程并发执行,我们需要导入python库“multiprocessing”。