范式与反范式-------大白话篇

范式的定义

范式作为一个数据库级别的术语,它是指关系数据库中的关系要满足的一定要求,------即不同的范式;

范式的分类----

范式有六种----
第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、Boyce-Codd范式(BCNF)、第四范式(4NF)和第五范式(5NF)。

啥是范式

说了这么半天,范式反映在数据表层面,举个简单的例子,
某超市管理系统中有这样一张表,
production_name—商品名
price ----零售价
provide-----供应商
在这里插入图片描述如果该张表用于存储商品价格,那么此时想要删除某一个供应商,那么就要删除对应的商品价格信息,可能该超市改供应商的产品卖光了只有别的供应商的同类产品,那么怎么办呢?

于是这里就涉及到了范化,在创建一个数据库的过程中,范化是将某表转化为一些表的过程,这使得在查询数据库中的数据结果更加准确,同时增加和删除表中的数据对别的表以及字段影响降到最小;
范化的目的并不是简单的将表拆分而是将拆分的表通过键来关联起来,每张表的列都是不可再分的最小数据单元;
于是我们可以将上表拆分成-----
在这里插入图片描述两张表通过商品字段进行关联;
这时候删除供应商并不会删除商品的价格信息.

第一范式

所谓第一范式就是指数据库表的每一列都不能在分割了,
例如 姓名字段 ,在有些数据库中会将该字段拆分成姓 和 名,
就像上表一样,在查询数据的时候不需要额外的拆分处理;

总结一句话就是,第一范式要求字段的数据的原子性;

举个例子体会一下吧------以下信息由excel制作

在这里插入图片描述### 第二范式
第二范式是在第一范式的基础上进行的,通过主键依赖来进行判断表中应该存在的字段;
比如—
在一家培训机构中系统中有这样一张表-------
主键----教师姓名与班级作为主键,一个老师最多能交一个班级,

在这里插入图片描述
通过主键能分析出的信息----
主键----姓名与班级,
性别跟教师有关-----即性别依赖于教师,
编号跟教师有关----即编号依赖于教师,
授课课时依赖于授课开始时间与结束时间,
课时费依赖于授课课时和教师等级,教师等级依赖于教师即课时费间接依赖于教师,
于是就分析出该表有数据不依赖于主键和间接依赖于主键的信息,所以按照第二范式的要求该表是不符合的,
所以可以做如下修改:
1,删除主键,
2,拆分表格使其符合第二范式要求;
在这里插入图片描述要求表中的字段属性完全依赖于主关键字,如果出现部分依赖或者不依赖的字段,则需要将他们拆分到另一张表中

总结-----非主属性要要完全依赖于主键;

举个很容易理解的案例----
在这里插入图片描述

第三范式

减少数据冗余,上表中没有必要在第二张表中在添加教师姓名,性别等字段,因为通过关联就可以找到这两种属性;

一般在设计表的时候考虑到范式的前三各阶段;

反范式

啥是反范式?
听名字就知道跟范式反着来,你不让我干这事,我偏干;
举个例子就是上表中我要查询教师的课时费,需要将两张表连结起来查,反范式就是我只需要查询右半部分的表,但是右半部分信息不全,只好补全数据,这样只通过查询一张表来获得想要的查询数据;

反范式一定程度上提高了数据的冗余,但是提高了查询效率------多表查询效率低;

卷积神经网络(CNN)是一种常用于图像处理和模式识别的深度学习模型。它的设计灵感来自于生物学中视觉皮层的神经元结构。为了用通俗的语言解释CNN,我们可以用以下方式来理解它: 假设你要识别一张猫的图片。首先,你的大脑会将这张图片的像素点转化成一系列数字,并且记录下它们的位置和颜色。然后,大脑会将这些数字输入到“卷积层”中。 在卷积层中,会有很多个“过滤器”。这些过滤器可以视为一双眼睛,它们通过抓取图片的不同特征来帮助你识别物体。每个过滤器都在图片上滑动并计算一个“特征图”,这个特征图描述了所检测到的特定特征。例如,一个过滤器可以检测到猫的边缘,另一个可以检测到猫的颜色等等。当所有过滤器完成计算后,就会得到一些不同的特征图。 在“池化层”中,每个特征图都会被压缩,去除一些不重要的信息。这样可以减少需要计算的数据量,并且使得特征更加鲁棒和不变形。 最后,在全连接层中,所有的特征图都被连接起来,形成一个巨大的向量。接下来,这个向量会通过一些神经元节点,最终输出识别结果,也就是“这是一张猫的图片”。 CNN的一个重要特点是参数共享,这意味着每个过滤器会在整个图片上进行计算,而不仅仅是某个局部区域。这样可以减少需要计算的参数量,提高训练速度和模型的泛化能力。 总结一下,CNN通过卷积层来提取图像的特征,并通过池化层降低特征的维度。最后,通过全连接层将所有特征连接起来并输出结果。这种结构使得CNN非常适合于图像分类和识别任务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CodeMartain

祝:生活蒸蒸日上!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值