自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

自然语言处理技术

机器学习和自然语言相关算法和技术

  • 博客(34)
  • 收藏
  • 关注

原创 自然语言处理算法之集成算法基础以及boosting与bagging简介

在机器学习和统计学习中,集成学习(Ensemble Learning)是一种将多种学习算法组合在一起以取得更好表现的一种方法,机器学习下的集成学习主要是指有限的模型相互组合,而且可以有很多不同的结构,在自然语言处理过程中,特别是文本分类,很多时候集成学习的表现相对于其它的学习方法要好很多。1个体与集成集成学习通过构建并结合多个学习器来完成学习任务,有时也被称为多分类器系统、基于委员会的学习等。如上

2018-01-18 09:43:32 1300

原创 自然语言处理之中文分词器-jieba分词器详解及python实战

中文分词是中文文本处理的一个基础步骤,也是中文人机自然语言交互的基础模块,在进行中文自然语言处理时,通常需要先进行分词。本文详细介绍现在非常流行的且开源的分词器结巴jieba分词器,并使用python实战介绍。jieba分词算法使用了基于前缀词典实现高效的词图扫描,生成句子中汉字所有可能生成词情况所构成的有向无环图(DAG), 再采用了动态规划查找最大概率路径,找出基于词频的最大切分组合,对于未登

2018-01-07 13:48:26 56837 4

原创 自然语言处理之中文分词器详解

中文分词是中文文本处理的一个基础步骤,也是中文人机自然语言交互的基础模块,不同于英文的是,中文句子中没有词的界限,因此在进行中文自然语言处理时,通常需要先进行分词,分词效果将直接影响词性,句法树等模块的效果,当然分词只是一个工具,场景不同,要求也不同。在人机自然语言交互中,成熟的中文分词算法能够达到更好的自然语言处理效果,帮助计算机理解复杂的中文语言。1基于词典分词算法基于

2018-01-07 13:38:19 11061

转载 推荐系统实践--基于用户的协同过滤算法和python实现

基于邻域的算法是推荐系统中最基本的算法,该算法不仅在学术界得到了深入研究,而且在业界得到了广泛应用。基于邻域的算法分为两大类,一类是基于用户的协同过滤算法,另一类是基于物品的协同过滤算法。我们先来看看基于用户的协同过滤算法,基于物品的协同过滤算法大体思路和基于用户的差不多,可以自己参考对比学习。基于用户的协同过滤算法每年新学期开始,刚进实验室的师弟总会问师兄相似的问题,比如

2018-01-02 18:24:14 5740

转载 linux tar (打包.压缩.解压缩)命令说明 | tar如何解压文件

#压缩tar -czvf ***.tar.gztar -cjvf ***.tar.bz2#解压缩tar -xzvf ***.tar.gztar -xjvf ***.tar.bz2+++++++++++++++++++++++++++++++++++++++++++++ 简介参数:-c  :建立一个压缩档案的参数指令(create 的意思);-x  :解开一个压缩档案的参数指令! -t  

2018-01-02 15:52:38 3312

原创 python之Tqdm库实现进度条功能

Tqdm是一个快速可扩展的Python进度条,可以在python长循环中添加一个进度提示,这样用户就可以知道程序的进度情况,实时的监测,用户只需要封装任意的迭代器tqdm(iterator),就可以了。1)安装Tqdm直接使用pip install tqdm就可以进行安装或者使用github上最新的版本:ip install -e git+https://github.co

2017-12-29 18:21:24 4575

原创 tensorflow学习笔记(2):tf.clip_by_value,tf.expand_dims等函数的用法

1)tf.clip_by_value的用法该函数主要是为了防止,gradiant计算得到的值太大或者太小tf.clip_by_value(A, min, max):输入一个张量A,把A中的每一个元素的值都压缩在min和max之间。小于min的让它等于min,大于max的元素的值等于max。import tensorflow as tfimport numpy as npdat

2017-12-29 16:18:59 957

原创 谈谈Tensorflow的Batch Normalization的使用

tensorflow 在实现Batch Normalization (各个网络层输出的结果归一化,以防止过拟合)时,主要用到一下两个API。分别是1)tf.nn.moments(x, axes, name=None, keep_dims=False) ⇒ mean, variance: 其中计算的得到的为统计矩,mean 是一阶矩,variance 是二阶中心矩 各参数的另一为

2017-12-29 09:46:43 7232

转载 covariate shift现象的解释

一、什么是covariate shift?在论文中经常碰到covariate shift这个词,网上相关的中文解释比较少。你可能会在介绍深度学习Batch Normalization方法的论文到中看到covariate shift这个词,并且所有看过这篇论文的或者实际做过工程的人,都知道BN这种归一化手段很好用,可以避免covariate shift那么covariate shift到

2017-12-26 18:03:25 10276 1

原创 TF-IDF原理详解以及python实践

TF-IDF(termfrequency–inverse document frequency)是一种用于资讯检索与资讯探勘的常用加权技术。TF-IDF是一种统计方法,用以评估一字词对于一个文件集或一个语料库中的其中一份文件的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。TF-IDF加权的各种形式常被搜寻引擎应用,作为文件与用户查询之间相关

2017-12-25 11:59:18 9245

转载 Python 中通过csv的writerow输出的内容有多余空行的解决办法

Python中,通过csv的writerow输出内容:?1234567    #output all info dict list    outputFp =open(gConst['csvFilename'], 'a+');    csvWriter =

2017-12-17 17:46:46 2121

原创 python一些编码的转换格式问题

python经常有一些编码格式的问题西面有几种转码的方式:unicodestring = u"Hello world" # 将Unicode转化为普通Python字符串:"encode"  utf8string = unicodestring.encode("utf-8")  asciistring = unicodestring.e

2017-12-17 13:52:17 501

原创 机器学习利器Scikit-learn的安装

对于windows环境,安装Scikit-learn比较复杂,如果是Mac 或者Liunix会比较简单,直接安装anaconda使用conda或者pip install + 程序包,不需要下载。对于windows。首先打开加州大学底下一个实验室的网站,下载以下安装包:1、Numpy+MKL:http://www.lfd.uci.edu/~gohlke/pythonlibs/#numpy2、

2017-12-13 22:49:35 825

原创 anaconda下安装库出现UnsatisfiableError问题的解决办法

利用命令行在Anaconda Prompt 安装configparser利用命令conda installconfigparser出现问题如下:(D:\Program Files\Anaconda3) C:\Users\lee>conda install configparserFetching package metadata ...........Solving pac

2017-12-13 17:50:47 33250 1

原创 TensorFlow学习笔记(1):LSTM相关代码

LSTM是seq2seq模型中经典的子结构,TensorFlow中提供了相应的结构,供我们使用:tensorflow提供了LSTM实现的一个basic版本,不包含lstm的一些高级扩展,同时也提供了一个标准接口,其中包含了lstm的扩展。分别为:tf.nn.rnn_cell.BasicLSTMCell(), tf.nn.rnn_cell.LSTMCell()tensorflow

2017-12-13 14:28:34 650

转载 word2vec 中的数学原理详解:基于 Negative Sampling 的CBOW和Skip-gram模型

word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读

2017-12-13 11:43:34 2862

转载 word2vec模型中基于 Hierarchical Softmax 的CBOW和Skip-gram模型

word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读

2017-12-13 11:32:02 467

转载 word2vec 中的数学原理背景知识详解(1)

word2vec 是 Google 于 2013 年开源推出的一个用于获取 word vector 的工具包,它简单、高效,因此引起了很多人的关注。由于 word2vec 的作者 Tomas Mikolov 在两篇相关的论文 [3,4] 中并没有谈及太多算法细节,因而在一定程度上增加了这个工具包的神秘感。一些按捺不住的人于是选择了通过解剖源代码的方式来一窥究竟,出于好奇,我也成为了他们中的一员。读

2017-12-13 11:12:22 260

转载 Python 使用argparse模块解析命令行读取参数简介

在多个文件或者不同语言协同的项目中,python脚本经常需要从命令行直接读取参数。万能的python就自带了argprase包使得这一工作变得简单而规范。PS:optparse包是类似的功能,只不过写起来更麻烦一些。如果脚本很简单或临时使用,没有多个复杂的参数选项,可以直接利用sys.argv将脚本后的参数依次读取(读进来的默认是字符串格式)。比如如下名为test.py的脚本:impo

2017-12-11 15:55:11 692

转载 XGBoost相关参数的解释

XGBoost参数在运行XGboost之前,必须设置三种类型成熟:general parameters,booster parameters和task parameters:General parameters:参数控制在提升(boosting)过程中使用哪种booster,常用的booster有树模型(tree)和线性模型(linear model)。Booster parame

2017-12-07 08:53:11 328

转载 用深度学习构造聊天机器人简介

聊天机器人(也可以称为语音助手、聊天助手、对话机器人等)是目前非常热的一个人工智能研发与产品方向。很多大的互联网公司重金投入研发相关技术,并陆续推出了相关产品,比如苹果Siri、微软Cortana与小冰、Google Now、百度的“度秘”、亚马逊的蓝牙音箱Amazon Echo内置的语音助手Alexa、Facebook推出的语音助手M、Siri创始人推出的新型语音助手Viv…….

2017-12-05 23:54:03 6644

原创 自然语言处理之文本标注问题

文本标注 (tagging) 是一个监督学习问题,可以认为标注问题是分类问题的一个推广,标注问题又是更复杂的结构预测 (structure prediction) 问题的简单形式,标注问题的输入是一个观测序列,输出是一个标记序列护着状态序列,标注问题的目标在于学习一个模型,使它能够对观测序列给出标记序列作为预测,注意的是可能的标记个数是有限的,但其组合所成的标记序列的个数是依序列长度呈指数级增长的

2017-12-05 14:45:07 12618

原创 自然语言处理之维特比(Viterbi)算法

维特比算法 (Viterbi algorithm) 是机器学习中应用非常广泛的动态规划算法,在求解隐马尔科夫、条件随机场的预测以及seq2seq模型概率计算等问题中均用到了该算法。实际上,维特比算法不仅是很多自然语言处理的解码算法,也是现代数字通信中使用最频繁的算法。在介绍维特比算法之前,先回顾一下隐马尔科夫模型,进而介绍维特比算法的计算步骤。以下为一个简单的隐马尔科夫模型,如下图所示

2017-12-04 19:51:07 21194 2

转载 自然语言处理技术之准确率(Precision)、召回率(Recall)、F值(F-Measure)简介

下面简单列举几种常用的推荐系统评测指标:1、准确率与召回率(Precision & Recall)准确率和召回率是广泛用于信息检索和统计学分类领域的两个度量值,用来评价结果的质量。其中精度是检索出相关文档数与检索出的文档总数的比率,衡量的是检索系统的查准率;召回率是指检索出的相关文档数和文档库中所有的相关文档数的比率,衡量的是检索系统的查全率。一般来说,Precisio

2017-12-04 15:58:11 6942 1

原创 自然语言处理模型之GRU和LSTM网络模型总结

前文中小修为大家介绍了自然语言模型中LSTM (Long Short-Term Memory)网络的性质,相对于递归神经网络,LSTM网络能够避因为梯度弥散而带来的长时间的信息丢失的问题。这里小修为大家介绍一种在LSTM基础上提出的GRU网络模型。LSTM和GRU (Gated Recurrent Unit)是在处理自然语言中非常流行的两种网络模型,小修根据最近几年的关于这方面的研究介绍一下两

2017-12-03 11:31:34 3635

转载 Python PyCharm常用的基本快捷键和配置简介

忙了好一阵终于忙完了,最近在重构代码,有许多地方要注释什么的,在多行注释时总是很麻烦,就想着pycharm有没有快捷键,转了一点别人的(地址:http://www.jb51.net/article/74371.htm),在这总结一下,有些可能不准确了,没有都试一下,仅供参考。快捷键1、编辑(Editing)Ctrl + Space 基本的代码完成(类、方法、属性)Ctr

2017-12-03 11:25:12 6640

转载 Hadoop shell 常用命令集

hadoop shell 相关命令集

2017-12-02 11:00:14 290

转载 自然语言处理之seq2seq模型

对于一些自然语言处理任务,比如聊天机器人,机器翻译,自动文摘等,传统的方法都是从候选集中选出答案,这对素材的完善程度要求很高,随着最近几年深度学习的兴起,国外学者将深度学习技术应用与自然语言的生成和自然语言的理解的方面的研究,并取得了一些突破性的成果。

2017-12-01 21:11:04 34427 6

原创 解决Pycharm中import时无法识别自己写的程序

我们用pycharm打开自己写的代码,当多个文件之间有相互依赖的关系的时候,import无法识别自己写的文件,但是我们写的文件又确实在同一个文件夹中,这种问题可以用下面的方法解决:  1)打开File--》Setting—》打开 Console下的Python Console,把选项(Add source roots to PYTHONPAT)点击勾选上2)右键

2017-09-17 20:45:21 15464 10

原创 爬虫学习:scrapy相关的知识

Scrapy 是开源的爬虫框架,快速强大,只需要写少量的代码即可完成爬取任务,容易扩展,添加新的功能模块1. scrapy 在Mac上的安装 可以使用pip安装Scrapy 运行命令 sudo pip install Scrapy(不带sudo 可能会出现 Permission denied) 然后 使用scrapy –version来验证是否安装成功2. Scrapy

2017-07-09 15:13:42 293

原创 Hadoop MapReduce程序分析飞机航班信息源代码

1: 数据来源: 基于美国民航航班1987年数据,开发MapReduce应用程序计算其中某一年各个航班的飞行数据。 数据式样 Year,Month,DayofMonth,DayOfWeek,DepTime,CRSDepTime,ArrTime,CRSArrTime,UniqueCarrier,FlightNum,TailNum,ActualElapsedTime,CRSElap

2016-08-07 18:17:09 6699 10

原创 大数据hadoop相关属性

Linux常用命令cd -回家(/home/用户名)可以用~代替cd <目录名> -转到指定目录pwd 查看当前目录 hadoop没有这个命令ls -a 或者使用 ll 查看所有文件cp <源路径> <目标路径> 拷贝文件 从源路径到目标路径mv <源路径> <目标路径> 移动文件或者目录mkdir 创建目录mkdir -p 创建层级路径,会将所有的目录路径都创

2016-08-07 18:04:28 627 4

原创 快速排序算法

快速排序算法快速算法排序是最基本的排序算法之一,其本质是先选择一个界限之后,然后查找大于界限值,将它们都放在界限值的右边,查找小于界限值的,将它们都放在界限值的左边,再进行迭代递归。//// main.m// QuickSort//// Created by lovive on 16/8/4.// Copyright © 2016年 lovive. All rights reser

2016-08-05 15:17:50 472

原创 AdapterViewFlipper的使用

AdapterViewFlipper的使用 可以实现多个View切换过程中渐隐渐显的动画效果,可以通过一些函数对所展示的图片进行控制。布局文件:xml version="1.0" encoding="utf-8"?>RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android

2016-03-29 16:28:16 461

空空如也

空空如也

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

TA关注的人

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