机器学习
盐味橙汁
这个作者很懒,什么都没留下…
展开
-
使用scikit_learn构建一个机器学习系统
How to build a Maching Learing systemThe goal of our experiment is to build a maching learning system to make the House-price prediction based on the given datasetWe use imputer-method to imputer ...原创 2018-08-09 21:42:30 · 227 阅读 · 0 评论 -
Word2Vector之详解Skip-gram
word2vector——skip-gram 谷歌2013年提出的word2vector是目前最常用的词嵌入模型之一。Word2Vector实际上是一种浅层的神经网络模型,它有两种网络结构,分别时CBOW(Continues Bag of Words)和Skip-gram,这篇文章主要是介绍Skip-gram。 Skip-gram的主要目标是根据当前词来预测上下文中各个词的生成概率。比如说...原创 2018-11-05 12:21:29 · 2605 阅读 · 1 评论 -
使用本地安装PyTorch 1.0 (preview)
最近想要学习pytorch,Pytorch官网上的教程有些需要最新的1.0(preview)版本。搭建环境的过程中使用了conda、pip方式安装,都因为网络原因无法顺利安装,因此尝试通过anaconda本地安装下载好的pytorch 1.0(preview)安装包。下载安装包访问以下网址,根据当前的python版本点击合适的安装包即可下载。https://anaconda.org/py...原创 2018-10-21 16:12:19 · 14476 阅读 · 3 评论 -
详解注意力机制(Attention)——Global/Local/Self Attention
详解注意力(Attention)机制 注意力机制在使用encoder-decoder结构进行神经机器翻译(NMT)的过程中被提出来,并且迅速的被应用到相似的任务上,比如根据图片生成一段描述性语句、梗概一段文字的内容。从一个高的层次看,允许decoder从多个上下文向量(context vector)中选取需要的部分,使得Encoder只能将上下文信息压缩到固定长度的向量中这个束缚中解放出来,进...原创 2018-10-25 21:13:28 · 29746 阅读 · 0 评论 -
端到端的机器学习项目
端到端的机器学习项目主要步骤: Frame the problem and look at the big picture Get the data Explore the data to gain insight Prepare the data to better expose the underlying data patterns to Machine L...原创 2018-08-25 11:36:57 · 438 阅读 · 0 评论 -
Scikit-Learn学习笔记——主要成分分析(PCA)应用:可视化、噪音过滤、人脸识别
主要成分分析(PCA) 主要成分分析(PCA)可能是应用最广泛的无监督算法之一。虽然PCA是一种非常基础的降维算法,但它仍然是非常有用的工具,尤其适用于数据可视化、噪音过滤、特征抽取和特征工程等领域。由于PCA用途广泛、可解释性强,所以可以有效应用于大量情景和科学中。对于任意高维的数据集,可以从PCA开始,可视化点间的关系、理解数据中的主要变量。PCA并不是一个对每个高维数据集都有效的算法...原创 2018-08-21 21:06:44 · 6254 阅读 · 0 评论 -
Scikit-Learn学习笔记——用随机森林识别手写数字
用随机森林识别手写数字from sklearn.datasets import load_digitsdigits = load_digits()#显示前几个数字图像fig = plt.figure(figsize=(6,6))fig.subplots_adjust(left=0, right=1, bottom=0, top=1, hspace=0.05, wspace=0.0...原创 2018-08-21 17:42:53 · 4714 阅读 · 2 评论 -
Scikit-Learn学习笔记——决策树和随机森林
决策树和随机森林 随机森林是一种无参数的集成算法,通过集成多个比较简单的评估器形成累积效果。这种集成方法的学习效果经常出人意料,往往能超过各个组成部分的总和:也就是说,若干个评估器的多数投票的最终效果往往优于单个评估器投票的结果。决策树 随机森林的基础是决策树。决策树采用非常直观的方式对事物进行分类和打标签:你只需要问一系列问题就可以进行分类。二叉树分支方法可以非常有效的...原创 2018-08-21 16:50:04 · 2757 阅读 · 0 评论 -
Scikit-Learn学习笔记——SVM应用:人脸识别
SVM应用——人脸识别#下载数据from sklearn.datasets import fetch_lfw_peoplefaces = fetch_lfw_people(min_faces_per_person=60)print(faces.target_names)print(faces.images.shape)#输出结果['Ariel Sharon' 'Colin P...原创 2018-08-21 13:21:23 · 6782 阅读 · 2 评论 -
Scikit-Learn学习笔记——支持向量机(SVM)
支持向量机 支持向量机(SVM)是非常强大、灵活的有监督学习算法,既可以用于分类,也可用于回归。在贝叶斯分类器中我们首先对每个类进行了随机分布的假设,然后用生成的模型估计新数据点的标签,这属于生成分类方法。而SVM属于判别分类方法:不再为每类数据建模,而是用一条分割线(二维空间中的直线或者曲线)或者流体(多维空间中的曲线、曲面等概念的推广)将各种类型分割开。支持向量机:边界最大化...原创 2018-08-21 11:40:19 · 2745 阅读 · 1 评论 -
Scikit-Learn学习笔记——线性回归(基函数回归、岭回归正则化、Lasso正则化)
线性回归 如果说朴素贝叶斯是解决分类任务的好起点,那么线性回归模型就是解决回归任务的好起点。简单的线性回归#简单线性回归import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as sns;sns.set()rng = np.random.Random...原创 2018-08-20 22:37:58 · 3957 阅读 · 3 评论 -
Scikit-Learn学习笔记——朴素贝叶斯
朴素贝叶斯 朴素贝叶斯模型是一组非常简单快速的分类方法啊,通常适用于维度非常高的数据集。因为运行速度快,而且可调参数少,因此非常适合为分类问题提供快速粗糙的基本方案。之所以成为“朴素”或“朴素贝叶斯”,是因为如果对每一种标签的生成模型(用于计算每个标签的P(特征|Li)P(特征|Li)P(特征|L_i)进行非常简单的假设,就能找到每种类型生成模型的近似解,然后就可以使用贝叶斯分类。...原创 2018-08-20 19:44:57 · 1129 阅读 · 0 评论 -
Scikit-Learn学习笔记——特征工程
特征工程 工程中的数据挖掘用到的数据很少拥有干净的特征矩阵——很多特征的取值是非数值的,这些特征不能直接被计算机直接用于计算。因此,机器学习实践中更重要的步骤之一是特征工程——找到与问题有关的任何信息,把它们转换成特征矩阵的数值。分类特征 一种常见的非数值特征是分类数据。例如,浏览房屋数据的时候,除了看到“房价”(price)和“面积”(square)之类的数值特征,还会...原创 2018-08-20 19:25:23 · 359 阅读 · 0 评论 -
Scikit-Learn学习笔记——模型验证与超参数网格搜索
超参数与模型验证 模型验证就是在选择模型和超参数之后,通过对训练数据进行学习,对比模型对已知数据的预测值与实际值的差异。模型验证的正确方法是使用留出集评估模型性能,即先从训练模型中的数据中留出一部分,然后用这部分留出来的数据检验模型性能。 但是,使用留出集使得模型失去了一部分训练机会,解决这个问题的方法是交叉验证,也就是做一组拟合,让数据的每个子集既是训练集,又是验证集。...原创 2018-08-20 17:25:00 · 1489 阅读 · 0 评论 -
Scikit-Learn学习笔记——高斯混合模型(GMM)应用:分类、密度估计、生成模型
高斯混合模型 k-means聚类模型非常简单并且易于理解,但是他的简单性也为实际应用带来了挑战。特别是实际应用中,k-means的非概率性和它仅根据到簇中心点的距离来指派将导致性能低下。高斯混合模型可以看作是k-means的一个扩展,但它也是一种非常强大的聚类评估工具。k-means算法的缺陷 在实际聚类的过程中,两个簇往往会存在重合部分。k-means算法对于重合部分的...原创 2018-08-22 17:15:29 · 64311 阅读 · 2 评论 -
Scikit-Learn学习笔记——手写数字(MNIST)探索
手写数字(MNIST)探索#加载并可视化手写数字import matplotlib.pyplot as pltfrom sklearn.datasets import load_digitsdigits = load_digits()digits.images.shapefig, axes = plt.subplots(10,10, figsize=(8, 8),subplo...原创 2018-08-19 21:35:52 · 4955 阅读 · 0 评论 -
Scikit-Learn学习笔记——学会调用sklearn评估器API
sklearn初探 机器学习的本质就是借助数学模型理解数据。当我们给模型装上可以适应观测数据的可调参数时,学习就开始了,此时的程序被认为具有从数据中“学习”的能力。一旦模型可以拟合旧的观测数据,那么它们就可以预测并解释新的观测数据。 目前,python有不少可以实现各种机器学习算法的程序库。Scikit-Learn是最流行的程序包之一,它为各种常见机器学习算法提供了高效版本。Sc...原创 2018-08-19 20:12:15 · 2367 阅读 · 0 评论 -
Scikit-Learn学习笔记——k-means聚类:图像识别、色彩压缩
k-means聚类 k-means是一种无监督学习模型——聚类算法的一种算法。k-means算法可以在不带标签的多维数据集中寻找确定数量的簇。 最优的聚类结果需要符合一下两个假设 “簇中心点“是属于该簇的所有数据点坐标的算术平均值 一个簇的每个点到该簇中心点的距离,比到其他簇中心点的距离短。 #简单演示k-means算法%matplotlib in...原创 2018-08-22 12:57:18 · 13470 阅读 · 1 评论 -
EM算法详细推导(启发性)
EM算法期望最大化算法,是寻找具有潜在变量地概率模型地最大似然解的一种通用的方法。下面介绍一般形式的EM算法的推导过程。我们把所有的观测变量联合起来记作X={x1,x2,...,xN}X=\{x_1, x_2, ..., x_N\}X={x1,x2,...,xN},将所有的隐含变量记作Z={z1,z2,xN}Z=\{z_1, z_2, x_N\}Z={z1,z2,xN}。这里只考虑...原创 2019-05-08 18:14:30 · 1126 阅读 · 1 评论