人工智能
最老程序员闫涛
关注全文检索、数据挖掘、推荐引擎技术,Android开发技术,互联网及移动互联网创业。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
PyTorch学习笔记1---张量
PyTorch中数据集用Tensor来表示,Tensor与Python中的List类似,但是其内部存储时以连续内存单元存储,可以通过下标计算出内存地址,然后直接读出数值,因此存取效率很高,同时由于与Numpy的内存存储基本相同,所以numpy的ndarray与Tensor之间转换,不论有多少元素,其转换只需数毫秒,非常高效。同时,Tensor可以在GPU上运行,因此比numpy的效率要高。Ten...原创 2019-12-02 22:31:08 · 568 阅读 · 0 评论 -
随诊医生开发---1.2. 创建主界面
创建主界面由于需要针对基层医疗机构出诊及家庭医生需求,需要快速开发出一个简单的移动应用,决定采用Google在2018年2月新推出的Flutter技术,来开发这个新的App。 首先主页的底部像大多数应用一样,有一个TabBar,共有5个选项:日程 记录医生在医院出诊、预约计划和执行情况,以及走访社区出诊计划和执行情况。在医院就诊需要记录医院、科室和出诊时间,外出出诊需要记录时间、患者...原创 2018-07-23 19:39:55 · 836 阅读 · 0 评论 -
TensorFlow可微编程实践2---自动微分符号体系
自动微分采用一套与常规机器学习和深度学习不同的符号体系,我们只有熟悉了这个符号体系,才能比较轻松的看懂自动微分的文章。本篇博文将向大家介绍自动微分中使用的符号体系。...原创 2018-06-20 16:20:02 · 1621 阅读 · 1 评论 -
医疗图神经网络---1.1.简介
医疗图神经网络采用Google Deepming最新的图神经网络技术,结合知识图谱、因果推理网络和深度学习技术,模拟执业医生思维模式,创建接近或达到人类专家水平的医疗自动/辅助诊断系统。 对于每种疾病,我们从四个方面来进行建模:流行病学、病程、症状和综合征、机制。 流行病学主要解决谁会得这种疾病的问题,包括人口统计学信息,如性别、年龄、职业、民族、籍贯等,同时包括各种危险因素,例如肥胖、吸烟,...原创 2018-07-15 18:08:18 · 1420 阅读 · 0 评论 -
深度学习在线教育平台实践---内容推荐系统1
深度学习技术众所周知,深度学习和人工智能技术在教育领域的应用,一直是在线教育界的王冠,是众多在线教育企业正在做的事情。但是直到目前为止,虽然有很多深度学习和人工智能解决方案,但是真正能够在实践中应用和落地的项目却并不多,大多数解决方案还停留在概念阶段或收集数据阶段,离实际应用还有一段距离。本系列文章,将以我们在高三地理教学中实际使用的个性题库系统为例,向大家详细介绍基于深度学习技术的题库推荐系...原创 2018-08-09 12:41:42 · 2581 阅读 · 0 评论 -
深度学习在线教育平台实践---内容推荐系统2
根据上篇博文的内容,我们可以将题目样本就可以表示为如下形式: x(1)=⎡⎣⎢⎢⎢x(1)0x(1)1x(1)2⎤⎦⎥⎥⎥=⎡⎣⎢1.00.90.0⎤⎦⎥x(1)=[x0(1)x1(1)x2(1)]=[1.00.90.0]\boldsymbol{x}^{(1)}=\begin{bmatrix}x^{(1)}_0\\x^{(1)}_1\\x^{(1)}_2\end{bmatrix}=\b...原创 2018-08-09 13:54:56 · 1079 阅读 · 0 评论 -
深度学习在线教育平台实践---协同过滤推荐系统
对于商品内容进行分析,进而根据商品内容进行推荐,是一种常用的推荐系统实现技术。但是如果商品种类很多,而且商品的属性很复杂,这样靠人工来标注商品的内容属性,就变得不太现实了。协同过滤技术正是为了解决这一问题而提出的,通过这种技术,我们不需要了解商品本身,只需要通过研究用户与商品这间的交互,就可以精准的向用户推荐他们可能感举趣的商品了。 具体到我们的个性题库系统,如果我们的客户有数以万计的题目,让人...原创 2018-08-09 20:27:11 · 1683 阅读 · 0 评论 -
深度学习在线教育平台实践---深度学习推荐算法
在本节中,我们将基于内容的推荐算法,与基于协同过滤的推荐算法,集合在一起,形成深度学习推荐算法,同时为了提高运行效率,我们还将介绍算法的向量表示。 在这里我们希望同时学习学生对题目需要程度的参数集{θ(1),θ(2),...,θ(nu)}{θ(1),θ(2),...,θ(nu)}\{ \boldsymbol{\theta}^{(1)}, \boldsymbol{\theta}^{(2)}, .....原创 2018-08-14 11:15:57 · 1866 阅读 · 0 评论 -
深度学习在线教育平台实践---推荐算法冷启动问题
在本节中,我们将讨论如何在对学生一无所知的情况下,例如入学的新生,转学过来的学生,利用我们上一节中讲到的基于深度学习的推荐系统,给学生推荐适合的题目。 所有推荐系统,比较难解决的问题就是冷启动问题,就是在系统运行初期,没有学生做练习题目的数据,而我们要推荐的话,这些数据是必须的。通常解决方法是找一批种子用户,让他们来做这些题目,然后我们根据学习做题正确情况,所用时间等信息,给出学生对题目的需要程...原创 2018-08-14 11:53:32 · 1728 阅读 · 2 评论 -
深度学习在线教育平台实践---推荐算法TensorFlow实现
在前面几节中,我们向大家介绍了基于深度学习的推荐系统的数学原理,在这一节中,我们讨论怎样使用TensorFlow来实现这些数学原理。我们知道,TensorFlow对于深度学习算法的实现有很多资料参考,但是我们前面介绍的推荐系统,与一般的深度学习网络有很大的不同,属于Matrix Factorization的一种,所以在具体实现中,需要对TensorFlow有一个较为深入的了解,才能写出一个较好的解...原创 2018-08-14 13:59:01 · 3945 阅读 · 8 评论 -
智能教育深度学习推荐系统---1.2.合成推荐算法CKE解读和算法实现1
在推荐系统构建中,人们最常用的方法当属协同过滤推荐算法。协同过滤推荐算法仅需要考虑用户和待推荐条目的交互关系,算法可以处理毫不费力地同时应用于电影推荐、图书推荐、音乐推荐等,而无需研究待推荐具体的内容。但是协同过滤算法在实际应用也存在很多问题,例如对新条目,由于没有与用户的交互数据,所以就无法推荐,并且很多时候,由于某个意外事件会使某个条目遭到爆炒,使热度爆表,但是实际质量并不好,依据这些信息的推...原创 2018-08-26 17:38:13 · 3404 阅读 · 2 评论 -
斯坦福自然语言处理习题课1——绪论
对于技术人员来说,如果要问当前最热门的技术是什么?我想大家一定会回答是人工智能技术。而在人工智能技术中,哪个技术方向最火呢?大家肯定会回答是深度学习技术。如果我们要问在深度学习技术中,哪些应用方向最火呢?我想大家可能会不约而同地说是机器视觉和自然语言处理了。机器视觉自然就不必说了,比如说像商汤、旷视、Face++等独角兽级企业,是史上成长最快的独角兽级企业了,融资规模在几十亿以上,同时机器视觉工程...原创 2018-11-06 16:17:08 · 1097 阅读 · 1 评论 -
斯坦福自然语言处理习题课2---softmax函数详解
从现在开始,我们就要正式开始向大家讲解斯坦福大学CS224n作业的实现了。我们首先业看作业关于softmax函数实现部分。我们在这里将先向大家介绍softmax函数的具体应用场景和物理意义,以及采用numpy和python实现中需要注意的地方,在下一篇文章中,我们再向大家介绍CS224n作业1中softmax的具体实现。之所以这样安排,是因为数学是一个非常优雅的建模工具,可以非常优雅的描述物理过程...原创 2018-11-07 14:43:27 · 1455 阅读 · 0 评论 -
深度学习量化交易实践---7.1.时序信号特点
时序信号我们以上证综指收盘指数为例,其就是一个典型的时序信号。上证综指文件中,每天作为一行,表示该日的指数信息,各列信息如下所示:Indexcd:指数代码,000001表示上证综合指数;trddt:交易日期,格式为yyyy-MM-dd;daywk:星期日期,0星期日,1星期一,…,6星期六opnindex:开盘指数hiindex:最高价loindex:最低价clsindex:收盘价...原创 2018-11-22 17:47:58 · 2556 阅读 · 0 评论 -
深度学习量化交易---0.1.股票K线图绘制
研究股票交易的基本功就是看K线图,所以在这一节里面,我们的任务就是拿到一支股票的历史数据,我们用python画出其K线图,这是进行下一步技术分析的基础。我们以上证综指为例,之所以没拿某支股票为例,是因为股票容易被操控,而上证综指很难被操控,因为规律性会更强一些。...原创 2018-11-25 12:54:57 · 5640 阅读 · 5 评论 -
深度学习量化交易---0.2.基于长短时记忆网络预测股票价格1
在这一节中,我们将先向大家介绍长短时记忆网络(LSTM),然后详细讲解怎样使用长短时记忆网络(LSTM)来预测股票价格,为了避免人为因素干拢,我们还以上证综指为例来进行说明。长短时记忆网络(LSTM)股票交易数据是一种典型的时序信号,需要处理较长的时间序列,有时为了准确的进行股票价格预测,可能会需要看几周甚至几个月的历史数据,如果采用普通的多层感知器模型的话,那么要求输入层维度就非常大,整个网...原创 2018-11-27 14:59:41 · 1882 阅读 · 0 评论 -
深度学习量化交易---0.2.基于长短时记忆网络预测股票价格2
在上一篇博文中,我们介绍了长短时记忆网络的基本概念,在这一节中,我们将以长短时记忆网络(LSTM)为例,讲解深度学习算法在股票价预测中的应用。我们要分析的数据如下所示:各列依次为:股票代码、日期、开盘价、收盘价、最低、最高、交易量、金额、涨跌幅、第二天的最高价。我们首先读入训练样本集,代码如下所示:import numpy as npimport pandas as pdimport...原创 2018-11-28 10:58:06 · 2700 阅读 · 2 评论 -
Python量化交易笔记---16.方差分析
方差分析是一种多变量之间关系的定性分析方法,通过研究多个变量之间存在的关系,我们可以提高预测的准确性。1.概述在股票研究中,我们经常按行业版块来进行研究,假设不同行业间收益率为相互独立的,我们想要知道化工行业与金融行业相比,收益率是高还是低。在这个问题中,行业版块我们称之为因子(Factor)变量,因子变量可以取实数值,也可以取如行业类型这样离散状态值,我们称之为水平;我们研究的收益率称之为反...原创 2019-02-11 11:20:44 · 1544 阅读 · 3 评论 -
深度强化元学习教程---元学习概述
深度强化元学习是近期深度学习技术的一个另人瞩目的新兴领域,其利用元学习,解决了深度学习需要大数据集的问题,以及强化学习收敛慢的问题。同时元学习还可以适用于环境不断改变的应用场景,具有巨大的应用前景。元学习概述元学习简介提到元学习,我们通常想到Few-Shot Learning、One-Shot Learning、Zero-Shot Learning,其实这些都是K-Shot Learning...原创 2019-07-29 16:16:30 · 2184 阅读 · 0 评论 -
深度强化元学习教程---优化器元学习1/2
为了解决深度学习需要大量标注数据集的问题,优化器元学习方法通过利用元网络来学习最佳优化器,从而帮助实现我们当前功能的基础网络具有更好的性能。这种方法有一个比较长名字:通过梯度下降来学习怎样学习梯度下降算法。这样说比较抽像,我们以一个具体的例子业说明这一过程。在传统的深度学习中,我们首先会根据训练样本计算出代价函数,然后求出代价函数对连接权值和偏置值的微分,再在优化器的帮助下,根据梯度下降算法,调...原创 2019-07-30 16:01:23 · 1487 阅读 · 0 评论 -
深度强化元学习教程---优化器元学习2/2
优化器元网络推导在梯度下降算法中,我们通过下面的公式来调整参数:θt=θt−1−αt∇θt−1Lt\boldsymbol{\theta}_{t} = \boldsymbol{\theta}_{t-1} - \alpha_{t} \nabla_{\boldsymbol{\theta}_{t-1}} \mathcal{L}_{t}θt=θt−1−αt∇θt−1Lt根据上一节长短时...原创 2019-07-31 15:43:03 · 931 阅读 · 3 评论 -
spark 2.1.0安装指南完整版
Spark的资料非常多,但是完整介绍Spark安装的资料却非常少见,本文就是记录一下安装配置Spark2.1.0的过程,希望能对大家有所帮助。包括安装JDK、Scala、Python、Hadoop、Spark,并且修改Spark源码文件,使pyspark其可以与Python 3.6配合使用。原创 2017-03-17 10:44:58 · 10767 阅读 · 1 评论 -
深度学习算法实践2---线性代数和Numpy的使用
使用Theano和Numpy实现一些线性代数的基本操作,如常数与矩阵相乘,标量加法和矩阵乘法。原创 2016-08-04 14:54:24 · 3761 阅读 · 0 评论 -
深度学习算法实践3---神经网络常用操作实现
在这篇文章中,我们介绍了实现一个神经网络中最简单的感知器模型,我们介绍了Theano中的相关函数,并对其中的关键步聚给出了代码实现,读者可以基于这些代码,参考神经网络教材,实现出一个完整的感知器模型。原创 2016-08-05 10:46:00 · 3582 阅读 · 0 评论 -
深度学习算法实践4---Theano常用技巧
在上一篇文章中介绍了神经网感知器模型中用到的一些算法,在这篇文章中,将继续介绍这些常用的算法,首先是随机数的生成,因为感知器模型必须用随机数来初始化连接权值,其次是求导数,因为感知器学习算法是,会用到梯度下降算法,涉及到求导问题。在讨论随机数生成算法之前,我们先来讨论一下共享变量,这很像C语言中的静态变量,假设我们要对网站的内容的热度进行统计分析,我们用hottness来表示热度,用visitWe原创 2016-08-08 13:20:09 · 2955 阅读 · 0 评论 -
深度学习算法实践11---卷积神经网络(CNN)之卷积操作
卷积神经网络(CNN)主要特性有:稀疏连接和权值共享、卷积操作、池化。在前一篇博文中我们已经讨论了稀疏连接和权值共享,在本篇博文中,我们将介绍卷积操作和池化。正是由于对图像进行卷积操作,卷积神经网络才得以其名,可见卷积操作是其核心。在这篇博文中,我们将讨论卷积操作的实现其及物理含义。原创 2016-08-29 18:20:48 · 11319 阅读 · 5 评论 -
深度学习算法实践12---卷积神经网络(CNN)实现
在搞清楚卷积神经网络(CNN)的原理之后,在本篇博文中,我们将讨论基于Theano的算法实现技术。我们还将以MNIST手写数字识别为例,创建卷积神经网络(CNN),训练该网络,使识别误差达到1%以内。原创 2016-08-30 12:50:35 · 8329 阅读 · 0 评论 -
深度学习算法实践13---去噪自动编码机(Denosing Autoencoder)
截至目前为止,我们所讨论的神经网络技术,感知器模型、BP网络、多层卷积神经网络(CNN),都可以视为前馈神经网络的变形,都会采用信号前向传播,误差反向传播修正连接权值,采用有监督学习方式,解决样本分类问题。在这一篇博文,我们将介绍稍微不同的神经网络架构,即被称为自动编码机(Autoencoder)。与前述我们所讨论的神经网络不同,自动编码器(Autoencoder)属于非监督学习,不需要对训练样本原创 2016-08-31 17:57:29 · 16860 阅读 · 3 评论 -
深度学习算法实践7---前向神经网络算法原理
在本文中,我们对感知器模型的算法进行了推导,为我们对多层前馈网络(BP)的误差反向传播算法打下基础。原创 2016-08-22 18:16:30 · 6378 阅读 · 3 评论 -
深度学习算法实践14---去噪自动编码机(dA)的Theano实现
在明白了去噪自动编码机(dA)的理论之后,在本篇博文中,我们将讨论用Theano来实现一个去噪自动编码机。通过上篇博文的讨论,我们知道去噪自动编码机(dA)工作主要有四步组成:第一步是向原始输入信号中加入随机噪音(使原始信号在某些维度上值为零);第二步是将加入噪音的信号输入网络,经过编码器部分,在中间层生成输入信号的压缩信号;第三步是经过解码器层,在输出层得到输出信号;第四步将输出信号与原始输入信原创 2016-09-02 11:00:12 · 5354 阅读 · 1 评论 -
深度学习算法实践8---BP算法详解
BP算法是关于误差的反向传播算法,就是从输出层开始,将结果与预期结果相比较,求出误差,然后按照梯度最大下降方向,调整神经元的联接权值,然后依次逐层调整各层之间的连接权值,对于批量学习方式而言,不断重复上述过程,直到误差达到足够小时为止。对于输出层而言,我们可以直接使用在上一篇博文中关于感知器模型的算法,BP算法的难点在于,如何处理隐藏层,因为隐藏层没有正确的输出信息用来计算误差。下面我们将从输出层原创 2016-08-24 19:06:51 · 6461 阅读 · 0 评论 -
深度学习算法实践9---用Theano实现多层前馈网络
我们到目前为止,使用逻辑回归模型已经可以对简单的线性可分问题进行了研究,不仅对MNIST手写数字识别样本集进行了训练和识别,我们还对二维平面上的点是否在y=x这条直线上进行了判断,有了这两个例子,尤其是第二个例子,读者应该可以将逻辑回归模型应用到自己的项目中了。虽然逻辑回归问题不能解决线性不可分问题,但是对于很多线性不可分问题,还是可以找到一个尽量好的超平面,得到令人满意的分类结果。由于逻辑回归算原创 2016-08-25 17:39:24 · 3639 阅读 · 0 评论 -
深度学习算法实践10---卷积神经网络(CNN)原理
其实从本篇博文开始,我们才算真正进入深度学习领域。在深度学习领域,已经经过验证的成熟算法,目前主要有深度卷积网络(DNN)和递归网络(RNN),在图像识别、视频识别、语音识别领域取得了巨大的成功,正是由于这些成功,能促成了当前深度学习的大热。与此相对应的,在深度学习研究领域,最热门的是AutoEncoder、RBM、DBN等产生式网络架构,但是这些研究领域,虽然论文比较多,但是重量级应用还没有出现原创 2016-08-26 14:46:53 · 23539 阅读 · 5 评论 -
深度学习算法实践15---堆叠去噪自动编码机(SdA)原理及实现
在上一篇博文中,我们讨论了去噪自动编码机(dA),并讨论了Theano框架实现的细节。在本节中,我们将讨论去噪自动编码机(dA)的主要应用,即组成堆叠自动编码机(SdA),我们将以MNIST手写字母识别为例,用堆叠自动编码机(SdA)来解决这一问题。原创 2016-09-07 06:28:08 · 11529 阅读 · 0 评论 -
深度学习算法实践1---开发环境搭建
本文将在Mac环境下,配置深度学习算法的开发环境,我们会采用python3.x作为开发语言,在深度学习框架方面,没有选择最为流行的TensorFlow,而是在研究者中比较流行的Theano。主要是因为TensorFlow虽然很热,但是将基础理论与框架结合的文档较少,Theano作为教学框架,这方面的资料非常丰富,所以以学习和实现为目的的项目,采用Theano会较大的优势。而我们知道,目前深度学习的应用,大多是试验性质的,因此采用Theano可以在学习深度学习基本理论的同时,动手实验各种算法,对实际项目的帮助原创 2016-08-03 18:00:47 · 5701 阅读 · 0 评论 -
人工智能自动代码生成2---环境搭建
在进行具体的开发之前,我们需要选择具体采用的实现技术,并搭建开发环境。我们在这里选择Python 3.x,因为我们会将人工智能、机器学习的算法应用到代码生成中,而在人工智能和机器学习领域,Python无疑是最流行的语言,因此我们选择Python语言有利于我们在后期引入人工智能和机器学习算法。其次是选择开发平台,对于软件开发而言,比较理想的开发平台,当然是Linux系统,例如Ubuntu系统,再有就原创 2017-03-08 21:26:17 · 5412 阅读 · 0 评论 -
人工智能自动代码生成3---数据库获取代码实现1
我们先从最简单的自动代码生成场景开始,先用不怎么智能的方法来实现这些基本功能。我们在这一节中,将使用Java中的JDBC技术,实现对数据库内容的增删改查操作,同时使用PHP中的Mysqli技术,实现同样的功能,通过这个具体的实例,让大家感觉一下,实际中的代码生成,究竟可以实现什么功能。我们在具体讲数据库获取代码生成之前,我们先来熟悉一下Jinja2的语法知识。我们以Jinja2应用的典型场景为例,原创 2017-03-09 11:05:24 · 4625 阅读 · 1 评论 -
TensorFlow可微分编程实践3---计算图模型
在这篇博文中,我们将探讨怎样通过可微分编程技术,实现深度学习中最常用的多层感知器(MLP)模型。我们在这里使用TensorFlow Eager Execution API,并使用多层感知器模型来进行MNIST手写数字识别任务。...原创 2018-06-21 17:46:20 · 1019 阅读 · 0 评论 -
TensorFlow可微分编程实践3---向量微分和Jacobian矩阵
在这篇博文中,我们将利用TensorFlow Eager Execution API来实现一个完整多层感知器(MLP)模型。原创 2018-06-24 14:00:25 · 1409 阅读 · 1 评论 -
TensorFlow可微分编程实践3---交叉熵与代价函数微分
在上篇博文中,我们讲述怎样处理第l−1l−1l-1层到第lll层的前向传输和反向求导,我们还没有讲述关于输出层的处理技术。在这里,我们还以MNIST手写数字识别为例,网络计算图如下所示: 当我们计算出输出层的输出y∈R10y∈R10\boldsymbol{y} \in R^{10}时,表示输入图像xx\boldsymbol{x}是0~9这10个数字的概率。此时输入图像xx\boldsymbo...原创 2018-06-24 16:08:15 · 1670 阅读 · 2 评论
分享