1 小陈说CV

尚未进行身份认证

我要认证

CV科研狗

等级
TA的排名 6w+

【剑指Offer系列05】替换空格

文章目录题目代码PythonC++题目请实现一个函数,把字符串 s 中的每个空格替换成"%20"。示例 1:输入:s = "We are happy."输出:"We%20are%20happy."限制:0 <= s 的长度 <= 10000代码Python# 思路:# 字符串不可变,故新建list存储新字符串# 复杂度:# O(N)class Solution: def replaceSpace(self, s: str) -> str:

2020-07-09 20:53:08

【剑指Offer系列04】二维数组中的查找

文章目录题目代码PythonC++题目在一个 n * m 的二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。示例:现有矩阵 matrix 如下:[ [1, 4, 7, 11, 15], [2, 5, 8, 12, 19], [3, 6, 9, 16, 22], [10, 13, 14, 17, 24], [18, 21, 23, 26, 30]]

2020-07-08 19:17:44

【剑指Offer系列03】数组中重复的数字

文章目录题目代码PythonC++题目在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1:输入:[2, 3, 1, 0, 2, 5, 3]输出:2 或 3限制:2 <= n <= 100000代码Python# 思路:# 原地置换,注意题干“长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内”# 复杂度:#

2020-07-07 17:52:50

【剑指Offer系列37】序列化二叉树

文章目录题目代码PythonC++题目请实现两个函数,分别用来序列化和反序列化二叉树。示例:你可以将以下二叉树: 1 / \ 2 3 / \ 4 5序列化为 “[1,2,3,null,null,4,5]”代码Python# Definition for a binary tree node.# class TreeNode(object):# def __init__(self, x):# self.val = x

2020-07-06 17:25:57

一文搞定ML从入门到入土(附网盘链接)

1 简介ML是数据科学的基石,本系列将分享部分ML重要算法,从理论与代码实现两方面剖析。下文会给出传送门并分享一些相关学习资料的网盘地址。2 传送门概述LRKNNDTSVMNBAdaBoostEMHMM3 福利链接:https://pan.baidu.com/s/1xYFcEwpP4r_sWJuztZlaEg提取码:w4p7...

2020-06-27 18:35:29

【ML从入门到入土系列09】HMM

文章目录1 理论2 代码3 参考1 理论HMM解决的三大问题如下,即概率计算,学习以及预测问题。分别采用前向/后向算法,Viterbi算法,Baum-Welch算法进行求解。2 代码class HiddenMarkov: # 前向算法 def forward(self, Q, V, A, B, O, PI): N = len(Q) #可能存在的状态数量 M = len(O) # 观测序列的大小 alphas = np.zeros((

2020-06-27 18:26:14

【ML从入门到入土系列08】EM

文章目录1 理论2 代码3 参考1 理论EM算法通过迭代求解观测数据的对数似然函数L(θ)=log⁡P(Y∣θ){L}(\theta)=\log {P}(\mathrm{Y} | \theta)L(θ)=logP(Y∣θ)的极大化,实现极大似然估计。每次迭代包括两步:EEE步:求期望Q(θ,θ(i))=∑zlog⁡P(Y,Z∣θ)P(Z∣Y,θ(i))Q\left(\theta, \theta^{(i)}\right)=\sum_{z} \log P(Y, Z \mid \theta) P\lef

2020-06-27 18:15:11

【ML从入门到入土系列07】AdaBoost

文章目录1 理论2 代码3 参考1 理论AdaBoost算法是模型融合的典型算法,即将一系列基分类器组合成一个强分类器。其伪代码如下图所示。2 代码class AdaBoost: def __init__(self, n_estimators=50, learning_rate=1.0): self.clf_num = n_estimators self.learning_rate = learning_rate def init_args(sel

2020-06-27 18:08:24

【ML从入门到入土系列06】朴素贝叶斯

文章目录1 理论2 代码3 参考1 理论朴素贝叶斯是生成学习方法,即训练数据学习联合概率分布 P(X,Y)P(X,Y)P(X,Y),然后求得后验概率分布P(Y∣X)P(Y|X)P(Y∣X),利用贝叶斯定理与学到的联合概率模型进行分类预测,公式如下:P(Y∣X)=P(X,Y)P(X)=P(Y)P(X∣Y)∑YP(Y)P(X∣Y)P(Y \mid X)=\frac{P(X, Y)}{P(X)}=\frac{P(Y) P(X \mid Y)}{\sum_{Y} P(Y) P(X \mid Y)}P(Y∣X)

2020-06-27 17:56:41

【ML从入门到入土系列05】支持向量机

文章目录1 理论1.1 线性SVM1.2 非线性SVM2 代码3 参考1 理论SVM基本形式:有监督二分类线性分类模型;扩展形式:有监督二分类非线性分类模型,有监督多分类(线性/非线性)分类模型,有监督线性回归模型(SVR),基于核函数的SVM/SVR1.1 线性SVM与逻辑回归对比图如下:多分类SVM的核心思想是OVO,其流程如下图1.2 非线性SVM如何将线性支持向量机扩展为非线性支持向量机?将线性内积(线性核函数)替换为K(xi,xj)K\left(x_{i}, x_{j}\ri

2020-06-27 14:52:12

【ML从入门到入土系列04】决策树

文章目录1 概述2 ID32.1 理论2.2 代码3 C4.53.1 理论4 CART4.1 理论4.2 代码参考1 概述传统的决策树算法包括ID3算法、C4.5算法以及CART算法。三者主要的区别在于特征选择准则不同。ID3算法选择特征的依据是信息增益,C4.5是信息增益比,而CART则是Gini指数。决策树算法的基本流程如下图所示。2 ID32.1 理论离散属性aaa的取值{a1,a2,a3,…aV}\left\{a^{1}, a^{2}, a^{3}, \ldots a^{V}\right

2020-06-27 13:55:53

【ML从入门到入土系列03】K近邻

文章目录1 理论1.1 距离的度量方式1.2 k 值的选择1.3 分类决策规则2 代码1 理论简单地讲,KNN 思想就是给定一个训练数据集,对于新的输入实例,在训练集中找到与该实例最近邻的 k 个实例,这 k 个实例的多数属于哪个类,则该实例就属于哪个类。其中,算法的三个核心如下:找到与该实例最近邻的实例,即距离的度量方式;k 值的选择;分类决策规则;1.1 距离的度量方式距离的度量在 k 近邻中称为相似性度量,即特征空间中两个实例点的相似程度。常用欧式距离,即L2距离。计算公式如下:

2020-06-27 12:59:09

GPU显存释放

有时训久了,会报错CUDA:out of memory查看GPU使用情况$ nvidia-smi逐个kill掉表格中的PID$ kill -9 PID

2020-06-20 22:05:18

一文搞定YOLO3训练自己的数据集

文章目录前言1 制作自己的数据集2 安装darknet3 建立软链接4 训练文件准备5 训练数据集6 测试模型前言本文默认大家已经安装好TF-gpu环境,没有安装好的伙伴请先看下文一文多图搞定Ubuntu安装Anaconda+GPU Driver+CUDA+CUDNN+TensorFlow-gpu+Pytorch(附网盘链接)1 制作自己的数据集利用labelImg软件选择VOC格式给自己的数据集打标签,生成对应的xml标注文件。创建如下图所示的目录结构。在VOC2007文件夹内创建spl

2020-06-18 20:22:15

【剑指Offer系列68-2】二叉树的最近公共祖先

文章目录题目代码PythonC++题目给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”例如,给定如下二叉树: root = [3,5,1,6,2,0,8,null,null,7,4]示例 1:输入: root = [3,5,1,6,2,0,8,null,null,7,4], p = 5, q = 1

2020-06-16 16:37:40

【ML从入门到入土系列02】线性回归与逻辑回归

文章目录1 线性回归1.1 线性模型1.2 定义1.3 损失函数1.4 梯度下降1.5 过拟合与正则化1.6 案例2 逻辑回归2.1 定义2.2 决策边界2.3 损失函数2.4 梯度下降2.5 案例1 线性回归1.1 线性模型线性模型是学习一个通过特征的线性组合来进行预测的函数其数学形式为:f(x)=wTx+bf(\boldsymbol{x})=\boldsymbol{w}^{T} \boldsymbol{x}+bf(x)=wTx+b1.2 定义线性回归是采用线性模型解决回归问题,其输出值为连

2020-06-10 19:36:33

【剑指Offer系列68-1】二叉搜索树的最近公共祖先

文章目录题目代码PythonC++题目给定一个二叉搜索树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最近公共祖先表示为一个结点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”示例 1:输入: root = [6,2,8,0,4,7,9,null,null,3,5], p = 2, q = 8输出: 6解释: 节点 2 和节点 8 的最近公共祖先是 6。示例 2:输入: root

2020-06-10 17:31:30

【ML从入门到入土系列01】概述

文章目录1 ML基本概念1 ML基本概念如下图所示,ML 是计算机从数据中学习出规律,应用在新数据上做预测;其在互联网、生物、医疗、交通、金融等领域有着广泛应用。

2020-06-09 18:07:52

【剑指Offer系列34】二叉树中和为某一值的路径

文章目录题目代码PythonC++题目输入一棵二叉树和一个整数,打印出二叉树中节点值的和为输入整数的所有路径。从树的根节点开始往下一直到叶节点所经过的节点形成一条路径。示例:给定如下二叉树,以及目标和 sum = 22, 5 / \ 4 8 / / \ 11 13 4 / \ / \ 7 2 5 1返回:[[5,4,11,2],[5,8,4,5]]提示:节

2020-06-09 16:18:50

【剑指Offer系列32-3】从上到下打印二叉树3

文章目录题目代码PythonC++题目请实现一个函数按照之字形顺序打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右到左的顺序打印,第三行再按照从左到右的顺序打印,其他行以此类推。例如:给定二叉树: [3,9,20,null,null,15,7],3/ 9 20/ 15 7返回其层次遍历结果:[[3],[20,9],[15,7]]提示:节点总数 <= 1000代码Python# Definition for a binary tree node.

2020-06-08 16:31:57

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 签到新秀
    签到新秀
    累计签到获取,不积跬步,无以至千里,继续坚持!
  • 阅读者勋章Lv2
    阅读者勋章Lv2
    授予在CSDN APP累计阅读博文达到7天的你,是你的坚持与努力,使你超越了昨天的自己。
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 原力新人
    原力新人
    在《原力计划【第二季】》打卡挑战活动中,成功参与本活动并发布一篇原创文章的博主,即可获得此勋章。
  • 原力探索 · S
    原力探索 · S
    在《原力计划【第二季】》打卡挑战活动中,发布 12 篇原创文章参与活动的博主,即可获得此勋章。(本次活动结束后统一统计发放)