自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL与Python的连接

我们可以使用或者pymysql三方库来接入 MySQL 数据库并实现数据持久化操作。推荐大家使用纯 Python 的三方库pymysql,因为它更容易安装成功。

2025-05-14 14:02:31 963

原创 MySQL中的索引

索引是关系型数据库中用来提升查询性能最为重要的手段。关系型数据库中的索引就像一本书的目录,我们可以想象一下,如果要从一本书中找出某个知识点,但是这本书没有目录,这将是一件多么可怕的事情!创建索引虽然会带来存储空间上的开销,但是在牺牲空间后换来的查询时间的减少也是非常显著的。对于MySQL 8.0 版本的 InnoDB 存储引擎来说,它支持三种类型的索引,分别是 B+ 树索引、全文索引和 R 树索引。

2025-05-13 09:00:00 728

原创 MySQL中的视图、函数和过程

对于互联网产品开发,我们一般建议让数据库只做好存储,复杂的运算和处理交给应用服务器上的程序去完成,如果应用服务器变得不堪重负了,我们可以比较容易的部署多台应用服务器来分摊这些压力。过程(又称存储过程)是事先编译好存储在数据库中的一组 SQL 的集合,调用过程可以简化应用程序开发人员的工作,减少与数据库服务器之间的通信,对于提升数据操作的性能也是有帮助的。但是MySQL 中的函数是可以执行 SQL 语句的。简单的说,视图就是虚拟的表,但与数据表不同的是,数据表是一种实体结构,而视图是一种虚拟结构。

2025-05-12 09:00:00 729

原创 MySQL中的Json函数与窗口函数

json类型有两种:分别为为什么要引入json类型?现在很多产品的用户登录都支持多种方式,例如手机号、微信、QQ、新浪微博等,但是一般情况下我们又不会要求用户提供所有的这些信息,那么用传统的设计方式,就需要设计多个列来对应多种登录方式,可能还需要允许这些列存在空值,这显然不是很好的选择;另一方面,如果产品又增加了一种登录方式,那么就必然要修改之前的表结构,这就更让人痛苦了。但是,有了 JSON 类型,刚才的问题就迎刃而解了,我们可以做出如下所示的设计。对于json查询的SQL语句与之前的不同,使用和。

2025-05-11 18:50:26 846

原创 关于解决MySQL的常见问题

这有可能是因为MySQL服务没有开启。打开系统配置(直接搜索即可),查看MySQL服务是否开启。此时显示的是已停止。确定是这个问题。现在打开计算机管理(直接搜索即可)。找到MySQL右击选择启动。现在再去输入密码即可使用服务。

2025-05-11 17:51:52 196 1

原创 MySQL的权限赋予与收回

数据库服务器通常包含了非常重要的数据,可以通过访问控制来确保这些数据的安全。可以为指定的用户授予访问权限或者从指定用户处召回指定的权限。

2025-05-10 09:00:00 163

原创 MySQL相关查询

将上一章末尾的相关数据进行插入到数据库中,下面进行查找,查找有不同的方法不同的形式,大家可以跟着一起学习。

2025-05-09 11:21:05 854

原创 MySQL的插入、删除和修改

使用insert方法进行插入,插入的方式包括:插入完整的行、插入行的一部分、插入多行、插入查询的结果。因为在上一章中我们建立college表时,第一个col_id是自增字段,所有可以是使用default默认值。也可以针对不同的列进行插入(选择性插入)推荐大家使用下面这种做法,指定为哪些字段赋值,这样做可以不按照建表时设定的字段顺序赋值,可以按照values前面的元组中给定的字段顺序为字段赋值,但是需要注意,除了允许为null和有默认值的字段外,其他的字段都必须要一一列出并在values。

2025-05-09 09:30:42 445

原创 MySQL数据库创建、删除、修改

我们以学校体系进行建表。将数据库命名为create database相同四个关键的实体分别是学院、老师、学生和课程,其中,学生跟学院是从属关系,这个关系从数量上来讲是多对一关系,因为一个学院可以有多名学生,而一个学生通常只属于一个学院;同理,老师跟学院的从属关系也是多对一关系。一名老师可以讲授多门课程,一门课程如果只有一个授课老师的话,那么课程跟老师也是多对一关系;如果允许多个老师合作讲授一门课程,那么课程和老师就是多对多关系。简单起见,我们将课程和老师设计为多对一关系。

2025-05-08 20:20:03 1079

原创 MySQL安装

mysql安装

2025-05-08 14:46:29 213

原创 QtDesigner中常用的Buttons

这一章主要对于其他的Button进行介绍。

2025-04-30 11:45:10 803

原创 QtDesigner中的Spacers弹簧/间隔器

关于Qtdesigner中Spacer的介绍

2025-04-27 12:41:04 292

原创 QtDedigner中常用Layouts布局方式

关于designer中布局Layouts的一些简单介绍

2025-04-27 12:05:23 811

原创 QtDesigner中Button控件详解

关于designer中Button的相关常见用法。

2025-04-25 17:26:31 1041

原创 QtDesigner中Label控件详解

qtdesigner中label的相关用法

2025-04-24 11:45:33 929

原创 QtDesigner入门

简单来说,当我们写好一段代码,已经实现了某些我们想要实现的功能后。希望实现的每一个功能可以可视化,通过按钮等功能完成人机交互。Qt Designer 是 Qt 框架提供的​​可视化界面设计工具​​,支持通过拖放控件快速构建图形用户界面(GUI),适用于 C++、Python(PyQt/PySide)等语言开发。接下来我以pyqt5举例(Anaconda)首先:你需要先创建一个环境(或者在你已有的环境下)安装pyqt5。此时你就已经创建好了一个名为Qt的环境了。如果你下次想打开这个环境:第二步:

2025-04-23 15:32:46 417

原创 选择适合自身的灰度化(RGB转灰度,HSV转灰度,LAB转灰度)

已有三种灰度化图像,使用13种方法确定最终选择的灰度化方法

2025-03-10 17:13:41 397

原创 直线检测(持续更新)

霍夫变换是图像处理中的一种特征提取技术,通过投票算法检测识别具有特定几何形状的物体。我们这篇文章,主要对直线进行检测。1.2 Hough变换原理我们看见直角坐标系中有两个点A B,他们构成了一条直线y=kx=b。知道了斜率k和截距b就可以确定一条直线。我们可以将这个坐标系看成一个笛卡尔空间。往深处思考一下,其实x就是我们的输入,k和b就是参数,y就是输出。就是当我们知道一个x,就一定知道直线上对于的点。接下来,我们就要将笛卡尔空间转化为霍夫空间。其实就是需要将直角坐标系上的点转化为极坐标上的点。

2024-10-17 14:42:05 2797

原创 骨架提取(持续更新)

骨架提取是图像处理或计算机视觉中的一种技术,用于从二值化图像中提取物体的中心线或轮廓,通常称为“骨架”或“细化图像”。这一技术主要用于简化形状表示,同时保留物体的拓扑结构。这里我们强调了,是对二值化图像中进行提取。

2024-10-13 21:11:07 1560 1

原创 RGB HSV LAB 灰度图之间的爱恨情仇(持续更新)

灰度图只有一个亮度通道,我们常常会看见将RGB图转化为灰度图。灰度可以理解为图像中像素的亮度值。在灰度图中,最黑的部分用灰度值 0 表示,最白的部分用灰度值 255 表示(对于 8 位灰度图像而言)。介于两者之间的灰度值则代表了不同程度的灰色。例如,灰度值为 128 的像素呈现出中等亮度的灰色。首先了解HSV中三个字母分别代表什么含义:H(Hue)色相,S(Saturation)饱和度,V(Value)明度/亮度。

2024-10-12 10:34:34 1348

原创 环境配置!

环境搭建

2024-09-07 11:07:09 1356

原创 多分类问题(Softmax Classifier)

之前提到的分类任务都是二分类,也就是是或否。本节提到的是多分类任务。此节会运用到之前提到的MNIST,也是就数字分类任务,此时就是多分类(10)了。

2024-08-14 17:37:35 1338

原创 卷积神经网络(Advanced CNN)(2)

上一章完成的卷积神经网络主要是串行的,比较简单。现在我们看一些比较复杂的神经网络结构。

2024-08-14 10:37:35 379

原创 卷积神经网络(Basic CNN)(1)

在之前提到,将一个张量对其进行全连接后,会出现例如第一行的最后一位与第二行的第一位最终会连接在一起,丧失了一些原有的空间信息。二维卷积,按照其原始的空间结构进行保存。目标:明确输入和输出的维度(方便我们进行不同的卷积操作)方法:构建特征提取器feature extraction,构建分类器classification(全连接)首先由于全连接会丢失空间信息,因此我们通常先对其进行特征提取,使用到卷积,下采样等(其中一些步骤信息可见上图)。最后对其进行全连接,方便其进行分类操作。

2024-08-13 18:14:14 969

原创 加载数据集(Dataset and Dataloader)

dataset主要是用于构造数据集(支持索引),dataloader可以拿出一个mini-batch供我们快速使用。

2024-07-19 10:12:42 921

原创 处理多维特征的输入(Multiple Dimension Input)

输入x有多个特征features,最终得到输出y的类别。

2024-07-17 11:45:08 626

原创 Logistic回归(Logistic Regression)

机器学习的分类问题,使用logistics回归(虽然叫回归,但是是做分类任务的)

2024-07-16 21:08:27 858

原创 用Pytorch实现线性回归(Linear Regression with Pytorch)

设计模型(用于计算y_hat(y的预测值)),构造损失函数和优化器(使用PyTorch API),写训练周期(前馈(算loss)+反馈(算梯度)+更新(更新权重))

2024-07-16 14:56:43 839

原创 关于解决各类由于电脑名为中文导致的各类问题

解决方法:Anoconda安装笔记+win10 更改中文用户名为英文_anaconda prompt运行索引含汉字,怎么改成英文-CSDN博客

2024-07-11 16:11:08 302

原创 Python中csv文件的写入和读取

CSV文件是一种纯 文本文件 ,用于存储表格和电子表格信息。内容通常是由文本、数字或日期组成的表格。重要的是,csv文件时以逗号为分隔符的一种文件形式。

2024-06-12 09:03:40 441

原创 抽象,自定义函数,递归

函数执行特定的操作并返回一个值,你可以调用它(调用时可能需要提供一些参数——放在圆括号中的内容)。一般而言,要判断某个对象是否可调用,可使用内置函数callable。此时说明x是不可以调用的,y是可以的。(并非所有的函数都返回值)函数是结构化编程的核心。那么如何定义函数呢?使用def(表示定义函数)语句。上面两行是对于函数的简单定义,最下面是对函数的调用。那现在回到斐波那契数,如果编写一个函数,返回一个由斐波那契数组成的列表呢?前5行都是对于斐波那契数整个函数的定义,最后一行是对其进行调用。

2024-06-06 16:11:53 803

原创 Pytorch线性回归

使用pytorch来重现线性模型的过程,构造神经网络module,构造损失函数loss,构造随机梯度下降的优化器sgd。

2024-06-01 19:44:00 793

原创 Pytorch反向传播算法(Back Propagation)

首先第一层计算的是w1*x+b1,假如说我们的输入x是一个n维的列向量,结果是一个m维的列向量,MM是矩阵相乘,那我们需要的w1是一个m*n的矩阵,相乘得到的结果是一个m维的列向量,需要b1也是一个m维的列向量,ADD表示相加,得到的结果可以看成这个层的输出,但其实这个值还需要放入到下一层进行第二层的运算,而两个的运算过程都差不多,大家可以自己看一下。大家看,在一个线性的运算中,其中不管有多少层,w1,w2都是可以通过计算放在一起的,那最后得到的结果也可以看出来,又是一个新的线性运算。

2024-05-31 11:01:08 977

原创 条件,循环,及其他语句

换而言之,标准值False和None、各种类型(包括浮点数、复数等)的数值0、空序列(如空字符串、空元组和空列表)以及空映射(如空字典)都被视为假,而其他各种值都被视为真,包括特殊值True。这个函数让你能够迭代索引-值对,其中的索引是自动提供的。实际上,这里执行的操作称为序列解包(或可迭代对象解包):将一个序列(或任何可迭代对象)解包,并将得到的值存储到一系列变量中。赋值语句你见过很多,有的给变量赋值,还有的给数据结构的一部分(如列表中的元素和切片,或者字典项)赋值,但还有其他类型的赋值语句。

2024-05-29 23:05:59 921 1

原创 字典的相关知识

方法popitem类似于list.pop,但list.pop弹出列表中的最后一个元素,而popitem随机地弹出一个字典项,因为字典项的顺序是不确定的,没有“最后一个元素”的概念。方法setdefault有点像get,因为它也获取与指定键相关联的值,但除此之外,setdefault还在字典不包含指定的键时,在字典中添加指定的键-值对。这是因为字典是无序的,类似的方法毫无意义。(2)copy:方法copy返回一个新字典,其包含的键-值对与原来的字典相同(这个方法执行的是浅复制,因为值本身是原件,而非副本)。

2024-05-24 17:33:17 774

原创 Pytorch梯度下降算法(Gradient Descent)

其实对于我们将要学的梯度最小函数,目的就是先得到loss损失最小的值,然后根据这个最小的值去得到w。初始点在initial guess这个位置,我们希望找到最小的权重点global cost minimum,我们到底是让这个点左移寻找还是右移寻找呢?此时我们就需要使用到梯度定义。在加上一个x后,如果这个导数值变为负的,说明我接下来函数图像呈现下降的趋势,那根据我们上述所说的寻找一个阶梯最小函数,就是要使函数往小的方向进行。所以我们希望函数图像下降的话,我们就取导数为负的方向。

2024-05-24 11:52:06 706

原创 Pytorch线性模型(Linear Model)

①首先准备好数据集(DataSet)②模型的选择或者设计(Model)③进行训练(Train)大部分模型都需要训练,有些不需要。这一步后我们会确定不同特征的权重④推理(inferring)1,2,3hours会有一个结果2,4,6points。这个就是训练过程,把x和y都给模型,让他自己学。5hours这个没有一个对应的y,这个就是我们的预测过程(相当于上面的题目学完了后,现在写这个题,看能不能写对)。

2024-05-22 17:53:04 1022 1

原创 Pytorch(Overview)

刚刚上面说的计算图算法,我们不需要自己去实现的。我们通常使用现成的deep learning framework 去进行实现(当然也可以自己去写framework,但是这个比我们写深度神经网络要难)我们将会用到的deep learning frameworks是pytorch(facebook),当然还有其他的如TensorFlow(Google),还有一个就是已近和pytorch合并的Caffe(facebook),还有如MxNet。欢迎大家一起学习Pytorch相关知识!!!

2024-05-22 15:47:33 955

原创 字符串(字符串方法)

但其实无论是title还是string.capwords都无法准确满足我们的需求,要实现真正的词首大写(根据你采用的写作风格,冠词、并列连词以及不超过 5个字母的介词等可能全部小写),你得自己编写代码。很多字符串方法都以is打头,如isspace、isdigit和isupper,它们判断字符串是否具有特定的性质(如包含的字符全为空白、数字或大写)。如果找到,就返回子串的第一个字符的索引,否则返 回-1。方法strip将字符串开头和末尾的空白(但不包括中间的空白)删除,并返回删除后的结果。

2024-05-21 22:00:14 668

原创 字符串(字符串的基本操作,设置字符串的格式)

这个运算符的行为类似于C语言中的经典函数printf: 在%左边指定一个字符串(格式字符串),并在右边指定要设置其格式的值。指定要设置 其格式的值时,可使用单个值(如字符串或数字),可使用元组(如果要设置多个值的格 式),还可使用字典(这将在下一章讨论),其中最常见的是元组。设置浮点数(或其他更具体的小数类型)的格式时,默认在小数点后面显示6位小数,并根据需要设置字段的宽度,而不进行任何形式的填充。上面我们在设置宽度的时候,出现不对齐的情况,在指定宽度和精度的数前面,可添加一个标志。但是要注意一个问题。

2024-05-21 20:48:27 1636

空空如也

空空如也

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

TA关注的人

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