自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 资源 (2)
  • 收藏
  • 关注

原创 tensorflow语义分割计算mIoU时忽略某一类别

在做语义分割的时候,有不少数据集中的部分类别是我们不想让其参与mIoU计算的。tensorflow忽略某一类别计算mIoU的方法网上比较少。经过阅读tensorflow文档,总结出一下求解方法:数据准备:1、先理解一维张量:假设有张量a,ba = np.array([0, 1, 2, 3]) # 真实b = np.array([0, 1, 0, 3]) # 预测手动计算一下mIoU类别0:= 交集 / 并集 = 1 / 2 = 0.5类别1:= 1 / 1 =

2022-04-30 22:48:26 1591

原创 python列表删除所有满足某条件的值

# 删除列表中所有值等于1或者2的元素a = [1, 1, 1, 2, 2, 3, 4, 5, 1, 2, 3, 4, 2]b = list(filter(lambda x: x!=1 and x!=2, a))print(b)# b: [3, 4, 5, 3, 4]

2021-11-10 13:11:55 2852

原创 lightGBM算法API参数说明

1 lightGBM的安装windows下:pip3 install lightgbmmac下:安装链接2 lightGBM参数介绍2.1 Control ParametersControl Parameters 含义 用法 max_depth 树的最大深度 当模型过拟合时,可以考虑首先降低 max_depth min_data_in_leaf 叶子可能具有的最小记录数 默认20,过拟合时用 feature_fraction 例如

2021-09-13 10:34:58 538

原创 XGBoost API 参数

1 xgboost的安装:官网链接:https://xgboost.readthedocs.io/en/latest/pip3 install xgboost2 xgboost参数介绍xgboost虽然被称为kaggle比赛神奇,但是,我们要想训练出不错的模型,必须要给参数传递合适的值。xgboost中封装了很多参数,主要由三种类型构成:通用参数(general parameters),Booster 参数(booster parameters)和学习目标参数(task parame

2021-09-12 16:34:58 413

原创 tensorflow2.1 构建Vgg16、GoogLeNet-v1、resNet18

一、Vgg16from tensorflow.keras.layers import Conv2D, Dense, BatchNormalization, ReLU, MaxPool2D, Flatten, Dropout, InputLayerfrom tensorflow.keras.models import Sequentialdef make_block(conv_num, filters): """ :param conv_num: 卷积层数量 :para

2021-09-01 11:37:01 476

原创 C语言选择排序

#include<stdio.h>#include<stdlib.h>int main(){ int i, j = 0; int a[] = { 2,3,44,5,1,2,70,77,90,23,45,6,7,88,10,9 }; int n = sizeof(a) / sizeof(a[1]); int temp=0; printf("排序前数组为:\n"); for (i = 0; i <= n - 1; i++) { printf("%4d.

2021-08-28 10:52:18 81

原创 C语言队列的两种实现

### 本文比较注重动手能力,关于各种数据结构的理论知识请查阅书籍或相关网页,代码部分都有注释一、基于循序表的循环队列#include<stdlib.h>#include<stdio.h>#define MaxSize 20typedef struct{ int data[MaxSize]; int front,rear;}squeue, *squlink;//清空队列void Clearsqueue(squlink q){ q->front=

2021-08-20 16:12:25 149

原创 C语言中栈的两种实现方法

一、顺序栈#include<stdio.h>#include<stdlib.h>#define maxsize 64//定义栈typedef struct{ int data[maxsize]; int top;}sqstack,*sqslink;//设置栈空void Clearstack(sqslink s){ s->top=-1;}//判断栈空int Emptystack(sqslink s){ if (s->top&

2021-08-19 22:53:14 641

原创 c语言链表

#include<stdio.h>#include<stdlib.h>struct Student{ int s_number; float s_score; struct Student *next;};struct Student * create(){ struct Student *head=NULL, *p1, *p2; while(1) { p1 = (struct Student *) malloc(sizeof(struct .

2021-07-28 00:26:30 91

原创 C语言 冒泡排序

#include<stdio.h>#include <stdlib.h>int main(){ int array[10]={0}; for(int i=0;i<=9;i++){ int n = rand(); array[i]=n; } for(int i=0;i<=9;i++){ printf("%12d",array[i]); } for(int i=9;i>0;i--){ for(int j=0;j<=i-1;j++.

2021-07-11 01:04:54 95

原创 plt 绘制矩形框

import matplotlib.pyplot as pltimport matplotlib.patches as mpathesimport numpy as npimport mathx = 6.53023y = 3.970426l = math.sqrt(1+2.5*2.5)angle_1 = 0.5194235 angle_2 = math.atan(1/2.5) point_start = (x-l*math.cos(angle_1+angle_2), y-l*math.

2021-04-22 10:38:14 3260

原创 机器学习中的Bagging

一、前言(1)集成学习集成学习通过建立几个模型来解决单一预测问题。它的工作原理是生成多个分类器/模型,各自独立地学习和作出预测。这些预测最后结合成组合预测,因此优于任何一个单分类的做出预测。(2)集成学习中boosting和Bagging在集成学习中boosting是用来解决欠拟合问题,Bagging是用来解决过拟合问题。只要单分类器的表现不太差,集成学习的结果总是要好于单分类器的。二、Bagging和随机森林(1)Bagging集成原理目标:把下面的圈和方块进行分.

2021-04-02 17:02:12 510

原创 决策树API、泰坦尼克号生存预测案例

一、决策树API在sklearn中使用sklearn.tree.DecisionTreeClassifier(criterion=’gini’, max_depth=None,random_state=None)构建决策树其中:criterion 特征选择标准 "gini"或者"entropy",前者代表基尼系数,后者代表信息增益。一默认"gini",即CART算法。 min_samples_split 内部节点再划分所需最小样本数 这个值限制了子树继续划分的条件,如果某节点

2021-03-31 18:21:46 223

原创 机器学习中的特征提取

特征提取是将任意数据(如文本或图像)转换为可用于机器学习的数字特征,特征提取是为了计算机更好的去理解数据。特征提取大体上可以分为三大类:字典特征提取(特征离散化) 文本特征提取 图像特征提取(深度学习)本篇文章中我们只讨论前两种特征提取方法。一、字典特征提取作用:对字典数据进行特征值化。APIsklearn.feature_extraction.DictVectorizer(sparse=True,…)DictVectorizer.fit_transform(X) X:字

2021-03-30 16:48:55 7373

原创 ID3、C4.5、cart决策树的比较

(1)公式:(2)ID3 算法缺点:ID3算法在选择根节点和各内部节点中的分支属性时,采用信息增益作为评价标准。信息增益的缺点是倾向于选择取值较多的属性,在有些情况下这类属性可能不会提供太多有价值的信息. ​ ID3算法只能对描述属性为离散型属性的数据集构造决策树。(3)C4.5算法 做出的改进(为什么使用C4.5要好)​ 用信息增益率来选择属性 ​ 可以处理连续数值型属性 ​ 采用了一种后剪枝方法 ​ 对于缺失值的处理C4.5算法的优缺点​ ...

2021-03-30 11:50:47 1697

原创 基尼值和基尼指数

CART 决策树 [Breiman et al., 1984] 使用"基尼指数" (Gini index)来选择划分属性。CART 是Classification and Regression Tree的简称,这是一种著名的决策树学习算法,分类和回归任务都可用。一、基尼值和基尼指数基尼值Gini(D):从数据集D中随机抽取两个样本,其类别标记不一致的概率。故,Gini(D)值越小,数据集D的纯度越高。数据集 D 的纯度可用基尼值来度量: ...

2021-03-30 11:39:40 5883 1

原创 熵、信息增益、信息增益率

一、熵(1)原理初中物理我们对“熵”这个东西懵懵懂懂,印象中仿佛对物体内部的热效应有关,时隔这么多年在机器学习、深度学习领域的学习中又看见了它的踪影,不免有点让人有点熟悉又陌生的感觉。“熵”这个东西看不见又摸不着,到底什么是“熵”?“熵”是用来干什么的?“熵”是一个系统里面的混乱程度的度量、标尺。系统混乱程度越低,系统的熵值越小,反之越大。我们先从物理学的角度出发,假设相同条件下有一桶冰水和一桶热水,哪一个的熵值会大呢?冰水中的分子热运动速度较慢,内部的分子排布比较有规律。热水内部温

2021-03-29 21:42:45 9218

原创 机器学习分类任务中怎么解决类别不平衡问题

一、准备工作(1)Imblearn安装当遇到数据类别不平衡的时候,我们该如何处理。在Python中,有Imblearn包,它就是为处理数据比例失衡而生的。安装Imblearn,默认是在python3.6版本及以上。在安装的时候注意要使用管理员的权限,否则可能会报错,如果是windows系统,要是用管理员方式打开cmd窗口,如果是linux环境,需要加上sudopip install imbalanced-learn(2)创造类别不平衡数据集from sklearn.dataset

2021-03-29 11:59:56 772 2

原创 分类模型的评估方法

(1)混淆矩阵在分类任务中,预测结果(Predicted Condition)与正确标记(True Condition)之间存在四种不同的组合,构成混淆矩阵,既适用于二分类任务,又适用于多分类任务。(2)精确率(Precision)与召回率(Recall)准确率 =(TP+TN)/ (TP+FP+FN+TN)精确率:预测结果为正例样本中真实为正例的比例(了解) = TP / (TP + FP)召回率:真实为正例的样本中预测结果为正例的比例(查得全,对正样本的区分能力) = TP.

2021-03-28 22:53:14 3024

原创 逻辑回归、肿瘤预测案例

一、逻辑回归(1)定义与使用场景逻辑回归(Logistic Regression)是机器学习中的一种分类模型,逻辑回归是一种分类算法,虽然名字中带有回归。由于算法的简单和高效,在实际中应用非常广泛。应用场景举例:是否为垃圾邮件 是否患病 金融诈骗 虚假账号看到上面的例子,我们可以发现其中的特点,那就是都属于两个类别之间的判断。逻辑回归就是解决二分类问题的一种方法。(2)逻辑回归的输入与输出逻辑回归的输入其实就先线性回归的输出,可以简单的理解h(w)就是逻辑回归的输入。..

2021-03-28 20:47:36 736

原创 sklearn中线性回归API介绍、波士顿房价预测

一、线性回归api(1)通过正规方程优化sklearn.linear_model.LinearRegression(fit_intercept=True)通过正规方程优化 参数 fit_intercept:是否计算偏置 属性 LinearRegression.coef_:回归系数 LinearRegression.intercept_:偏置 (2)通过梯度下降方法优化sklearn.linear_model.SGDRegressor(loss="squared_loss"

2021-03-27 11:58:13 804

原创 sklearn 数据集划分和数据预处理

机器学习一般的数据集会划分为两个部分:训练数据:用于训练,构建模型 测试数据:在模型检验时使用,用于评估模型是否有效划分比例:训练集:70% 80% 75% 测试集:30% 20% 25%数据集划分apisklearn.model_selection.train_test_split(arrays, *options) 参数: x 数据集的特征值 y 数据集的标签值 test_size 测试集的大小,一般为float random_state 随机数种子,不同的种

2021-03-25 11:12:37 1091

原创 机器学习中常用的距离

1 距离公式的基本性质2 常见的距离公式2.1 欧式距离(Euclidean Distance):欧氏距离是最容易直观理解的距离度量方法,我们小学、初中和高中接触到的两个点在空间中的距离一般都是指欧氏距离。举例:X=[[1,1],[2,2],[3,3],[4,4]];经计算得:d = 1.4142 2.8284 4.2426 1.4142 2.8284 1.41422.2曼哈顿距离(Manhattan Distance):...

2021-03-18 22:32:17 456

原创 sklearn实现K-近邻算法、鸢尾花分类、facebook签到位置预测

1 K-近邻算法(KNN)概念K Nearest Neighbor算法又叫KNN算法,这个算法是机器学习里面一个比较经典的算法, 总体来说KNN算法是相对比较容易理解的算法。如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。2 KNN算法流程1)计算已知类别数据集中的点与当前点之间的距离2)按距离递增次序排序3)选取与当前点距离最小的k个点4)统计前k个点所在的类别出现的频率5)返回前k个点出现频率最高的类别作为

2021-03-18 22:08:44 239

原创 标准差、方差、协方差、协方差矩阵

1、标准差、方差假设一组样本数据是x1, x2, x3, x4, ......xn ,表示这组数据的平均数,所以样本到的平均距离也就是标准差S表示如下:标准差的平方为方差,方差的计算公式如下:标准差和方差都是衡量一组数据的离散程度的统计量,在实际的运算中标准差和方差越小,表示离散程度越小,也就是数据越稳定。2、协方差、协方差矩阵https://zhuanlan.zhihu.com/p/92705299...

2021-03-18 20:28:38 1615

原创 目标检测IOU计算

IOU是交并比(Intersection-over-Union)是目标检测中使用的一个概念是产生的候选框(candidate bound)与原标记框(ground truth bound)的交叠率,即它们的交集与并集的比值。最理想情况是完全重叠,即比值为1。在多目标跟踪中,用来判别跟踪框和目标检测框之间的相似度。IoU是两个区域的交除以两个区域的并得出的结果from __future__ import print_functionfrom numba import jitimport

2021-03-17 22:20:58 416

原创 多目标追踪

1.多目标跟踪分类多目标跟踪,即MOT(Multi-Object Tracking),也就是在一段视频中同时跟踪多个目标。MOT主要应用在安防监控和自动驾驶等领域中。这里的目标状态可以是目标的位置信息、目标是否存在信息。1.1 初始化方法多目标跟踪问题中并不是所有目标都会在第一帧出现,也并不是所有目标都会出现在每一帧。那如何对出现的目标进行初始化,可以作为跟踪算法的分类表征。常见的初始化方法分为两大类,一个是Detection-Based-Tracking(DBT),一个是Detec

2021-03-17 20:02:07 2187 1

原创 opencv中的dnn模块

1.1. DNN模块简介OpenCV中的深度学习模块(DNN)只提供了推理功能,不涉及模型的训练,支持多种深度学习框架,比如TensorFlow,Caffe,Torch和Darknet。OpenCV为什么要实现深度学习模块? 轻量型。DNN模块只实现了推理功能,代码量及编译运行开销远小于其他深度学习模型框架。 使用方便。DNN模块提供了内建的CPU和GPU加速,无需依赖第三方库,若项目中之前使用了OpenCV,那么通过DNN模块可以很方便的为原项目添加深度学习的能力。

2021-03-16 17:30:56 7663 1

原创 imutils工具库使用

1.imutils功能简介imutils是在OPenCV基础上的一个封装,达到更为简结的调用OPenCV接口的目的,它可以轻松的实现图像的平移,旋转,缩放,骨架化等一系列的操作。安装方法:pip install imutils在安装前应确认已安装numpy,scipy,matplotlib和opencv。2.imutils的使用方法2.1 图像平移OpenCV中也提供了图像平移的实现,要先计算平移矩阵,然后利用仿射变换实现平移,在imutils中可直接进行图像的平移。tr

2021-03-15 20:49:28 3762 1

原创 使用numba 对python数学运算加速

1 numba介绍umba是一个用于编译Python数组和数值计算函数的编译器,这个编译器能够大幅提高直接使用Python编写的函数的运算速度。numba使用LLVM编译器架构将纯Python代码生成优化过的机器码,通过一些添加简单的注解,将面向数组和使用大量数学的python代码优化到与c,c++和Fortran类似的性能,而无需改变Python的解释器。numba的编译方式如下图所示:为什么选择numba?虽然有 cython 和 Pypy 之类的许多其他编译器,选择Numbade

2021-03-15 15:28:32 481

原创 损失函数 DiceLoss 的 Pytorch、TensorFlow 实现

转载于:http://www.79tui.com/happy/627148.html

2021-03-11 16:58:05 1051

原创 多分类交叉熵损失计算

loss = -[0* ln(0.05) + 1 * ln(0.95) + 0 * ln(0) + 0 * ln(0.1) + 0 * ln(0.8) + 1* ln(0.1)] / 2 = 1.177

2021-03-09 17:19:12 1063

原创 Django配置使用mysql数据库

Django配置使用mysql数据库一、安装mysql数据库(网上有很多教程)win10的不在此进行阐述,下面贴出ubuntu系统mysql环境搭建https://blog.csdn.net/qq_39197555/article/details/113813262?spm=1001.2014.3001.5501二、创建django项目参考https://blog.csdn.net/qq_39197555/article/details/113809570?spm=1001.2014.3

2021-02-26 18:18:32 175

原创 Django视图之路由分发

通过浏览器来请求一个页面时,使用视图函数来处理这个请求,视图函数处理之后要给浏览器返回页面内容。一、视图函数的使用视图函数通常定义在每个应用的views.py文件内。视图内定义的函数必须有一个request参数。视图处理完全请求要返回一个HttPResponse对象的实例from django.shortcuts import renderfrom django.http import HttpResponse# Create your views here.def index(re

2021-02-25 18:43:23 149

原创 Django2.x中url路由的path()与re_path()参数解释

参考文献:https://www.cnblogs.com/cpl9412290130/p/9611293.html

2021-02-24 00:46:45 131

原创 Django后台管理

(1)本地化——语言和时区本地化在项目的Setting.py 文件中去修改(2)创建管理员python manage.py createsuperuser此时可以通过 pythonmanage.py runserver 启动后台服务我们可以在访问http://127.0.0.1:8000/admin 进入后台管理页面 输入用户名和密码此时我们的站点里面没有我们的数据表,需要在应用下的admin.py文件中去注册。(3)注册模型类在应用下的adm...

2021-02-23 15:04:22 107

原创 数据库范式学习和ER模型

第一范式(1NF):强调的是字段的原子性,即一个字段不能够再分成其他几个字段。 说明:这种表结构设计就没有达到 1NF,要符合 1NF 我们只需把字段拆分,即:把 contact 字段拆分成 name 、tel、addr 等字段。第二范式(2NF)满足 1NF的基础上,另外包含两部分内容:一是表必须有主键。二是非主键字段必须完全依赖于主键,而不能只依赖于主键的一部分。举例:OrderDetail表中的主键为OrderID(订单ID)和ProductID(产品...

2021-02-21 20:57:23 197

原创 mysql-外键-视图-事务-索引

一、外键外键的作用:防止无效信息的插入注意: 关键字: foreign, 只有innodb数据库引擎 外键本身是一种约束,和 not null 等约束一样。二、视图 视图就是一个能够把复杂SQL语句的功能封装起来的一个虚表。所以我们在创建视图的时候,主要的工作就落在创建这条SQL查询语句上。视图是对若干张基本表的引用,一张虚表,不存储具体的数据(基本表数据发生了改变,视图也会跟着改变)。 视图的好处:方便操作,特别是查询操作,减少复杂的...

2021-02-21 00:55:09 193 2

原创 mysql实战操作

数据准备-- 创建 "京东" 数据库create database jing_dong charset=utf8;-- 使用 "京东" 数据库use jing_dong;-- 创建一个商品goods数据表create table goods( id int unsigned primary key auto_increment not null, name varchar(150) not null, cate_name varchar(40) not null,

2021-02-20 21:53:54 148

原创 mysql高级查询

数据准备一、分组查询组查询就是将查询结果按照指定字段进行分组,字段中数据相等的分为一组。分组查询基本的语法格式如下:GROUP BY 列名 [HAVING 条件表达式] [WITH ROLLUP]说明:列名: 是指按照指定字段的值进行分组。 HAVING 条件表达式: 用来过滤分组后的数据。 WITH ROLLUP:在所有记录的最后加上一条记录,显示select查询时聚合函数的统计和计算结果1)查询每种性别的人数select gender, count(*) f

2021-02-20 18:14:13 430

常用预训练网络权重.txt

包含了常用的预训练网络的模型: inception_v3_weights_tf_dim_ordering_tf_kernels.h5 inception_v3_weights_tf_dim_ordering_tf_kernels_notop.h5 inception_v3_weights_tf_dim_ordering_tf_kernels_notop_update.h5 inception_v3_weights_tf_dim_ordering_tf_kernels_update.h5 mobilenet_v2_weights_tf_dim_ordering_tf_kernels_1.0_224_no_top.h5 resnet50_weights_tf_dim_ordering_tf_kernels.h5 resnet50_weights_tf_dim_ordering_tf_kernels_notop.h5 vgg16_weights_tf_dim_ordering_tf_kernels.h5 vgg16_weights_tf_dim_ordering_tf_kernels_notop.h5 vgg19_weights_tf_dim_ordering_tf_kernels.h5 vgg19_weights_tf_dim_ordering_tf_kernels_notop.h5 xception_weights_tf_dim_ordering_tf_kernels.h5 xception_weights_tf_dim_ordering_tf_kernels_notop.h5

2020-04-26

Python美食小程序带Djang后台

本程序适合初学小白,初步接触Django和微信小程序开发结合的童鞋可以借鉴!

2019-01-11

空空如也

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

TA关注的人

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