- 博客(33)
- 收藏
- 关注
原创 Pytorch模型的TF-Serving部署
Pytorch模型的TF-Serving部署写在前面目前PyTorch在学术界几乎完全盖过了Tensorflow,从个人体验来说:PyTorch并没有表现出比Tensorflow性能差很多,基本是相当;与Tensorflow的非Eager API相比,PyTorch上手、使用的难度相对来说非常低,并且调试非常容易(可断点可单步);以及笔者还没有体会到的动态图与静态图之争但是在应用场景下仍然还有将模型使用TF-Serving部署的需求,做转换还是有意义的。本文将以一个transforme
2020-11-20 14:58:18 5378 5
原创 一个基于表格的规则引擎的例子
一个基于表格的规则引擎的例子早在研究生的时候,导师就让我去了解过规则引擎,这个概念本身一点都不新鲜。不过直到最近才慢慢加深了一些体会。规则引擎(Rule Engine,更完整地,Business rules Engine)的定义在Wikipedia和百度百科上都有。可以简单理解为如果有大量的IF-ELSE/SWITCH-CASE类的逻辑,将这些逻辑做成可插拔的外部模块,这些逻辑不属于代码本身,改动也可以做到不需要上线(或者不需要更改代码)。下面的一些实现中,能做到可插拔的其实很少,一般只能做到逻
2020-06-29 13:39:49 1484 1
原创 如何在JVM上做讲究一点的Benchmark
JVM Benchmark - 严肃向前些天看到了一个同事写的问题分析分享,他从服务的性能打点中得出Jackson性能比较差,并自己做实验得出了Jackson比org.json效率更低的结论。对他的代码稍做分析发现同事对写Benchmark还是有一些误解,结论分析也还是太过于草率。我深信Benchmark是有讲究的,要写出有意义有说服力的Benchmark是要严肃的。1. 什么是Benc...
2020-01-01 16:49:05 650 1
原创 5. Sequence Models - Wee 3 - Sequence models & Attention mechanism
本周课程主要介绍了机器翻译中的一些细节,包括如何将Language Model与Decoder结合,如何搜索可能的最优解。然后介绍了大名鼎鼎的Attention Mechanism。到Attention Mechanism的时候就已经很麻烦了,还是尽量以理解机制为主。1. Various sequence to sequence architectures在深度学习中一些比较有意思的应用...
2019-12-08 21:34:48 197
原创 Deep Learning Specialization 5: Sequence Models - Week 2 - Word Embeddings
本周课程讲的是词向量的生成及简单应用,正如老师所说在大量学者地不断研究探索下,词向量的生成简单到像魔法。1.Introduction to word embeddings1.1 Word Representation词的表示探讨的是如何从one-hot编码到向量化的过程,完成这一转换之后还能带来一些其它好处。1-hot representation -> Featurized ...
2019-11-30 21:39:13 172
原创 Deep Learning Specialization 5: Sequence Models - Week 1 - Recurrent Neural Networks
这周的内容还是比较多的,得反复看很多遍才能领会,尤其是在吃瓜子不吃瓜子就打瞌睡的情况下。为什么要用RNN1?1. 序列数据及问题示例从输入与输出数量不同可以分为:many to many长度相同:命名实体识别长度不同:语音识别/机器翻译many to one:情感分析/视频动作识别one to many:音乐合成2. 符号x<t>x^{<t&...
2019-11-17 22:34:55 132
原创 Deep Learning Specialization 4: Convolutional Neural Networks - Week4
本周的课程还是很有意思的,可以让人知道神奇的照片凡高化是怎么做出来的。在创新地应用上,最重要的还是如何让问题形式化。问题能够定义清楚就成功了一大半。1. Face Recognition1.1 定义(Face) VerificationInput image, name/IDOutput whether the input image is that of claimed pers...
2019-11-09 20:41:33 177
原创 Deep Learning Specialization 4: Convolutional Neural Networks - Week3 - Object Detection
Object Detection深度学习的繁荣离不开大量的研究人员开发了更多更高效的算法,这一周的课程学几个小时就为了能讲清楚一篇YOLO在干什么。用的组件太多,技术就变成魔法了。1. 问题定义Image classification: 判断图像中有某个物体Object Localization - Classification with localization: 判断图像在图片中,...
2019-11-03 13:58:56 182
原创 Deep Learning Specialization 4: Convolutional Neural Networks - Week2
1. Case studies1.1 Classic Networks1LetNet-5/AlexNet 比较久远,其中一些方法现在可能不用了,略过。VGG-16 值得关注,因为它将网络结构变得简单——层数更多,但是组合单一。统一的参数:CONV = 3×33 \times 33×3 filter, s = 1, padding = “same”MAX-POOL = 2×22 \...
2019-10-31 08:51:57 153
原创 Deep Learning Specialization 4: Convolutional Neural Networks - Week 1
温故而知新,笔记拖了一个多月了。如果没有图像处理经验,那么在理解卷积神经网络的起点上会有一些麻烦,使用算子做边缘检测并不是在神经网络应用在图像上才有的,卷积、填充也不是。只要多看几遍视频,理解也不是什么难事。1. 卷积神经网络的起点Edge Detection - Filter/Kernel:深度网络之前特殊设计的filter可以用于检测比如竖直/水平方向的边界(比如Sobel算子),深...
2019-10-27 16:29:49 236
原创 Scala操作Java容器:与Thrift交互时的容器陷阱
原博客没续费,文章也看不见了,16年5月的文章了,复活一下。Thrift是传统的java bean实现,在类型上,尤其是在容器类型上会给scala调用带来一些困扰。各种类型不匹配会然你烦不胜烦,前前后后折磨了我一年了,感觉是时候可以写点什么了。下面以ActiveDays的Thrift为例:struct ActiveDays { 1: string id; 2: i6...
2019-08-07 16:59:05 333
原创 Deep Learning Specialization 3: Structuring Machine Learning Projects - Note2
本周的内容比较多,一些概念还是很重要的,需要好好去理解。Structuring Maching Learning Projects - Week 21. Error Analysis核心问题:怎样判断一个改善效果的方向是否值得尝试的?更核心的问题:你能坚持人工错误分析吗?1.1 坚持使用错误分析表格在Dev Set验证集中做错误采样分析,比如下面是一个自动驾驶图像识别的错误分析:...
2019-07-28 13:14:01 134
原创 Deep Learning Specialization 3: Structuring Machine Learning Projects - Note 1
Structuring Machine Learning Projects - Note 1优化的方向很多,但是选定更好的目标以及选一些对影响更大的方法,可以更有效提升效果。1. Setting up you Goal1.1 单一原则Orthogonalization 正交化:一次只调整一个变量Single number evaluation metric: 只设一个优化指标,别想着同时...
2019-07-27 21:15:05 122
原创 GraphQL:整合Spring Boot
GraphQL:整合Spring BootGraphQL在Java中的应用要解决的第一个问题便是如何根据Java Bean自动生成GraphQL Schema,定义多套基本上是不可接受的,在现有加一些注解还是能忍的。1. SQL解决方案关系型数据库的解决方案已经做得比较好了,目前Yahoo/Elide应该是做得最好的,结合elide-spring-boot-starter可以轻松完成。虽然文...
2019-07-20 18:40:09 1026
原创 GraphQL初探:Java服务示例及Yahoo/Elide
GraphQL初探:Java服务示例及Yahoo/Elide周末想理一理一件事可不可以干,大致上就是:假设存储各种各样的数据,如何保证读取是足够灵活的——用户只需声明式地说明需要什么内容,而接口就可以完成工作。简单理解就是一个接口完成所有功能。做了些GraphQL入门,初步感觉还不错。1. 什么是GraphQL?GraphQL本身只是个查询规范,管查询不管实现。自行搜索吧,本人已经对写入...
2019-07-14 23:07:48 788
原创 Deep Learning Specialization 2: Hyperparameter tuning, Regularization and Optimization - Note 3
2. Hyperparameter tuning, Batch Normalization and Programming Frameworks - Note 31. Hyperparameter tuning待调参数老师认为的重要性如下(*越多越重要):α\alphaα: 学习速率 ***betabetabeta (如果不使用adam): momentumβ1,β2,...
2019-07-07 19:23:56 173
原创 Deep Learning Specialization 2: Hyperparameter tuning, Regularization and Optimization - 2 加速训练
Deep Learning Specialization 2: Hyperparameter tuning, Regularization and Optimization - Note 2第二周的内容讲的都是如何加速训练1. Mini-batch Gradient Descent重要:新符号!吴恩达设计了一套比较好的符号系统,对于表达神经网络非常有帮助,符号一定要掌握!X{t}...
2019-07-07 15:13:58 153
原创 Deep Learning Specialization 2: Hyperparameter tuning, Regularization and Optimization - Note 1
Deep Learning Specialization 2: Hyperparameter tuning, Regularization and Optimization - Note 1笔记主要是将课程视频和作业的内容分类简单整合,绝非创新。1. Setting up your Machine Learning ApplicationTrain/Dev/Test Sets: 数据集...
2019-06-30 14:34:22 179
原创 Deep Learning Specialization: Neural Networks and Deep Learning - 基本套路
Deep Learning Specialization: Neural Networks and Deep Learning - 基本套路1. Forward Propagation (前向算损失)Z[l]Z^{[l]}Z[l]: Linear functionZ[l]=W[l]A[l−1]+b[l]Z^{[l]} = W^{[l]} A^{[l-1]} + b^{[l]}Z[l]=W...
2019-06-30 14:12:52 144
原创 Deep Learning Specialization: Neural Networks and Deep Learning - Python basics with Numpy
这里写自定义目录标题学习笔记:Deep Learning Specialization: Neural Networks and Deep Learning - Python basics with NumpySigmoid函数 $1/(1 + e^{-x})$ReshapeBroadcastingVectorization学习笔记:Deep Learning Specialization: N...
2019-06-30 14:05:18 167
原创 理解Duckling中的PCFG
理解Duckling中的PCFGDuckling的描述信息中有这么一段If you know NLP, Duckling is “almost” a Probabilistic Context Free Grammar. But not exactly! It tries to be more flexible and easier to configure than a formal PC...
2019-04-06 21:36:20 692
原创 Duckling: 用Scala重写Haskell代码——一点小心得
Duckling: Haskell =&gt; ScalaDuckling1是Facebook开源的结构化抽取工具,Language, engine, and tooling for expressing, testing, and evaluat ing composable language rules on input strings.比如,可以完成以下解析:"the first......
2019-03-16 00:00:09 1283
原创 通往最佳CSV解析?(Java)
1. CSV解析还需要工具包吗?如果能问出这个问题,根本还是在于对问题严重性不了解,要保证文本能够被正确解析有一个规范。下面是Wikipidia - Comma-separated values中对RFC-4180介绍的(了解一下):RFC 4180 formalized CSV. It defines the MIME type “text/csv”, and CSV files tha...
2018-11-18 01:58:12 2043
原创 《代码的未来》笔记(2)
就我个人而言,最有收获的就应该就是关于GC的这一部分了。作者列举了常见的几种GC技术,而就在他介绍的同时我也基本上懂那么一点Java的垃圾回收机制是怎么一回事了。
2016-03-21 00:02:07 298
原创 《代码的未来》笔记(1)
工作着工作着就忘了去学习,读点书还是有好处的,至少可以提醒自己其实是很无知。另外,计算机的世界有太多太多的东西需要,如果不关注其实就是对自己的忽视。抠门的人还知道雁过拔毛,读个书不记点笔记岂不是很可惜?还是得抠一点。 以下均为摘录,绝非原创。编程的本质是思考 “人们到底想要什么?想要这些东西的本质又是什么?要实现这个目的严格来说需要怎样的操作步骤?”思考并解决这些问题,才是软件开发中最重
2016-02-29 00:03:00 433
原创 Scalding入门——很Spark的MapReduce流计算框架
Scalding是对Cascading框架的Scala封装,或者更确切地说是一种函数式封装。看到Cascading的时候你可能会觉得这么麻烦的东西有必要学吗?但是再看看Scalding就会发现,这好像跟写一般的Scala代码也没什么区别……小小的封装带来巨大的改变。
2015-12-23 20:52:38 2838
原创 专题:如何写测试——Spark
Spark测试与写普通的程序流程是一样的,稍加设置即可。下面以scalatest为测试工具简单介绍一下Spark测试的写法。
2015-12-20 20:26:55 829
原创 专题:如何写测试——HBase
最近做Spark Streaming任务时用到了HBase做中间状态查询和存储,顺手写了一些测试,小小总结了一下各部分测试的写法。
2015-12-20 18:35:23 1067
原创 专题:如何写测试——MapReduce
MapReduce的测试确实没有那么方便,但是还是有办法的。下面的内容主要加工自[MRUnit Tutorial](https://cwiki.apache.org/confluence/display/MRUNIT/MRUnit+Tutorial),Tutorial中另外还介绍了Counter的测试(也就是如何获取Counter)和Configuration传参数(如何在Mock中获取conf对象)。
2015-12-13 22:38:22 476
原创 单机搭建基于Hadoop的Spark环境
Spark是运行在yarn(也就是hadoop,一般特指资源管理器)上的应用,前面的一篇文章中已经搭好了yarn+hdfs,接下来的配置就很简单了。
2015-12-12 17:15:14 1315
原创 单机搭建Hadoop伪分布式环境
接触Hadoop两年、Spark一年多了,还是头一次在本地搭建环境,幸好网上的资料很丰富,配置起来也还是很容易的。 这里的搭建单机环境不是指利用本地文件系统Standalone模式,而是只有一个结点的Pseudo Cluster。用于本地验证应该还是足够了。
2015-12-12 16:48:21 523
原创 CSDN终于有Markdown了
CSDN终于有Markdown了,毕竟是程序员社区,终究还是会跟上的。我想我应该在这里试试,勤耕不辍或者还能有些许影响力……(然并卵)
2015-12-12 16:27:12 353
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人