关闭

cython的使用

0. 环境配置要使用cython首选得有的她的环境 [ 废话,^_^ ],系统上有pip包管理环境的话直接:pip install cython 即可安装cython或者也可以源码安装: https://github.com/cython/cython/wiki/Installing 1. 相关介绍: Cython 编译器把 Cython 代码编译成调用了 Python 源码的 C/C++ 代码...
阅读(1562) 评论(0)

C++自动微分(Automatic differentiation)原理1

0. 缘由下面介绍下为什么要引入自动 自动微分(automatic differentiation -> AD )。 一个优化问题的例子 假设现在我们在解决一个机器学习的问题,有了一些训练样本,现在需要寻找一个最优的函数,使得函数对输入X的估计Y’与实际输出Y之间的期望风险最小化。利用已知的经验数据(训练样本)来计算得到的误差,被称之为经验风险。使用对参数求经验风险来逐渐逼近理想的期望风险的最小值...
阅读(1562) 评论(0)

奇异递归模板模式(CRTP)应用--表达式模板(expression template) 2

1 表达式模板(expression template)概述首选分几个部分介绍下expression template。1.1 表达式模板(expression template)是什么?引用wiki 介绍的 Expression templates : Expression templates are a C++ template metaprogramming technique that...
阅读(1335) 评论(0)

奇异递归模板模式( Curiously Recurring Template Pattern,CRTP)1

1.CRTP介绍奇异递归模板模式(curiously recurring template pattern,CRTP)是C++模板编程时的一种惯用法(idiom):把派生类作为基类的模板参数。更一般地被称作F-bound polymorphism,是一类F 界量化,相关介绍可以参考 wiki 奇异递归模板模式。curiously recurring template pattern,CRTP的来源,...
阅读(1440) 评论(0)

中文分词 mmseg nginx 模块开发

一、nginx模块开发Nginx 是一款高性能web服务器,因此,工作业务中需要借助nginx强大的网络服务功能,往往需要开发和定制相应的 Nginx 模块满足业务需求。 基本上作为第三方开发者最可能开发的就是三种类型的模块,即handler,filter和load-balancer。Handler模块就是接受来自客户端的请求并产生输出的模块,也是我们使用最多的一个模块。有关nginx模块开发的...
阅读(2094) 评论(0)

mmseg分词算法及实现

一、分词方法关于中文分词 参考之前写的jieba分词源码分析 jieba中文分词。 中文分词算法大概分为两大类: 一是基于字符串匹配,即扫描字符串,使用如正向/逆向最大匹配,最小切分等策略(俗称基于词典的) 基于词典的分词算法比较常见,比如正向/逆向最大匹配,最小切分(使一句话中的词语数量最少)等。具体使用的时候,通常是多种算法合用,或者一种为主、多种为辅,同时还会加入词性、词频等属性来辅助处理...
阅读(4603) 评论(2)

jieba中文分词源码分析(四)

一、未登录词问题在jieba中文分词的第一节曾提到未登录词问题 中文分词的难点 分词规范,词的定义还不明确 (《统计自然语言处理》宗成庆) 歧义切分问题,交集型切分问题,多义组合型切分歧义等 结婚的和尚未结婚的 => 结婚/的/和/尚未/结婚/的 结婚/的/和尚/未/结婚/的 未登录词问题 有两种解释:一是已有的词表中没有收录的词,二是已有的训练语料...
阅读(4145) 评论(0)

jieba中文分词源码分析(二)

一、jieba的使用举例 jieba的简单使用 我们根据作者的 github的例子来编写一个自己的例子,代码如下: # encoding=utf-8 import jiebaseg_list = jieba.cut("去北京大学玩123", cut_all=True) print("Full Mode: " + "/".join(seg_list)) # 全模式seg_list = jieba....
阅读(3137) 评论(0)

jieba中文分词源码分析(三)

一、前缀字典作者这个版本(0.37)中使用前缀字典实现了词库的存储(即dict.txt文件中的内容),而弃用之前版本的trie树存储词库,python中实现的trie树是基于dict类型的数据结构而且dict中又嵌套dict 类型,这样嵌套很深,导致内存耗费严重,具体点这里,下面是@gumblex commit的内容: 对于get_DAG()函数来说,用Trie数据结构,特别是在Python环...
阅读(3864) 评论(0)

jieba中文分词源码分析(一)

一、缘由接触自然语言处理(NLP)有段时间,理论知识有些了解,挺想动手写些东西,想想开源界关于NLP的东西肯定不少,其中分词是NLP的基础,遂在网上找了些资源,其中结巴分词是国内程序员用python开发的一个中文分词模块, 源码已托管在github: 源码地址 ,代码用python实现,源码中也有注释,但一些细节并没有相应文档,因此这里打算对源码进行分析,一来把知识分享,让更多的童鞋更快的对源码有个...
阅读(5028) 评论(4)

使用Hadoop Streaming

hadoop大家都了解的,不再细说。之前用java写过MR程序,对Hadoop streaming了解不多,Hadoop streaming是和Hadoop一起发布的实用程序,它允许用户创建和执行使用任何程序或者脚本编写的map或者reduce的mapreducejobs,实际工作中看到不少同学用python、shell、Perl等编写Hadoop streaming程序(开发效率确实高)。在运行...
阅读(1832) 评论(0)

redis 源码分析(一) 内存管理

一,redis内存管理介绍   redis是一个基于内存的key-value的数据库,其内存管理是非常重要的,为了屏蔽不同平台之间的差异,以及统计内存占用量等,redis对内存分配函数进行了一层封装, 程序中统一使用zmalloc,zfree一系列函数,其对应的源码在src/zmalloc.h和src/zmalloc.c 两个文件中。 二,redis内存管理源码分析 redis封装是为了...
阅读(3846) 评论(0)

Redis c/c++, java 客户端连接

Redis 介绍 redis 这个想必大家都了解,关于redis的安装参考这里,redis使用文档参见这里。 Redis C客户端的使用方法  Redis的c客户端 Hiredis使用比较广泛,下面主要介绍下它。 1,Hiredis的安装,配置 Hiredis客户端 在redis解压后的deps/hiredis下有相应的文件。如果你的安装包没有相应的文件可以到这里下载。 cd...
阅读(6444) 评论(0)

最长递增子序列(LIS)求解

问题描述 最长递增子序列也称 “最长上升子序列”,简称LIS ( longest increasing subsequence)。设L=是n个不同的实数的序列,L的递增子序列是这样一个子序列Lis=,其中k1 如:求一个一维数组arr[i]中的最长递增子序列的长度,如在序列{ 7, 1, 6, 5, 3, 4, 8 }中,最长递增子序列长度为4,其递增子序列为:1,3,4,8。...
阅读(2689) 评论(0)

c++ 智能指针及 循环引用问题

c++智能指针介绍 由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete,比如流程太复杂,最终导致没有 delete,异常导致程序过早退出,没有执行 delete 的情况并不罕见,并造成内存泄露。如此c++引入智能指针 ,智能指针即是C++ RAII的一种应用,可用于动态资源管理,资源即对象的管理策略。 智能指针在 标头文件的 std 命名空间中定义...
阅读(6918) 评论(1)

C++ 类型转换及RTTI

C++的4中类型转换 我们应该比较熟悉C的类型转换即由圆括号和标识符组成,但是对于C的类型转换有时候到不到我们的要求,比如去除const 的类型转换,把一个指向基类的指针转化成指向子类的指针等等。下面就介绍C++引进的四个新的类型转换操作符,这四个操作符是:static_cast, const_cast, dynamic_cast, 和reinterpret_cast。 1,const_cas...
阅读(2473) 评论(0)

使用Latex制作简历

认识LaTeX LaTeX(LATEX,音译“拉泰赫”)是一种基于ΤΕΧ的排版系统,LaTeX类似于html脚本语言,很容易上手。虽然也需要“编译”等才能生成pdf或者ps文档, 但是实际上网上很有很多很漂亮、很专业的模板,我们只需要将自己相应的信息填入相应的位置即可。对于写论文、简历的同学不妨试一下LaTex。 LaTex安装及使用 下面介绍MiKTeX , TexStudio  w...
阅读(7191) 评论(1)

skiplist 跳跃表详解及其编程实现

skiplist介绍 跳表(skip List)是一种随机化的数据结构,基于并联的链表,实现简单,插入、删除、查找的复杂度均为O(logN)。跳表的具体定义, 请参考参考维基百科 点我,中文版。跳表是由William Pugh发明的,这位确实是个大牛,搞出一些很不错的东西。简单说来跳表也是 链表的一种,只不过它在链表的基础上增加了跳跃功能,正是这个跳跃的功能,使得在查找元素时,跳表能...
阅读(6314) 评论(1)

awk 使用小结

AWK介绍 AWK是贝尔实验室1977年搞出来的为Unix/Linux提供样式扫描与处理工具,非常擅长处理结构化数据和生成表单。与sed 和grep 很相似,但功能却超过大于两者, 之所以叫AWK是因为其取了三位创始人 Alfred Aho,Peter Weinberger, 和 Brian Kernighan 的Family Name的首字符。awk是要学AWK,就得提一提AWK的一...
阅读(2760) 评论(0)

nginx 源码学习(六) 基本数据结构 ngx_array_t

ngx_array_t 介绍  ngx_array_t是nginx内部使用的数组结构。显而易见ngx_array_t是一个顺序容器,它以数组的形式存储元素,并能够在数组容量达到上限时动态扩容数组, 很像c++ STL中的vector容器。ngx_array_t 使用了nginx内存池,因此其分配的内存也是在内存池中申请得到的,总的来说ngx_array_t具有访问速度快、 数组可动态扩...
阅读(2786) 评论(0)
124条 共7页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:493808次
    • 积分:6167
    • 等级:
    • 排名:第4444名
    • 原创:109篇
    • 转载:15篇
    • 译文:0篇
    • 评论:104条
    我的链接
    博客专栏
    最新评论