自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 训练loss

一、train loss与test loss结果分析train loss 不断下降,test loss不断下降,说明网络仍在学习;train loss 不断下降,test loss趋于不变,说明网络过拟合;train loss 趋于不变,test loss不断下降,说明数据集100%有问题;train loss 趋于不变,test loss趋于不变,说明学习遇到瓶颈,需要减小学习率...

2020-02-11 20:57:01 737

原创 pytorch中backward函数的gradient参数作用

https://www.cnblogs.com/zhouyang209117/p/11023160.html

2019-11-06 17:17:12 1102

转载 pandas axis的用法

...

2019-10-27 22:01:48 1117

原创 机器学习之特征筛选

机器学习模型的训练除了考虑模型的准确性之外,还要考虑计算性能。冗余的特征虽然不会影响到模型的性能,但却会使得计算机做出无用功。特征筛选与PCA这类通过选择主成分对特征进行重建的方法有所区别:PCA压缩之后的特征往往无法解释;但是特征筛选不存在对特征值的修改,而更加侧重于寻找那些对模型的性能提升较大的少量特征。##此模型采用的titanic的数据集import pandas as pdti...

2019-07-13 15:42:45 3741 1

转载 偏差与方差

转载: https://blog.csdn.net/simple_the_best/article/details/71167786学习算法的预测误差, 或者说泛化误差(generalization error)可以分解为三个部分: 偏差(bias), 方差(variance) 和噪声(noise). 在估计学习算法性能的过程中, 我们主要关注偏差与方差. 因为噪声属于不可约减的误差 (irre...

2019-07-10 19:26:07 1832

原创 正则化

正则化(解决过拟合)1. 过拟合问题eg1:线性回归很明显的图一为欠拟合,高偏差。图三为过拟合,高方差,低偏差。一般过拟合对训练数据有很好的拟和能力,但对与新样本的泛化能力却很差。eg2:逻辑回归图一为欠拟合,高偏差。图三为过拟合,高方差,低偏差。如果们的模型复杂度较高,而训练样本过少,通常会出现过拟合问题。解决方法1. 减少变量的数量,降低模型的复杂度2. 正则化:保留所...

2019-05-20 10:31:33 269

原创 多元线性回归模型的检验

1.总平方和、回归平方和、残差平方和因变量体重是一个数值,这个数值一般来说不会太大,也不会太小,是在一个范围内的。我们可以简单认为,这个"范围”越大,人们的体重多样性越大(严格来说,范围大说明极差比较大。如何度量这个多样性呢?人们设计了很多指标。最简单的一种,就是总平方和(total sum of squares, TSS):TSS = (weight_1 - weight_mean)^2 +...

2019-05-10 11:18:47 13739 1

转载 Windows系统下解决python matplotlib中文乱码问题

import matplotlib.pyplot as pltplt.rcParams['font.sans-serif']=['SimHei'] #用来正常显示中文标签plt.rcParams['axes.unicode_minus']=False #用来正常显示负号plt.plot((1,2,3),(4,5,7))plt.xlabel('横坐标')plt.ylabel('纵坐标')...

2019-05-05 19:54:31 323

转载 在分类中处理训练集中类别不平衡问题

1.扩大数据集当遇到类别不均衡问题时,首先应该想到,是否可能再增加数据(一定要有小类样本数据),更多的数据往往战胜更好的算法。因为机器学习是使用现有的数据多整个数据的分布进行估计,因此更多的数据往往能够得到更多的分布信息,以及更好分布估计。即使再增加小类样本数据时,又增加了大类样本数据,也可以使用放弃一部分大类数据(即对大类数据进行欠采样)来解决。2.尝试其他分类指标 类...

2019-04-27 15:21:32 522

原创 牛顿法

牛顿法首先学习一下多元函数的泰勒展开式一元函数在点x_{k}处的泰勒展开式为:二元函数在点(x_{k}, y_{k})处的泰勒展开式为:多元函数(n)在点x_{k}处的泰勒展开式为:把Taylor展开式写成矩阵的形式:具体展开式为:对等式两边同时求导则:因此得到:如果将梯度向量简写为g,上面的公式可以简写为上式就是牛顿法的递推公式...

2019-04-03 22:07:38 307

原创 线性回归与局部加权回归(附代码)

线性回归标准方程法一般我们使用梯度下降法求解线性回归,而要求解最优方程往往需要迭代很多步,标准方程法可以一步到位。假设有一个代价函数:J(θ)=aθ2+bθ+c 。找出能使代价函数最小化的θ,也就是求出J关于θ的导数,当该导数为0的时候,θ最小。标准方程法就是直接将上市经过求导转化成推导过程由上式可知,X为m*(n+1)维的矩阵,Y为m*1维的矩阵,最后一个矩阵少写了一项。样...

2019-03-28 20:23:50 3367 2

原创 numpy之python矩阵操作

numpy之python矩阵操作1.不使用mat时矩阵的操作先导入numpy模块import numpy as np矩阵乘法,不使用mat时,矩阵乘法要使用numpy里的dot方法# np.dot() 矩阵乘法a = np.array([[1, 2], [3, 4]])b = np.array([[11, 12], [13, 14]])print(np.dot(a, b))# ...

2019-03-26 20:19:46 541

原创 HDU 1010(DFS和奇偶剪枝)

HDU 1010题意:根据地图,'S’为开始位置,‘D’为门的位置,’ . '为空地,'X’为墙,不能经过,问:在指定的时间,是否能到达’门’的位置.注意:路不可以重复经过,时间也要刚好是 t ,不能少.解题思路,只能用DFS,用BFS是求最短距离的,与题意不符,而一般的DFS会超时,因此要进行剪枝,此题可以是奇偶剪枝,因为无论怎么走,当前位置到终点的步数与最短路的步数之差必然是偶数。A...

2019-03-12 20:54:04 448

原创 坐标下降/上升算法(Coordinate Decsent/Ascent)

坐标下降/上升算法(Coordinate Decsent/Ascent)1.坐标上升/下降算法的原理:坐标上升法(Coordinate Ascent)每次通过更新函数中的一维,通过多次的迭代以达到优化函数的目的。过程可视化出来后大概是这样的:蓝色部分就是迭代的过程,一直到达中心的最优部分2.自己的一些理解首先我认为坐标上升/下降算法是同一种算法(这个问题我纠结了好久!!!)因为有些...

2019-03-03 16:47:30 2335 1

原创 用k_nn算法手写数字识别

用k_nn算法手写数字识别import numpy as npfrom os import listdir # listdir可以列出给定目录的文件名def knnPredict(newInput, dataset, labels, k): dataset = np.array(dataset) # 表示样本数量 datasize = dataset.shape...

2019-02-25 20:04:02 369

原创 决策树算法

决策树算法决策树是一种基本的分类回归方法。在分类问题中,表示基于特征对实例进行分类的过程。决策树的学习一般包括3个步骤:特征选择;决策树的生成;决策树的修剪。特征的选择:特征的选择一般准则为信息增益(ID3),信息增益比(C4.5)和基尼指数(CART)。本文重点介绍信息增益算法。计算信息增益一般分为3个步骤:(1): 计算数据集D的熵H(D)k指的是数据集的...

2019-02-16 22:47:44 1345

原创 python实现朴素贝叶斯算法

python实现朴素贝叶斯算法朴素贝叶斯法是基于贝叶斯定理与特征条件独立假设的分类方法。对于很多场景,朴素贝叶斯算法都很有用,比如文本分类,垃圾邮件过滤。。。贝叶斯公式:换种说法:详细参考文章朴素贝叶斯例题分析拉普拉斯平滑也就是参数为1时的贝叶斯估计,当某个分量在总样本某个分类中(观察样本库/训练集)从没出现过,会导致整个实例的计算结果为0。为了解决这个问题,使用拉普拉斯平滑/加...

2019-02-10 21:06:07 2902

原创 python实现K近邻算法(KNN)

k近邻算法k近邻法是一种基本分类与回归方法k近邻法输入为实例的特征向量,对应于特征空间的点;输出为实例的类别,可以取多类(与感知机不同的点之一)。分类时,对新的实例,根据其k个最近邻的训练实例的类别,通过多数表决等方式进行预测。算法的基本步骤如下:1)计算已知类别数据集中的点与当前点之间的距离;2)按照距离递增次序排序;3)选取与当前点距离最小的k个点;4)确定前k个点所在类别的出现...

2019-02-02 22:20:53 1337

原创 感知机算法python实现

感知机算法* import random import numpy as np import matplotlib.pyplot as plt class percePtron: #初始化w向量和截距b,注意初始化为浮点类型 def __init__(self): self.weight = [0.0, 0.0]...

2019-01-30 15:29:58 1235

原创 HDU - 1873

题目连结:[看病要排队(http://acm.hdu.edu.cn/showproblem.php?pid=1873)]本题是一个优先队列的水题,根据题目需要,我用到了pair(pair的用法可自行查找博客),pair在优先队列中按照先比较第一个元素,如果第一个相等在比较第二个(默认的是最大堆),但根据题目需要,要改成第一个元素由大到小,如果第一个元素相等,则第二个元素由小到大排序,因此要自定义...

2019-01-26 22:26:15 217

原创 优先队列

优先队列优先队列是以堆为基础一种高效的算法(本质是一个排序),它分为最大优先队列和最小优先队列,与之对应的分别为最大堆和最小堆,因此优先队列各种操作的时间复杂度都维持在O(lnN)。优先队列的基本操作和队列的差不多op 访问队头元素empty 队列是否为空size 返回队列内元素个数push 插入元素到队尾 (并排序)emplace 原地构造一个元素并插入队列...

2019-01-26 16:23:43 246

原创 字典树算法

字典树本文将包括以下内容:字典树的基本概念字典树的结构字典树的初始化字典树的插入根据单词前缀来遍历全部结果1.字典树的基本概念Trie字典树主要用于存储字符串,Trie 的每个 Node 保存一个字符。用链表来描述的话,就是一个字符串就是一个链表。每个Node都保存了它的所有子节点。字典树顾名思义是一个树形结构,它的创建和二叉树类似。它可以实现前缀搜索。T...

2019-01-18 22:06:55 584 1

原创 插入排序与shell插入排序

插入排序基本思想:从第二个元素开始,依次选择哨兵元素,然后依次将哨兵元素和前面的元素进行比较,如果前一个元素大于该哨兵元素(从小到大排序),则把前面那个元素移动到后一个位置;继续往前比较,直到找某个元素不大于该哨兵元素,则把哨兵元素插入到位置上;基本步骤:第二个元素开始外后选择一个哨兵元素;让哨兵元素和前面的元素进行比较,找到合适的位置插入;循环上面两步,直到选择完所有元素...

2018-12-08 16:50:50 421

原创 MySQL在Windows下修改初始密码(8.0版本以上)

1.使用cmd命令如下操作:C:\Users\王教授>C:\web\mysql\mysql-8.0.13-winx64\bin\mysql -u root -pEnter password: ************ //这里输入你的初始密码2.进行修改密码的操作ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native...

2018-12-06 20:50:27 960

原创 Floyd算法

Floyd思想:1.从任意一条单边路径开始。所有两点之间的距离是边的权,如果两点之间没有边相连,则权为无穷大。2.暴力出每条路的最短路,用到了链式法则的思想3.也就是一个点到其他点的距离,所以floyd的核心思想就是:求当前第i个点到第j个点的最短路径之中是否还存在一个点k,使得点i到点k,再由点k到点j的值小于当前i到j点的最短路径呢?代码#include<stdio.h&gt...

2018-11-27 21:36:42 813

原创 最小生成树(kruskal算法)

kruskal算法算法的主要思想是:通过排序找到当前边权值的最小边,如果形成回路,跳过找下一个边。难点: 判断是否形成回路 这里主要用到了并查集的思想。每次加入边后都进行合并操作,让边的后顶点都指向前顶点,因此判断是否形成回路时,只需判断它的前顶点和后顶点是否指向同一个顶点即可判断是否构成回路。代码:#include<stdio.h>#include<stdlib.h...

2018-11-26 21:42:31 278

原创 归并排序

算法思路:采用分治的思想(快排也是这种思想),不断将序列一分为二,当每份序列为1时,在两两合并。时间复杂度为O(logn)#include<stdio.h>#include<stdlib.h>#include<iostream>#include<string.h>#define MAXSIZE 100typedef int keytyp...

2018-11-24 16:34:54 174

原创 Web抓取信息

Web抓取信息webbrowser:是 Python 自带的,打开浏览器获取指定页面。requests:从因特网上下载文件和网页。Beautiful Soup:解析 HTML,即网页编写的格式。selenium:启动并控制一个 Web 浏览器。selenium 能够填写表单,并模拟鼠标 在这个浏览器中点击。1.webbrowser的基本用法#! python3 #...

2018-11-19 19:53:29 603

原创 素数打表

最快的方法:#include<stdio.h>#include<stdlib.h>#include<iostream>#include<string.h>#define MAXSIZE 1000000+10using namespace std;bool vis[MAXSIZE];int prime[MAXSIZE],n;//素数打...

2018-11-18 20:06:48 154

原创 HDU - 1241 (JAVA)

简单的DFS入门题注意的一点:每次搜完要标记,防止重复AC代码:import java.text.DecimalFormat;import java.util.*;public class Main {    private int[][] t = {{0, 1}, {0, -1}, {1, 1}, {1, -1}, {1, 0}, {-1, 0}, {-1, 1}, {-1, -1...

2018-11-16 18:42:03 276

原创 STL容器

c++容器基本使用顺序容器(按顺序存储,插入快,查找慢):vector在最后插入数据;1.STLvector类与数组类似,允许随机询问元素,即可使用下标运算符[]指定元素在 vector 中的位置(索引),从而直接访问或操作元素.2.将所有元素存储在连续的存储单元中deque允许在开头插入或删除元素;list可在任何位置添加或删除元素;1.链表的STL实现2.不能随机访问...

2018-11-09 19:00:56 515

原创 快速排序

手写了一遍快排,感觉还是不是很熟练,逻辑很好想,但是具体实现还是磕磕碰碰的,话不多说了,直接上代码。#include<stdio.h>#include<stdlib.h>#include<iostream>#include<string.h>#define MAXSIZE 100using namespace std;typedef ...

2018-11-06 21:33:42 141

原创 正则表达式(python)

正则表达式创建正则表达式对象向 re.compile()传入一个字符串值,表示正则表达式,它将返回一个 Regex 模式 对象(或者就简称为 Regex 对象)>>>phoneNumRegex = re.compile(r'\d\d\d-\d\d\d-\d\d\d\d')现在phoneNumRegex变量包含了一个Regex对象,r代表原始字符串。匹配Regex...

2018-11-06 18:10:15 166

原创 HDU-1181(java dfs实现)

http://acm.hdu.edu.cn/showproblem.php?pid=1181中文体面,想必都能理解,就不做解释了。第一次用java写深搜,写的不好的地方,大佬们轻喷!!!把每次搜过的单词都标记一下,防止死循环喽!直接上代码(暴力就完了):import java.text.DecimalFormat;import java.util.*;public cl...

2018-11-04 17:16:58 279

转载 文件查看器

Linux上的文件操作是真的不会,C语言里静态变量的用法也不清楚,全是参考学长的博客,学到了好多https://blog.csdn.net/easylovecsdn/article/details/82990131 #include<stdio.h>#include<iostream>#include<string.h>#include <s...

2018-10-16 22:06:13 851

原创 线段树板子

//建树void build(int l,int r,int rt){    if(l == r){        scanf("%lld",&tree[rt]);        return ;    }    int mid=(l + r) >> 1;    build(l,mid,rt << 1);    build(mid+1,r,rt << 1...

2018-04-14 19:06:09 205

原创 HDU - 1231——最大连续子序列

给定K个整数的序列{ N1, N2, ..., NK },其任意连续子序列可表示为{ Ni, Ni+1, ..., Nj },其中 1 <= i <= j <= K。最大连续子序列是所有连续子序列中元素和最大的一个, 例如给定序列{ -2, 11, -4, 13, -5, -2 },其最大连续子序列为{ 11, -4, 13 },最大和 为20。 在今年的数据结构考卷中,...

2018-03-24 20:30:06 263

原创 Eddy's research II

As is known, Ackermann function plays an important role in the sphere of theoretical computer science. However, in the other hand, the dramatic fast increasing pace of the function caused the value of...

2018-03-21 17:28:41 244

原创 CodeForces - 8B

有一个机器人,可以自己绕过障碍物并且以最短的路径到达指定终点。现在的问题是不知道机器人有没有出现bug,即走的路径不是最短的路径。现在给出机器人的行走路线,L表示向左移动,R表示向右移动,U表示向上移动,D表示向下移动问你机器人有没有出现bug。如果有出现bug则输出一行BUG否则输出OK********两个相邻的格子之间没有障碍物,障碍物只会在格子中出现********输入描述 输入数据只有一...

2018-03-12 17:08:38 436

原创 HihoCoder - 1370 快乐数字

https://vjudge.net/problem/714717/origin HihoCoder - 1370判断一个正整数是否是快乐数字? 如果一个数字能够通过有限次快乐变换成为1,则是快乐数字。 快乐变换是对一个数字的每一位的平方数求和。 例如: 对于68 ...

2018-03-11 10:44:54 713

空空如也

空空如也

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

TA关注的人

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