
AI
文章平均质量分 80
幸福诗歌
科技改变世界!
展开
-
ensemble learning 2—— booasting and stacking
1 BoostingAdaBoost是英文“Adaptive Boosting”(自适应增强)的缩写,它的自适应在于:前一个基本分类器被错误分类的样本的权值会增大,而正确分类的样本的权值会减小,并再次用来训练下一个基本分类器。同时,在每一轮迭代中,加入一个新的弱分类器,直到达到某个预定的足够小的错误率或达到预先指定的最大迭代次数才确定最终的强分类器。Adaboost算法可以简述为三个步骤:...原创 2020-04-13 10:50:19 · 256 阅读 · 0 评论 -
ensemble learning 1—— bagging and Random Forset
当做重要决定时,大家可能都会考虑吸取多个专家而不只是一个人的意见。集成学习也是如此。集成学习就是组合多个学习器,最后可以得到一个更好的学习器。When making important decisions, everyone may consider drawing from multiple experts rather than just one person. The same is tr...原创 2020-04-09 13:02:14 · 291 阅读 · 0 评论 -
CART decision tree &Code
~~*Definition:* The generation of CART decision tree is the process of constructing binary decision tree recursively. CART uses Gini coefficient minimization criteria for feature selection and generat...原创 2020-04-09 12:42:22 · 240 阅读 · 0 评论 -
knn代码实现
原理iris数据集# 导入算法包以及数据集import numpy as npfrom sklearn import datasetsfrom sklearn.model_selection import train_test_splitfrom sklearn.metrics import classification_report,confusion_matriximport o...原创 2020-04-05 14:40:51 · 254 阅读 · 0 评论 -
逻辑回归代码实现
逻辑回归应用代价函数:核心代码实现:#sigmnd函数def sigmoid(x): return 1.0/(1+np.exp(-x))#代价函数def cost(xMat, yMat, ws): left = np.multiply(yMat, np.log(sigmoid(xMat*ws))) right = np.multiply(1 - yMa...原创 2020-03-31 10:59:07 · 242 阅读 · 0 评论 -
LASSO原理及代码实现
LASSO从这个对比图可以看出,LASSO算法使得某个点的特征参数为0,例如横坐标原点对应的的值,而岭回归很难实现。sklearn实现:# 创建模型model = linear_model.LassoCV()model.fit(x_data, y_data)# lasso系数print(model.alpha_)# 相关系数print(model.coef_)model...原创 2020-03-26 14:25:36 · 6693 阅读 · 1 评论 -
岭回归原理及代码实现
岭回归特征数量比样本数量多的情况???????????? + ???????? 主要做了这部分修改,加上了特征值乘以单位矩阵,使得原始矩阵变成可逆矩阵。求导过程:使用Longley数据集实现岭回归import numpy as npfrom numpy import genfromtxtfrom sklearn import linear_modelimport matplotlib.pyplot as p...原创 2020-03-26 14:08:19 · 3475 阅读 · 0 评论 -
多项式回归及标准方程法python实现
多项式回归线性回归模型尽管是最简单的模型,但它却有不少假设前提,其中最重要的一条就是响应变量和解释变量之间的确存在着线性关系,否则建立线性模型就是白搭。然而现实中的数据往往线性关系比较弱,甚至本来就不存在着线性关系,机器学习中有不少非线性模型,这里主要讲由线性模型扩展至非线性模型的多项式回归。多项式回归就是把一次特征转换成高次特征的线性组合多项式。import numpy as npimp...原创 2020-03-25 14:18:05 · 1214 阅读 · 0 评论 -
线性回归代码实现
最小二乘法的理解线性回归的原理import numpy as npimport matplotlib.pyplot as pltdata = np.genfromtxt("data.csv",delimiter=",")x_data = data[:,0]y_data = data[:,1]print(x_data.shape)print(y_data.shape)plt.s...原创 2020-03-22 17:50:17 · 265 阅读 · 0 评论 -
Pandas基本教程
Pandas 是 Python 的核心数据分析支持库,提供了快速、灵活、明确的数据结构,旨在简单、直观地处理关系型、标记型数据。Pandas 的目标是成为 Python 数据分析实践与实战的必备高级工具,其长远目标是成为最强大、最灵活、可以支持任何语言的开源数据分析工具。经过多年不懈的努力,Pandas 离这个目标已经越来越近了。Pandas 适用于处理以下类型的数据:与 SQL 或 ...原创 2020-02-28 23:03:29 · 445 阅读 · 0 评论 -
Numpy基本教程
Numpy基本知识NumPy是Python中科学计算的基础包。它是一个Python库,提供多维数组对象,各种派生对象(如掩码数组和矩阵),以及用于数组快速操作的各种API,有包括数学、逻辑、形状操作、排序、选择、输入输出、离散傅立叶变换、基本线性代数,基本统计运算和随机模拟等等。NumPy包的核心是 ndarray 对象。它封装了python原生的同数据类型的 n 维数组,为了保证其性能优良,其...原创 2020-02-27 17:05:05 · 347 阅读 · 0 评论 -
CNN及LeNet介绍
从神经网络到卷积神经网络(CNN)我们知道神经网络的结构是这样的:那卷积神经网络跟它是什么关系呢?其实卷积神经网络依旧是层级网络,只是层的功能和形式做了变化,可以说是传统神经网络的一个改进。比如下图中就多了许多传统神经网络没有的层次。定义简而言之,卷积神经网络(Convolutional Neural Networks)是一种深度学习模型或类似于人工神经网络的多层...原创 2020-02-18 22:37:44 · 1467 阅读 · 0 评论 -
Transformer介绍
Transformer在之前的章节中,我们已经介绍了主流的神经网络架构如卷积神经网络(CNNs)和循环神经网络(RNNs)。让我们进行一些回顾:CNNs 易于并行化,却不适合捕捉变长序列内的依赖关系。RNNs 适合捕捉长距离变长序列的依赖,但是却难以实现并行化处理序列。为了整合CNN和RNN的优势,[Vaswani et al., 2017] 创新性地使用注意力机制设计了Transfo...原创 2020-02-16 15:22:43 · 1193 阅读 · 0 评论 -
机器翻译/注意力机制
机器翻译(machine translation, MT)是用计算机来实现不同语言之间翻译的技术。被翻译的语言通常称为源语言(source language),翻译成的结果语言称为目标语言(target language)。机器翻译即实现从源语言到目标语言转换的过程,是自然语言处理的重要研究领域之一。早期机器翻译系统多为基于规则的翻译系统,需要由语言学家编写两种语言之间的转换规则,再将这些规则录...原创 2020-02-16 15:08:55 · 2249 阅读 · 0 评论 -
GRU及双向RNN介绍
GRU假设我们已经熟知循环神经网络(RNN)及长短时间记忆网络(LSTM)。相比于简单的RNN,LSTM增加了记忆单元(memory cell)、输入门(input gate)、遗忘门(forget gate)及输出门(output gate),这些门及记忆单元组合起来大大提升了RNN处理远距离依赖问题的能力。RNN:Ht=ϕ(XtWxh+Ht−1Whh+bh)H_{t} = ϕ(X_{...原创 2020-02-15 17:49:26 · 15186 阅读 · 1 评论 -
协变量偏移/标签偏移/概念偏移
协变量偏移这里我们假设,虽然输入的分布可能随时间而改变,但是标记函数,即条件分布P(y∣x)不会改变。虽然这个问题容易理解,但在实践中也容易忽视。想想区分猫和狗的一个例子。我们的训练数据使用的是猫和狗的真实的照片,但是在测试时,我们被要求对猫和狗的卡通图片进行分类。catcatdogdog测试数据:catcatdogdog...原创 2020-02-15 17:34:58 · 7578 阅读 · 1 评论 -
梯度消失、梯度爆炸
梯度消失、梯度爆炸深度模型有关数值稳定性的典型问题是消失(vanishing)和爆炸(explosion)。当神经网络的层数较多时,模型的数值稳定性容易变差。假设一个层数为LLL的多层感知机的第lll层H(l)\boldsymbol{H}^{(l)}H(l)的权重参数为W(l)\boldsymbol{W}^{(l)}W(l),输出层H(L)\boldsymbol{H}^{(L)}H(L)的权...原创 2020-02-15 17:24:19 · 181 阅读 · 0 评论 -
模型选择、过拟合和欠拟合
模型选择、过拟合和欠拟合训练误差和泛化误差在解释上述现象之前,我们需要区分训练误差(training error)和泛化误差(generalization error)。通俗来讲,前者指模型在训练数据集上表现出的误差,后者指模型在任意一个测试数据样本上表现出的误差的期望,并常常通过测试数据集上的误差来近似。计算训练误差和泛化误差可以使用之前介绍过的损失函数,例如线性回归用到的平方损失函数和so...原创 2020-02-15 16:55:25 · 428 阅读 · 0 评论 -
语言模型及RNN模型
语言模型一段自然语言文本可以看作是一个离散时间序列,给定一个长度为TTT的词的序列w1,w2,…,wTw_1, w_2, \ldots, w_Tw1,w2,…,wT,语言模型的目标就是评估该序列是否合理,即计算该序列的概率:P(w1,w2,…,wT).P(w_1, w_2, \ldots, w_T).P(w1,w2,…,wT).语言模型假设序列w1,w2,…,wTw_1, ...原创 2020-02-14 22:36:43 · 409 阅读 · 0 评论 -
理解多层感知机
多层感知机的基本知识深度学习主要关注多层模型。在这里,我们将以多层感知机(multilayer perceptron,MLP)为例,介绍多层神经网络的概念。隐藏层下图展示了一个多层感知机的神经网络图,它含有一个隐藏层,该层中有5个隐藏单元。表达公式具体来说,给定一个小批量样本X∈Rn×d\boldsymbol{X} \in \mathbb{R}^{n \times d}X∈Rn×d,其...原创 2020-02-14 22:17:09 · 877 阅读 · 0 评论 -
深入学习深度学习——softmax概念
softmax的基本概念分类问题一个简单的图像分类问题,输入图像的高和宽均为2像素,色彩为灰度。图像中的4像素分别记为x1,x2,x3,x4x_1, x_2, x_3, x_4x1,x2,x3,x4。假设真实标签为狗、猫或者鸡,这些标签对应的离散值为y1,y2,y3y_1, y_2, y_3y1,y2,y3。我们通常使用离散的数值来表示类别,例如y1=1,y2=2,y3...原创 2020-02-14 21:46:17 · 244 阅读 · 0 评论 -
深入学习深度学习——线性回归
线性回归主要内容包括:线性回归的基本要素线性回归模型从零开始的实现线性回归模型使用pytorch的简洁实现1 线性回归的基本要素模型为了简单起见,这里我们假设价格只取决于房屋状况的两个因素,即面积(平方米)和房龄(年)。接下来我们希望探索价格与这两个因素的具体关系。线性回归假设输出与各个输入之间是线性关系:price=warea⋅area+wage⋅age+b\mathrm{...原创 2020-02-14 17:28:14 · 352 阅读 · 1 评论 -
Ubuntu16.04实现Sphinx离线语音识别
自带Python2.7或3.0+版本都可以 使用的是3.5编译需要安装SpeechRecognition模块需要.wav作为测试数据1 安装SpeechRecognition模块pip install SpeechRecognition` 若是3版本则使用pip3 . 2 安装验证 >>> import speech_recognitio...原创 2018-04-09 19:22:20 · 8250 阅读 · 3 评论 -
Ubuntu16.04下安装cuda9.0环境
1:删除已有的NVIDIA`sudo apt-get remove --purge nvidia`2:到官方下载对应的包 https://developer.nvidia.com/cuda-downloads 3:按照提示的命令接着安装: Installation Instructions:`sudo dpkg -i cuda-repo-ubuntu1604-9...原创 2018-04-09 18:45:59 · 1397 阅读 · 2 评论 -
padddlepaddle框架搭建
使用Docker安装运行 使用Docker安装和运行PaddlePaddle可以无需考虑依赖环境即可运行。并且也可以在Windows的docker中运行。 您可以在 Docker官网 获得基本的Docker安装和使用方法。在了解Docker的基本使用方法之后,即可开始下面的步骤:获取PaddlePaddle的Docker镜像 执行下面的命令获取最新的PaddlePaddle Docke...原创 2018-03-03 18:47:18 · 1752 阅读 · 0 评论 -
判别模型与生成模型
根据特征值来求结果的概率。形式化表示为p(y|x; θ),在参数θ确定的情况下,求解条件概率p(y|x)。通俗的解释为在给定特征后预测结果出现的概率。比如说要确定一只羊是山羊还是绵羊,用判别模型的方法是先从历史数据中学习到模型,然后通过提取这只羊的特征来预测出这只羊是山羊的概率,是绵羊的概率。换一种思路,我们可以根据山羊的特征首先学习出一个山羊模型,然后根据绵羊的特征学习出一个绵羊模型。然后从这只原创 2018-01-30 11:50:40 · 322 阅读 · 0 评论 -
线性回归
线性回归线性回归假设特征和结果满足线性关系。其实线性关系的表达能力非常强大,每个特征,对结果的影响强弱可以有前面的参数体现,而且每个特征变量可以首先映射到一个函数,然后再参与线性计算。这样就可以表达特征与结果之间的非线性关系。我们用 X1,X2..Xn 去描述 feature 里面的分量,比如 x1=房间的面积,x2=房间的朝向,等等,我们可以做出一个估计函数: θ 在这儿称原创 2018-01-28 09:27:11 · 208 阅读 · 0 评论