自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(51)
  • 收藏
  • 关注

原创 Spark机器学习算法实操——LinearRegression

任务要求如下:实现Spark和HIVE与HDFS之间的通信 利用Spark.sql从HIVE中获取数据,并进行预处理以符合Spark机器学习库中输入文件的libsvm格式 LinearRegression线性回归模型建模 将得到的预测结果写回HDFS现在明确了我们的任务目标,就从头开始进行。配置Spark和Hive之间的通信Spark内部可以直接让SparkContext从hd...

2019-07-12 15:21:05 587

原创 排序算法总结(Python实现)——(二)

上一篇总结了冒泡、选择、插入和希尔排序,这篇来总结归并排序、快速排序和堆排序。归并排序归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。归并排序是一种稳定的排序方法。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为2-路归并。算法描述...

2019-06-14 16:52:01 358

原创 排序算法总结(Python实现)——(一)

整个排序算法分两部分来总结,这篇总结第一部分一些相对简单和常用的排序算法,包括冒泡排序、选择排序、插入排序和希尔排序。冒泡排序冒泡排序应该是大家接触的最早的排序方法了,理解起来也十分简单。冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来...

2019-06-13 12:17:35 531

原创 二叉树最强总结(python实现)

这篇文章总结了关于二叉树的创建和各种遍历方式。二叉树的创建方式通过层次遍历顺序创建 先序遍历顺序(带上叶子结点标识符)创建 先序顺序+中序顺序 中序顺序+后序顺序二叉树的递归方式先序遍历(递归+非递归) 中序遍历(递归+非递归) 后序遍历(递归+非递归) 广度优先遍历(BFS)首先来定义一下节点的结构class Node(): def __init__(s...

2019-06-04 15:24:04 4625 1

原创 NLP————目标情感分析(TSA任务)

TSA任务介绍目标情感分析任务(Targeted Sentiment Analysis, TSA)旨在提取目标实体并对其进行情感分类。因此可以理解为命名实体识别(NER)和情感分析(SA)两个任务的联合学习。例如,给出一句“ESPN调查显示迈克尔乔丹是最伟大的篮球运动员”,检测目标是ESPN和迈克尔乔丹,他们的情绪类别分别为中性和正面。最近的一些工作试图联合学习这两项任务,看成序列标注问题,其...

2019-05-15 21:04:42 3473 1

转载 三种常用数据标准化方法

什么是数据标准化(Normalization)?数据的标准化(normalization)是将数据按比例缩放,使之落入一个小的特定区间。在某些比较和评价的指标处理中经常会用到,去除数据的单位限制,将其转化为无量纲的纯数值,便于不同单位或量级的指标能够进行比较和加权。其中最典型的就是数据的归一化处理,即将数据统一映射到[0,1]区间上,常见的数据归一化的方法有:min-max标准化(Min-ma...

2019-02-25 17:02:07 6297

原创 知识图谱发展报告2018————实体关系学习

关系定义为两个或多个实体之间的某种联系,实体关系学习就是自动从文本中检测和识别出实体之间具有某种语义的关系,也称为关系抽取。关系抽取的结果通常是一个三元组(实体1,关系,实体2)。例如:句子“北京是中国的首都、政治中心和文化中心”中的表述抽取出的关系表示为(中国,首都,北京),(中国,政治中心,北京),(中国,文化中心,北京)。关系抽取是知识图谱的构建和知识抽取中的一个重要环节,具有重要的理论意义...

2019-02-23 13:24:05 2500

转载 知识图谱发展报告2018————总结(1)

知识图谱技术是知识图谱构建和应用的技术,是语义web、自然语言处理和机器学习的交叉学科。我们将知识图谱技术分为三个部分:知识图谱构建技术、知识图谱查询和推理技术和知识图谱应用。知识图谱构建知识表示与构建知识表示将现实世界中的各类知识表示成计算机能够存储和计算的结构。机器必须要掌握大量的知识,特别是常识知识才能实现真正的智能。知识图谱中的知识表示以结构化的形式描述客观世界中的概念、实体及...

2019-01-17 15:41:17 2330

原创 NLP————在神经网络中CRF的使用

最近在做bi_lstm_crf时使用了CRF的一些库函数,是tensorflow官方库提供的。在我的项目中有两处用到了CRF:1.在双向LSTM进行输出之后计算loss时,要使用到 crf_log_likelihood 函数。这个函数是 tensorflow.contrib.crf 提供的。下面举个例子说明函数的参数和函数输出。crf_log_likelihood(inputs,ta...

2019-01-16 17:17:08 1901

原创 NLP————VocabularyProcessor进行词表创建和原数据填充

在进行NLP相关编码时,将文本进行序列化编码是一个必要的环节(word->id),之前自己一直是自己手写代码构造词表并给句子进行填充,后来网上看到一个神仙函数两句语句就能完成构造词表vocab和句子填充,就是我们今天的主角VocabularyProcessor函数。函数参数如下:from tensorflow.contrib import learnvocal = learn.pr...

2019-01-14 16:03:59 2744

原创 深度强化学习(DRL)

DRL形成背景深度强化学习(Deep Reinforcement Learning)顾名思义,是深度学习与强化学习的结合,因此深度强化学习弥补了DL和RL的不足之处。深度学习最近火热,大家也都有所了解,就是通过多层网络和非线性变换,去学习数据的分布式特征表示,因此深度学习侧重于对事物的感知和表达。 而强化学习,了解的同学都知道,通过奖惩机制去挖掘最优策略,因此它侧重于学习解决问题的策略。...

2018-11-29 17:58:50 13381

原创 NLP—————word_embedding

Embedding这个词接触过深度学习的同学都不陌生,它在keras官方文档中的解释为:嵌入层将正整数(下标)转换为具有固定大小的向量。(这个解释太模糊了啊!!!)实际上,embedding这个词来源于wordEmbedding。使用嵌入层主要有三大原因:使用onehot编码会使向量的维度很高,而且十分稀疏,假如字典包含了2000个词,那么每一个词的onehot向量表示将有2000个整数组...

2018-11-14 22:01:55 439

原创 机器学习————k近邻学习

介绍k近邻(k-Nearest Neighbor 简称KNN)学习是一种常用的监督学习算法,给定一个测试样本,基于某种距离度量来找出训练集的所有样本中与该样本最为靠近的k个样本,然后根据这k个邻居的信息进行预测。什么时候用到KNN?knn算法既能够处理分类任务也能进行回归分析,两种任务所采用的方法略有不同。分类任务:通常使用“投票法”,将选择出的k个邻居样本出现最多的类别标记作为最...

2018-09-20 16:22:51 872

原创 使用matplotlib绘制热图(heatmap)

python常用的绘图库就是matplotlib,今天在给公司绘图时,偶然间发现matplotlib可以绘制热图,并且十分简洁,拿出来跟大家分享一下。(由于涉及到公司数据问题,这里采用随机数生成数据进行实验)import randomfrom matplotlib import pyplot as pltfrom matplotlib import cmfrom matplotlib ...

2018-08-20 11:37:48 60077 3

原创 机器学习————决策树(三)

前两篇决策树的blog介绍了有关决策树的理论知识,这篇文章我们编码实践一下,采用了网上较为简单的一个有关天气影响运动的数据集,决策树建模部分是利用sklearn.tree.DecisionTreeClassifier()训练构建决策树模型,利用pydotplus+graphviz进行模型可视化展示。数据集由于数据量较少,就不再划分训练集测试集,将以上数据全部用于训练。编码im...

2018-08-16 11:39:24 1123

原创 Mac OS:GraphViz's executables not found (python 3 and pydotplus)

对于决策树结果可视化的问题,比较流行的方法是调用pydot/pydotplus搭配graphviz进行作图。今天在Mac os上运行代码时出现了如下错误:GraphViz's executables not found ,显而易见意思是graphviz的执行文件没有找到,经过了一番百度谷歌后,很多解决办法是在pydot中的python执行文件中手动添加path等,这并不适用于mac os和py...

2018-08-13 16:29:17 5008 4

原创 Mac os 搭建FTP服务器

由于mac拥有自带的FTP工具,因此其实不需要借助其他工具,搭建更加方便。开启FTP服务macos默认的FTP服务是关闭状态的,因此需要进行激活一下,打开终端,指令如下:sudo -s launchctl load -w /System/Library/LaunchDaemons/ftp.plist验证服务开启FTP服务后,可以测试一下是否开启成功:ftp localh...

2018-08-11 01:45:16 21720 5

原创 机器学习————决策树(二)

这篇文章介绍CART算法。分类与回归树(classification and regression tree,CART)模型是应用广泛的决策树的学习方法,CART作为决策树的一种放啊放同样由特征选择、树的生成和剪枝构成,既可以用于分类问题也可以用于回归问题。CART算法特征选择阶段的选择标准是计算基尼指数,基尼指数作为上一篇介绍的信息增益和增益率之后的第三个评判标准,同样被广泛地使用,这里单独...

2018-08-09 15:04:48 535

原创 机器学习————决策树(一)

决策树是一种回归和分类的重要手段,在机器学习中具有重要的比重。本文结合了周志华老师的《机器学习》和李航老师的《统计学习方法》两书中的决策树部分进行了总结。决策树的基本步骤包括:选择适当的算法根据训练样本构建生成决策树、根据验证集样本适当地修剪决策树(剪枝)和从决策树中提取出相关的规则知识。基本流程显然决策树的生成是一个递归过程,根据上述的生成决策树的基本算法,有三种情况会导致递归返...

2018-08-08 21:05:26 707

转载 机器学习----SVM算法

svm算法的通常理解在二维问题上,对于二元分类来说,svm的目的就是找一条线把两类分开。不过下面这个例子,有三条不同的直线都能把这两类分开,那么我们该选哪一条线呢?这将是我们考虑的问题:首先我们先假设一条直线W*X+b=0是最优的分割线。我们把这种最优SVM分割平面叫做超平面,我们现在的目标就是确定最优的W和b的值。SVM定义超平面为:能使支持向量和超平面之间的最小距离的最大值。那么这句话该如何理...

2018-04-15 16:25:00 816

原创 深度学习——对于反向传播的理解(举例验证)

BackPropagation是BP神经网络的基础算法,不过相信有很多人对于各种资料上教程书籍上看到的反向传播的推导看的云里雾里,刚开始看花书的时候也是这样,不过之后又带着迷惑查找看了许多讲解,勉强能够看懂了,其中用具体数值代替链式法则公式推导的方法很容易理解,在这里我和大家分享一下。讲到神经网络,tensor传播图是最为清晰的了,如下所示:第一层是输入层,包括两个神经元i1,i2,和截距项b1,...

2018-04-03 22:40:29 1891 1

转载 Numpy矩阵的切片(slicing)和索引(indexing)

切片(slicing)操作Numpy中的多维数据的切片操作和Python中对于list的切片操作是一样的。参数由start,stop,step三个部分构成。import numpy as nparr = np.arange(12)print 'array is:', arrslice_one = arr[:4]print 'slice begins at 0 and ends at 4...

2018-04-01 12:15:14 6160

原创 聚类算法——k-medoids算法

引言上一篇文章我们了解了k-means算法,在文章末尾指出k-means算法对于异常值十分敏感,因为具有极大值的对象可能会产生严重扭曲的数据分布。因此我们可以使用k-medoids算法,它是集群中位于最中心的对象,而不是将集群中的平均值作为参考点。因此,分区的方法仍然可以基于最小化每个对象与其参考点之间的不相似程度之和的原理来进行。这构成了k-medoids方法的基础。k-means对比k-med...

2018-03-26 23:51:46 45418

原创 聚类算法——k-means算法

数据挖掘数据挖掘(Data Mining,DM)是从大量数据中提取信息以查看隐藏的知识并便于将其用于实时应用程序。 DM有多种用于数据分析的算法。用于分析的一些主要DM技术是聚类,关联,分类等。聚集是用于探索性数据分析的有效技术,并已在各种领域中找到应用。大多数现有的聚类方法可以分为三类:分区,分层,基于网格和基于模型的方法。基于分区的聚类生成数据分区,使得集群中的对象与其他集群中的对象相比更加相...

2018-03-26 19:35:35 2664 2

转载 深度学习——神经网络的数据预处理

数据预处理在构建网络模型时是很重要的,往往能够决定训练结果。当然对于不同的数据集,预处理的方法都会有或多或少的特殊性和局限性。在这里介绍三种当前最为普遍被广泛使用的预处理方法。需要导入numpy库,即:(下同)import numpy as np假设数据矩阵X是一个N*D维的矩阵,其中N代表样本数目,D代表数据的维度。1.零均值这是数据处理阶段最为常用的方法。顾名思义,就是将每一维原始数据减去每一...

2018-03-24 15:29:28 25871

原创 macOS下载python3与自带python2共存问题

macOS上自带了python,不过版本是python2,很多朋友说反正以后也不更新维护python2了,干脆换掉。天真了不是,mac上自带的python2,修改了自带的python2会导致系统上某些用python2写的系统文件失效,会特别麻烦,而且Xcode也会出现错误。所以,尽量不要直接替换或删除系统自带的python2。事实上:macOS自带的python环境在:/System/Libara...

2018-03-07 20:48:03 5506

原创 macOS创建修改.bash_profile配置文件

介绍首先介绍一下linux几种常见的配置文件(与macOS类似).bashrc文件:这个文件中的环境变量只对某个用户是有效的,这个方法更为安全,将这些环境变量的权限控制限制在了用户级别,当然可以修改文件给其他用户权限使用。.bash_profile文件:当用户登录时,该文件仅仅被执行一次。修改文件之后需要退出再次登陆,重新读取文件之后才能生效,当然也可以命令行。cd ~vim .bash_prof...

2018-03-07 20:39:28 10189

转载 主成分分析(PCA)和独立成分分析(ICA)

最近在学习DL花书时,看到了线性因子模型部分,对其中的PCA和ICA的理解有些模糊,于是到网上求助并翻了些文献资料,总结如下(这里不讨论其推导过程和理论证明):首先分析一下PCA和ICA之间的共性:无论是PCA还是ICA,都不需要对源信号的分布进行具体的假设Both PCA and ICA try to find a set of vectors, a basis, for the data.

2017-12-10 22:10:48 5199

原创 NameError: name 'mnist' is not defined

在Tensorflow上进行mnist数字识别实例时,出现如下错误NameError: name 'mnist' is not defined当然mnist数据集不能直接使用,需要通过input_data模块进行初始化,所以要首先引入input_data模块,网上很多解决办法都是重新下载input_data模块,不过lz认为有些麻烦,毕竟这是TF自带模块,所以只需运行下面的这段代码:from ten

2017-11-17 15:56:34 11081

原创 python读写json文件

相比java,python对json文件的处理就简单很多。java操作json文件的话需要引用jar包及相关依赖包,想用java操作json的同学可以去百度,这里就不赘述了。首先说读json文件在进行json操作之前,首先要了解json的格式,分辨json文件。 json文件格式一般有两种:第一种:每行一个json类似于以下这种形式:["name":"Tony","age":"21","hob

2017-10-30 17:17:00 3444

原创 对于利用urllib2批量爬虫遇到HTTP error的解决办法

在批量爬虫网页内容时,很可能有的中间的页面不存在,或跳转至其他页面。如果是利用某个id进行检索的话,遇到此类问题程序就会中断,如果只遇到一两个页面的话还好说,不过当这种情况多的话,就需要python处理错误的机制。类似于其他语言,用try捕捉错误,再用except处理错误就好。 举个例子for i in range(1,2910): try: count =

2017-10-26 09:15:20 798

原创 苹果app项目退款教程

首先声明,此教程只针对购买了苹果app项目,却发现app体验不好的事件从而提出退款操作。如发现转载本教程用途不良,将严厉打击此类事件。强烈反对恶性退款事件。(本人只退过一次,多次退款可能会有留下不良记录的风险)首先登陆苹果官网如下图所示 点击右上角的“技术支持”并选择iTunes选项 进入新页面拉至底部,点击蓝色按钮“获得支持” 跳转至新页面,选择iTunes store这一项 选择“购买、账单与

2017-10-18 16:52:05 52364

原创 Python爬虫---爬取静态网页的图片

上一节中已经说过了理论基础,那么现在就来实践一个,要爬取一个静态网页的所有图片。 这里使用的网页下载器是python自带的urllib2,然后利用正则表达式匹配,输出结果。 以下为源码://引入小需要用到的模块import urllib2import redef main(): //利用urllib2的urlopen方法,下载当前url的网页内容 req = urllib2.

2017-09-12 10:38:08 1988

原创 Python爬虫---理论基础

其实爬虫没有大家想象的那么复杂,有时候也就是几行代码的事儿,千万不要把自己吓倒了。这篇就清晰地讲解一下利用Python爬虫的理论基础。 首先说明爬虫分为三个步骤,也就需要用到三个工具。利用网页下载器将网页的源码等资源下载。利用URL管理器管理下载下来的URL利用网页解析器解析需要的URL,进而进行匹配。网页下载器网页下载器常用的有两个。一个是Python自带的urllib2模块;另一个是第

2017-09-10 23:17:17 945

原创 浅谈Redis---(2)

本篇文章将会继续介绍Redis缓存数据库,将从redis命令、事务和发布订阅等方面来介绍。Redis命令Redis 命令用于在 redis 服务上执行操作。要在 redis 服务上执行命令需要一个 redis 客户端。Redis 客户端在我们之前下载的的 redis 的安装包中。 命令为:$ redis-cli如果需要在远程 redis 服务上执行命令,同样我们使用的也是 redis-cli 命令

2017-09-08 11:12:52 330

原创 浅谈Redis---(1)

本文为Redis系列的第一部分,将从Redis的简介、安装配置和数据类型三个方面进行介绍。 现在越来越多的场景开始广泛使用Redis缓存数据库,除了众所周知的速度极快这个优点,还有其他的特性吗?答案是肯定的。前几天在一个微信公众号里看到有人讲这个,今天拿出来分享一下。 新浪微博是全球最大的的Redis集群用户,面对微博常常出现的热点数据,Memcached+mysql解决方案已不能满足,由于Me

2017-09-08 10:02:22 445

原创 Apache Kafka---(1)

初识kafkaApache Kafka是一种分布式发布-订阅消息系统。具有分布式,可划分的特点,提供冗余备份的持久性日志服务。用于处理活跃的流式数据。那么Apache Kafka因何而生的呢? 由于一个大系统由各个小的子系统组成,同时搞定在线应用(消息)和离线应用(数据文件,日志)会存在相应的难度,Kafka便由此而来。相对比于其他消息系统(Active MQ和Rabbit MQ等),Kafka具

2017-09-06 20:32:15 367

原创 Python---正则表达式汇总

一、正则表达式概述正则表达式使用单个字符串描述匹配符合某个规则的字符串它是对字符串操作的一种逻辑公式它的应用场景:处理文本和数据匹配过程:依次拿出表达式和文本中字符比较,如果每个字符串都能匹配,则成功二、re模块讲到Python的正则表达式就不能不提到re模块,引用re模块的方法也非常简单,直接import re 即可。使用re模块匹配曾则表达式的流程生成pattern对象:调用re.c

2017-09-06 13:59:35 329

原创 Spark之核心---RDDs(2)

前言在第一章,已经介绍过了RDDs的基本概念,创建方法和特性。那么在本章将介绍RDD的基本操作方法。如果没看过第一篇的点击链接:Spark之核心—RDDs(1)RDD基本操作方法之Transformation顾名思义,Transformation时转换的意思,在RDD中的含义就是从之前的RDD构建一个新的RDD,像map(),filter()等。下面将具体介绍这些操作方法:map():想必熟悉编程

2017-08-15 16:53:37 505

原创 关于Python安装模块出现error: command 'gcc' failed with exit status 1错误的解决方法

当使用pip install ###时,有时会出现如标题上的问题,我遇到的问题如下:_posixsubprocess.c:3:20: fatal error: Python.h: No such file or directory #include "Python.h" ^ compilation terminated. er

2017-08-15 14:28:40 78478 3

空空如也

空空如也

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

TA关注的人

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