自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (1)
  • 收藏
  • 关注

原创 theano配置问题

以前在配置theano环境的时候,只按照教程往./theanorc里面添加了几行内容,现在又踩坑了,所以就查了下文档。theano的config模块包含了许多属性来定义theano的动作。改变theano配置有三种方式:按照优先级依次为: theano.config.property 赋值THEANO_FLAGS 修改./theanorc可以通过print函数查看你现在的配置 ...

2018-07-16 23:33:25 1097

原创 Capsule 胶囊网络学习笔记

以前邹班的SMT没认真听,还得重新回来捡。参考自:https://blog.csdn.net/u013010889/article/details/78722140/CNN的缺点: 忽略了图片中的位置信息,如果在图片中检测到眼睛鼻子等,就认为这是一张人脸,但如果把这些器官打乱,还是会误识别为人脸,这是CNN中max pooling的特性造成的。如上图所示,我们通俗的将每个神经元的...

2018-07-09 21:15:25 2018

原创 论文笔记《Chinese Lexical Analysis with Deep Bi-GRU-CRF Network》

Chinese Lexical Analysis with Deep Bi-GRU-CRF Network百度自然语言处理部的一篇论文,提出了一个结合分词,词性标注和命名实体识别的工具。 论文指出百度已经开发了各种分词,词性标注,实体识别的工具,相互独立以便各个团队使用。这种方式有两个缺点:重复计算太多,严重拖慢了计算速度吗,浪费计算资源不同任务之间不能share一些特征,比如分词的...

2018-07-09 20:59:36 2754

原创 统计不同时间段在线人数,给定若干(进入,离开)时间对

题目: 有很多个用户 id:每个id后面都有进入到这个网页的时间和离开这个网页的时间。 也就是我有这样的输入:user_id1 , enter_time1, leave_time1 user_id2 , enter_time2, leave_time2 user_id3 , enter_time3, leave_time3面试被问到,当时没想到,回来吃饭的时候想到一个方

2017-09-25 20:59:00 5749 2

原创 SVM一些问题及思考

给定训练集合 D=(x1,y1),(x2,y2)……(xn,yn)\begin{equation} D = (x_{1},y_{1}),(x_{2},y_{2})……(x_{n},y_{n}) \end{equation}划分超平面 wTx+b=0\begin{equation} w^{T}x+b = 0 \end{equation} 点到直线距离 r=|wTx+b|||w||\b

2017-09-11 13:06:52 1565

原创 pytorch版本回退,从0.2降到0.1.12

由于个人需求,需要将pytorch降级到0.1.12。 但是官网却没找到对应的链接。 所以踩了一些坑。具体做法可以见下面的issue。 https://github.com/dasguptar/treelstm.pytorch/issues/12 希望对你能有帮助。

2017-09-09 22:32:34 7443 1

原创 熵,互信息,KL距离(相对熵),交叉熵

熵信息论中的熵,又叫信息熵。它是用来衡量,一个随机变量的不确定程度。 熵越大,他的不确定性越大。最大熵模型的假设就是基于此而来。 H(X)=E[I(xi)]=−∑n=1NP(xI)log(P(xi))\begin{equation*}H(X) = E[I(x_{i})] = -\sum_{n = 1}^NP(x_{I})log(P(x_{i}))\end{equation*}联合熵联合熵用得

2017-09-08 21:32:56 3912 1

原创 glove 学习笔记

话不多说,入正题。动机:现有的词向量模型, 1 局部上下文建模的方法 例如word2vector 用通俗的话来讲就是,如果两个词在训练语料中出现的上下文比较类似,比如“食堂”和“餐厅”,都在“我”,“去”,“吃饭”这种上下文上出现了许多次,那么他俩的词向量就比较相似。 2 矩阵分解的方法,例如LSA 将文档和单词的共现矩阵,也就是行是文档,列是单词,第i行第j列,表示文档i中是否包含单词j(

2017-09-02 14:55:40 11568 2

原创 t-SNE学习笔记

http://www.datakit.cn/blog/2017/02/05/t_sne_full.html 拜读了这位大神的笔记,有些一开始不太明白的地方,写个笔记记下来。1.1基本原理SNE是通过仿射(affinitie)变换将数据点映射到概率分布上,主要包括两个步骤:SNE构建一个高维对象之间的概率分布,使得相似的对象有更高的概率被选择,而不相似的对象有较低的概率被选择。 SN

2017-07-28 09:32:46 5133

原创 word2vector 一些问题及思考

本文是看了论文《Distributed Representations of Words and Phrases and their Compositionality》的学习笔记。 话不多说。 贴上cbow 和skip-gram的示意图,一个是以context预测word,一个是word预测上下文。 听同学说业界主要用skip-gram加上negative sampling这一套。论文里面也主

2017-04-30 20:49:11 5191

原创 逻辑斯蒂回归公式推导

逻辑斯蒂回归,一个不是很恰当的理解就是在线性回归的基础上加了一个sigmoid函数。将其输出空间映射到0-1上面来。 然后映射后的这个值就代表他被分为类别1的概率。话不多说。这个就是逻辑回归(线性回归加上sigmoid的)最基本的公式。 线性回归是用y = wx_i +b 去拟合y_i也就是训练一组参数w使得wx+b尽可能的去逼近,而逻辑回归中的对数几率回归(周志华老师的书上有介绍,这里就不啰嗦

2017-04-30 11:57:11 6216

原创 Memory Network简单理解

最近想把memory network的那一套引入到自己的任务中,所以写一些学习过程中的笔记。 here is the paper http://cs224d.stanford.edu/reports/KapashiDarshan.pdfmemory 最开始出现在是 QA(问答系统)任务中。下面是memory network的结构 由4个单元组成 input单元 ,Generalization

2017-04-29 21:18:59 9211

原创 Dropout: A Simple Way to Prevent Neural Networks from Overfitting

本文来自《Dropout: A Simple Way to Prevent Neural Networks from Overfitting》 以学习笔记的形式书写,有些地方写得或者翻译得不太恰当,望见谅!!过拟合问题一直是深度学习中难以处理的问题,dropout的key idea就是在训练过程中随机的”丢弃”掉一部分units。 这里的丢弃是指暂时性的remove,而不是永久的。 可以从两个

2017-04-20 13:10:50 5207

原创 感知机及其对偶问题,参考《统计学习方法》

感知机模型: 1 判别模型, 2 旨在学习出一个线性划分的超平面输入 T= {(x1,y1),(x2,y2)……(xN,yN)}xi 是一n维的特征向量,yi属于{+1,-1}。 通俗来讲就是。(假设T是线性可分的)输出 函数f(x) = sign(w·x + b)sign表示符号函数。是一n维的向量。 (w,b)可以确定一个超平面。首先,我们要使用梯度下降来求解。就得确定损失函数。分类错误

2017-03-06 13:26:07 1031

转载 死锁的四个条件

转自 http://www.cnblogs.com/jijiji/p/4855581.html 一. 什么是死锁? 如果一个进程集合里面的每个进程都在等待这个集合中的其他一个进程(包括自身)才能继续往下执行,若无外力他们将无法推进,这种情况就是死锁,处于死锁状态的进程称为死锁进程二. 死锁产生的原因?1.因竞争资源发生死锁 现象:系统中供多个进程共享的资源的数目不足以满足全部进程的需要时,就会引

2017-03-02 13:29:37 756

原创 Longest Consecutive Sequence最长连续序列

Given an unsorted array of integers, find the length of the longest consecutive elements sequence.For example, Given [100, 4, 200, 1, 3, 2], The longest consecutive elements sequence is [1, 2, 3, 4].

2017-01-13 19:02:24 258

原创 Sunday算法流程与代码

写得比较马虎,欢迎大家指正。直接看例子首先初始化一个map,也可以用大小为256的int数组,数组中记录了较短字符串中字母出现的最后一个位置,如str = “abad” map[a] = 2, map[d] = 3 然后两个指针 i, j分别指向较长字符串,较短字符串,初始i=0,j=0。(记为l_str, s_str) 如果 l_str[i] = s_str[j] 则 i++,j+

2017-01-01 14:06:05 3851 4

原创 判断链表是否有环,如果有返回入环的第一个节点。

如何判断链表有环,这个问题很简单,有环的链表,在遍历的时候会永远在环里转下去。但如何返回入环的第一个节点,当然最简单的思路是用额外的空间记录是否访问过该节点,如果访问过,就立刻停止遍历,并返回。在《程序员代码面试指南》中,作者采用了两个指针的方法,具体如下。 1设置一个slow指针和一个fast指针,开始时,slow和fast指向链表的头,然后slow每次跳一步,fast每次跳两步。 2如果链表

2016-12-31 19:05:31 1931 1

原创 Transition-based Parsing 简介

句法分析的几种主要方法: Deterministic parsing(specifically : Transition-based parsing) Dynamic programming(specifically : Graph-based parsing) Constraint satisfaction这里主要介绍一下Transition-based parsing 首先他所采取的数据

2016-12-31 12:36:28 5713

原创 Evaluation of Parsing 句法分析评测

在一般的学术论文中评测parser的好坏, 在dependency parsing中一般是用 LAS UAS 来衡量 简要说来UAS是知道是边对了(也就是它依赖的节点找对了)就算对,而LAS在前者的基础上要求更加严格,还要求边的Label也要对,才算对。 Evaluation of Dependency Parsing 在constituent parsing中则是根据gold中的一个

2016-12-31 12:07:38 1745 1

原创 Constituent Parsing & Dependency Parsing 句法分析简介

由于博主前面在学习句法分析的时候发现,相关的学习资料少之又少,费了不少功夫收集和整理。所以写几个笔记记录一下。关于Parsing的一些基础知识:主要包括Parsing任务是干什么的,有什么作用,怎么做。 可以参考Christopher Manning的视频。以前在course上面有视频,现在得翻墙看 这是视频链接https://www.youtube.com/playlist?list=PL63

2016-12-31 11:54:18 12959 2

原创 《程序员面试代码指南》之约瑟夫环问题

题目:给定一个链表,一个整数m,从表头开始报数,每次报到m就该节点从链表中去掉。 输出最后剩下的节点。普通做法,就是遍历,当计数到m时把该节点删去,然后继续维持环状。时间复杂度O(m*n)在上面的算法中,我们花费了太多时间去删除那些要去掉的节点,因为我们不知道最后会剩下哪个节点。进阶算法:O(n) (1)遍历一遍列表得到列表的长度。 假如列表中有n = 11个node。 从头到尾可以计数成

2016-12-30 22:52:38 381

原创 《程序员面试代码指南》之栈和队列中的套路

再过几个月要找实习了,有必要花些时间有条理,分专题的好好复习一下。已经在工作的本科室友给我推荐了左程云的《程序员面试代码指南》,由于我们主要都用java,所以觉得这本书还挺不错的,就准备按照上面的框架复习。栈和队列这一章差不多第二遍看了,有些题目觉得有点繁琐,看的比较泛,而且第一次看的那几个题忘得差不多了。首先,栈和队列的基本结构已经特性,我就不提了。 拿出几个一星的题 1 设计一个有getMi

2016-12-23 23:02:31 463

原创 SyntaxNet安装与使用详解

安装SyntaxNet的工作环境,遇到很多麻烦,到后来发现如果不走弯路,其实并不麻烦。1 我最开始是安装anaconda。(python2.7版本) https://www.continuum.io/downloads 这个包安装完后python pip numpy都解决了,而且还不用改环境变量。2 然后用pip 安装mock和asciitree和protobuf

2016-12-02 19:45:30 5903 1

原创 java io

1 大多数的文档中都对io做了很多很多的总结,不过我在学习以后,感觉有些地方在实际编程中基本不会用到,而你只需要知道它大概是个什么东西,等到哪天真的需要用的时候再去详细查看这方面的资料。下面是我认为io中一些比较基本重要的东西。2 JDK提供的流继承了四大类:InputStream(字节输入流),OutputStream(字节输出流),Reader(字符输入流),Writer(字符输出流)。按流

2016-11-27 18:55:34 257

原创 java线程池详解

什么是线程池? 为什么要使用它? 创建线程要花费昂贵的资源和时间,如果任务来了才创建线程那么响应时间会变长,而且一个进程能创建的线程数有限。为了避免这些问题,在程序启动的时候就创建若干线程来响应处理,它们被称为线程池,里面的线程叫工作线程。从JDK1.5开始,Java API提供了Executor框架让你可以创建不同的线程池。比如单线程池,每次处理一个任务;数目固定的线程池或者是缓存线程池(一个适

2016-11-27 15:59:27 373

转载 卷积神经网络学习笔记

卷积神经网络 转自:http://dataunion.org/11692.html 找到一个很不错的CNN的讲解,认真花了点时间把里面自己感觉有用的东西稍微懂了一些。 以前组会上听人讲过,但是当时有些地方听得不是太明白。卷积层和池化层里面有些东西看似很难,其实和只要明白其中的道理,感觉挺有意思的。在图像处理中,往往把图像表示为像素的向量,比如一个1000×1000的图像,可以表示为一个1000

2016-11-08 14:02:22 1086

原创 Numpy学习手册

标准安装的Python中用列表(list)保存一组值,可以用来当作数组使用,不过由于列表的元素可以是任何对象,因此列表中所保存的是对象的指针。这样为了保存一个简单的[1,2,3],需要有3个指针和三个整数对象。对于数值运算来说这种结构显然比较浪费内存和CPU计算时间。此外Python还提供了一个array模块,array对象和列表不同,它直接保存数值,和C语言的一维数组比较类似。但是由于它不支持多维

2016-10-23 17:01:57 554

原创 知其然知其所以然之——word2vector

在学习word2vector的过程中,下面两位博主的总结及讲解给了我很大帮助。本文主要是记录在学习和理解他们的博客的过程中个人也有一些思考和理解。本人才学疏漏,有错误的地方请大家指正。 http://blog.csdn.net/itplus/article/details/37969519 http://blog.csdn.net/mytestmy/article/details/2696914

2016-10-14 13:57:23 3350

原创 Neural Machine translation中的Attention机制

随着深度学习的发展,NMT(Neural machine translation)已经逐渐取代了SMT(statistic MT)。其最大的有点就是系统的整体和简单,少去了统计机器翻译中的分词,对齐。抽短语等繁琐的步骤。而NMT的大致流程和思想可以去参考下面的链接,讲的很详细。 https://devblogs.nvidia.com/parallelforall/introduction-neur

2016-10-13 20:21:15 2033

原创 推荐给初学LSTM或者懂个大概却不完全懂的人

个人认为下面这篇博文非常适合初学或者学的很浅的朋友。 转自http://www.jianshu.com/p/9dc9f41f0b29经常接触LSTM,GRU,RNN这些模型,对于LSTM的印象只是知道它用来解决梯度消失梯度爆炸问题,对于长距离的句子的学习效果不好的问题,而且大概知道里面是加了一些参数,加了门单元来选择忘记和记住一些信息。但是具体公式没有推过,所以理解的不够深。但是上面这篇长博文,作

2016-10-13 14:06:00 10610

原创 sigmoid和softmax总结

sigmoid函数(也叫逻辑斯谛函数):  引用wiki百科的定义:  A logistic function or logistic curve is a common “S” shape (sigmoid curve).  其实逻辑斯谛函数也就是经常说的sigmoid函数,它的几何形状也就是一条sigmoid曲线。  logistic曲线如下:   同样,我们贴一下wiki百科对softma

2016-10-13 12:47:59 134656 11

原创 比KMP更简单更有意思的Sunday算法

一般想到字符串的匹配算法,大家很快就会想到KMP,毕竟教科书上都是介绍它相关的内容,但是前面在准备面试的过程中,发现了一种效率不比它差,但是简单易懂的算法。感觉这种算法确实很有意思。首先两个字符串 例如:在eaabb babadbbcd 中找adcbb 首先 eaabb babadbbcd :i A adcbb :j B 对齐,然后

2016-09-27 23:15:45 2199 1

原创 非递归实现堆排序

话不多说,直接上例子,首先得明白具体过程:45 28 49 16 37 82 56 75(最小堆)建树 45 28 49 16 37 82 56 75从n/2个节点开始选择,第一趟,16比75小,不换.到n/2-1个节点,49和82、56比,49小,也不换.到n/2-2个结点,28和16、37比,16小,变成 (n/2的意思也就是第一个非叶子节点

2016-09-27 18:28:31 796 1

原创 阿里一道机器人面试题。

某程序员开发出了一款超级智能机器人,能对任何提问给出“是”或者“不是”的答案。现有3个这种机器人,其中有数量不定的(0到3个)机器人发生了故障。如果正常机器人总是给出正确的答案,而故障机器人总是给出错误的答案。每一回合只能问任意一个机器人任意一个问题,那么至少需要__回合才能确保区分出哪些机器人是正常,哪些是故障。1 2 3 4 5 6首先这题,不太清楚答案,由于题目是“”任何问题“”,所

2016-09-25 20:59:20 3332 1

原创 LeetCode 397. Integer Replacement

题目大意 给定一个数,通过(偶数除以二,奇数加1或者减1)几种操作,让这个数字变成1;例如给定数字5 :5-4-2-1返回次数3.而这个关键在于何时加1何时减1,比如15-14-7-6-3-2-1(6次);15-16-8-4-2-1(5次) 可见在奇数时刻加1还是减1对最后的结果有很大的影响。 对于这种Easy级别的题目 常规思路就是递归,但事实告诉你,下面这种写法,绝对是通不过的。栈溢出,

2016-09-17 15:15:25 400

原创 红黑树学习笔记

首先,为什么会有红黑树。它存在的意义在于: 因为一棵由n个结点随机构造的二叉查找树的高度为logn,所以顺理成章,二叉查找树的一般操作的执行时间为O(lgn)。但二叉查找树若退化成了一棵具有n个结点的线性链后,则这些操作最坏情况运行时间为O(n)。 红黑树虽然本质上是一棵二叉查找树,但它在二叉查找树的基础上增加了着色和相关的性质使得红黑树相对平衡,从而保证了红黑树的查找、插入、删除的时间复杂度最

2016-09-14 13:54:53 314

转载 JVM 类加载器

类加载器的委托模式 提到类加载器,就不得不提到它的委托模式。 Java虚拟机可以安装多个类加载器,系统默认三个主要的类加载器,每个加载器负责加载特定位置的类: BootStrap,ExtClassLoader,AppClassLoader。类加载器本身也是一个Java类,因为其他Java类的类加载器本身也要被类加载器加载,所以肯定有一个类加载器不是Java类,这便是BootStrap,Boo

2016-09-10 14:46:31 273

原创 HashMap Java 8 重点内容详解

从原理和细节上搞定HashMap声明:网上讲HashMap的帖子很多,各自有各自着重介绍的地方,个人把自己比较感兴趣的内容和自己的一点点认识写下了。 hashmap是由数组和链表组成的,要插入的元素首先根据哈希函数得到hash值,然后根据规则(取模),得到自己要插入的桶(所谓的桶就是图中的0-15的数组元素)的号。然后排在桶中元素的后面。而要取的时候也一样,先拿到桶号,在沿着这个指针逐个往下找

2016-09-09 16:02:42 734

webservice

webservice开发指导 Web Service技术, 能使得运行在不同机器上的不同应用无须借助附加的、专门的第三方软件或硬件, 就可相互交换数据或集成。依据Web Service规范实施的应用之间,

2014-05-06

空空如也

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

TA关注的人

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