自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 opencv-python环境配置

opencv-python离线安装离线安装包下载地址:点击转到即可转到 opencv-python 下载页面下载页面如下图所示:选择对应python版本和系统的opencv-python包进行下载。本机为python3.6版本,Window64位系统,对应下载opencv-python-4.4.0-cp36-cp36m-win_amd64.whl。下载完成后,运行Anaconda Prompt 或者 window cmd,安装opencv-python具体安装命令如下:# >>

2021-03-14 11:35:33 181 1

原创 C++函数重载

/* 函数重载 * 定义:同一作用域内函数名相同参数列表不同的函数,称为重载函数 * 注意: * 1.main()函数不支持重载 * 2.函数重载与返回值无关 * 3.函数重载只关注形参类型、数量,与有无函数名无关 * 4.函数重载与类型别名无关,类型别名并非新类型,因此原类型名和类型别名不构成重载 * 5.顶层const形参与非顶层const形参不构成重载 * 6.基于指针或引用的底层const形参与普通指针或引用形参构成重载 * (常量形参只能匹配常量版,非常量形参优先

2020-09-09 17:17:10 125 1

原创 pytroch-自定义模块

自定义模块1.自定义梯度求导函数(custom autograd function)主要用于自定义函数的自动求导2.自定义网络模型(custom model)主要用于复杂网络模型的构建"""自定义模块1.自定义梯度求导函数(custom autograd function)定义:首先继承torch.autograd.Functionl类,然后重写forward和backward函数使用:调用该类的apply方法"""# define custom autograd_functionim

2020-08-24 12:49:44 225

原创 pytorch-网络模型定义

网络模型定义构建网络模型类1.该类必须继承torch.nn.Module,并且在初始化方法中引入父类初始化方法2.在__init__()中定义并初始化网络3.在forward()中定义前向传递(反向传播根据前向传递自动定义)使用时直接初始化该类,传入输入即可的得到输出"""模块导入"""import torchimport torch.nn as nn # 包含模型设计的模块和类import torch.nn.functional as F """网络模型定义"""class Net

2020-08-22 21:36:15 425

原创 pytorch-模型保存与加载

模型保存/加载的四种方法1.保存/加载状态字典(state_dict)2.保存/加载整个模型(entire model)3.保存/加载checkpoint信息4.保存/加载多个模型到一个文件注:详情请参阅 pytorch 官方文档 添加链接描述"""模型保存与加载方法1:保存/加载状态字典(state_dict) 该方法具有更大的灵活性,推荐使用方法2:保存/加载整个模型(entire model)方法3:保存/加载checkpoint 该方法以字典形式存储模型信息,推荐训练过程使用

2020-08-22 19:46:00 224

原创 数据结构-栈(c++实现)

/* 数据结构-栈(stack)* 特点:先进后出,类似与向弹夹压子弹* 操作:主要包含两大操作,压栈、弹栈* 注:栈有栈顶和栈底,所有操作均从栈顶进行*/#ifndef __MYSTACK_H#define __MYSTACK_H#include <iostream>using namespace std;// 类模板://类定义template<class T>class MyStack {public: MyStack(); // 构造函数 ~My

2020-08-20 22:57:52 111

原创 模型过拟合与欠拟合

过拟合与欠拟合1.过拟合概念:学习器将样本自身的特征当做所有样本的潜在特征进行学习,称为过拟合表现:训练误差非常小,而泛化误差较大,二者表现出明显差异2.欠拟合概念:学习器对所有训练样本的潜在特征尚未学好,称为欠拟合表现:训练误差与泛化误差都非常大偏差与方差理论对测试样本xxx,yDy_{_D}yD​​为xxx在训练集D中的标记,ytruey_{true}ytrue​为xxx的真实标记,f(x;D)f(x;D)f(x;D)为xxx在训练集DDD上模型的学得的模型输出,模型在训练集DDD上的期

2020-07-19 12:27:40 121

原创 机器学习之回归

线性回归逻辑回归

2020-07-03 00:07:15 113

原创 梯度下降法

正规方程梯度下降法原理梯度下降法分类(按每次权重更新采用的样本个数分类)随机梯度下降(SGD)mini-batch梯度下降批梯度下降(BGD)梯度下降优化算法

2020-07-02 22:01:02 175

原创 分类算法-K近邻算法(KNN)

K近邻算法(KNN)定义:如果一个样本在特征空间中的K个最相似的样本中的大多数属于某个类别,则该样本也属于这个类别。最相似即特征空间中的最近邻。相似度度量:欧式距离:即计算法每个特征之间的距离,计算公式如下:算法直观理解:在已有样本中找到与当前样本距离最近的k个样本,然后以者k个样本的类别进行投票,看当前样本属于哪个类别。算法评价优点:简单,易理解和实现,无需估计参数,无需训练缺点:算法开销随数据量增大而增大,且k值为超参数,需手动调整sklearn k近邻APIfrom sk

2020-07-02 09:48:21 166

原创 朴素贝叶斯分类

概率基础样本空间的划分设S为试验E的样本空间,B1,B2,…,Bn为E的一组事件,若称B1,B2,…,Bn为样本空间S的一个划分。事件独立性事件A,B满足则事件A,B相互独立。A,B相互独立与A,B互不相容是两个概念A,B相互独立,条件概率满足条件概率及乘法公式事件A发生条件下事假B发生的概率,称为事件B的条件概率乘法公式全概率公式试验E的样本空间为S,A为E的事件,B1,B2,…,Bn为S的一个划分,则事件A的全概率公式为:贝叶斯公式试验E的样本空

2020-07-02 00:54:38 136

原创 模型评估与选择

分类模型评估精度(accuracy)分类正确样本占总样本的比例混淆矩阵在分类任务中,预测结果与真实结果之间存在4中不同的组合,由这4中组合就构成了分类结果的混淆矩阵。对于二分类任务只有一个混淆矩阵,对于多分类任务,需对每个类别分别建立混淆矩阵。准确率(查准率:precision)预测为正例的样本中真实为正例的比例召回率(查全率:recall)真实为正例的样本中预测结果为正例所占的比例(体现了对正样本的区分能力,常用)F1-score与Fβ-scoreF1-score是

2020-06-30 22:21:56 122

原创 sklearn数据集与估计器

数据集数据集获取sklearn.datasets # 可用于加载当前流行数据集"""获取小规模数据集,数据包含在datasets模块中可直接加载"""dataset.load_*() # *代表数据集名字"""获取大规模数据集,需要重网上下载"""datasets.fetch_*(data_home=None) # data_home参数指定下载路径"""获取数据返回类型load*和fetch*返回的数据类型为datasets.base.Bunch (字典格式)data属性:特征数据数组,

2020-06-27 16:14:47 232

原创 开发流程

机器学习开发整体流程1.数据数据是机器进行学习的根本,获取有效高质量的数据才能够让机器学习出最符合真实场景的模型。2.建立模型明确问题与需求机器学习是针对特定数据的学习,目的是解决特定的问题。因此我们必须明确我们需要解决的问题是什么,属于回归还是分类。这有助于我们进行后续处理。数据基本处理由于各种数据组织类型和组织格式的存在,我们需要对数据一些前期的处理,比如缺失值,表格合并,文本分割等特征工程特征工程,对于机器学习的效果有较大影响。对于不同的数据,特征工程做法各有不同,比如对类别数据

2020-06-27 11:29:51 86

原创 特征工程

特征工程什么是特征工程?特征工程将原始数据转换为更好代表预测模型潜在问题的特征的过程特征工程的意义?特征工程的转换结果直接影响模型预测结果特征工程怎么做?特征抽取特征预处理特征降维其他特征抽取特征抽取的目的将非数值数据或类别数据数值化。文本数据特征抽取对文本数据可先进行分词,再以根据需求以下列方法进行(分词是以空格分隔每个词,对于英文文本无需分词,对于中文文本可用分词工具进行分词,如jieba)计数将文本中出现的所有词按出现次数统计,不统计单个字符重要性度量

2020-06-26 20:14:04 2602

原创 机器学习数学基础1

机器学习什么是机器学习?设计一个模型,通过已有数据(训练数据)按照一定的方式(性能度量进行学习,通过不断改进调整优化模型参数,并将模型用于预测相关问题机器学习做什么?解决:给定数据的预测问题(数据清洗、特征选择、算法模型设计、参数优化、结果预测)不能解决:大数据存储/并行计算、机器人制作机器学习一般流程数据收集、数据清洗、特征工程、数据建模导数一阶导数曲线斜率,反映曲线变化快慢,一阶导数为零的点且驻点二阶导数斜率变化快慢的反映,表征曲线的凹凸性,二阶导数为零的点为拐点方向导数

2020-06-24 14:47:03 136

原创 Linux基础(CentOS)

Linux用户linux系统安装时默认有一个超级管理员用户 root登陆到Linux系统,运行命令行界面时:[root@hadoop-senior Desktop] #root:用户名 hadoop-senior:主机名 Desktop:所在目录名末尾字符:#:表示当前用户属于root用户,超级管理员用户$:表示用户属于普通用户链接网络:在虚拟机中选择NET模式即可查看系统IP地址:# ifconfig 类似windows下的ipconfig如果是自动IP可链接互联

2020-06-22 18:03:49 97

原创 Mysql数据库

SQL登陆与退出mysql -uroot -p # -u 后接用户名 -p 后接密码prompt # 修改数据库命令提示符SELECT VERSION(); # 查看数据库版本SQL语句规范SQL常用命令DELIMITER 自定命令分隔符 #修改默认命令分割符\T 文件 # 将执行的SQL操作记录到指定文件 通过 \t 结束输出到文件操作SHOW WARNINGS; 查看上一语句执行的警告SHOW DATABASE

2020-06-21 11:36:40 61

原创 matplotlib可视化

基本绘图库导入import matplotlib.pyplot as pltimport numpy as np散点图(scatter)plt.scatter(x,y,c,s,marker,alpha)"""参数解析:c -- 颜色 s -- 点的大小 marker -- 点的样式 alpha -- 透明度"""折线图plt.plot(x,y,color,linestyle,marker,markerfacecolor,markersize)"""参数解

2020-06-16 14:03:15 269

原创 Pandas数据分析

创建数据对象"""创建数据对象"""import numpy as npimport pandas as pdimport matplotlib.pyplot as plt%matplotlib inline # 设置inline风格,用于内嵌显示# 创建Series对象:类似一维数组data = pd.Series([1,2,3,np.nan,5,6])# 创建DataFrame对象:类似二维数组 date = pd.date_range("20200608",periods=6)

2020-06-09 23:01:35 127

原创 数据结构与算法之《树结构》

树的概念树(tree)是一种抽象数据类型(Abstract Data Type)或是抽象数据类型的数据结构,用来模拟具有树状结构性质的数据集合。它是由n个有限节点组成的一个具有层次关系的集合。它看起像一颗倒挂的数,也就是根朝上,叶朝下。所以因此而得名。树的特点:每个节点有零个或多个子节点没有父节点的节点称为根节点每一非根节点有且仅有一个父节点除根节点外,每个子节点可以分为多个不相交的子树树中的术语:节点的度:一个节点含有的子树的个数称为该节点的度树的度:一棵树中,节点的度的最大值为树

2020-06-08 11:05:39 157

原创 科学计算之Numpy

Numpy使用numpy.array对象对象创建创建功能返回值numpy.array()将list、range、tuple等对象转换为numpy.array数组numpy.array对象numpy.zeros()创建元素全为0的numpy.array数组numpy.array对象numpy.empty()创建一个空的numpy.array数组numpy.array对象numpy.arange()类似于range(),创建指定范围的numpy.a

2020-06-07 22:32:53 100

原创 数据结构与算法之《搜索算法》

搜索算法搜索算法用于在一个项目集合中查找一个特定的项目。搜索通常的答案是真或假,也可能是找到的某个具体值。常见的搜索算法:顺序查找、二分查找、二叉树查找、哈希查找1.二分查找二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。实现过程:假设表中元素按升序排列,将表中间位置元素与查找元素比较,如果两者相等,则查找成功;否则利用中间位置记录将表分为前、后两个子表,如果中间位置记录的元素大于查找

2020-06-06 22:24:56 179

原创 数据结构与算法之《排序算法》

排序算法一种能将一串数据依照特定顺序进行排列的算法。排序算法在排序后能位置相等键值得原有秩序则称算法稳定。1.冒泡排序——稳定冒泡排序(Bubble Sort)算法重复遍历待排序序列,每次比较两个元素,如果它们的顺序错误就将它们进行交换。重复进行此过程,直到没有需要交换再的元素。之所以叫冒泡排序是因为随着排序算法的进行,较大元素会像一个个水中的气泡一样浮向序列末端。算法具体流程(以开始左端,按升序排列为例):从左端第一个元素开始,比较相邻元素大小,若第一个元素大于第二个元素就交换他们对序列中的

2020-06-06 18:14:46 157

原创 数据结构与算法之《栈及队列》

栈(stack)栈是一种容器,可存储数据元素、访问元素、删除元素,它的特点在于只能从容器的一端存数据(压栈)和取数据(弹栈),这一端被称为栈顶,与之相对应的另一端称为栈底。由于栈结构只能在一端操作,因此最后存入的元素最先被弹出,也就是所谓的后进先出(LIFO,Last In First Out).示意图如下:栈结构可由线性表实现。#------------------栈结构python实现---------------------#class Stack(object): """栈"""

2020-06-04 23:23:23 98

原创 数据结构与算法之《链表结构》

链表定义线性表的一种,不像顺序表连续存储数据,而是在每一个数据存储单元(节点)中存放下一数据单元的位置信息(地址)。如下图特点充分利用计算机的内存空间,实现灵活的动态内存管理,但数据操作相对于顺序表的连续存储效率较低。单向链表单向链表,也叫单链表,每个节点包含两个域,一个是元素域用于存放数据元素,一个是链接域用于链接下一节点,最后一个节点的链接域指向空值。请看下图:图中elem表示元素域,next表示链接域,p表示链表的头结点位置,由p出发才能找到表中的任意节点#----

2020-06-04 22:35:28 124

原创 数据结构与算法之《认知及顺序表》

数据结构概念数据结构指数据对象中数据元素之间的关系python数据结构内置数据结构:列表、元组、集合、字典等扩展数据结构:栈、队列、链表等(需用户自定义)算法与数据结构的关系数据结构是静态描述数据元素之间的关系。算法是为解决实际问题而设计的方法。高效的程序需要在数据结构的基础上设计和选择算法。用一个公式体现二者的关系:程序 = 算法 + 数据结构总结:算法是为解决实际问题设计的,数据结构是算法处理问题(数据)的载体。抽象数据类型(abstract data type)将数据类型及其相

2020-06-04 21:13:10 142

原创 数据结构与算法之《算法认知》

算法概念算法是独立存在的一种解决问题的思想或方法。(学习算法应重点关注其实现思想)算法的五大特性输入:可以没有输出:必须至少有一个输出有穷性:能够在有限的步骤和时间内实现确定性:算法描述不能有歧义可行性:算法能够用计算机实现算法效率衡量实现算法程序的执行时间可以反映算法的效率,但对于不同的机器由于硬件配置的不同会导致同样的算法有着不同的执行时间,因此单纯依靠执行时间测定并不客观。时间复杂度与“大O记法”:假设计算机执行基本操作的时间固定,通过比较算法执行基本步骤的数量,即可比较客观

2020-06-03 23:06:50 169

原创 python-面向对象设计方法

面向对象1.组合与继承(1)组合 组合是has-a关系,即一个对象有哪些模块或由哪些模块组成,组成对象的各个模块有各自的功能和作用 举个例子 电脑由CPU、GPU、内存、硬盘、电源、显示器、鼠标、键盘等模块组成,每个模块负责自己的分工#———————————————————————————————— 代码演示————————————————————————————————————————#class Computer(object): def __init__(self): self.c

2020-06-01 21:19:31 85

原创 python-面向对象(下)

面向对象(下)面向对象的三大特性1.封装 封装主要体现在隐藏对象实现细节,采用私有属性和方法2.继承 在python中子类可以继承父类除初始化方法外的所有属性和方法,包括父类私有属性和方法只是不能直接进行访问。 语法: class 子类类名(父类1(,[父类2,...])): 类体 object类是所有类的父类。当我们定义类时,在没有继承任何类的情况下,默认继承object类 一般情况下子类需要在其初始化方法中显示调用父类的初始化方法来初始化从父类继承的属性 调用格式: def

2020-06-01 18:58:50 75

原创 python-面向对象(上)

面向对象(上)python一切皆对象,类也是对象,对于同一个类,类对象只有一个,但实例对象可以有多个 类对象拥有类属性和类方法,实例对象拥有实例属性和实例方法 内部访问和外部访问,所有在类定义时的访问都属于内部访问,所有在类定义后的访问都属于外部访问1.构造方法__new__() 构造方法用于创建 <实例对象> 并返回该创建对象,该方法一般不需要重写 def __new__(cls): cls代表当前的类对象 语句体2.初始化方法__init__() 用于初始化构造方法创建

2020-05-31 18:57:33 84

原创 python学习(第六节)

函数定义函数1.定义格式:def 函数名(形参表): '''文档字符串''' 函数体 [return[ 返回值]]注: 函数名:是一个标识符,需符合标识符命名规则 文档字符串:用于书写函数帮助文档,可用help(函数名.__doc__)获取文档字符串 函数体:书写函数功能语句 返回值: (1)当函数不写return语句或写return语句但没有写返回值时,默认返回None(空) (2)当需要返回多个值时,可用列表、元组、字典进行保存 return语句作用: (1)返

2020-05-30 22:42:53 77

原创 python学习(第五节)

程序结构选择结构#-------------------伪代码-----------------------------## 1.单分支选择结构if 条件表达式: 语句体# 2.双分支选择结构if 条件表达式: 语句体1else: 语句体2# 3.多分支选择结构if 条件表达式1: 语句体1elif 条件表达式2: 语句体2...else: 语句体n# 4.三元条件运算符value = 条件为真时的值 if 条件表达式 else 条件为假时的值# 注:条件表达式中不

2020-05-30 13:18:03 91

原创 python学习(第四节)

字典(键值对)"键" 可以是任意的不可变数据,不可重复“值” 可以是任意数据,可重复注:python中的对象可变对象:列表、字典、集合不可变对象:整数、浮点数、字符串、元组字典创键伪代码# 方式1:花括号创键 {}d = {key1:value1,key2:value2,...}# 方式2:dict(...)d = dict(key1=value1,key2=value2,...)# 方式3:dict([(),(),...])d = dict([(key1,value1),(key

2020-05-29 23:55:13 110

原创 python学习(第三节)

可变字符串import iostr = "hello world"varible_str = io.StringIO(str)varible_str.seek(5)varible_str.write("+")varible_str.getvalue()# 输出结果 'hello+world'运算符关系运算符可以连用bin()将数字转换为二进制表示python不支持++ –运算符优先级序列字符串、列表、元组、字典、集合列表列表创建a = [] # 方式1a = lis

2020-05-28 19:49:42 81

原创 python学习(第二节)

链式赋值a=b=1系列解包赋值a,b=1,2注:系列解包赋值可实现变量值得交换a,b=1,2a,b=b,a # a=2,b=1常量:python中不存在常量,只是约定常量命名规则基本数据类型1.整型intint()实现类型转换python3整数取值可以是任意范围2.浮点型float用科学计数法表示float()实现类型转换round()可以返回四舍五入的值3.布尔型bool关系运算符 > < == >= <=逻辑运算符 or

2020-05-28 17:31:44 116

原创 python学习(第一节)

python语言属性属性:由C开发、解释型语言(跨平台)、面向对象特点:简单高效、跨平台、可扩展(可嵌入其他语言如C/C++)注释单行注释:#注释内容多行注释或行内注释:’’’ 注释内容 ‘’’示例:# 单行注释''' 多行注释 多行注释'''''' 行内注释 '''对象标识符(identity)、类型(type)、值(value)a = 3 # 3是一个对象,a是一个变量是对象的引用id(3) # 查看对象标识符或虚拟内存映射编号type(3) # 查看对象的类型#

2020-05-27 20:15:36 102

空空如也

空空如也

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

TA关注的人

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