自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

gdyshi的博客

https://blog.gdyshi.top/

  • 博客(36)
  • 资源 (1)
  • 收藏
  • 关注

原创 wukong-robot 自然语言处理&对话

本文为我的 源代码阅读专栏 第一个工程的代码阅读——wukong-robot 一个优秀的开源智能音箱项目。本文解析的源代码文件为robot文件夹中自然语言处理文件——NLU.py和语言对话文件——AI.py自然语言处理介绍wukong-robot相关自然语言处理代码放在NLU.py中。ASR.py文件在结构上参考其他技能文件:提取了抽象类AbstractNLU,并基于此类对百度的NLU API进行封装。下面我先对AbstractNLU进行分析,然后对UnitNLU进行简单的解析。自然语言处理实际上是.

2021-01-14 21:41:22 956

原创 wukong-robot 语音识别&语音合成

本文为我的 源代码阅读专栏 第一个工程的代码阅读——wukong-robot 一个优秀的开源智能音箱项目。本文解析的源代码文件为robot文件夹中智能语音相关文件——ASR.py和TTS.pywukong-robot相关语音识别引擎介绍wukong-robot相关语音识别调用代码放在ASR.py中。ASR.py文件对百度、腾讯、讯飞和阿里的语音识别接口统一封装成语音识别引擎,以方便wukong-robot自有调用。这些引擎都封装成了类,并且继承自抽象类AbstractASR。下面我先对Abstrac.

2021-01-07 20:55:42 1670

原创 wukong-robot 相关辅助工具

本文为我的 源代码阅读专栏 第一个工程的代码阅读——wukong-robot 一个优秀的开源智能音箱项目。本文解析的源代码文件为robot文件夹中的相关辅助工具文件wukong-robot相关辅助工具介绍plugins文件夹存放了一下相关插件,这些插件按功能分别放置不同的文件中。updater.py。 升级工具statistic.py。 用户统计工具logging.py。日志工具constants.py。 配置工具ConfigMonitor.py。 文件监测工具utils.py。 其它.

2020-12-31 18:51:02 590

原创 wukong-robot 相关插件

本文为我的 源代码阅读专栏 第一个工程的代码阅读——wukong-robot 一个优秀的开源智能音箱项目。本文解析的源代码文件为plugins文件夹中的文件plugins相关插件介绍plugins文件夹存放了一下相关插件,这些插件按功能分别放置不同的文件中。Camera。 拍照插件CleanCache。 清除缓存插件Echo。 通过网页传话插件Email。 查看收件箱插件Geek。 极客模式插件LocalPlayer。 沉浸式音乐播放插件Poem。 写诗插件Volume。 音量调整.

2020-12-24 20:36:37 656 1

原创 wukong-robot 唤醒词检测

本文为我的 源代码阅读专栏 第一个工程的代码阅读——wukong-robot 一个优秀的开源智能音箱项目。本文解析的源代码文件为snowboydecoder.py及其他相关联的小文件(行数小于100)snowboy介绍snowboydecoder.py 文件内容snowboydecoder.py 包含全局变量:logger。日志记录TOP_DIRRESOURCE_FILEDETECT_DING。定义声音文件DETECT_DONG。定义声音文件ERROR_HANDLER_FUNC。定义.

2020-12-17 20:10:08 1071

原创 wukong-robot 总入口

本文为我的 源代码阅读专栏 第一个工程的代码阅读——wukong-robot 一个优秀的开源智能音箱项目。本文解析的源代码文件为wukong.py及其他相关联的小文件(行数小于100)总入口介绍wukong-robot 总入口文件为 wukong.py 。main入口代码为:if __name__ == '__main__': if len(sys.argv) == 1: wukong = Wukong() wukong.run() elif '-h.

2020-12-08 09:43:59 664 1

原创 wukong-robot 代码结构

本文为我的 源代码阅读专栏 第一个工程的代码阅读——wukong-robot 一个优秀的开源智能音箱项目代码结构我把项目中重要的文件及文件夹列出来,后面再针对各文件/夹做进一步说明├── docker├── docs├── LICENSE├── plugins│ ├── Camera.py│ ├── CleanCache.py│ ├── Echo.py│ ├── Email.py│ ├── Geek.py│ ├── __init__.py│ ├─.

2020-12-03 18:46:15 827

原创 wukong-robot 背景&功能

背景该项目的前身是dingdang-robot,一个开源中文语音对话机器人/智能音箱项目。因为 dingdang-robot 本身维护上的困难,作者将项目迁移到了 dingdang-robot 组织交由社区进行维护。很遗憾的是,即使迁到了 dingdang-robot 组织,由于组织维护者们都并不是全职维护这个项目,而且硬件和操作系统上的差异始终给 dingdang-robot 的维护带来了很大的问题,所以取得的效果并不理想。2019年作者对dingdang-robot 进行完全重写,做出一个更加 优雅

2020-11-25 16:37:43 616

原创 立贴

引言最近整理发现我收集了很多源代码,原本是准备阅读这些源代码的,但现实情况是这些源代码仅仅是收集起来了,一年以后也没有阅读。这侧面反映了我的一个问题:眼高手低,或者说是快速迭代的意识不够。此次立贴进行一系列开源代码的阅读,同时鞭策自己坚持进行源代码阅读。大家如果有好的开源项目也欢迎在评论区发表评论,我也会选择合适的开源项目加入到源代码阅读专栏中。开源代码范围github上的开源代码包罗万象,这里首先对要阅读的开源代码进行一些限制。开发语言现阶段限定为python和C/C++,下一步会增加JavaS

2020-11-25 09:22:59 177 1

原创 解决docker容器使用ssh连接时,无法调用GPU问题

这里写自定义目录标题问题现象问题原因解决方案临时使用环境变量永久使用环境变量参考问题现象直接使用docker run命令运行tensorflow程序正常但是用pycharm远程调试时上述容器时运行tensorflow程序失败,提示CUDA错误问题原因pycharm远程调试使用的是ssh连接,经测试用ssh远程连接运行也失败对比docker run和ssh连接两种情况下的环境变量,发现ssh连接少了很多环境变量解决方案临时使用环境变量export $(cat /proc/1/environ

2020-08-07 15:19:31 782

原创 paho.mqtt.embedded掉线问题记录

1. 问题描述使用paho.mqtt.embedded-c库编译的应用程序在linux环境下监听topic时,过段时间会概率性地发生连接失败并重连的现象。具体表现为会打印yield -1void loop() { static int count=0; int ret=MQTTYield(&c, 1000); if (SUCCESS != ret) { ...

2020-04-07 17:00:38 2310 5

原创 keras 多个模型测试阶段速度越来越慢问题的解决方法

问题描述在实际应用或比赛中,经常会用到交叉验证(10倍或5倍)来提高泛化能力,这样在预测时需要加载多个模型。常用的方法为 mods = [] from keras.utils.generic_utils import CustomObjectScope with CustomObjectScope({}): for model_file in tqdm.t...

2019-11-11 10:26:25 1707

原创 tensorflow模型部署系列————TensorFlow Serving部署(附代码)

摘要本文为系列博客tensorflow模型部署系列的一部分,用于实现通用模型的TensorFlow Serving部署。本文主要实现用TensorFlow Serving部署tensorflow模型推理服务器。实现了tensorflow模型在服务器端计算方案,并提供相关示例源代码。相关源码见链接引言本文为系列博客tensorflow模型部署系列的一部分,用于实现通用模型的独立简单服务器部署...

2019-10-11 15:01:47 6463 3

原创 tensorflow模型部署系列————独立简单服务器部署(附代码)

摘要本文为系列博客tensorflow模型部署系列的一部分,用于实现通用模型的独立简单服务器部署。本文主要实现用flask搭建tensorflow模型推理服务器。实现了tensorflow模型在服务器端计算方案,并提供相关示例源代码。相关源码见链接引言本文为系列博客tensorflow模型部署系列的一部分,用于实现通用模型的独立简单服务器部署。本文主要实现用flask搭建tensorflo...

2019-08-26 10:43:15 4124 6

原创 tensorflow模型部署系列————浏览器前端部署(附代码)

摘要本文为系列博客tensorflow模型部署系列的一部分,用于javascript实现通用模型的部署。本文主要实现用javascript接口调用tensorflow模型进行推理。实现了tensorflow在浏览器前端计算方案,将计算任务分配在终端,可以有效地降低服务端负荷,并提供相关示例源代码。相关源码见链接引言本文为系列博客tensorflow模型部署系列的一部分,用于javascri...

2019-07-22 15:53:22 4251 4

原创 tensorflow模型部署系列————嵌入式(c/c++ android)部署(附源码)

摘要本文为系列博客tensorflow模型部署系列的一部分,用于实现通用模型的部署。本文主要实现用tflite接口调用tensorflow模型进行推理。相关源码见链接引言本文为系列博客tensorflow模型部署系列的一部分,用于tflite实现通用模型的部署。本文主要使用pb格式的模型文件,其它格式的模型文件请先进行格式转换,参考tensorflow模型部署系列————预训练模型导出。从...

2019-07-10 17:24:32 10377 9

原创 tensorflow模型部署系列————单机java部署(附代码)

摘要本文为系列博客tensorflow模型部署系列的一部分,用于实现通用模型的部署。本文主要实现用JAVA接口调用tensorflow模型进行推理。相关源码见链接引言本文为系列博客tensorflow模型部署系列的一部分,用于JAVA语言实现通用模型的部署。本文主要使用pb格式的模型文件,其它格式的模型文件请先进行格式转换,参考tensorflow模型部署系列————预训练模型导出。从模型...

2019-07-01 18:54:13 5490 1

原创 tensorflow模型部署系列————单机C++部署(附源码)

摘要本文为系列博客tensorflow模型部署系列的一部分,用于实现通用模型的部署。本文主要实现用C++接口调用tensorflow模型进行推理。相关源码见链接引言本文为系列博客tensorflow模型部署系列的一部分,用于C++语言实现通用模型的部署。本文主要使用pb格式的模型文件,其它格式的模型文件请先进行格式转换,参考tensorflow模型部署系列————预训练模型导出。从模型文件...

2019-06-14 09:11:01 7898 21

原创 tensorflow模型部署系列————单机python部署(附代码)

摘要本文为系列博客tensorflow模型部署系列的一部分,用于实现通用模型的部署。通用主要体现在通过tensorboard图从已保存的模型中还原并查看模型详细结构,以及自定义模型的输入输出tensor引言本文为系列博客tensorflow模型部署系列的一部分,用于python语言实现通用模型的部署。通用主要体现在通过tensorboard图从已保存的模型中还原并查看模型详细结构,以及自定...

2019-05-30 11:15:00 6978 3

原创 tensorflow模型部署系列————预训练模型导出(附代码)

摘要本文为系列博客tensorflow模型部署系列的一部分,用于为模型部署提供最开始的输入————标准化的模型文件。引言本文为系列博客tensorflow模型部署系列的一部分,用于为模型部署提供最开始的输入————标准化的模型文件。相关示例代码放在gdyshi的github上主题可保存的模型格式有多种,本文仅针对 tensorflow 的默认格式ckpt、 keras 的默认格式h5和...

2019-05-23 09:49:13 4941 4

原创 tensorflow模型部署系列————立贴

引言本文开始我将要写几篇针对tensorflow系列模型的导出方法和步骤,此文为立贴文。一来确定后续研究路线,二来用于鞭策自己将系列博文坚持写完。相关示例代码放在gdyshi的github上研究线路模型部署的第一步就是要有模型,所以我首先把模型导出方法做一下梳理,部署主要有两种:单机版和服务器版。单机版可以在单机上进行模型推理,主要应用在离线的智能终端、边缘计算产品上;单机版我先从最简单的p...

2019-05-20 17:47:05 5961 5

原创 tensorflow使用高阶api导致训练不收敛问题

摘要本文将低级api实现的tensorflow网络移植到高级api上遇到的loss值不变和训练结果不收敛问题引言tensorflow版本更新很快,猛一回头发现已经推出更高级的api了主题tensorflow高级api上图是tensorflow软件栈图,我之前学习和实现的网络模型(0.12a)使用的是 低级api, 现在的新版本(1.10)对低级api进行了封装,形成了高级api(es...

2019-05-20 10:10:03 1159 2

原创 tensorflow非标准模型的导出

摘要本文记录部署一个非标准模型(未定义name、未定义placeholder、未定义batchnorm中的train参数)的过程引言之前训练的一个比较好的模型需要部署到实际应用场景中,但从之前训练时到现在,tensorflow版本已经更新了7、8个,一些借口已经改变。给部署带来一定的难度主题本文在旧的tensorflow版本上先进行模式导出和试验,成功后再部署到新的tensorflow版...

2018-11-27 11:49:53 227

原创 github上的facenet代码文档结构

文档结构contributed/batch_represent.py 从图片目录中生成embeddingscontributed/cluster.py 人脸图像归类contributed/clustering.py 人脸匹配contributed/export_embeddings.py 从图片文件夹中导出embeddings和标签(numpy数组格式)contributed/face...

2018-10-29 15:51:45 2376 3

原创 译文 FaceNet: A Unified Embedding for Face Recognition and Clustering

摘要Despite significant recent advances in the field of face recognition [10, 14, 15, 17], implementing face verification and recognition efficiently at scale presents serious challenges to current ap...

2018-09-03 11:46:42 5721

原创 python调用第三方动态库(附代码)

摘要本文讲述python混合编程之调用动态库引言python因为良好的编码性和扩展库正被大规模的使用,但他有两个缺点:1、代码可见;2、执行效率低,于是在实际应用中经常会把高效和核心代码用C/C++实现,业务部分用python实现。这就需要进行混合编程,本文对python调用动态库的方法及注意事项进行记录主题python标准库函数中提供了调用动态库的包————ctype...

2018-08-10 17:18:53 15442

原创 logging模块多进程问题及解决方案

摘要本文讲述如何在多进程中使用logging模块记录到同一文件引言从Python2.3起,Python的标准库加入了logging模块。 logging模块是Python内置的标准模块,主要用于输出运行日志, 可以设置输出日志的等级、日志保存路径、日志文件回滚等。 但在实际使用flask时,出现多进程写入同一日志文件冲突问题。 本文用以记录此问题的解决方案主题...

2018-06-27 16:54:20 5734

原创 机器学习中的优化算法(附代码)

摘要> 优化算法指通过改善训练方式,来最小化(或最大化)损失函数E(x)局部最优问题 局部最优与鞍点。在神经网络中,最小化非凸误差函数的另一个关键挑战是避免陷于多个其他局部最小值中。实际上,问题并非源于局部极小值,而是来自鞍点,即一个维度向上倾斜且另一维度向下倾斜的点。这些鞍点通常被相同误差值的平面所包围,这使得SGD算法很难脱离出来,因为梯度在所有维度上接近于零。

2018-01-15 11:46:47 2777

原创 机器学习中的软件测试

摘要 机器学习的实现需要使用软件代码,从这一角度来说,机器学习也是软件工程的一部分。针对软件就会引入对软件是否正确的检验,那么在机器学习中如何进行软件测试?相关源码什么是软件测试 TDD-测试驱动开发 是指开发功能代码之前,先编写测试代码,然后只编写使测试通过的功能代码,从而以测试来驱动整个开发过程的进行。这有助于编写简洁可用和高质量的代码,有很高的灵活性和健壮性,能快速响应变化,并

2017-12-30 22:28:15 3189

原创 神经网络之过拟合(附代码)

摘要 监督机器学习问题无非就是“minimizeyour error while regularizing your parameters”,也就是在规则化参数的同时最小化误差。最小化误差是为了让我们的模型拟合我们的训练数据,而规则化参数是防止我们的模型过分拟合我们的训练数据。什么是过拟合 一个假设在训练数据上能够获得比其他假设更好的拟合,但是在训练数据外的数据集上却不能很好地拟合数据,此

2017-12-09 21:07:46 8732

原创 神经网络之权重初始化(附代码)

摘要 神经网络/深度学习模型训练的过程本质是对权重进行更新,在对一个新的模型进行训练之前,需要每个参数有相应的初始值。对于多层神经网络/深度学习而言,如何选择参数初始值便成为一个值得探讨的问题。本文从实现激活值的稳定分布角度来探讨神经网络的效率优化问题权重在神经网络/深度学习中的作用(个人领受) 神经网络的作用是从大量不同的待训练数据中发现数据本身的内在规律(提取特征数据)。这就要求输入数

2017-12-04 21:16:23 22203

原创 msys2下交叉编译fftw(android)

官方链接ANDROID_ABI=x86配置脚本INSTALL_DIR="`pwd`/fftw3/x86" SRC_DIR="`pwd`/../fftw-3.3.6-pl2" NDK_DIR=/D/Android/sdk/ndk-bundlecd $SRC_DIR export PATH="$NDK_DIR/toolchains/x86-4.9/prebuilt/windows-x86_64

2017-11-06 11:26:43 1148

原创 FFTW 库使用

官方网址 官方文档链接 中文资料-百度文库概念离散余弦变换(DCT for Discrete Cosine Transform)离散正弦变换(DST for Discrete Sine Transform)支持数据多维维数多维复数fft计划(事务)执行计划 void fftw_execute(const fftw_plan plan);删除计划 void fftw_dest

2017-09-18 14:13:30 5749 3

原创 androidstudio2.3.1 ndk 编译错误error: clang frontend command failed with exit code 70 (use -v to

问题描述android ndk编译公司旧代码时出现如下错误:clang.exe: error: clang frontend command failed with exit code 70 (use -v to see invocation)原因分析&查找复制出Gradle Console中的所有记录,在sublime中查看FAILED: D:\Android\sdk\ndk-bundle\to

2017-09-11 16:28:32 7242

原创 人工智能笔记系列(一)

参考资料:《人工智能:一种现代的方法》人工智能的定义两个维度外部表现:思考、行动评判:像人一样、合理性通过两个维度的交叉形成4种定义方法像人一样思考——认知科学像人一样行动——图灵测试合理地思考——逻辑合理地行动——agent

2017-01-12 16:13:15 1232

原创 Windows下安装tensorflow步骤

官方安装链接 tensorflow 0.12.0开始支持Windows下安装了环境要求:Windows 64位 python 3.5 pip 9.0.1tensorflow 0.12.0cuda8.0cudnn5.1visual c++ 2015 运行时库 查看gpu是否支持cuda安装过程:安装python3.5下载安装升级pip python.exe -m pip i

2016-12-28 09:26:53 51599 16

编译后的android各平台fftw静态库

编译后的android各平台fftw静态库。x86 x86_64 mips mips64 armeabi armeabi-v7a arm64-v8a

2017-11-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除