
机器学习
文章平均质量分 85
火鸡哥
这个作者很懒,什么都没留下…
展开
-
w-p神经元与BM算法
因为没有找到很好的画神经元的软件,所以直接在笔记本上写了,再以图片方式放到博客上,方便以后自己查看。参考:周志华《机器学习》原创 2019-12-19 11:45:57 · 229 阅读 · 0 评论 -
神经网络之过拟合
防止神经网络过拟合的常用方法包括:获取更多的训练数据;减小网络容量;添加权重正则化;添加dropout;1、获取更多的训练数据 这个方法防止过拟合是适用于所有机器学习模型的,也是万能的方法,但现实却是不可能获取到所有的数据。2、减小网络容量 减小网络容量是指减小神经网络的层数和隐藏单元。为什么减小网络容量可以防止过拟合?首先我们来了解一下神经网络的层数和隐藏单元与过...原创 2019-11-22 17:45:06 · 2926 阅读 · 1 评论 -
恶毒评论分类报告
恶毒评论分类报告一、问题的定义1.1、项目概述 讨论你关心的事情是很困难的。网络上的虐待和骚扰的威胁意味着许多人停止表达自己,放弃寻求不同的意见。平台很难有效地促进对话,导致许多社区限制或完全关闭用户评论。 对话人工智能团队是Jigsaw和谷歌(都是Alphabet的一部分)共同发起的一个研究项目,目前正致力于开发帮助改善在线对话的工具。一个重点领域是对负面网络行为的研究,比如...原创 2019-11-14 17:45:51 · 1536 阅读 · 3 评论 -
层次聚类
层次聚类1、算法原理层次聚类将所有样本当成一个聚类,然后不断合并距离最近的聚类,直到只剩下一个聚类,由此得到系统树图;最后根据设定的聚类数n,将系统树切分为n个子树,从而达到聚类效果。由上图可得,层次聚类的关键在于如何计算两个聚类的距离,根据计算两个聚类的距离的算法可以分为以下四种聚类算法:1、单链接聚类法(sklearn里没有该方法)样本间最短的距离为聚类间的距离;2、全连接聚类法...原创 2018-09-30 17:40:36 · 2851 阅读 · 0 评论 -
bagging和boosting的区别
bagging和boosting是提高监督式学习方法准确率的两种常用的集成方法。1、baggingbagging即套袋法,是并行式的集成学习方法,随机森林是bagging的一种。执行步骤:1、从原始训练集中随机抽取小部分数据当作新的训练集。假设设定需要n个弱学习器,则需要抽取n次(放回抽样),得到n个训练集。2、训练弱学习器。每个训练集训练出一个弱学习器,得到n个弱学习器。3、预测。测...原创 2019-01-11 14:20:40 · 3132 阅读 · 0 评论 -
GMM简介
高斯混合模型无论是k-means、层次聚类还是DBSCAN,聚类后都是有明显的“分界线”的,但如果是两个混合在一起的数据,这些方法就不能很好地聚类了,而GMM却能很好地对这类混合数据进行分类,GMM是利用同类数据呈现高斯分布的原理对数据进行区分的。1、步骤第一步:初始化k个高斯分布;GMM必需的参数,n_components,指定聚类的数量第二步:将数据软聚类成我们初始化的k个高斯;...原创 2019-01-11 16:28:53 · 4604 阅读 · 0 评论 -
聚类的评价指标
我们知道,监督学习的评价指标是准确率、召回率、F1、FβF_1、F_\betaF1、Fβ、ROC-AUC等等,但聚类方法在大多数情况下数据是没有标签的,这些情况下聚类就不能使用以上的评价指标了。 聚类有自己的评价指标,大多数聚类的评价指标是通过紧凑性和可分性来定义的。紧凑性基本上是衡量一个聚类中的元素彼此之间的距离,而可分性表示不同聚类之间的距离,总的来说聚类的评价指标有以下三个类型:...原创 2019-01-12 17:16:14 · 6175 阅读 · 1 评论 -
梯度消失
1、梯度消失产生的原因2、解决方案2.1、预训练+微调2.2、relu、leakrelu、elu等激活函数2.3、LSTM原创 2019-05-08 15:50:29 · 509 阅读 · 0 评论 -
特征缩放/归一化
有些特征的值是有界限的,比如经纬度。有些模型是输入的平滑函数,比如线性回归模型、逻辑回归模型,它们会受到输入尺度的影响。 如果模型对输入特征的尺度很敏感,就需要进行特征缩放。特征缩放会改变特征的尺度。1、Min-Max缩放Min-Max标准化将数据转换在[0,1]区间内。x=x−MinMax−Minx = \frac{x-Min}{Max-Min}x=Max−Minx−Min2、...原创 2019-08-09 18:00:06 · 1264 阅读 · 0 评论 -
词袋bow与tf-idf
机器学习模型需要特征来进行训练的,但对于文本数据来说,如何在文本中提取特征呢?一种最简单的方法是词袋特征化,词袋是基于单词数量统计的最简单的文本特征表示方法。1、词袋在词袋特征化中,一篇文本文档被转代为一个计数向量。假设样本集Z有两个样本,文本A:“it is a apple and it is a pen”,文本B:“it is a cat and it is a dog”。词袋特征化过程中...原创 2019-08-23 15:43:35 · 2138 阅读 · 0 评论 -
特征相关性
在主成份分析、数据探索上,经常要探索特征与特征、特征与因变量之间的相关性。下面记录几种相关性探索的方法。方法一:单个特征与因变量的相关性直观显视import matplotlibimport matplotlib.pyplot as pltplt.style.use('fivethirtyeight')#设置数据可视化主题names = col_name.copy() # 列名nam...原创 2019-09-19 10:47:17 · 4523 阅读 · 1 评论 -
缺失值数据填充
处理缺失值的两种方法:1、删除缺失值的行;2、填充缺失值。如果缺失值的行占比较多,进行删除缺失值的话,将丢失大量的数据,这样得到的模型可能会很差;所以一般对缺失值的处理都是进行填充。数据可以分以下两类:1、数值数据;2、分类数据;1、填充数值数据的缺失值对于数值数据的填充,一般使用0、均值、中位数或众数来填充。方式一:from sklearn.preprocessing imp...原创 2019-09-23 17:25:36 · 2852 阅读 · 0 评论 -
特征转换
在原始数据中,有些特征需要转换,才能获取有用的信息。1、定类等级的编码对于定类数据,我们需要将其转换成数字特征,但却又不能使用有序数据,因为定类数据之间是没有层序关系的。这种情况下可以使用one-hot编码,pandas.get_dummies可以实现one-hot编码和虚拟编码。如下,x_city特征值是不相关的,2、定序等级的编码如下,dislike、somelike、like,都...原创 2019-09-24 17:44:06 · 806 阅读 · 0 评论 -
多项式特征
在使用单项式特征的时候,模型函数的型式是y=a∗x+b∗y+c∗z+dy = a*x+b*y+c*z+dy=a∗x+b∗y+c∗z+d,但我们还可以加入多项式作为新的特征,例如二项式增加以下特征[x∗y,x∗z,y∗z,x2,y2,z2][x*y,x*z,y*z,x^2,y^2,z^2][x∗y,x∗z,y∗z,x2,y2,z2]。在网络搜索中使用:from sklearn.pipeline...原创 2019-09-25 16:15:33 · 1433 阅读 · 0 评论 -
GBDT和XGboost介绍
注:本文转自https://blog.youkuaiyun.com/xavier_muse/article/details/84403207。GBDT(Gradient Boosting Decision Tree)是一种基于迭代所构造的决策树算法,它又可以简称为MART(Multiple Additive Regression Tree)或GBRT(Gradient Boosting Regression...转载 2019-10-08 15:01:54 · 609 阅读 · 0 评论 -
KMeans聚类
KMeans聚类1、工作原理随机生成聚类中心,根据样本到聚类中心的距离进行分类,然后以各分类的样本中心为新的聚类中心,通过不断迭代更新聚类中心,以达到分类效果。 注:1、KMeans聚类是根据聚类中心进行分类的,所以需要指定聚类中心的个数,也就是分类的个数。2、KMeans聚类质量的好坏依赖于初始的聚类中心点,可以通过多次初始化聚类中心,以达到选择好的聚类结果。3、KMeans聚类迭...原创 2018-09-30 15:48:59 · 1325 阅读 · 0 评论 -
NFL(没有免费的午餐)
NFL(没有免费的午餐)@(周志华·机器学习)1、诠释NFL全称:No Free Lunch Theorem;意思是,所有的学习算法的期望性能是相同的。NFL的前提是,所有“问题出现的机会相同”、或所有的问题同等重要。NFL的寓意是,让我们清楚的认识到,脱离具体问题,空泛地谈论“什么学习算法更好”毫无意义,因为若考虑所有潜在的问题,则所有的学习算法都一样好。要谈论算法的相对优劣,必须要...原创 2018-10-08 17:25:40 · 975 阅读 · 0 评论 -
假设检验
假设检验一、 z检验已知: 实验前前前的总体均值???和标准差σσσ 实验后后后的样本均值x⎯⎯⎯x¯\overline x和样本数nnn检验: 检验实验前后均值差异的显示性步骤: 1、作出假设,定义零假设、对立假设和拒绝域 2、根据中心极限定理,计算出实验前,样本数为n的标准误差 sd=σn‾√sd=σnsd=\frac{σ}{\sqrt{n}...原创 2018-04-10 15:00:22 · 783 阅读 · 0 评论 -
线性回归
线性回归线性回归试图学得一个线性模型以尽可能准确地预测实值输出标记; 其向量形式: f(x)=WT∗x+bf(x)=WT∗x+bf(x) = W^T*x + b下面将使用最简单的形式来分析线性回归: y=w∗x+by=w∗x+by = w*x +b1、绝对值损失函数Error=|y0−y′|={y0−y′,y′−y0,y0>y′y0≤y′Error=|y0−y′...原创 2018-08-03 16:50:55 · 195 阅读 · 0 评论 -
动态规划
动态规划在动态规划设置中,智能体完全了解 MDP,因此智能体不需要互动就能学习到最优策略;为了获得策略πππ对应的状态值函数vπvπv_π,我们只需求解vπvπv_π的贝尔曼预期方程对应的方程组即可;虽然可以通过分析方式求解方程组,但是我们将重点讲解以下三种迭代方法。1、策略迭代策略迭代是一种可以在动态规划设置中解决 MDP 的算法。它包含一系列的策略评估和改进步骤,肯定会收敛于最...原创 2018-08-01 17:53:45 · 430 阅读 · 0 评论 -
对数几率回归
对数几率回归对数几率回归(logistic regression),又称为逻辑回归,虽然它的名字是“回归”,但实际却是一种分类学习方法,那为什么“回归”?个人觉得是因为它跟线性回归的公式有点关联。 对数几率函数是sigmoid函数。1、模型 线性回归:z=w∗x+bz=w∗x+bz = w*x+ b 逻辑回归:y=11+e−zy=11+e−zy = \frac{1}{1+e^...原创 2018-08-06 16:48:55 · 2065 阅读 · 0 评论 -
决策树
决策树决策树是一种基本的分类和回归方法;决策树的学习通常包括3个步聚:特征选择、决策树的生成和决策树的修剪。1、数据处理1.1、连续值处理 我们知道,决策树是通过离散属性来生成的,但实际任务中常会遇到连续属性,因为有必要处理连续值。 下面是西瓜的数据集: 编号 色泽 触感 密度 好瓜 1 - 硬滑 0.697 是 2...原创 2018-08-10 18:11:44 · 257 阅读 · 0 评论 -
梯度下降法
梯度下降法梯度下降法是求解无约束最优化问题的一种最常用的方法,有实现简单的优点。梯度下降法是迭代算法,每一步需要求解目标函数的梯度向量。假设f(x)=w∗x+bf(x)=w∗x+bf(x) = w*x + b,现有已知值x0,x1...xix0,x1...xix_0,x_1...x_i,求f(x)最小值时的w,bw,bw,b,则:循环输入x0,x1...xix0,x1...xix_0...原创 2018-08-14 14:40:47 · 216 阅读 · 0 评论 -
泰勒公式
泰勒公式泰勒公式就是用多项式函数去逼近光滑函数。假设f(x)在x=x0x=x0x = x_0处连续可导N阶,那么(0!=1)(0!=1)(0!=1) f(x)的泰勒公式为:f(x0)0!+f′(x0)1!∗(x−x0)+f″(x0)2!∗(x−x0)2+...+fN(x0)N!∗(x−x0)Nf(x)的泰勒公式为:f(x0)0!+f′(x0)1!∗(x−x0)+f″(x0)2!∗(...原创 2018-08-14 17:25:18 · 4554 阅读 · 0 评论 -
蒙特卡罗方法
蒙特卡罗方法动态规划中估计的是状态值,然后通过状态值来获取动作值,但在模型末知的情况下,智能体不知道环境的所有状态,无法对状态值进行预估,导致无法通过状态值来获取动作值,因些在免模型的情况下,我们将估计对象从V转变为Q。蒙特卡罗方法是在进行一个阶段的采样后再更新值函数。通过与环境互动评估策略πππ的方法分为两大类别: 异同策略方法使智能体与环境互动时遵守的策略πππ与要评估(或改进)...原创 2018-08-02 15:56:11 · 880 阅读 · 0 评论 -
时序差分方法
时序差分方法动态规划的公式是在每执行一步策略后更新值函数,但必须模型可知; 蒙特卡罗方法对末知模型进行动态值估计,但需要在完成一个采样阶段后才能更新值函数。 而时序差分方法则结合了动态规划和蒙特卡罗方法的思想,做到更高效的免模型学习。1、公式推导动态规划: vπ(s)=E(r+g∗vπ(s′))vπ(s)=E(r+g∗vπ(s′))v_π(s) = E(r+g*v_π(s')...原创 2018-08-03 10:45:30 · 1819 阅读 · 0 评论 -
牛顿法
牛顿法牛顿法也是求解无约束最优化问题的常用方法,有收剑速度快的优点。书上说牛顿法是泰勒公式的二阶展开,但是对于初学者来说实在难以看懂,下面我以别一种形式来说明牛顿法:如图,在x0x0x_0处的导数为f′(x0)f′(x0)f'(x_0),而f(x1)f(x1)f(x_1)是比f(x0)f(x0)f(x_0)小,所以: f′(x0)=f(x0)x0−x1f′(x0)=f(x0)x...原创 2018-08-15 14:33:26 · 113 阅读 · 0 评论 -
朴素贝叶斯
朴素贝叶斯朴素贝叶斯是概率框架下实验决策的方法,是基于贝叶斯定理与特征条件独立假设的分类方法。 1、贝叶斯定理:由图一可知A、X同时发生的概率为:P(A)∗P(X|A)P(A)∗P(X|A)P(A) * P(X|A); 由图二可知A、X同时发生的概率为:P(X)∗P(A|X)P(X)∗P(A|X)P(X) * P(A|X); 所以有: P(A)∗P(X|A)=P(X)∗P(A|...原创 2018-08-16 17:18:59 · 164 阅读 · 0 评论 -
jupyter notebook 迷之黑屏
前几天,mac每天都提示系统更新,无奈更新了一下,结果更新完后jupyter notebook却迷之黑屏,无法加载主目录。 向往常一样,执行命令: jupyter notebook结果却是:???什么鬼?require.js为什么是静态的,这静态的要怎么解决?先不管,看看能不能打开目录,结果: 黑屏的,什么都没有,看来是require.js文件不能加载导致的;但在不懂...原创 2018-08-23 11:17:40 · 2549 阅读 · 0 评论 -
模型评估与选择(一)
模型评估与选择(一)以下源于对西瓜书《机器学习》的模型评估的总结,有较多的抄袭。1、经验误差与过拟合 学习器在训练集上的误差称为经验误差,在新样本上的误差称为泛化误差。 当学习器把训练样本学得“太好”的时候,很可能已经把训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,这样会导致泛化性能下降,这种现象称为过拟合,以过拟合相对的是欠拟合,这是指对训练样本的一般...原创 2018-08-24 17:00:50 · 470 阅读 · 0 评论 -
支持向量机SVM
1、支持向量机支持向量机(Support Vector Machine)是一种二类分类模型,支持向量机的间隔最大化使它有别于感知机,同时支持向量机还包括核技巧,使得它解决非线性分类的问题。这里的间隔分为硬间隔和软间隔。硬间隔是指间隔内没有误分类点,软间隔是允许间隔内有误分类点。2、模型支持向量机是定义在特征空间上的间隔最大的线性分类器,所以,支持向量机的模型是一个具有“最大间隔”的...原创 2018-09-07 11:30:09 · 2243 阅读 · 0 评论 -
DBSCAN
DBSCANDBSCAN是一种密度聚类算法,它基于一组参数(ϵ\epsilonϵ,MinPts)来刻画样本分布的紧密程度。1、算法原理如上图所示,DBSCAN的有两个非常重要的参数ϵ\epsilonϵ和MinPts;图中“归同类"的意思是"如果该范围内有样本已经归类,则这些样本都属于该类;否则就创建一个新类别,这些样本都属于这个新类别”。ϵ\epsilonϵ:指的是范围半径;MinP...原创 2018-10-08 16:10:11 · 1114 阅读 · 0 评论 -
感知机
1、感知机模型定义: 假设输入空间是 X⊆RnX⊆R^n,输出空间是 y={+1,−1}y=\{+1,-1\}.输入 x∈Xx∈X 表示实例的特征向量,对应于输入空间的点;输出 y∈Yy∈Y 表示实例的类别。由输入空间到输出空间的如下函数 f(x)=sign(w∙x+b)f(x)=sign(w∙x+b)称为感知机。其中,ww和bb是感知机模型参数,w∈Rnw∈R^n叫作权值,b∈Rb∈R叫作原创 2017-12-06 18:01:52 · 338 阅读 · 0 评论