自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 深入理解Softmax回归

深入理解Softmax回归前面介绍的Logistic回归,浅层和深层全连接网络都是以二分类问题为例来介绍的(点击我的头像,找到 机器学习与深度学习 分区,来查看我的其他文章)。二分类模型的特征一般为:以sigmoid函数为输出层的激活函数,且输出层只有一个神经元。本文主要介绍如何使用Softmax激活函数实现多分类问题。在介绍多分类的全连接网络前,先从介绍最简单的多分类模型Softmax回归开...

2019-11-23 21:19:41 527

原创 全连接网络原理

全连接网络原理上一期介绍了只包含单隐层的浅层全连接网络,本期介绍更具有普遍性的深层全连接网络。推荐先看一下上期的内容,将更有助于理解。上一期的链接为:https://blog.csdn.net/Iseno_V/article/details/102941210公式推导部分依旧采用截图的形式,如果需要源文档可以给我留言。1. 网络结构图下图为一个2分类问题的四层结构全连接网络。2. 原...

2019-11-16 15:19:58 3667

原创 单隐层全连接神经网络原理

单隐层全连接神经网络原理本文主要介绍全连接网络的前向传播和后向传播过程的详细推导,没有用到矩阵求导的相关知识,只用了最基本的线性代数和微积分理论,同时最好先了解下python的广播机制。csdn上的公式编辑器不太会用,所有公式推导都用截图的形式了,如果需要源文档可以留言。不喜欢看推导可以直接跳到后面看算法总结和代码。1.网络结构图所谓单隐层神经网络是一种二层结构的浅层神经网络,如下图所示。...

2019-11-06 19:56:57 3124

原创 Logistic回归详解

logistic回归详解1 原理讲解算法结构如下图所示:1.1 前向传播过程1.2 反向传播过程2 向量化实现方法3 代码实现为了便于理解,首先采用循环的形式实现。正向传播计算损失函数,梯度下降法反向传播更新参数。代码实现如下:# -*- coding: utf-8 -*-"""Created on Thu Oct 24 21:27:14 2019@author: ...

2019-11-01 16:42:31 566

原创 01背包的变形问题----背包恰好装满

01背包的变形问题----背包恰好装满在看本文之前建议先看一下我之前发过的01背包详解。https://blog.csdn.net/Iseno_V/article/details/1000011331. 问题的变形在前面讲到的01背包问题中,现在我们把条件改为 “求当背包恰好装满时候取得的最大价值”。这样的问题其实本质上和原始的01背包问题区别不大,我们只需要做出一点小小的调整。需要指出...

2019-09-10 15:14:16 12498 11

原创 深入理解堆与堆排序

堆与堆排序堆排序是一种另辟蹊径的排序方法,主要是利用了堆的性质来实现的。当理解什么是堆之后,堆排序是很容易理解了。堆是一种特殊的完全二叉树,想要理解堆还得从二叉树说起。堆排序的时间复杂度:O(n*logn)堆排序的空间复杂度:O(1),非常优秀的常数级复杂度本文的按照完全二叉树,堆,堆排序的顺序来介绍。一、完全二叉树1. 二叉树二叉树是指树的每个节点最多只有两个子节点树(也就是可以有...

2019-09-04 17:47:38 580

原创 深入理解单模匹配算法之KMP

单模匹配算法KMP问题的提出有两个字符串S1和S2,问S1是否是S2的子串。这样的问题我们称为模式匹配问题。在这里我们称S1为模式串,S2为主串。所谓单模匹配,指模式串只有一个,对主串的数量则没有要求。举个单模匹配的例子:模式串为:“apple”主串有三个,分别为主串1 “i like apple”,主串2 “apple is fruit”主串3 “banana is also...

2019-08-28 10:41:25 682

原创 快速排序法(原理详细分析)

快速排序时间复杂度:平均为O(nlog(n)) 最差情况为O(n2)空间复杂度:O(log(2n)) ~ O(n)稳定性:不稳定算法原理首先给出几个定义(1)子数组的头指针和尾指针:在一个数组中,假设有一个子数组。这个子数组的第一个值在原数组的下标,我们定义为子数组的头指针。而子数组的最后一个值在原数组的下标,我们定义为子数组的尾指针。例子:原序列{2 3 7 4 3 8 7...

2019-08-24 23:31:26 602

原创 01背包问题详解(浅显易懂)

01背包问题详解01背包是一种动态规划问题。动态规划的核心就是状态转移方程,本文主要解释01背包状态转移方程的原理。问题描述01背包问题可描述为如下问题:有一个容量为V的背包,还有n个物体。现在忽略物体实际几何形状,我们认为只要背包的剩余容量大于等于物体体积,那就可以装进背包里。每个物体都有两个属性,即体积w和价值v。问:如何向背包装物体才能使背包中物体的总价值最大?为什么不用贪心?...

2019-08-21 21:59:04 104672 32

原创 排序(二)选择排序法

选择排序法选择排序法也是一种经典的排序方法。和冒泡排序法类似,该方法也是一种难度低,耗时高的排序算法。该方法很少出现在面试和比赛中,但在日常编程中会大量使用。稳定性:不稳定时间复杂度:O(n2)空间复杂度:O(1)算法详解以从小到大排序为例。首先选择数组中的第一个数,之后遍历该数之后的所有数,用这个数依此和第二个数,第三个数,一直到最后一个数比较大小,如果是大于,则交换两个数的位置。...

2019-06-16 20:39:31 779

原创 排序(一)冒泡排序法

冒泡排序法稳定性: 稳定所谓排序算法的稳定性,指当原始数据中存在多个相同的值时,在排序后这些值的相对位置不变。时间复杂度: O(n2)空间复杂度: O(1)冒泡排序算法过程并不包括原始数据的存储过程,所以空间复杂度是 O(1)而不是O(n)。算法详解以从小到大排序为例,冒泡排序法的思路是:遍历原始数据,从第一个数开始,到倒数第二个数结束,比较这个数和下一个数的大小,如果这个数比下一...

2019-06-16 17:50:07 77134

原创 时间复杂度与空间复杂度

时间复杂度定义时间复杂度指在输入数据的维数N为无穷时,程序执行的语句数。当时间复杂度与N无关时,定义为O(1)。例子#include <iostream>using namespace std;int main(){ int n;//执行1次 cin >> n;//执行1次 for (int i = 0; i < n; i++)//执行n次 ...

2019-06-15 21:15:26 211

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除