![](https://img-blog.csdnimg.cn/8c1cebf521cf443e91a1fd6fd45e5ffe.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
机器学习基础
文章平均质量分 91
本专栏为关于一些机器学习基础的介绍。
Arvin Ou
一名再普通不过的学生
展开
-
Adaboost-Python代码实践
基于单层决策树的Adaboost实践Adaboost 计算流程:首先给定数据集,基于弱学习器计算分类误差:计算该学习器的权重:更新权重分布,分类错误的样本会获得更高的权重,从而使得其在下一次迭代时受到更多的关注将所有的基学习器进行累加,合成最终的学习器:流程图:基学习器为单层决策树import numpy as npdef loadData(): ...原创 2020-04-17 15:06:16 · 1306 阅读 · 0 评论 -
朴素贝叶斯基本原理
1 贝叶斯:思想:知道结果反推原因。例子:有1、2、3号工厂,并且没个厂房生产出次品的概率分别为:0.1、0.2、0.3求出现的次品是由3号工厂所生产的概率解:设:事件B为出现次品,事件A1、A2、A3分布代表1、2、3号工厂生产次品P(A3|B)(注:这里计算的条件概率就是已经知道结果为出现次品了,所以就是求在出现次品的条件下,次品来自3号工厂的概率) = P(A3*B)/P(B...原创 2020-03-14 22:43:22 · 361 阅读 · 0 评论 -
朴素贝叶斯代码实练(二)—新闻分类
实例:新闻分类器:参考:这篇首先将文件当中的文字取出,分别存到列表当中,并且返回存放字出现频率从高到底排列的列表:import os import jiebafrom sklearn.naive_bayes import MultinomialNBfrom matplotlib import pyplot as pltimport randomdef TextProcess(f...原创 2020-03-15 21:29:37 · 519 阅读 · 0 评论 -
朴素贝叶斯代码实练(一)—哪些是垃圾邮件?
1 拉普拉斯平滑:上一篇博客的最后留下了一个问题,那就是如果检测的词列表中包含概率为0的字那么最后结果总是0。那么此时可以引入拉普拉斯平滑,也就是说,可以将所有的字初始化为1,然后分母初始化为2.还有一个问题就是要防止下溢出,即小数与小数项城越乘越小,到最后保留小数可能就成为了0,对此采用取对数的方式来进行解决,取对数不会有任何的损失。图片出处代码改进:def Trainer(tran...原创 2020-03-15 20:49:02 · 321 阅读 · 0 评论 -
机器学习基础(完结篇)—初识推荐系统与计算机视觉
推荐系统假设有四位用户对3部爱情片和2部动作片分别进行了评分。其中每个用户都有一部没有给出评分,推荐系统就根据这些数据来推测用户对这些未评分的电影会给出多少分。其中:n_u表示用户数量;n_m表示电影数量;r(i,j)=1表示第j位用户已经对第i部电影进行了评分。y(i,j)表示第j位用户给第i部的电影的评分解决此类问题可以使用线性回归的思想,那么我们的目标就是优化一个θ,来使的θ.T*x的值与实际值y(i,j)相近。公式如下:1 协同过滤选择特征:比如说我们已经知道了用户对电影的评原创 2022-04-10 15:52:48 · 2654 阅读 · 0 评论 -
机器学习基础(九)—无监督学习是什么?
1 无监督学习K-MeansK-Means聚类分析方法的步骤:首先随机初始化K个点(K取决于需要分成的类别数)将离初始化点近的点分别归类,比如下图,蓝色的原点离蓝色的×比较近,所以就被归为此类。红色的也同理再计算每个类的均值,将聚类中心点移动到每类均值上再计算距离分类如此循环3、4两个步骤输入的值:K:类别数数据优化目标:c(...原创 2020-03-27 15:51:22 · 199 阅读 · 0 评论 -
机器学习基础(十一)—感知机
1 基础概念1. 机器学习应用三个关键有某些有规律的目标待机器进行学习我们不知如何编程有能够给机器进行学习的资料2. 机器学习流程首先将Data传给我们的机器,Data也同时告诉了机器假设空间让机器对数据进行学习,选择一个最好的假设最后得到一个非常接近与目标函数f的假设函数g3.数据挖掘与机器学习的区别机器学习:利用数据来找到一个模型,使得模型能够很好地解决目标问...原创 2020-04-10 21:12:44 · 506 阅读 · 1 评论 -
机器学习基础(七)—支持向量机
支持向量机1 优化目标在SVM当中,cost代替了log项,图像和log项的图像非常相似。在SVM中,我们优化不再使用λ,而是使用C,C这一项是被放到了前面的一项当中,并且1/m被去除。在支持向量机当中,为了使我们的代价函数最小:当y=1时,那么我们希望z(θ转置*x)能够尽可能的大于等于1,因为当z大于等于1时我们的cost_1函数就会是0,这就可以使代价函数最小当y=0时,我们则希望z小于等于-1,从而使得我们的代价函数最小。SVM会选择黑色的线作为决策边界, 然后原创 2022-04-10 15:35:32 · 920 阅读 · 0 评论 -
机器学习基础(十)—异常检测
异常检查假设我们已经收集到了一些数据集,并利用这些数据形成一个模型P,数据的分布如下所示。我们使用异常检测,测试P(x_test)是不是会低于某一个阈值(即判断该点是否常见)来判断有没有异常。参数估计概念:给定不带标签的数据集,来近似的估计出正态分布的期望值或者方差。可以通过样本的均值来估计期望,通过样本与期望之差的平方除以样本总数来估计方差。这同时也称为μ与σ的极大似然估计...原创 2020-03-27 15:20:55 · 680 阅读 · 0 评论 -
机器学习基础(四)—初识神经网络
1 多变量Logistic回归:多变量Logistic回归的基本思想就是:假设又K个类别,那么就用K个分类器,一个一个的挑出每一个类别与其他的类别进行比较。比如:类别包括:晴,阴天,雨三个分类。那么我就需要三个分类器。第一个分类器将晴作为一类,其他的作为一类利用二元Logistic回归的思想找到最优θ,依此类推。首先获取数据,查看数据import numpy as npimport p...原创 2020-03-20 21:58:27 · 341 阅读 · 0 评论 -
机器学习基础(一)—初识机器学习与线性回归算法
1 What is Machine-learning?Tom Mitchell: 机器学习是指一个程序从经验E(计算机与自己进行上万次的对弈)中学习解决某项任务T(玩跳棋),进行某一项性能度量P(赢跳棋的概率),通过P测定在T上的表现因经验E而提高。2 Machine learning algorithm:1、Supervised learning:定义:给出一些数据集与正确的答案(...原创 2020-03-17 22:28:26 · 256 阅读 · 0 评论 -
机器学习基础(六)—怎么样让我的模型表现更好?
一、 改进算法1. 当代价函数非常大的时候可以尝试的办法:获取更多的训练样本尝试用更少的特征数增加额外的特征降低/提高lambda值但是!这些步骤会花费较多的时间。下面将介绍一种事半功倍的解决办法。2.机器学习诊断它能够告诉你在计算的过程当中哪些方面出现了错误,然后可以知道如何改进才能达到最好的效果。(1)如何防止过拟合/欠拟合将数据分为测试集和训练集(3:7的比例...原创 2020-03-23 21:00:34 · 438 阅读 · 0 评论 -
机器学习基础(八)—支持向量机代码实战
SVM最大间距回顾:设SVM找到的决策边界函数为:f(x)=wTx+b(其中w就相当于Logistic回归当中的θ1、θ2…,b就是θ0)。当f(x)=0时就代表样本点在决策边界线上。如下图所示当f(x)<-1时就是负样本,f(x)>1时就是正样本,因此可见f(x)描述了一个样本点到决策边界线上的距离。为什么SVM被称为最大间距分类器呢?首先要搞清楚样本点到决策边界...原创 2020-03-27 15:21:37 · 559 阅读 · 0 评论 -
机器学习基础(二)—逻辑回归是什么?
Classification:逻辑回归(Logistic Regression):作用:hypothesis函数在这里与线性回归是不同的:当h(x)>0.5,就会被归为正向类;当h(x)<0.5时就会被归为负向类在参数与特征值已知的情况下,y=0或1的概率下面这个图像描述了g(z)与z之间的关系:1、当z<0,即theta的转置特征值<0:g...原创 2020-03-18 21:55:33 · 304 阅读 · 0 评论 -
机器学习基础(三)—逻辑斯蒂回归多分类
Logistic 多分类问题:面对Logistic多分类问题,通常的分类是将一类单独拎出来,然后其他剩下的分为另一类。这样就可以利用二元Logistic回归的思路了。比如下图,我们一共有三个类,那么我们会有三个分类器,然后依此计算hypothesis函数的值,最后看那个类别下的h值最大,那么就将其归为这一类。过拟合问题:简单来说,过拟合就是指一个模型在训练集上表现的相当好(代价函数可能非...原创 2020-03-19 22:49:23 · 1087 阅读 · 0 评论 -
机器学习基础(五)—神经网络实现
神经网络代码实现读取数据:因为要求y为下图的形式,所以要对y进行处理import numpy as npimport pandas as pdfrom scipy.io import loadmatfrom sklearn.preprocessing import OneHotEncoderpath ='E:/Data/Ng/Coursera-ML-AndrewNg-Note...原创 2020-03-22 21:45:23 · 312 阅读 · 0 评论