自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 深度理解期望、方差偏差与方差偏差分解

前言在周志华老师的西瓜书中有关于使用【偏差-方差分解】来度量机器学习模型泛化能力的内容。本文将从数学基础来解释其演进过程。我们先从数学期望开始。1、数学期望概率论是描述现实世界的一个重要学科。我们从现实世界了解数学规律往往是通过一次一次的抽样开始的。我们没做一个事情就会是一次抽样。同样我们也通过做一个事情的经理(也就是多次抽样)来预测,本次做这件事情的成功概率。这本身就是机器学习或者人工智能的过程。所以期望一词也符合我们在场景中的一个定义。当前期望在数学领域并不这样笼统,首先我们需要明确的是

2020-12-08 10:50:35 28

原创 使用对抗生成模型生成手写数字

1、概述对抗生成模型是人工智能模型中经常使用的结构,本文介绍使用tensorflow实现手写数字的生成。生成式对抗网络(GAN, Generative Adversarial Networks )是一种深度学习模型,是近年来复杂分布上无监督学习最具前景的方法之一。模型通过框架中(至少)两个模块:生成模型(Generative Model)和判别模型(Discriminative Model)的...

2019-02-20 12:13:51 373

原创 使用attention机制的seq2seq模型实现论文翻译

1、概述本文是关于attention-seq2seq模型实现中文到英文的翻译。论文的核心gru作为seq2seq模型的基本单元。基本翻译效果如下图所示:2、模型结构整体模型结构如下图所示:相关数学公式如下图所示相关模型说明:FC = 全连接层(dense layer)EO = 编码器(encoder)输出H = 隐藏状态X =解码器(decoder)输入相关公式的模型...

2018-12-04 16:21:31 1336 2

原创 论文翻译-通过无监督方法产生不同风格的唐诗

1、摘要原论文 Stylistic Chinese Poetry Generation via Unsupervised Style Disentanglement链接: http://nlp.csai.tsinghua.edu.cn/~yangcheng/publications/emnlp2018.pdf中国人在写诗歌时主要关注诗歌的意境,在不同的意境下,人们可以创作出不同风格的诗歌。这...

2018-11-27 08:32:32 930

原创 论文翻译-通过对齐与翻译联合学习实现机器翻译

1、摘要基于神经网络的机器学习是目前最为流行的一种机器翻译的方法。与传统的统计学翻译不同,这种翻译方式是通过构建一个神经网络来最大限度提升翻译的性能。该模型是encoder–decoders模型家族中的一种。他使用编码器(encoder)将原始句子编码成一个定长向量,然后使用解码器(decoder)来实现翻译。在本文中,我们推测,在encoder–decoder模型架构下,使用定长向量将是提升...

2018-11-01 14:51:31 728

原创 论文翻译-阿里小蜜,基于检索模型和生成模型相结合的聊天引擎

1、摘要阿里小蜜是一款开放领域的聊天机器人引擎,他结合了IR(检索)模型与带有注意力机制的seq2seq生成模型。从效果上来讲,阿里小蜜的表现明显优于只使用某一种单一模型的情况。2、介绍近年来,聊天机器人技术发展非常迅速,比如微软小冰,苹果的siri,谷歌助手等产品层出不穷。与传统的app的按钮式交互不同,聊天机器人允许用户使用自然语言与app进行交互。阿里小蜜是一款在电商领域的一...

2018-10-31 09:49:34 1410

原创 成语接龙改版

1、概述上一版的成语接龙中,对汉字进行了严格匹配,我们会发现,在这种情况下,成语接龙的长度很短。如下图所示:原因是什么呢,因为我们一般在玩成语接龙游戏时遵循的原则是可以音同字不同。给予这种需求,我们对之前的代码进行一次改版2、代码实现这里我们使用了xpinyin库,这个库的主要功能是将汉字转为拼音,这里也可以看到python作为一种胶水语言方便易用的特性。请参考如下代码。...

2018-10-20 15:41:50 871 1

原创 python成语接龙

1、概述在python开发中要熟练字符串、列表、元组、字典等多种数据类型的使用,本文通过实现简单的成语接龙,来巩固python中的基础功能。2、处理语料我们可以从互联网上下载成语大全等语料,建议建议对语料进行处理和清洗之后读取到列表(list)中。请参考下面代码:# 读取数据file = open('data/ChengYu.txt','r',encoding='gbk')l...

2018-10-18 15:29:32 2878

原创 python开发环境搭建

1、概述python是目前人工智能开发使用最为广泛的语言,随着深度学习、神经网络以及tensorflow等人工智能框架的发展。python的应用也变得越来越广泛。下面截图是tiobe 2018年10月编程语言的排行榜。同样在人工智能编程领域python的表现也是非常优秀的。python是一种开源的胶水语言,这种语言的强大能力是他的粘合性。很多开发者会专门为python语言编写各种各样的...

2018-10-17 15:17:21 328

原创 beautiful soup 4.0(bs4)使用css选择器搜索文档树(4)

1、概述上一篇文章中主要介绍了使用bs4搜索文档树,主要使用find与find_all方法。但这种搜索的方法主要专注于标签以及标签的属性。其实在html中可以被用来作为元素选择器的还有一种就是CSS,在css的任何版本中都有选择器的相关定义。在很多框架中我们都是用css的选择器来定位元素的。同样在bs4中,同样提供了一整套基于css的方法来选择元素。2、使用css选择器来搜索文档树在 ...

2018-09-12 16:52:39 1018

原创 beautiful soup 4.0(bs4)搜索文档树(3)

1、概述在上一篇文章中,主要介绍遍历文档树的方法。遍历文档树主要从文档的根节点开始,对文档进行逐一扫描。这是文档解析中一个非常重要的操作。除了这个操作之外,还有一个非常重要方式就是搜索文档树,搜索文档树并不是从根节点开始逐一的对文档进行操作,而是直接在整个文档中检索到我们需要节点以及内容。比如我们想获取一个文档的标题,可以直接索搜title标签,而不需要从本届点逐个进行遍历操作。2、搜索文...

2018-09-12 15:39:20 212

原创 beautiful soup 4.0(bs4)遍历文档树(2)

1、概述在使用爬虫程序对爬取的文档进行处理时,经常要做的一个操作就是遍历文档树。文档以树形结构进行组织,所以遍历文档的操作又叫遍历文档树。beautiful soup本身提供了很多遍历文档树的方法,本文主要讨论遍历文档树的方法。2、遍历文档树2.1 准备工作本文将使用公众号的文章作为遍历的对象,所以首先需要先把整个文档抓取下来,并将多余的元素去除掉,只保留文档的主体部分以保证文档分...

2018-09-10 17:34:00 1629

原创 beautiful soup 4.0(bs4)基本应用(1)

1、概述人工智能行业的发展是以大数据为基础的,在人工智能行业当中,数据比模型本身要重要的多。从一定程度上来讲大量优质的数据可以弥补模型的缺点。而大数据所所涉及的范畴会非常的广泛,有很多在垂直行业深耕很多年的企业会积累很多的行业数据。但这种企业毕竟是少数,很多情况下我们需要自己开发爬虫从互联网上抓取数据,而爬虫程序一个非常重要的环节就是对互联网上的网页进行分析,由于网页上的资料和形式千差万别,能...

2018-09-10 13:45:10 371

原创 简单的意图分析模型(2)-模型构建

1、概述在之前文章中已经对数据做了比较充分的处理,而且已经转化为张量,可以直接读取到tensorflow中进行训练。在本章中将构建神经网络模型来实现意图分析的训练与预测。2、构建神经网络为了更好的构建模型首先对输入数据进行简单分析,目前输入的每一个句子是由8个单词构成,每个单词都是一个300维的向量。而输出结果是一个整数的用于代表他们意图的编号。如下图所示:2.1 构建卷积神经...

2018-08-28 11:37:02 693

原创 简单的意图分析模型(1)-数据处理

1、概述在聊天场景中有很多情况下需要对用户的意图进行分析。这些分析功能基本上就是自然语言分类模型的变种。从技术难度上来讲这种模型实现比较简单。但要保证效果主要受一下几个方面的制约。词向量的准确程度 语料的多少 模型的选择词向量是一个多维的坐标,用于在高纬度空间中的距离表示两个词之间的相似度。所以词向量能否准确的表示词与其相关词的关系会直接影响到整个神经网络的推理能力,以及对于新预料的...

2018-08-27 16:01:43 1591

原创 在tensorflow中使用wide&deep模型(1)-模型及应用场景简介

1、概述人工智能的最终目的是为了模拟人的思维状态。而相对于传统的程序而言,人脑的工作机制是非常复杂的。总体来讲人脑的主要功能有一下两个:记忆 推理记忆是对已经见过的物体的总结能力,而推理是将这里记忆数据进行泛化,也就是推广到未知事物的能力。能否使用机器学习模型来模拟这两方面的能力呢。本章节将使用wide&deep模型来实现。如下图所示:在该模型中我们将wide模型由于特...

2018-08-21 10:28:17 1250 1

原创 深入理解词向量-词向量的可视化

1、概述词向量是自然语言分词在词空间中的表示,词之间的距离代表了分词之间的相似性,我们可以使用gensim,tensorflow等框架非常方便的来实现词向量。但词向量在词空间的分布到底是什么样的,如何更好的理解词向量是一个非常重要的问题。本文将使用tensorbord以及相关的降维技术在三维空间中模拟词向量在高维空间的分布。2、训练词向量词向量的训练是一个无监督的学习过程,这并不是本文...

2018-08-16 17:47:49 6859 11

原创 自然语言话题分析-从NMF矩阵分解模型说起

1、概述我们在接触自然语言领域都会涉及到基于监督学习与非监督学习的文本分类,在非监督学习领域会提到lsa、lda主题模型的实现。但之前的讨论都是基于工具层面的。其实这些模型的基础算法都是NMF模型分解。可以我们不会对文本从底层去实现这样的算法。但了解其实现的机制还是非常有帮助的。2、关于NMF矩阵NMF的思想:V=WH(W权重矩阵、H特征矩阵、V原矩阵),通过计算从原矩阵提取权重和特征...

2018-08-15 16:54:07 992

原创 使用nltk处理中文语料(1)- 统计相关

1、概述nltk作为自然语言处理(nlp)领域里经常被使用的一款工具。本身自带的语料大部分是英文的,其实跟对中文文档,稍作处理之后也是可以使用的,这里主要介绍nlp在中文领域的基础应用。2、nltk安装关于nltk的安装网上有很多的文章介绍,可以使用pip install nltk 命令非常方便的安装nltk。一般在安装完成之后需要使用download命令来下载相关的语料库,这些语料库...

2018-08-10 15:45:11 10646 6

原创 叙事文章的生成(论文翻译)

1、概述本文章是对国外一篇论文【 2002 Elsevier Science B.V.】的翻译,主要介绍了一种叙事文章的生成。一直以来,由于过度关注对故事语法与情节设计,叙事文章的生成的写作质量很差。此外,迄今为止的自然语言生成系统还不能客观地再现自然发生的叙事的多样性或复杂性。本文主要涵盖一下内容。以叙事文章与语言学为基础,提出了一个叙事推断模型。 我们将描述故事的主题结构,以及叙...

2018-08-01 10:44:45 498

原创 tensorflow 导入数据(3)

1、概述从文件读取数据时,往往是需要数据转换时,尤其对于多维数据,在使用文件形式进行存储时,除了tfrecord文件格式化,其他的文件的存储都显得无能为力。所以真正从文件读入的数据需要经过转换之后才能够使用。同样在tensorflow这种以小批次进行梯度下降的框架中,需要打乱数据以及对数据进行batch处理,本文主要讨论这些问题。2、使用Dataset.map() 预处理数据Datas...

2018-07-30 16:09:49 1329

原创 tensorflow 导入数据(2)

1、概述在前一篇文章中详细讨论了迭代器与数据集的相关内容。由于数据集与迭代器是链接原始数据与程序连接的渠道,所以本文主要讨论如何从原始数据中构建数据集,主要涉及以下场景:内存 TFRecord data 文本文件 csv文件2、从内存中读取数据如果所有的数据都以numpy数据组的形式预先保存到了内存当中,那么我们使用Dataset.from_tensor_slices()方法可...

2018-07-28 15:50:43 691 1

原创 tensorflow 导入数据(1)

1、概述在tensorflow中的输入数据会有很多形式一般有一下几种形式数据以tf.constant的实行直接嵌入到graph中。在这种情况下一般数据量不会很大,应用场景也比较单一 以tf.placeholder与feed_dic的形式存在       在这种场景下,往往也需要将数据全部读入到内存,转换成tf的张量集合然后再进行处理。在进行大量数据处理时显得的力不从心。以pipel...

2018-07-27 18:24:29 435

原创 知识存储-使用python访问neo4j数据库

1、概述之前的章节当中介绍了,neo4j数据库的安装,cypher的查询语言。但在实际开发的情况中,我们更多时候需要使用编程语言来操作图形数据库。例如使用java、php、python来实现相关操作。本章节主要使用python来访问数据库。在进行本章节之前你需要熟悉下列前导知识:熟悉neo4j数据库的基本架构安装配置好neo4j并且数据cypher查询语言的基本语法数据python相关的操作2、安...

2018-07-14 15:15:51 5452 3

原创 知识存储-图数据库构建

1、概述之前章节的内容都是对已有的图数据库进行查询,但是进行查询的前提是,已经构建好了一个图形数据库。构建图形数据库同样是一个非常关键的步骤,本章主要介绍对节点、关系、属性的增删改。2、create操作新增节点在创建节点时,可以创建单个节点和多个节点,请参照下面代码create (m)create (x),(y)但是这样的节点毫无意义,所以最基本的应该创建一个带标签的节点,请参照以下代码crea...

2018-07-13 10:35:44 1191

原创 知识存储-cypher查询语句基础(2)

1、概述对于neo4j数据库的查询操作,除了比较简单的查询语句之外还有较为负载的查询语句,主要包含以下内容:OPTINAL MATCHwhere语句详细查询聚合2、OPTIONAL MATCHoptional match的匹配模式与match类似。不同的是,在没有匹配到的部分使用null进行填充。该功能类似sql语句中的 outer join 功能。在之前的movie graph中我们注意存在这样...

2018-07-12 15:31:42 466

原创 知识存储-cypher查询语句基础(1)

1、概述我们在进行关系型数据库操作的时候使用sql,在使用其他数据库时使用sparsql,在操作neo4j时使用cypher语法。这是一种非常简单的查询语法,方便我们掌握。1)neo4j中的相关概念节点:节点是图数据库中的一个基本元素,表示一个具体的实体,可以类比成关系数据库中的记录关系:关系是图数据库中节点之间的连接,也表示成节点之间的边,neo4j中关系是双向的属性:属性是对节点以及关系的一种...

2018-07-11 16:21:13 6959

原创 知识存储(1)-neo4j图形数据库安装

1、概述数据存储的方式有很多种,在常规开发中见到最多的就是关系型数据库。关系型数据库以实体关系方式来构建数据。但从数据库构架的本身来讲是重实体轻关系。随着知识爆炸与互联网以及大数据人工智能技术的发展。传统的数据库已经不能够满足人们对于数据存贮的需要所以有很多非关系型数据库产生,我们将这一类数据库称之为NOSQL,常见的NOSQL数据库大致分为一下几类。举一个例子,如果我们需要存储像脉脉(app)的...

2018-07-11 11:59:13 640

原创 使用gensim处理文本(4)word2vector

1、概述在之前的章节当中我们从概率分布的角度来考虑文本的实际含义,并在此基础上进行了主题分析。但在实际的应用当中,我们对自然语言处理的需求远远不止这些。其中一个非常重要的需求就是,我们能用vector的形式来表示单词的含义。以便于将这些vector进行其他的处理,如进入神经网络进行进一步处理,所以如何从语义角度将单词转化为向量就变得尤为重要。那如何使用vector来表示单词的含义呢,我们认为一个单...

2018-05-18 17:36:42 3931

原创 使用gensim处理文本(3)相似度分析

1、概述在之前的文章中,我们将文本转化为词向量,并在不同的向量模型中进行转化。并使用lsa与lda进行了潜在语义分析。其中还有一个非常重要的工作就是相似度分析。本章主要介绍在lsa的基础上进行相似度分析。2、初始化相似度查询模型首先需要再加字典以及tfidf模型以便于后续的工作,请参照一下代码from gensim import corpora, models, similaritiesdict...

2018-05-18 16:06:58 2469

原创 使用gensim处理文本(2)主题分析与向量转换

1、概述在之前的文章中我们建立了字典文件,并使用词袋模型来表示一个文档,但这种表示方式是基于词频的简单模型。有的时候需要对模型进行转换。常见的模型有:tfidflsilda等2、tfidf模型我们使用字典文件可以非常直观生成tfidf模型,tfidf是根据词频和逆词频抽取关键词的一种技术。通俗来讲一个文档中的所有分词只有在本文档中出现的频率越高而在其他文档中出现的词频越低就代表着该词越关键。请参照...

2018-05-18 14:56:34 1041

原创 使用gensim处理文本(1)语料库与词向量空间

1、概述目前有很多成型框架来进行自然语言处理,其中针对中文语料,使用jieba进行分词然后使用gensim进行词向量处理是一个不错的选择。将文本变换成向量是自然语言中非常重要的一个内容。因为文本是不能直接被计算机进行运算处理的。所以将文本转化为词向量是所有工作的第一步。2、将文本转化为向量将文本转化为向量的方式有很多种,在本章中主要使用统计学的词向量转化。在进行中文的处理时需要提前进行分词,有时候...

2018-05-17 17:36:25 4446

原创 第七章:新版tensorflow入门,RNN与LSTM

1、概述传统的神经网络对线性回归、逻辑回归都有比较好的效果。卷积神经网络主要应用与计算机视觉技术。使用过滤器对图片的边缘特征值进行检测。在之前的章节中使用cnn对文本分类其实是借用了计算机视觉的一些原理,过滤器的尺寸也有着特殊的设置。在人工智能领域还有一种应用场景,就是序列模型。之前的算法总体上来讲都是概率分布学的,没有将数据的前后关系包含其中,而在实际的情况下,很多数据都是有时序关系的。比如自然...

2018-05-12 10:59:07 1074

原创 第六章:新版tensorflow入门,卷积神经网络进行手写数字识别

1、概述新版的tensorflow的layer模块提供了更为简单的api,是我们能够非常快速的创建卷积神经网络。卷积神经网络被广泛的应用在计算机视觉的技术当中。现在要用卷积神经网络来进行手写数字的识别。可以使用minist数据集来进行本次卷积神经网络的训练。这个数据集包含6万张训练样本和1万张测试样本的图片。2、数据下载与数据结构分析可以使用下面命令下载数据# mnist数据集import te...

2018-05-07 10:53:58 301

原创 第五章:新版tensorflow入门,自定义模型(estimator)

1、概述新版tensorflow内置了六款模型,包含线性回归模型和逻辑回归模型,能够使用这些模型非常方便快捷的实现自己的业务需求。但如果内置模型不能满足我们的业务需求时,就需要我们来自定义自己的模型。如下图所示,预创建的 Estimator 是 tf.estimator.Estimator 基类的子类,而自定义 Estimator 是 tf.estimator.Estimator 的实例:模型函数...

2018-05-05 11:40:59 7727 2

原创 第四章:新版tensorflow入门,处理数据集

1、概述tensorflow对于数据的格式有着特殊的要求,另外所需要的数据量也是巨大,同样会有批量梯度下降这样的需求。为了保证数据的随机性,我们有时候还需要随机化数据分布。这样数据预处理就变得十分的关键。tensorflow提供了一系列的方法来帮助我们完成这样的工作。2、数据源在真实的人工智能场景中,数据源主要有两种:从 Numpy 数组中读取内存中的数据。从 csv 文件中读取行。在数据量在可接...

2018-05-04 18:49:15 556

原创 第三章:新版tensorflow入门,处理特征列

1、概述特征列是原始数据与模型之间进行链接的桥梁。一般来说,人工智能的本质是要进行权重与偏置的运算用来确定模型的形态。在使用之前的tensorflow版本时,都需要预先将数据进行类型、分布的处理,才能被人工智能模型所使用。而特征列的出现则使得数据处理的工作变得简单的多。2、特征列的作用特征列主要解决对用户数据进行预处理与特征化的处理,这种技术的出现主要是原始输入数据的多样性。如下图所示,您可以通过...

2018-05-04 11:38:56 2831

原创 第二章:新版tensorflow入门,使用检查点保存模型

1、概述和老版本的tensorflow一样,模型需要进行保存,而且这种保存方式是周期性的。因为在很多情况下,梯度会在局部最小值左右进行摇摆,也就是说,在很多情况下,最后一次训练的模型不见得是最优化的。2、保存模型我们可以在构建模型时,制定检查点保存的位置,首先我们可以用下面命令创建一个文件夹。可以在构建模型时加入参数classifier = tf.estimator.DNNClassifier(...

2018-05-04 10:31:30 1393

原创 第一章:新版tensorflow入门,对鸢尾花进行分类

1、背景2018年tensorflow进行了版本升级1.8.0,新版tensorflow对原来版本进行了进一步的封装,编程方式也与之前的内容有了很多的不同。本文介绍在新版TensorFlow 中解决鸢尾花分类问题。2、新版tensorflow的基本结构众所周知,人工智能的核心组成部分就是模型与数据,新版的tensorflow将这两个内容进行了更高级别的封装,如果不是定制化需求的很高的问题,我们都建...

2018-05-03 18:55:39 15167 2

原创 人工智能如此简单(2)—— 激活函数

1、关于激活函数如果按照上一篇文章的思路,人工智能是无法模拟曲线方程的,比如抛物线方程,及时加入再多的参数值,也无法达到效果,所以需要引入激活函数。为了方便这里介绍一种最为简答的函数sigmoid函数,sigmoid函数的原型如下:这个函数的的曲线图如下所示:sigmoid函数从一定程度上反应了二分类的思想,在可以将上图的曲线,看成一个概率分布函数,介于0和1之间,可以将0.5作为阈值进行分类。当...

2018-04-29 15:38:03 744

unity3d教程--pdf

关于unity3d一个基础教程,希望对大家有帮助

2011-04-28

空空如也

空空如也

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

TA关注的人 TA的粉丝

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