- 博客(56)
- 资源 (4)
- 收藏
- 关注
原创 层次主题模型——Hierarchical LDA
在LDA主题模型提出后,其在很多领域都取得了很成功的应用,如生物信息、信息检索和计算机视觉等。但是诸如LDA之类的主题模型,将文档主题视为一组“flat”概率分布,一个主题与另一个主题之间没有直接关系,因此它们能够用于挖掘语料中蕴含的主题,但是无法发现主题之间的关联和层次。对于每一篇文档,主题层次是显而易见的,是一个由粗到细,由宽泛到具体逐渐层层递进,逐渐细化。于是,LDA的作者Blei教授在LD...
2019-07-05 12:07:45 6325 7
原创 主题模型(4)——LDA模型及其Gibbs Sample求解
之前关于主题模型整理了《文本建模之Unigram Model,PLSA与LDA》与《再看LDA主题模型》两篇博客,以及针对PLSA的求解整理了博客《主题模型(3)——PLSA模型及其EM算法求解》,这一篇博客将继续整理LDA(Latent Dirichlet Allocation)模型的Gibbs Sample求解方法。LDA回顾同样,首先回归下LDA模型的文档生成过程。我们知道,LDA在PL...
2019-05-19 16:32:16 1463
原创 不依靠第三方库(除了numpy)实现一个神经网络
现在各种机器学习、深度学习第三方库都有非常成熟高效的神经网络实现,借助这些第三方库,短短几行代码就能实现一个神经网络。但是对于一个机器学习/深度学习的入门者来说,这些代码封装得太过彻底,往往一行代码就能实现BP算法或者梯度下降算法,这导致很多初学者即使掌握了繁复的数学推导后,依旧对神经网络的工作流程没有一个直观的认知。在我看来,自己动手实现一个神经网络,包括BP算法,梯度下降算法等,是将理论应用于...
2019-05-07 22:05:04 3792 3
原创 Jupyter Notebook配置多个IPython Kernel详细过程记录(IPython与Jupyter Notebook介绍、IPython、Jupyter安装配置)
Jupyter Notebook是一款非常好用的基于浏览器的交互式的代码编写、运行测试以及富媒体(rich media)输出的工具。Jupyter Notebook本质上是一个notebook,并不具备代码执行能力,需要借助其他代码执行内核才能完成代码执行,如执行Python代码的IPython。因此,我们自然而然会想能不能为Jupyter Notebook配置多个kernel呢?本篇博客将从IP...
2019-04-28 20:24:26 13970
原创 机器学习系列(九)之——模型参数估计(最小二乘估计、最大似然估计、最大后验估计)
给定模型与参数,我们就能对样本空间进行描述。大家很自然地会问,这个描述是不是最不好的呢?我们用什么评价标准判断这个描述的好坏呢?这篇博客将一起探讨这个问题。在统计学中,根据从总体中抽取的随机样本来估计模型未知参数的过程被称为参数估计(parameter estimation)。 常用的参数估计方法有:最小二乘估计,最大似然估计和最大后验估计,其中最小二乘估计用于函数模型的参数估计,最大似然估计和...
2019-04-05 20:03:57 11836
原创 表示学习(Representation Learning)之局部表示(Local Representation)与分布式表示(Distributed Representation)
一个良好的表示是内容充分高效表达的基础,作为沟通计算机与现实世界的桥梁,计算机行业人员每时每刻都在研究事物的表示。比如:编程语言,早期的机器语言和现在的高级程序语言可以看作是指令的两种不同表示方式,从可读性方面评价,两者的表达能力相差甚远。再比如:数据结构,其研究的正是数据在计算机中的高效表达与存储,如下图所示,我们可以采用链表和红黑树两种不同的数据结构对有序表进行存储。在对有序表进...
2019-03-25 23:10:50 5997 1
原创 主题模型(3)——PLSA模型及其EM算法求解
之前整理过两篇关于主题模型的博客《文本建模之Unigram Model,PLSA与LDA》和《再看LDA主题模型》,主要是整理了主题模型的由来和推导过程,关于模型参数怎么计算没有过多涉及,因此接下来将分两篇博客,分别整理PLSA模型和EM算法求解,LDA模型和Gibbs Sample求解。PLSA首先回顾下PLSA,作为生成模型,其在文本生成过程中,引入主题的概念,即先从KKK个主题中选定一个...
2019-03-01 22:01:02 2423
原创 字符串匹配KMP算法
新年第一篇博客也是第一次写关于算法的博客。这两天帮同学看《算法与数据结构》试题,其中涉及到字符串匹配KMP算法,借机重新温习整理了一下,也算有了新的体会与感悟,希望能够讲得清楚。从字符串匹配讲起我们都说KMP算法是一种高效的字符串匹配算法,所以首先先定义下字符串匹配问题:给定一个文本串T(也叫主串S),和一个模式串P,现在要找出S中与P匹配的子串,如果存在就返回匹配位置,否则返回-1。暴力...
2019-02-25 22:28:50 1416
原创 在GitHub上搭建个人主页
最近因为项目组统一要求,在GitHub上搭建了一个个人主页,也就是个人简历页面。过程中遇到了一些问题,特记录下来与大家分享。首先大家需要在GitHub上注册一个账号,注册账号过程就不在此赘述了,注册好账号后并登入将进入如下页面:选择“Start a project”或者“New repository”创建一个新的仓库,输入Repository name,其格式是“username。git...
2018-12-18 18:59:35 68892 30
原创 肖仰华老师《基于知识图谱的机器语言认知》
本周五参加CCF YOCSEF专题探讨班《知识图谱》讲座上有幸听到了肖仰华老师关于《基于知识图谱的机器语言认知》的分享。下面将整理肖老师分享的主要内容。知识图谱不单单是人类对世界认知的结果,不单单是各个行业知识沉淀的结果。有了这些结果,使得机器理解我们人类世界,理解我们人类的自然语言成为可能。正是这个可能性,各行各业的数据、文档的价值有可能被挖掘出来,各行各业现在都在利用各行业知识图谱实现...
2018-12-17 16:13:48 1338
原创 Gensim简介
Gensim(generate similarity)是一个简单高效的自然语言处理Python库,用于抽取文档的语义主题(semantic topics)。Gensim的输入是原始的、无结构的数字文本(纯文本),内置的算法包括Word2Vec,FastText,潜在语义分析(Latent Semantic Analysis,LSA),潜在狄利克雷分布(Latent Dirichlet Alloca...
2018-11-30 21:50:12 23860 2
原创 CCF ADL97《图计算》整理
万物皆关联。作为表达和处理关联关系的最佳方式,图和图计算已经成为人们的关注重点和研究热点,广泛应用于金融分析、社交分析、智慧交通等诸多领域。作为大数据处理的一种典型模式,图计算不仅对计算机体系结构提出了严峻的挑战,也对系统软件、数据管理和处理模式提出了重大挑战。11.17-18有幸在武汉参加了CCF组织的ADL97《图计算》讲座,一共7位学术界和工业界的著名学者围绕大图处理的系统架构、表达存储方式...
2018-11-21 21:35:33 2377
原创 再看LDA主题模型
之前学习文本挖掘时已经写过一篇关于主题模型的博客《文本建模之Unigram Model,PLSA与LDA》,前几天小组讨论主题模型时,又重新理解了一遍LDA,有了更深刻的认识,特记录一下。1、Unigram ModelUnigram model是最简单的文本模型,其直接将文本的生成过程看作是从一个词汇表中重复取词的过程。因此只要知道每个词的产生概率,就能计算出一篇文档的产生概率。假设一篇文档由...
2018-11-13 21:13:14 937
原创 关联规则挖掘概述
在网上购物时,系统会主动推荐一些商品,赠送一些优惠券,并且这些推荐的商品和赠送的优惠券往往都能直抵我们的需求,诱导我们消费。这背后主要使用使用了关联分析技术,通过分析哪些商品经常一起购买,可以帮助商家了解用户的购买行为。从大规模数据中挖掘对象之间的隐含关系被称为关联分析(associate analysis)或者关联规则学习(associate rules learning),其可以揭示数据中隐藏...
2018-11-08 17:14:16 21666 2
原创 自动文摘(Automatic document summarization)方法综述(四)——基于神经网络的(neural summarization)方法
前三篇博客(一)、(二)、(三)总结了抽取式自动文摘的一些经典方法,传统抽取式自动文摘方法将文档简单地看作是一组文本单元(短语、句子等)的集合,忽略了文档所表达的全局语义,难免“断章取义”。随着算力的提升,深度学习在很多应用中非常的火热也取得了state-of-the-art的性能,因此,将神经网络模型引入自动文摘任务是理所当然的,将文档用神经网络模型进行表示被称为神经文档模型(neural do...
2018-10-31 22:21:45 4583 2
原创 CNCC 2018技术论坛——知识图谱赋能数字经济
本周五报名参加了在杭州举办的CNCC 2018大会,听取了关于知识图谱的技术论坛——知识图谱赋能数字经济。共有6位专家讲者带来了精彩的主题报告,以及一个小时的Panel环节。本博客将整理总结分享专家的报告,共大家参考。1、周傲英:数据是催生数字经济的新动能——兼谈知识图谱的作用数字经济是什么?新动能是什么?数字经济最早在20年前提出,代表的是数字化,2016年G20峰会上,数字经济被再次提出...
2018-10-27 22:38:54 1675
原创 word2vec之CBOW模型与skip-gram模型
在对自然语言进行处理时,首先需要面对文本单元表示问题。单词(words)作为常考虑的最小文本单元,因而,如何将单词表示成恰当的词向量(word vector)成为了研究者们研究的重点。最简单直观的方法是one-hot representation,也称1-of-N representation,这种方式将每个单词表示成一个词汇表(vocabulary)大小的向量,其中绝大部分元素都是0,只有一个维...
2018-10-11 22:40:06 3726
原创 自动文摘(Automatic document summarization)方法综述(三)——基于次模函数(submodular function)最大化的方法
自动文摘(Automatic document summarization)方法综述的第一篇文章(一)总结了基于中心的(Centroid-based)方法和基于图的(graph-based)方法,第二篇文章(二)总结了基于最优化的(optimization-based)的方法。这篇博客将依旧整理基于最优化方法选取文本单元的方法,更确切的说,这篇博客将聚焦在次模函数(submodular funct...
2018-10-04 21:05:49 13360
原创 概率图之马尔可夫随机场(Markov Random Field,MRF)
现实生活中,许多任务涉及多个因素(变量),并且因素之间存在依赖关系。概率图模型(Probabilistic Graphical Model,PGM)为表示、学习这种依赖关系提供了一个强大的框架,概率图模型在形式上由图结构组成,一个节点(node)表示一个或一组随机变量,节点之间的边(edge)表示变量之间的关系。根据图是有向还是无向,概率图模型可以分为两类:第一类使用有向无环图表示变量之间的因果关...
2018-09-27 22:58:13 37433 9
原创 Attention机制
在sequence-to-sequence学习中,输入和输出都是序列,通常采用Encoder-Decoder的框架进行处理。这种结构首先通过编码器(如CNN/RNN/LSTM等)将输入序列编码成一个固定长度的中间向量,然后将该向量作为解码器(如DNN/CNN/RNN/LSTM)的输入进行解码得到最终结果。以机器翻译为例,其Encoder-Decoder结构如下:上图中,Encoder和De...
2018-09-24 22:30:51 2280 4
原创 使神经网络具有记忆力——RNN及LSTM
我们在进行判断决策时,除了会依靠当前的情况,也会调动大脑中的记忆,协同分析。记忆分为长期记忆和短期记忆,短期记忆可以认为是对之前较短时间内发生事件的印象,这对于一些日常生活应用非常的有必要。比如以下两个句子中,“我将在9月10日到达南京”和“我将在9月10日离开南京”,两句话虽然都包含“南京”,但是第一句话中“南京”是目的地,第二句话中“南京”是出发地,做出这个判断的依据是“南京”之前的“到达”和...
2018-09-18 19:25:36 7292 1
原创 计算图(Computational Graph)的角度理解反向传播算法(Backpropagation)
最近在回看反向传播算法(Backpropagation,BP算法)时,注意到目前各大深度学习框架如Tensorflow,Theano,CNTK等都以计算图(Computational Graph)作为描述反向传播算法的基础。计算图计算图是用来描述计算的语言,是一种将计算形式化的方法。在计算图中,计算被表示成有向图,图中的每一个节点表示一个变量(variable),变量可以是标量(sca...
2018-09-02 21:15:59 7285 4
原创 机器学习系列(八)——Logistic回归解决二分类问题
分类问题的本质是确定样本xxx属于类别cicic_i的概率p(Ci|x)p(Ci|x)p(C_i|x)。在上周整理的分类问题中,我们采用生成式方法,借助贝叶斯公式和极大似然估计,首先计算出p(x|Ci)p(x|Ci)p(x|C_i)和p(x,Ci)p(x,Ci)p(x,C_i),然后再计算出p(Ci|x)p(Ci|x)p(C_i|x)。以二分类为例: p(C1|x)=p(C1,x)p(x)=p(...
2018-08-31 18:15:01 9415 11
原创 自动文摘(Automatic document summarization)方法综述(二)——基于最优化的(optimization-based)方法
在上一篇博客中,我总结了基于中心(centroid-based)的方法和基于图(graph-based)方法。这两类方法的重心都集中在给文本单元打分上,也就是判断文本单元对原始文档的覆盖度(coverage)或者说文本单元与文档主题的相关度(relevance),进而得到文本单元的重要性权重。这只考虑了自动文摘的第一个要素,没有考虑文本单元之间的相似度可能带来的冗余。一般来说,生成一份高质量的自动...
2018-08-21 15:40:14 2545
原创 机器学习系列(七)——分类问题(classification)
这一篇博客将介绍机器学习中另一个重要的任务——分类(classification),即找一个函数判断输入数据所属的类别,可以是二类别问题(是/不是),也可以是多类别问题(在多个类别中判断输入数据具体属于哪一个类别)。与回归问题(regression)相比,分类问题的输出不再是连续值,而是离散值,用来指定其属于哪个类别。分类问题在现实中应用非常广泛,比如垃圾邮件识别,手写数字识别,人脸识别,语音识别...
2018-08-19 19:28:41 69183
原创 自动文摘(Automatic document summarization)方法综述(一)——基于中心的(Centroid-based)与基于图的(graph-based)方法
从Luhn1958年发表第一遍自动文摘论文开始,自动文摘(Automatic document summarization)一直是自然语言处理中最为活跃的分支。自动文摘希望通过计算机自动将冗长的文本压缩到规定长度内,同时保持原始文本主要信息不丢失。在信息爆炸的互联网时代,每时每刻互联网上都在积累更多的文本;而移动互联网的到来,对信息的呈现方式也提出了更高的要求,因此自动文摘的重要性和迫切需求更为凸...
2018-08-12 15:07:07 4488 2
原创 机器学习系列(六)——梯度下降解释及其技巧
在训练机器学习模型寻找最优函数时,梯度下降(Gradient Descent)是最常用的优化(optimization)方法。在给定一组初始参数θ0θ0\theta^0时,梯度下降算法能够顺着损失函数下降最快的方向逐步逼近最低点,也就是最佳参数θ∗θ∗\theta^*的位置。那梯度下降算法为什么work呢?为什么梯度的反方向就是损失函数下降最快的方向呢?梯度下降算法解释首先回顾一下梯度下降...
2018-07-30 20:25:12 5136
原创 机器学习系列(五)——训练集、测试集、验证集与模型选择
在机器学习过程中,为了找到泛化性能最好的那个函数,我们需要确定两方面的参数:1、假设函数参数,也就是我们通常所说的www和bbb,这类参数可以通过各种最优化算法自动求得。2、模型参数,比如多项式回归中的多项式次数,规则化参数λλ\lambda等,这些参数被称为超参数,一般在模型训练之前通过手工指定(当然也可以采用网格法等算法进行寻优)。确定模型超参数的过程称为模型选择。模型选择借用吴恩...
2018-07-12 15:57:25 48105 7
原创 使用matplotlib绘制中国手机网民占比图,将折线图和柱状图整合在一个图中等
本博客主要用来记录之前绘制一个复杂图表的过程。已有数据:2007-2016年10年间每年手机网民规模和手机网民占整体网民比例数据。 年份 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 手机网民规模 5040 11760 23344 30274 35558 41...
2018-07-10 21:33:18 2845 2
原创 机器学习系列(四)——规则化(Regularize)
机器学习中,我们一直期望学习到一个泛化能力(generalization)强的函数,只有泛化能力强的模型才能很好地适用于整个样本空间,才能在新的样本点上表现良好。但是训练集通常只是整个样本空间很小的一部分,在训练机器学习模型时,稍有不注意,就可能将训练集中样本的特性当作了全体样本的共性,以偏概全,而造成过拟合(overfitting)问题,如何避免过拟合,是训练机器学习模型时最亟待解决的绊脚石。 ...
2018-07-09 20:59:11 11347 2
原创 RapidMiner教程
最近接触到一款强大的数据挖掘软件平台RapidMiner,RapidMiner是世界领先的数据挖掘解决方案,通过在图像化界面拖拽建模,轻松实现了数据准备、机器学习和预测模型部署,无需编程,简单易用。下图展示了其工作流程: 其具有如下优势:统一的平台。一个平台,一个用户界面,一个系统,支持从数据准备,模型部署到正在进行的模型管理的完整工作流程。可视化工作流设计。 快速易学和方便使用的拖放方...
2018-06-29 21:03:32 57059 2
原创 机器学习系列(三)——误差(error),偏差(bias),方差(variance)
训练机器学习模型时,我们希望得到一个泛化性能优异的模型。在上一篇博客回归模型中,当我们采用多项式回归,并不断增加多项式的次数时,模型越来越复杂,但是在测试集上的误差并没有逐步降低。 这表明一个复杂的模型并不总是能在测试集上表现出更好的性能,那么误差来自哪里呢?泛化误差(error)我们知道,算法在不同训练集上学得的结果很可能不同,即便这些训练集是来自于同一个分布。以回归任务为例,对测...
2018-06-10 21:44:57 13723 4
原创 机器学习系列(二)——回归模型
回归(Regression)模型是指机器学习方法学到的函数的输出是连续实数值,回归模型可以用于预测或者分类,这篇博客中主要整理用于预测的线性回归模型和多项式回归模型。线性回归按照机器学习建模的三个步骤,首先需要确定选用的模型,这里就是线性回归(Linear regression)模型,然后将其形式化表达: h(x)=w1x1+w2x2+⋯+wnxn+bh(x)=w1x1+w2x2+⋯+w...
2018-06-06 21:48:56 19179 8
原创 机器学习系列(一)——机器学习简介
前前后后接触机器学习也有一年时间,但一直没有系统整理总结过。从本篇博客开始,将记录下我的学习内容与参考资料,系列按照李宏毅的机器学习课程,吴恩达的机器学习课程和周志华的西瓜书为主线。发展历程\quad人类一直试图让机器具有智能,也就是人工智能(Artificial Intelligence)。从上世纪50年代,人工智能的发展经历了“推理期”,通过赋予机器逻辑推理能力使机器获得智能,当时...
2018-06-05 21:33:46 247563 23
原创 形式语言与自动机及其在NLP中的应用
摘要: 形式语言与自动机是计算机科学的理论基础,对于计算机科学与技术专业人才的计算思维能力培养极其重要。本文首先从Chomsky谱系出发,对形式语言的概念和类别进行了阐述,然后按照形式文法与自动机之间的对应关系,介绍了四种自动机。最后通过单词拼写检查例子展现了形式语言与自动机在自然语言处理中的应用。引言自动机和形式语言是计算机科学的理论基础,它在信息科学,生物学,管理学等众多学科领域中...
2018-04-28 14:56:41 8458 2
原创 语义Web简单综述(XML、RDF、OWL、知识库、知识图谱)
摘 要随着Web技术的发展,传统万维网正向着语义Web发展。语义Web试图让Web上的信息具有语义,能够被机器理解,使得Web上信息的获取更加智能快捷。本文在全面阐述语义Web基本概念和体系结构的基础上,研究和讨论了语义Web构建过程中的关键技术,包括XML、RDF和OWL,最后对语义Web的发展应用以及面临的问题和挑战进行了讨论。 关键词: 语义Web;XML;RDF;OWL;知识...
2018-04-22 21:49:41 19869 3
原创 SenticNet情感词典介绍
在进行情感分析时,一个好的情感词典能够让我们的工作事半功倍,较为出名的情感词典有SentiWordNet,General Inquirer等,这篇博客将介绍另外一个出色情感词典,SenticNet。简介当谈论SenticNet时,我们正在谈论概念层面的情感分析,即通过语义和语言学来完成极性探测、情感识别等任务,而不是单纯的依靠词共现频率。SenticNet可以看作是以下其中一种: 1...
2018-04-13 12:07:19 10790 1
原创 奇异值分解与LSA潜在语义分析
传统的向量空间模型(Vector Space Model)中,文档被表示成由特征词出现频率(或概率)组成的多维向量,然后计算向量间的相似度。向量空间模型依旧是现在很多文本分析模型的基础,但向量空间模型无法处理一词多义和一义多词问题。Scott Deerwester,Susan T. Dumais等人在1990年提出了LSA(Latent Semantic Analysis,潜在语义分析)又称LSI...
2018-04-12 19:40:49 6494 6
原创 使用sklearn简单进行SVM参数优选
SVM简单回顾支持向量机(SVM)方法建立在统计学VC维和结构风险最小化原则上,试图寻找到一个具有最大分类间隔的超平面,支持向量(Support Vector)是支持向量机训练的结果,在进行分类或者回归时也只依赖支持向量。因此SVM具有良好的鲁棒性,对未知数据拥有很强的泛化能力,特别是在数据量较少的情况下,相较其他传统机器学习算法具有更优的性能。 对于样本数据线性不可分的情况,通常采用核方法...
2018-03-22 16:56:50 20483 3
原创 文本建模之Unigram Model,PLSA与LDA
LDA(Latent Dirichlet Allocation)是一个优美的概率图模型,可以用来寻找文本的主题。最近系统的学习了一下这个模型,主要参考了《LDA八卦》和July的博客《通俗理解LDA主题模型》。本文主要对文本建模进行梳理,其中的涉及的数学知识将在另外的博客中讲解。1、Unigram Model1.1、频率学派Unigram Model是最简单的文本模型,认为一篇...
2018-03-08 22:14:39 3463
不依靠第三方库实现一个神经网络
2019-05-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人