
alot学习
文章平均质量分 72
samll-guo
这个作者很懒,什么都没留下…
展开
-
总结了200道经典的机器学习面试题(附参考答案)
刷题,是面试前的必备环节。本文总结了往年BAT机器学习面试题,干货满满,值得收藏。想要入职大厂可谓是千军万马过独木桥。为了通过层层考验,刷题肯定是必不可少的。本文根据网络在线发布的BAT机器学习面试1000题系列,整理了一份面试刷题宝典。1.请简要介绍下SVM。SVM,全称是support vector machine,中文名叫支持向量机。SVM是一个面向数据的分类算法,它的目标是为确定一个分类超平面,从而将不同的数据分隔开。扩展:支持向量机学习方法包括构建由简至繁的模型:线性可分支持向量机、线性支持向量机原创 2022-07-01 17:14:02 · 8175 阅读 · 0 评论 -
十五.光流估计
光流估计光流,顾名思义,光的流动。比如人眼感受到的夜空中划过的流星。在计算机视觉中,定义图像中对象的移动,这个移动可以是相机移动或者物体移动引起的。具体是指,视频图像的一帧中的代表同一对象(物体)像素点移动到下一帧的移动量,使用二维向量表示.根据是否选取图像稀疏点进行光流估计,可以将光流估计分为稀疏光流和稠密光流OpenCV中提供了光流估计的接口,包括稀疏光流估计算法cv2.calcOpticalFlowPyrLK(),和稠密光流估计cv2.calcOpticalFlowFarneback()。其中原创 2022-03-17 11:16:09 · 4848 阅读 · 3 评论 -
十四.目标追踪
目标追踪目标追踪介绍知乎上有篇文章对目标追踪介绍的非常清晰. 目标追踪综述OpenCV目标追踪算法介绍OpenCV上有八种不同的目标追踪算法.BOOSTING Tracker:和Haar cascades(AdaBoost)背后所用的机器学习算法相同,但是距其诞生已有十多年了。这一追踪器速度较慢,并且表现不好。(最低支持OpenCV 3.0.0)MIL Tracker:比上一个追踪器更精确,但是失败率比较高。(最低支持OpenCV 3.0.0)KCF Tracker:比BOOSTING和MI原创 2022-03-09 13:49:47 · 3990 阅读 · 0 评论 -
十三.人脸检测和车牌识别
### 1. 人脸检测 首先我们要搞清楚人脸检测中的一些概念. **人脸检测**: 在一张图像中判断是否存在人脸并找出人脸所在的位置 **人脸识别**: 在人脸检测的基础上收集人脸数据集合进行处理保存信息,将输入人脸与保存的信息进行比对校验,得到是否为其中某个人脸 **特征值**: 以某种特定规则对输入源进行处理得到具有唯一性质量化的值,在人脸识别中特征值的提取有 HOG-方向梯度直方图 , HAAR-like特征 , LBP-局部二进制模式 三种方法. **分类器**..原创 2022-03-08 11:04:21 · 4166 阅读 · 0 评论 -
十二.图像的分割与修复
图像的分割与修复1. 图像分割的基本概念图像分割: 将前景物体从背景中分离出来.图像分割分为传统图像分割和基于深度学习的图像分割方法.传统图像分割就是使用OpenCV进行的图像分割.传统图像分割方法有:分水岭法GrabCut法MeanShift法背景扣除2. 分水岭法分水岭分割方法是基于图像形态学和图像结构来实现的一种图像分割方法.现实中我们可以或者说可以想象有山有湖的景象,那么那一定是水绕山,山围水的情形。当然在需要的时候,要人工构筑分水岭,以防集水盆之间的互相穿透。而区分高山原创 2022-03-07 15:27:47 · 3691 阅读 · 0 评论 -
十一.信用卡识别项目补充知识(1)
信用卡识别项目补充知识1. 模板匹配模板匹配和卷积原理很像,模板在原图像上从原点开始滑动,计算模板与(图像被模板覆盖的地方)的差别程度,这个差别程度的计算方法在opencv里有6种,然后将每次计算的结果放入一个矩阵里,作为结果输出。假如原图形是AxB大小,而模板是axb大小,则输出结果的矩阵是(A-a+1)x(B-b+1)TM_SQDIFF:计算平方不同,计算出来的值越小,越相关TM_CCORR:计算相关性,计算出来的值越大,越相关TM_CCOEFF:计算相关系数,计算出来的值越大,越相关TM原创 2022-02-24 19:17:26 · 247 阅读 · 0 评论 -
条件随机场CRF(42)
原创 2022-01-18 20:56:28 · 301 阅读 · 0 评论 -
隐马尔可夫模型HMM(41)
原创 2022-01-18 20:47:38 · 1134 阅读 · 0 评论 -
朴素贝叶斯(40)
原创 2022-01-11 14:23:22 · 103 阅读 · 0 评论 -
Kaggle实战之信用卡盗刷预测(38)
原创 2022-01-09 19:21:14 · 586 阅读 · 0 评论 -
Kaggle实战(一)生死还难预测37
Kaggle实战(泰坦尼克号海难生死预测)1、背景介绍泰坦尼克号于1909年3月31日在爱尔兰动工建造,1911年5月31日下水,次年4月2日完工试航。她是当时世界上体积最庞大、内部设施最豪华的客运轮船,有“永不沉没”的美誉。然而讽刺的是,泰坦尼克号首航便遭遇厄运:1912年4月10日她从英国南安普顿出发,途径法国瑟堡和爱尔兰昆士敦,驶向美国纽约。在14日晚23时40分左右,泰坦尼克号与一座冰山相撞,导致船体裂缝进水。次日凌晨2时20分左右,泰坦尼克号断为两截后沉入大西洋,其搭载的2224名船员及乘客,原创 2021-12-27 16:28:13 · 1035 阅读 · 1 评论 -
gboost算法 36 (三) XGBoost VS GBDT
文章目录算法介绍算法差异算法介绍XGBoost是陈天奇等人开发的一个开源机器学习项目,高效地实现了GBDT算法并进行了算法和工程上的许多改进,被广泛应用在Kaggle竞赛及其他许多机器学习竞赛中并取得了不错的成绩。说到XGBoost,不得不提GBDT(Gradient Boosting Decision Tree)。因为XGBoost本质上还是一个GBDT,但是力争把速度和效率发挥到极致,所以叫X (Extreme) GBoosted。两者都是boosting方法。算法差异其一:传统GBD原创 2021-12-25 14:01:01 · 585 阅读 · 0 评论 -
Xgboost算法 36 (二) Xgboost分类树参数详解
模型参数n_estimatores: 总共迭代的次数,即决策树的个数early_stopping_rounds: 在验证集上,当连续n次迭代,分数没有提高后,提前终止训练。防止overfitting。max_depth: 树的深度,默认值为6,典型值3-10。值越大,越容易过拟合;值越小,越容易欠拟合。min_child_weight: 默认值为1,。值越大,越容易欠拟合;值越小,越容易过拟合(值较大时,避免模型学习到局部的特殊样本)。subsample:...原创 2021-12-25 13:59:07 · 1688 阅读 · 0 评论 -
Xgboost算法 36
1、Xgboost介绍1.1、Xgboost概述XGBoost是陈天奇等人开发的一个开源机器学习项目,高效地实现了GBDT算法并进行了算法和工程上的许多改进,被广泛应用在Kaggle竞赛及其他许多机器学习竞赛中并取得了不错的成绩。1.2、青出于蓝说到XGBoost,不得不提GBDT(Gradient Boosting Decision Tree)。因为XGBoost本质上还是一个GBDT,但是力争把速度和效率发挥到极致,所以叫X (Extreme) GBoosted。两者都是boosting方法。原创 2021-12-25 12:05:53 · 958 阅读 · 0 评论 -
Adaboost多分类与回归35
1、Adaboost多分类算例1.1、导包import numpy as npfrom sklearn.ensemble import AdaBoostClassifierfrom sklearn import datasetsfrom sklearn.model_selection import train_test_splitfrom sklearn import treeimport graphviz1.2、加载数据X,y = datasets.load_iris(return_X原创 2021-12-25 12:04:35 · 1600 阅读 · 0 评论 -
Adaboost梯度提升树34
1、Adaboost算法介绍1.1、算法引出AI 39年(公元1995年),扁鹊成立了一家专治某疑难杂症的医院,经过半年的精心筹备,硬件设施已全部到位,只缺经验丰富的医生前来坐诊。找几个猎头打听了一下,乖乖,请一个资深专家(总监头衔的),一年的工资就得256万。这恐怕还不够去知名搜索引擎投放广告!穷则思变,扁鹊院长想来想去,找到了两个天才的顾问,名叫Freund和Schapire,想请他们出出主意,怎样用较低的成本解决医生的问题。这两位老兄想到了同一个点子:三个臭皮匠,赛过诸葛亮我们玩人海战术!不原创 2021-12-25 12:01:46 · 555 阅读 · 0 评论 -
决策回归树与集成算法31
1、决策回归树原理概述与分类树一样裂分指标,使用的是MSE、MAEMSE(y,y^)=1nsamples∑i=0nsamples−1(yi−y^i)2\text{MSE}(y, \hat{y}) = \frac{1}{n_\text{samples}} \sum\limits_{i=0}^{n_\text{samples} - 1} (y_i - \hat{y}_i)^2MSE(y,y^)=nsamples1i=0∑nsamples−1(yi−y^i)2MAE(y,y^)=原创 2021-12-25 11:54:40 · 297 阅读 · 0 评论 -
梯度提升分类树GBDT 32
1、交叉熵1.1、信息熵构建好一颗树,数据变的有顺序了(构建前,一堆数据,杂乱无章;构建一颗,整整齐齐,顺序),用什么度量衡表示,数据是否有顺序:信息熵物理学,热力学第二定律(熵),描述的是封闭系统的混乱程度[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0G5an9vU-1640404288610)(./images/6-entropy.gif)]信息熵,和物理学中熵类似的H(x)=−∑i=1np(x)log2p(x)H(x) = -\sum\l原创 2021-12-25 11:52:53 · 424 阅读 · 0 评论 -
决策回归树回归算法30
1、决策回归树原理概述与分类树一样裂分指标,使用的是MSE、MAEMSE(y,y^)=1nsamples∑i=0nsamples−1(yi−y^i)2\text{MSE}(y, \hat{y}) = \frac{1}{n_\text{samples}} \sum\limits_{i=0}^{n_\text{samples} - 1} (y_i - \hat{y}_i)^2MSE(y,y^)=nsamples1i=0∑nsamples−1(yi−y^i)2MAE(y,y^)=原创 2021-12-11 15:09:46 · 4690 阅读 · 0 评论 -
决策树分类算法进阶(一)28
1、决策树概述决策树是属于有监督机器学习的一种,起源非常早,符合直觉并且非常直观,模仿人类做决策的过程,早期人工智能模型中有很多应用,现在更多的是使用基于决策树的一些集成学习的算法。这一章我们把决策树算法理解透彻了,非常有利于后面去学习集成学习。1.1、示例一我们有如下数据:ID拥有房产(是/否)婚姻[单身,已婚,离婚]年收入(单位:千元)无法偿还债务(是/否)1是单身125否2否已婚100否3否单身70否4是已婚120否原创 2021-12-11 14:53:02 · 746 阅读 · 1 评论 -
决策树分类原理(二)27
import numpy as npfrom sklearn import treeimport pandas as pd 加载数据y=np.array(list('NYYYYYNYYN'))print(y)X=pd.DataFrame({'日志密度':list('sslmlmmlms'), '好友密度':list('slmmmlsmss'), '真实头像':list('NYYYYNYYYY')})X输出:['.原创 2021-12-01 15:37:10 · 1373 阅读 · 0 评论 -
决策树分类原理(一)26
1、决策树概述决策树是属于有监督机器学习的一种,起源非常早,符合直觉并且非常直观,模仿人类做决策的过程,早期人工智能模型中有很多应用,现在更多的是使用基于决策树的一些集成学习的算法。这一章我们把决策树算法理解透彻了,非常有利于后面去学习集成学习。1.1、示例一我们有如下数据:ID拥有房产(是/否)婚姻[单身,已婚,离婚]年收入(单位:千元)无法偿还债务(是/否)1是单身125否2否已婚100否3否单身70否4是已婚120否原创 2021-11-30 19:52:16 · 676 阅读 · 0 评论 -
EM算法与GMM高斯混合模型 24
EM算法与GMM高斯混合模型1、EM算法简介1.1、EM算法概述最大期望算法(Expectation-maximization algorithm,又译为期望最大化算法),曾入选“数据挖掘十大算法”中,可见EM算法在机器学习、数据挖掘中的影响力。EM算法是最常见的隐变量估计方法,在机器学习中有极为广泛的用途,例如常被用来学习高斯混合模型(Gaussian mixture model,简称GMM)的参数。EM算法是在概率模型中寻找参数最大似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐性原创 2021-11-30 13:28:38 · 830 阅读 · 0 评论 -
降维系列算法进阶(二)23
1协方差和散度矩阵import numpy as npX=np.random.randint(0,100,size=(5,5))X输出:array([[36, 38, 69, 12, 58], [ 3, 92, 83, 14, 39], [76, 78, 11, 95, 71], [ 2, 93, 85, 35, 74], [35, 36, 98, 31, 16]])1.1协方差np.cov(X,rowvar=False...原创 2021-11-30 10:50:27 · 876 阅读 · 0 评论 -
降维系列算法进阶(一)22
文章目录相关背景数据降维数据降维的方法PCA降维LDA线性判别NMF非负矩阵分解LLE局部线性嵌入降维算法相关背景在许多领域的研究与应用中,通常需要对含有多个变量的数据进行观测,收集大量数据后进行分析研究寻找规律。多变量大数据集无疑会为研究和应用提供丰富的信息,但是也在一定程度上增加了数据采集的工作量。更重要的是在很多情形下,多变量之间可能存在相关性,从而增加了问题分析的复杂性。如果分别对每个指标进行分析,分析往往是孤立的,不能完全利用数据中的信息,因此盲目减少指标会损失很多有用的信息,从而产生错误的原创 2021-11-29 08:24:46 · 800 阅读 · 0 评论 -
降维算法高级(二)21
1相关性import numpy as npimport pandas as pd df = pd.DataFrame(np.random.randint(0,150,size = (50,3)),columns=['python','En','Chinese'])#相关性系数#相关系数范围(-1,1)#-1表示负相关#1表示正相关df.corr()df['Physic']=np.random.randint(-150,0,size=50)df.corr()...原创 2021-11-25 16:16:22 · 1453 阅读 · 0 评论 -
降维算法高级(一)20
文章目录相关背景数据降维数据降维的方法PCA降维LDA线性判别NMF非负矩阵分解LLE局部线性嵌入降维算法相关背景在许多领域的研究与应用中,通常需要对含有多个变量的数据进行观测,收集大量数据后进行分析研究寻找规律。多变量大数据集无疑会为研究和应用提供丰富的信息,但是也在一定程度上增加了数据采集的工作量。更重要的是在很多情形下,多变量之间可能存在相关性,从而增加了问题分析的复杂性。如果分别对每个指标进行分析,分析往往是孤立的,不能完全利用数据中的信息,因此盲目减少指标会损失很多有用的信息,从而产生错误的原创 2021-11-25 14:00:31 · 3667 阅读 · 3 评论 -
聚类系列算法进阶(二)19
import numpy as npimport matplotlib.pyplot as pltfrom sklearn.cluster import KMeans,DBSCAN#导入两个聚类计算方法from sklearn import datasets1创建数据X,y=datasets.make_circles(n_samples=1000,noise=0.05,factor=0.5)#创建环形数据,参数n_samples表示数量,noise表示数量,factor为两个圆圈的比...原创 2021-11-24 15:04:33 · 1186 阅读 · 0 评论 -
聚类系列算法进阶(一)18
聚类算法1、聚类介绍1.1、聚类作用知识发现 发现事物之间的潜在关系异常值检测特征提取 数据压缩的例子1.2、有监督与无监督学习有监督:给定训练集 X 和 标签Y选择模型学习(目标函数的最优化)生成模型(本质上是一组参数、方程)根据生成的一组参数进行预测分类等任务无监督:拿到的数据只有X ,没有标签,只能根据X的相似程度做一些事情。Clustering 聚类对于大量未标注的数据集,按照内在相似性来分为多个类别(簇) 目标:类别内相似度原创 2021-11-23 14:29:54 · 2383 阅读 · 1 评论 -
聚类系列算法高级(一)16
聚类算法1、聚类介绍1.1、聚类作用知识发现 发现事物之间的潜在关系异常值检测特征提取 数据压缩的例子1.2、有监督与无监督学习有监督:给定训练集 X 和 标签Y选择模型学习(目标函数的最优化)生成模型(本质上是一组参数、方程)根据生成的一组参数进行预测分类等任务无监督:拿到的数据只有X ,没有标签,只能根据X的相似程度做一些事情。Clustering 聚类对于大量未标注的数据集,按照内在相似性来分为多个类别(簇) 目标:类别内相似度原创 2021-11-23 10:50:16 · 994 阅读 · 1 评论 -
SVM支持向量原理与实战(二)15
导包import numpy as np from sklearn.svm import SVCimport matplotlib.pyplot as pltfrom sklearn.model_selection import train_test_splitfrom sklearn.decomposition import PCAfrom sklearn.metrics import accuracy_scorefrom sklearn.linear_model import Logi原创 2021-11-22 11:10:08 · 431 阅读 · 0 评论 -
SVM支持向量原理与实战(一)14
支持向量机原理可视化导包import numpy as npfrom sklearn.svm import SVC,SVRimport matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3D#绘制3D图形from mpl_toolkits.mplot3d import Axes3D创建数据rs=np.random.RandomState(256)#种子,生成随机数字,固定了X=rs.randn(300,2)原创 2021-11-19 08:36:03 · 344 阅读 · 0 评论 -
SVM支持向量机(二)13
1导包import numpy as npfrom sklearn import datasetsfrom sklearn.svm import SVCfrom sklearn.model_selection import train_test_splitfrom sklearn.metrics import accuracy_scoreimport matplotlib.pyplot as plt2加载数据X,y=datasets.load_wine(return_X_...原创 2021-11-18 21:29:55 · 1893 阅读 · 1 评论 -
SVM支持向量机原理(一)12
import numpy as npimport matplotlib.pyplot as plt from sklearn.svm import SVC#分类算法from sklearn import datasetsimport numpy as npimport matplotlib.pyplot as plt from sklearn.svm import SVC#分类算法from sklearn import datasets2数据分类x,y=datasets.mak...原创 2021-11-15 16:16:56 · 1136 阅读 · 0 评论 -
线性分类逻辑斯蒂回归多分类(11)
1.导包import numpy as np from sklearn.linear_model import LogisticRegression from sklearn import datasetsfrom sklearn.model_selection import train_test_splitfrom sklearn.metrics import accuracy_score #评估准确率得分4.0.1加载数据x,y=datasets.load_iris(retu..原创 2021-11-10 20:53:22 · 1375 阅读 · 0 评论 -
线性分类逻辑斯蒂回归二分类(10)
1损失函数立体化呈现导包from sklearn import datasets#导入数据from sklearn.linear_model import LogisticRegressionimport numpy as npimport matplotlib.pyplot as pltfrom mpl_toolkits.mplot3d import Axes3D#绘制3dfrom sklearn.preprocessing import scale,StandardScaler#..原创 2021-11-09 10:11:14 · 1649 阅读 · 0 评论 -
梯度下降(8)
0.2.24.2、机器学习库scikit-learn0.2.2.14.2.1、scikit-learn简介0.2.2.24.2.2、scikit-learn实现简单线性回归from sklearn.linear_model import LinearRegressionimport numpy as npimport matplotlib.pyplot as plt# 转化成矩阵X = np.linspace(0,10,num = 30).reshape(-1,1)#...原创 2021-10-28 12:15:04 · 297 阅读 · 0 评论 -
线性回归-正规方程(7)
1.3、简单线性回归 前面提到过,算法说白了就是公式,简单线性回归属于一个算法,它所对应的公式。 ????=????????+????y=wx+b 这个公式中,y 是目标变量即未来要预测的值,x 是影响 y 的因素,w,b 是公式上的参数即要求的模型。其实 b 就是咱们的截距,w 就是斜率嘛! 所以很明显如果模型求出来了,未来影响 y 值的未知数就是一个 x 值,也可以说影响 y 值 的因素只有一个,所以这是就叫简单线性回归的原因。 同时可以发现从 x 到 y 的计算,x 只是一次方原创 2021-10-27 11:26:59 · 2444 阅读 · 0 评论 -
Seaborn数据可视化(6)
1、Seaborn介绍 Seaborn是基于matplotlib的图形可视化python包。它提供了一种高度交互式界面,便于用户能够做出 各种有吸引力的统计图表。 Seaborn是在matplotlib的基础上进行了更高级的API封装,从而使得作图更加容易,在大多数情况下使 用seaborn能做出很具有吸引力的图,而使用matplotlib就能制作具有更多特色的图。应该把Seaborn视 为matplotlib的补充,而不是替代物。 2、安装 pip install seaborn ..原创 2021-10-25 13:12:04 · 630 阅读 · 0 评论 -
Matplotlib数据可视化(5)
.原创 2021-10-22 14:42:42 · 1071 阅读 · 0 评论