- 博客(95)
- 资源 (3)
- 收藏
- 关注
原创 总结了200道经典的机器学习面试题(附参考答案)
刷题,是面试前的必备环节。本文总结了往年BAT机器学习面试题,干货满满,值得收藏。想要入职大厂可谓是千军万马过独木桥。为了通过层层考验,刷题肯定是必不可少的。本文根据网络在线发布的BAT机器学习面试1000题系列,整理了一份面试刷题宝典。1.请简要介绍下SVM。SVM,全称是support vector machine,中文名叫支持向量机。SVM是一个面向数据的分类算法,它的目标是为确定一个分类超平面,从而将不同的数据分隔开。扩展:支持向量机学习方法包括构建由简至繁的模型:线性可分支持向量机、线性支持向量机
2022-07-01 17:14:02
7314
转载 关于tf.function简述
目录本文主要粗浅的讲解tf.function的相关内容,主要分为两块内容,一是tf.function的作用(为什么要有tf.function)。二是在使用tf.function时需要注意的点(tf.function的一些特性)tf.function的作用通过对比 tf1.x 与 tf2.x eager 与 tf2.x tf.functon进行说明tf.function的作用tf.1.x首先从tf1.x的代码风格说起,在tf1.x中,我们需要自行创建一个graph,再把其加载进tf.Session中
2022-03-30 10:26:50
1573
原创 十五.光流估计
光流估计光流,顾名思义,光的流动。比如人眼感受到的夜空中划过的流星。在计算机视觉中,定义图像中对象的移动,这个移动可以是相机移动或者物体移动引起的。具体是指,视频图像的一帧中的代表同一对象(物体)像素点移动到下一帧的移动量,使用二维向量表示.根据是否选取图像稀疏点进行光流估计,可以将光流估计分为稀疏光流和稠密光流OpenCV中提供了光流估计的接口,包括稀疏光流估计算法cv2.calcOpticalFlowPyrLK(),和稠密光流估计cv2.calcOpticalFlowFarneback()。其中
2022-03-17 11:16:09
4732
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
3943
原创 十三.人脸检测和车牌识别
### 1. 人脸检测 首先我们要搞清楚人脸检测中的一些概念. **人脸检测**: 在一张图像中判断是否存在人脸并找出人脸所在的位置 **人脸识别**: 在人脸检测的基础上收集人脸数据集合进行处理保存信息,将输入人脸与保存的信息进行比对校验,得到是否为其中某个人脸 **特征值**: 以某种特定规则对输入源进行处理得到具有唯一性质量化的值,在人脸识别中特征值的提取有 HOG-方向梯度直方图 , HAAR-like特征 , LBP-局部二进制模式 三种方法. **分类器**..
2022-03-08 11:04:21
4068
原创 十二.图像的分割与修复
图像的分割与修复1. 图像分割的基本概念图像分割: 将前景物体从背景中分离出来.图像分割分为传统图像分割和基于深度学习的图像分割方法.传统图像分割就是使用OpenCV进行的图像分割.传统图像分割方法有:分水岭法GrabCut法MeanShift法背景扣除2. 分水岭法分水岭分割方法是基于图像形态学和图像结构来实现的一种图像分割方法.现实中我们可以或者说可以想象有山有湖的景象,那么那一定是水绕山,山围水的情形。当然在需要的时候,要人工构筑分水岭,以防集水盆之间的互相穿透。而区分高山
2022-03-07 15:27:47
3604
原创 十一.信用卡识别项目补充知识(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
209
原创 十.OpenCv 特征点检测和匹配
特征点检测和匹配1. 特征检测的基本概念特征检测是计算机视觉和图像处理中的一个概念。它指的是使用计算机提取图像信息,决定每个图像的点是否属于一个图像特征。特征检测的结果是把图像上的点分为不同的子集,这些子集往往属于孤立的点、连续的曲线或者连续的区域。特征检测包括边缘检测, 角检测, 区域检测和脊检测.特征检测应用场景:图像搜索, 比如以图搜图拼图游戏图像拼接…以拼图游戏为例来说明特征检测的应用流程.寻找特征特征是唯一的特征是可追踪的特征是能比较..
2022-02-14 10:50:48
4321
原创 九.OpenCv 车辆统计项目
车辆统计项目效果图:涉及到的内容窗口的展示图像/视频的加载基本图像的绘制车辆识别基本图像运算与处理形态学轮廓查找整体流程加载视频通过形态学识别车辆对车辆进行统计显示车辆统计信息知识补充背景减除背景减除(Background Subtraction)是许多基于计算机视觉的任务中的主要预处理步骤。如果我们有完整的静止的背景帧,那么我们可以通过帧差法来计算像素差从而获取到前景对象。但是在大多数情况下,我们可能没有这样的图像,所以我们需要从我们拥有的任何图像中提取背
2022-02-14 10:13:49
1025
5
原创 八.OpenCv图像金字塔和图像直方图
8.图像金字塔8.1 图像金字塔介绍图像金字塔是图像中多尺度表达的一种,最主要用于图像的分割,是一种以多分辨率来解释图像的有效但概念简单的结构。简单来说, 图像金字塔是同一图像不同分辨率的子图集合.图像金字塔最初用于机器视觉和图像压缩,一幅图像的金字塔是一系列以金字塔形状排列的分辨率逐步降低,且来源于同一张原始图的图像集合。其通过梯次向下采样获得,直到达到某个终止条件才停止采样。金字塔的底部是待处理图像的高分辨率表示,而顶部是低分辨率的近似。我们将一层一层的图像比喻成金字塔,层级越高,则图像越小,分辨
2022-02-08 16:19:04
2541
原创 七.OpenCv图像轮廓
7. 图像轮廓7.1 什么是图像轮廓图像轮廓是具有相同颜色或灰度的连续点的曲线. 轮廓在形状分析和物体的检测和识别中很有用。轮廓的作用:用于图形分析物体的识别和检测注意点:为了检测的准确性,需要先对图像进行二值化或Canny操作。画轮廓时会修改输入的图像, 如果之后想继续使用原始图像,应该将原始图像储存到其他变量中。7.2 查找轮廓findContours(image, mode, method[, contours[, hierarchy[, offset]]])mo
2022-02-05 11:22:22
3681
原创 六.OpenCv之形态学
6. 形态学6.1 形态学概述什么是形态学指一系列处理图像形状特征的图像处理技术形态学的基本思想是利用一种特殊的结构元(本质上就是卷积核)来测量或提取输入图像中相应的形状或特征,以便进一步进行图像分析和目标识别。这些处理方法基本是对二进制图像进行处理, 即黑白图像卷积核决定着图像处理后的效果形态学常用基本操作有:膨胀和腐蚀开运算闭运算顶帽黑帽6.2 图像全局二值化二值化: 将图像的每个像素变成两种值, 比如0, 255.threshold(src, t
2022-02-04 15:30:08
4656
1
原创 五.OpenCv滤波器(1)
5. 滤波器5.1 卷积5.1.1 什么是图片卷积图像卷积就是卷积核在图像上按行滑动遍历像素时不断的相乘求和的过程5.1.2 步长**步长就是卷积核在图像上移动的步幅.**上面例子中卷积核每次移动一个像素步长的结果, 如果将这个步长修改为2, 结果会如何?为了充分扫描图片, 步长一般设为1.5.1.3 padding从上面例子中我们发现, 卷积之后图片的长宽会变小. 如果要保持图片大小不变, 我们需要在图片周围填充0. padding指的就是填充的0的圈数.[外链图片转存失败,源站可能
2022-01-29 17:55:40
6376
原创 四.OpenCv图像的基本变换
4. 图像的基本变换4.1 图像的放大与缩小resize(src, dsize[, dst[, fx[, fy[, interpolation]]]])src: 要缩放的图片dsize: 缩放之后的图片大小, 元组和列表表示均可.dst: 可选参数, 缩放之后的输出图片fx, fy: x轴和y轴的缩放比, 即宽度和高度的缩放比.interpolation: 插值算法, 主要有以下几种:INTER_NEAREST, 邻近插值, 速度快, 效果差.INTER_LINEAR, 双线性插值
2022-01-26 15:51:50
1698
原创 三.OpenCv图像的算术与位运算
3.图像的算术与位运算3.1 图像的算术运算3.1.1 图像的加法运算add opencv使用add来执行图像的加法运算图片就是矩阵, 图片的加法运算就是矩阵的加法运算, 这就要求加法运算的两张图shape必须是相同的.# 图片加法import cv2cat = cv2.imread('./cat.jpeg')dog = cv2.imread('./dog.jpeg')# 加法要求两个图片大小一致print(cat.shape)print(dog.shape)# 把猫的图片
2022-01-26 11:36:06
2831
原创 二.OpenCV基础知识和绘制图形
2. OpenCV基础知识和绘制图形###2.1 OpenCV的色彩空间2.1.1 RGB和BGR最常见的色彩空间就是RGB, 人眼也是基于RGB的色彩空间去分辨 颜色的.OpenCV默认使用的是BGR. BGR和RGB色彩空间的区别在于图片在色彩通道上的排列顺序不同.显示图片的时候需要注意适配图片的色彩空间和显示环境的色彩空间.比如传入的图片是BGR色彩空间, 显示环境是RBG空间, 就会出现颜色混乱的情况.2.1. 2 HSV, HSL和YUV2.1.2.1 HSVOpenCV用的
2022-01-20 11:32:13
2608
3
原创 一.OpenCv图像&视频加载和显示
process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAc2FtbGwtZ3Vv,size_20,color_FFFFFF,t_70,g_se,x_16#pic_center)图片&视频的加载和显示1. 机器视觉介绍现在说的机器视觉(Machine Vision)一般指计算机视觉(Computer Vision), 简单来说就是研究如何使机器看懂东西.就是是指用摄影机和电脑代替人眼对目标进行识别、跟...
2022-01-18 20:19:45
2176
原创 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
951
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
525
原创 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
1602
原创 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
902
原创 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
1501
原创 Adaboost梯度提升树34
1、Adaboost算法介绍1.1、算法引出AI 39年(公元1995年),扁鹊成立了一家专治某疑难杂症的医院,经过半年的精心筹备,硬件设施已全部到位,只缺经验丰富的医生前来坐诊。找几个猎头打听了一下,乖乖,请一个资深专家(总监头衔的),一年的工资就得256万。这恐怕还不够去知名搜索引擎投放广告!穷则思变,扁鹊院长想来想去,找到了两个天才的顾问,名叫Freund和Schapire,想请他们出出主意,怎样用较低的成本解决医生的问题。这两位老兄想到了同一个点子:三个臭皮匠,赛过诸葛亮我们玩人海战术!不
2021-12-25 12:01:46
513
原创 决策回归树与集成算法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
244
原创 梯度提升分类树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
376
原创 决策回归树回归算法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
4598
原创 决策树分类算法进阶(一)28
1、决策树概述决策树是属于有监督机器学习的一种,起源非常早,符合直觉并且非常直观,模仿人类做决策的过程,早期人工智能模型中有很多应用,现在更多的是使用基于决策树的一些集成学习的算法。这一章我们把决策树算法理解透彻了,非常有利于后面去学习集成学习。1.1、示例一我们有如下数据:ID拥有房产(是/否)婚姻[单身,已婚,离婚]年收入(单位:千元)无法偿还债务(是/否)1是单身125否2否已婚100否3否单身70否4是已婚120否
2021-12-11 14:53:02
716
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
1344
原创 决策树分类原理(一)26
1、决策树概述决策树是属于有监督机器学习的一种,起源非常早,符合直觉并且非常直观,模仿人类做决策的过程,早期人工智能模型中有很多应用,现在更多的是使用基于决策树的一些集成学习的算法。这一章我们把决策树算法理解透彻了,非常有利于后面去学习集成学习。1.1、示例一我们有如下数据:ID拥有房产(是/否)婚姻[单身,已婚,离婚]年收入(单位:千元)无法偿还债务(是/否)1是单身125否2否已婚100否3否单身70否4是已婚120否
2021-11-30 19:52:16
602
原创 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
791
原创 降维系列算法进阶(二)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
829
原创 降维系列算法进阶(一)22
文章目录相关背景数据降维数据降维的方法PCA降维LDA线性判别NMF非负矩阵分解LLE局部线性嵌入降维算法相关背景在许多领域的研究与应用中,通常需要对含有多个变量的数据进行观测,收集大量数据后进行分析研究寻找规律。多变量大数据集无疑会为研究和应用提供丰富的信息,但是也在一定程度上增加了数据采集的工作量。更重要的是在很多情形下,多变量之间可能存在相关性,从而增加了问题分析的复杂性。如果分别对每个指标进行分析,分析往往是孤立的,不能完全利用数据中的信息,因此盲目减少指标会损失很多有用的信息,从而产生错误的
2021-11-29 08:24:46
758
原创 降维算法高级(二)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
1415
原创 降维算法高级(一)20
文章目录相关背景数据降维数据降维的方法PCA降维LDA线性判别NMF非负矩阵分解LLE局部线性嵌入降维算法相关背景在许多领域的研究与应用中,通常需要对含有多个变量的数据进行观测,收集大量数据后进行分析研究寻找规律。多变量大数据集无疑会为研究和应用提供丰富的信息,但是也在一定程度上增加了数据采集的工作量。更重要的是在很多情形下,多变量之间可能存在相关性,从而增加了问题分析的复杂性。如果分别对每个指标进行分析,分析往往是孤立的,不能完全利用数据中的信息,因此盲目减少指标会损失很多有用的信息,从而产生错误的
2021-11-25 14:00:31
3587
3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人