自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(75)
  • 资源 (1)
  • 收藏
  • 关注

原创 Java中按照不同字段进行排序

使用更通用的 comparing 方法// 按照 a 降序排列// 按照 b 升序排列```此处看到getter的好处,在a,b类型变化时,排序代码基本保持不变。### 4. 如何实现 Comparable假设现在需求并不是通过不同的字段来进行灵活多样的排序,而是结合不同字段实现更复杂的排序行为,此时就需要使用 Comparable 接口,例如通过a+b实现升序排序,或者先通过a进行升序排序,当a相等时通过b升序排序等等,以后者为例,实现代码如下:```java。

2025-03-16 21:44:26 373

原创 大模型微调技术基础(一)

适用场景:如果你的任务涉及到文本生成、对话模拟等需要创造性输出的情况,那么GPT可能是更好的选择;而对于那些要求深刻理解文本语义、进行精准信息抽取或分类的应用,BERT则提供了更强大的支持。性能对比:两者各有千秋,具体哪个更好取决于你的具体需求和应用背景。例如,在需要深度理解文本含义的任务上,BERT可能会表现得更好;而在创造性和流畅度至关重要的场景下,GPT则更为合适。(1)全参数微调 3.5B 更优数据量极大且与预训练领域无关(如从通用文本迁移到蛋白质序列预测),全参数训练可彻底调整模型。

2025-03-11 22:17:50 907

原创 常见设计模式解读(二)

策略模式(Strategy Pattern) 是一种行为设计模式,它允许在运行时选择算法或行为。通过将算法封装在独立的类中,使得它们可以相互替换。策略模式让算法的变化独立于使用它的客户端。意图:定义一系列算法,把它们一个个封装起来,并且使它们可以互相替换。该模式使得算法可独立于使用它的客户而变化。Strategy(策略接口):定义所有支持算法的公共操作接口。Context使用这个接口来调用ConcreteStrategy定义的算法。

2025-03-11 10:00:00 869 1

原创 常见的设计模式和应用场景(一)

确保一个类只有一个实例,并提供全局访问点。工厂方法模式(Factory Method Pattern) 是一种创建型设计模式,它提供了一种创建对象的方式,但允许子类决定实例化哪一个类。工厂方法模式将对象的创建过程延迟到子类中实现。Product(抽象产品):定义工厂方法所创建的对象的接口。ConcreteProduct(具体产品):实现Product接口的具体类。Creator(抽象工厂):声明工厂方法,该方法返回一个Product类型的对象。

2025-03-10 19:00:00 726

原创 算法题--找零钱与集合覆盖

动态规划:适用于所有情况,时间复杂度为 O(n * m),其中 n 是金额,m 是硬币种类的数量。空间复杂度为 O(n)。贪心算法:仅适用于某些特定的硬币面值组合,时间复杂度较低,但不保证能得到最优解。在实际应用中,除非确定硬币面值组合符合贪心算法的要求(如美国货币系统),否则建议使用动态规划方法以确保得到正确的结果。

2025-03-10 09:30:00 622

原创 MySQL中IN关键字与EXIST关键字的比较

答:当 id 无 NULL 值且唯一时,两者功能一致。另外,第二句中的子查询使用 SELECT 1(最佳实践,无需实际列值)。通常情况下(id是主键,tableA 和 tableB 数据量较大,id 字段有索引。),第二句效率更高。,生成一个临时结果集(如。在上述流程中,子查询。是否在临时结果集中。

2025-03-09 18:00:00 1389

原创 ER图绘图方式

实体-关系图(ER Diagram,Entity-Relationship Diagram)是数据库设计的核心工具,用于描述实体(表)、属性(字段)及实体之间的关系。通过清晰的ER图,可以有效避免数据库设计中的逻辑漏洞,提升开发效率!

2025-03-09 08:00:00 1961

原创 MySQL特殊字符查询

推荐使用LIKE或REGEXP:简洁直观,适用于简单场景。性能考虑:所有方法均需全表扫描(除非使用全文索引),但LIKE '%/%'和REGEXP的效率可能略低于LOCATEINSTR(因正则表达式复杂度)。选择依据:根据代码可读性、习惯或数据库版本特性灵活选择。在 MySQL 的LIKE语法中,如果需要在字符串中匹配特殊字符或,需要使用转义符(默认是)来取消它们的特殊含义。以下是具体写法:以like语法为例,若字符换为\或%,语句如何编写如果默认的转义符不够直观,可以用ESCAPE。

2025-03-08 21:30:00 353

原创 PPP协议(Point-to-Point Protocol)工作原理详解

是一种数据链路层协议,主要用于在两个直接连接的节点(如计算机与服务器、路由器之间)建立可靠的数据通信。它广泛应用于拨号上网、广域网(WAN)连接等场景,支持多种网络层协议(如IP、IPX),并提供身份验证、错误检测等功能。PPP通过分层协商机制实现了简单、可靠的点对点通信,是早期互联网接入的关键技术之一。尽管现代网络中使用减少,但其设计思想仍影响深远。

2025-03-08 09:15:00 260

原创 Linux下find命令的使用方法详解

支持丰富的条件组合和操作。命令能显著提升文件管理效率,结合管道符(命令是用于搜索文件和目录的。在 Linux 中,

2025-03-07 21:30:00 364

原创 Linux文件挂载与卸载以及文件系统检查

掌握这些命令后,可以高效管理磁盘和文件系统,但在生产环境中建议先在测试环境验证操作!如果根文件系统损坏,需在恢复模式或 Live CD 中运行。:查看磁盘/分区的 UUID 和文件系统类型。:列出所有块设备(磁盘、分区):查看已挂载磁盘的空间使用情况。设置开机自动挂载(编辑。

2025-03-07 09:00:00 656

原创 Linux下AWK命令使用方法

擅长按列处理结构化数据(如日志、CSV)。它以逐行方式处理文本,支持条件过滤、计算、格式化输出等。AWK 是文本处理的瑞士军刀,掌握后可高效处理日志、报表等结构化数据。查阅完整文档,可进一步探索其高级功能(如多维数组、位操作等)。是 Linux 下功能强大的。

2025-03-06 21:27:30 891

原创 Simple-STNDT使用Transformer进行Spike信号的表征学习(三)训练与评估

【代码】Simple-STNDT使用Transformer进行Spike信号的表征学习(三)训练与评估。

2024-06-23 21:21:50 301 1

原创 Simple-STNDT使用Transformer进行Spike信号的表征学习(二)模型结构

核心编码层,加入了将空间注意力编码。

2024-06-23 21:10:56 250

原创 Simple-STNDT使用Transformer进行Spike信号的表征学习(一)数据处理篇

原代码使用了 Ray+Config文件进行了参数搜索,库依赖较多,数据流过程不明显,代码冗杂,这里进行了抽丝剥茧,将其中最核心的部分提取出来。主要是加载锋值序列数据,将其采样为5ms的时间槽。数据、评估标准见NLB2021。中的数据并创建dataset。

2024-06-23 21:05:06 518

原创 CS224N第二课作业--word2vec与skipgram

word2vec 的关键思想是: 给定一个中心词ccc, 一个大小为 nnn 的窗口, 那么相对于 ccc 的上下文就是 OOO, 例如在文本: 中, 若 ccc 为 , n=2n=2n=2, 则 OOO 为 这4个单词.因此, Skip-gram word2vec 的目的就是学习一个概率分布: P(O∣C)P(O|C)P(O∣C). 特别的, 对于一个特定的中心词 ccc 和一个特定的上下文单词 ooo, 我们有: P(O=o∣C=c)=exp⁡(uoTvc)Σw∈Vocabexp⁡(uwTvc)P

2024-04-12 21:23:11 1262 2

原创 HuggingFace踩坑记录-连不上,根本连不上

这个问题得到了很快的解决,通过报错的提示,还有命名,大概就能猜出来。的主页,又是改环境变量又是下载下载工具的,给的例子也一点不具体。实际根本不好用,命令行配置太多,然后名字有太长,实际上它的作用也就是把。(附注:你当然可以通过代码或者命令行指定匹配规则进行过滤来指定下什么东西,但是这样看着太冗长,感觉不如自己手下来的方便直观)比如这里我给了一个长长的句子,大概描述了我刚刚踩的坑(你也知道这是negative啊)这些东西并非全都用得到吧,下下来是需要好很长时间的吧,但方法肯定是有的,网上大多数方法都是照搬。

2024-04-05 16:57:46 8068 3

原创 CS224N课程笔记,第一课,词向量的演变

Word vectors, feed-forward networks, recurrent networks, attention, encoder-decoder models, transformers, large pre-trained language models, Word meaning, dependency parsing, machine translation, question answering, Distributional semantics大家好.欢迎来到斯坦福大学的CS

2024-04-02 15:09:58 1085

原创 CS224N第一课作业--词向量与共现矩阵

light 常见含义灯光、轻的、轻松的、点燃等等含义, 从输出来看, 这包含了它的同义词和反义词, 反义词例如 dark 是黑暗的, heavy 是重的, bule 忧郁的等等.现在我们有了词向量,我们需要一种方法来量化单个词之间的相似性,根据这些向量。接下来读入词库, 生成词表, 计算共现矩阵, 最后执行降维, 挑选一部分词汇将他们可视化。统计所有出现的单词, 为它们排序, 返回词表和词表长度.个单词, 把它们合并为矩阵, 同时返回单词编号字典.中单词的索引, 因此若词表的大小为 V, 则。

2024-04-01 16:27:03 1111

原创 Neural Latents Benchmark: 尖锋序列潜变量模型

神经科学的中心追求是了解大脑丰富的感觉,运动和认知功能是如何从神经元群体的集体活动中产生的。为此,我们正在目睹系统神经科学的巨大变化,因为十年来神经接口技术的快速发展已经开始使大量神经元群体的同时活动成为可能 [1]。因此,神经科学家越来越多地从各种大脑区域和各种行为中捕捉到高维度和动态的活动肖像。由此产生的数据集可能会阻碍传统的分析方法,这些方法是围绕一次或少数几个神经元的记录而设计的。为了应对日益增加的数据复杂性,计算神经科学家正在产生强大的方法来揭示和解释神经种群活动的结构。

2024-03-28 08:00:00 844

原创 MyTlias-员工信息管理系统(八)-异常、事务与AOP

它们的区别是, 在共用事务的情景下, a 中代码若抛出了异常, b中的所有操作也会一起撤销, 同理, b中代码出现异常也可能影响a的执行.另外, 异常可能导致数据的不一致性, 例如在需要连续完成的动作间产生了异常, 除了需要进行异常处理并产生错误报告外, 还需要事务特性的支持, 它需要维护代码块执行的原子性., 事务传播行为:指的就是当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行事务控制。而在后一种情景, 两个事务独立进行, a 中的异常不会影响 b 的进行(只要事务b开启了)

2024-03-27 18:00:00 833

原创 MyTlias-员工信息管理系统(七)-登录认证2

定义一个类, 实现 Filter 接口,并重写其所有方法.

2024-03-27 08:00:00 764

原创 MyTlias-员工信息管理系统(六)-登录认证

在未登录情况下,我们也可以直接访问部门管理、员工管理等功能。因此需要登录认证功能。一是登录功能, 也就是在登录界面输入账号密码,经过数据库校验(也即检查账号密码是不是存在的)返回查询结果, 那么前台根据查询结果决定是否跳转到后台管理页面.第二个是认证功能, 这也是较为核心的功能, 也即需要检查用户的登录状态, 未登录时如果直接访问后台管理页面的url, 应当重定向回登录页面.

2024-03-26 18:00:00 1073

原创 MyTlias-员工信息管理系统(五)-yml配置

OSS的参数直接放在代码中, 这不符合开发思想, 一个合理的方法是使用 yml 配置, 将配置文件改为 application.yml. 其好处是以数据为中心, 简洁且层次清晰. properties 文件层次不够清晰。在 java 文件中, 对连接四要素单独用变量存放, 并使用 @Value(${})注解, 此时, 需要把这些关于连接配置的属性单独放在一个实体类。** 注解, 给定前缀, 属性名保持一致, 即可自动注入.

2024-03-26 08:00:00 407

原创 MyTlias-员工信息管理系统(四)-新增员工与OSS服务

然而, 尝试了许久环境变量相关操作无法正常获取 ACCESS KEY. 因此最终还是把访问密钥放在了代码中(这样看起来似乎十分不合规范), 在 api 接口中, 上传图片的请求方式为 post, 参数即为上传的图片, 可使用 MultipartFile 接收. 创建一个 contoller 处理该请求, 它接收上传过来的 file stream, 上传到 oss, 接着返回访问路径. 前台收到响应后就知道了 url, 随后在点击确定新建时该url就被封装到请求参数实体的url中, 因此, 你惊讶的发现,

2024-03-25 18:00:00 779

原创 MyTlias-员工信息管理系统(三)-条件分页查询

注意 SQL 书写的一些细节, and 操作符被放在了后一条件的前面(如果放在前一个的后面, 理论上语法也对, 但此时 PageHelper 会出现拼接语法错误). 查询结果按更新时间降序排序.前两节分别完成了搭建系统整体框架和完善部门管理功能的工作, 这一节则完整的实现员工管理中。此时, 考虑条件查询参数, 再将请求参数封装到实体类。如图所示, 可以借助 PageHelper 简化开发。rows: 查询得到的 Employee 列表。接着在 pojo 包下引入。的功能. 同样的, 需要。

2024-03-25 08:00:00 649

原创 MyTlias-员工信息管理系统(二)-前后端联调

这实际上就算是完成了前后端联调的工作, 此后在前端进行的操作就能够传递给后端, 后端据此做出的响应也能返回给前端并以特定方式呈现. 在这个过程中, 前端项目和后端项目本身是完全分离的, 它们仅仅是遵循了同一份api文档, 最后仍能很简单的无差错的融合在一起。update dao 接口在这里其实也可以静态实现, 因为这里传入的 department 的未修改字段并不是 null, 而是查询出的原始值.然而, 很多情况可以省略第一次的查询操作, 那么这时就必须使用动态SQL了.

2024-03-24 18:00:00 1674

原创 MyTlias-员工信息管理系统(一)-整体框架的搭建

本小节主要完成项目文件准备, 以及第一个功能实现: 部门信息展示. 并使用PostMan/Apifox测试接口数据是否正常返回, 复习三层架构的实现以及当初引入三层架构的缘起.也即数据访问层, 该层需要定义数据访问的接口和方法, 新建 mapper 包以存放数据访问代码(这里是通过MyBatis框架访问MySQL数据库的数据表得到的)如上所示, 首先定义了 Service 接口, 这个接口用于与Controller的通信, 其次新建了 impl 子包, 它存放该接口的实现.响应数据: Result。

2024-03-24 08:00:00 646

原创 Java Web项目—餐饮管理系统【last day】-Niginx前后端分离

Nginx是一款轻量级的web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx的网站有:百度、京东.新浪、网易、腾讯、淘宝等。官网: https://nginx.org。

2024-03-23 18:00:00 1156

原创 Java Web项目—餐饮管理系统Day13-版本管理与缓存优化

使用 IDEA 界面进行控制, 具体的, 先清理代码, 将第一版(该版本完成了后台管理的大部分功能)作为main分支, commit and push 到远程. 本地新开 version1.0 分支并 push 到远程, 将第一版代码删去, 使用第二版进行覆盖, 该版本完善了前台的大部分功能, 随后 commit and push. 紧接着新开分支 version1.1, push 到远程, 该版本将更新关于项目优化的代码内容.现在需要对此方法进行缓存优化,提高系统的性能。

2024-03-23 08:00:00 779

原创 Java Web项目—餐饮管理系统Day14-MySQL主从复制与读写分离

MySQL主从复制是一个异步的复制过程, 底层基于 Mysql 数据库自带的二进制日志功能, 是一台或多台 Mysql 数据库(slave, 即从库)从另一台 Mysql 数据库(master, 即主库)进行日志的复制然后再解析日志并应用到自身, 最终实现从库的数据和主库的数据保持一致的过程。是指将数据库的读操作和写操作分离到不同的数据库服务器上,以提高数据库的性能和可用性。同时,通过将读操作分发到多个服务器上,可以提高数据库的可用性,当某个服务器发生故障时,其他服务器可以继续提供读服务。

2024-03-22 14:02:53 1194

原创 PyTorch基础知识讲解(三)自动微分与模型微调

这里我们回顾了在单次训练(不考虑迭代轮次等细节,只关注核心代码)时需要做的主要步骤,同时假设我们已经有预训练好的模型。加载 resnet18 预训练模型,加载训练数据及标签前向传播,计算损失反向传播,计算梯度依据梯度更新参数权重# data: 输入, 表示1个 batch 中包含一个样本, 该样本包含3个通道(C), 大小为 64x64# labels: 输出, 表示1个输出, 表示输入属于这 1000 个类的概率# 1. 通过模型的每一层来运行输入数据,进行预测。这就是前向传播。

2024-03-22 10:59:15 412

原创 PyTorch基础知识讲解(二)tensor的基本属性

tensor是一种专有的数据结构,与数组和矩阵非常相似。在PyTorch中,我们使用tensor来编码一个模型的输入和输出,以及模型的参数。tensor类似于NumPy的ndarrays,只是tensor可以在GPU或其他硬件加速器上运行。事实上,tensor和NumPy数组通常可以共享相同的底层内存,不需要复制数据。tensor还为自动微分进行了优化(我们将在后面的Autograd部分看到更多关于这一点)。如果你熟悉ndarrays,你就会对Tensor API感到很熟悉。

2024-03-22 00:18:10 466

原创 PyTorch基础知识讲解(一)完整训练流程示例

为了在PyTorch中定义一个神经网络,我们创建一个继承自nn.Module的类。我们在__init__函数中定义网络的层,并在forward函数中指定数据将如何通过网络。为了加速神经网络的操作,如果有GPU的话,我们把它移到GPU上。输入是28*28, 输出包含10个类")nn.ReLU(),nn.ReLU(),modelMyRSNN(

2024-03-21 16:17:20 765

原创 Java Web项目—餐饮管理系统Day12-Redis基础

Redis hash 是一个 string 类型的 field(字段) 和 value(值) 的映射表,hash 特别适合用于存储对象。Redis 的 Set 是 String 类型的无序集合。Redis 有序集合和集合一样也是 string 类型元素的集合,且不允许重复的成员。Redis 中集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。集合是通过哈希表实现的,所以添加,删除,查找的复杂度都是 O(1)。有序集合的成员是唯一的,但分数(score)却可以重复。

2024-03-20 08:00:00 1144

原创 Java Web项目—餐饮管理系统Day11-Linux-基本知识点(二)

1、vim是从vi发展来的一个功能更加强大的文本编辑工具,在编辑文件时可以对文本内容进行着色,方便我们对文件进行编辑处理,所以实际工作中vim更加常用。作用: vi命令是Linux系统提供的一个文本编辑工具,可以对文件内容进行编辑,类似于Windows中的记事本。1、在使用vim命令编辑文件时,如果指定的文件存在则直接打开此文件。-z: z代表的是gzip,通过gzip命令处理文件,gzip可以对文件压缩或者解压。命令模式下可以查看文件内容、移动光标, 通过vim命令打开文件后,默认进入命令模式.

2024-03-19 16:00:00 1784

原创 Java Web项目—餐饮管理系统Day10-Linux-基本知识点(一)

Linux系统历史时间:1991年地点:芬兰赫尔辛基大学人物: Linus Torvalds (21岁)语言: C语言、汇编语言logo:企鹅特点:免费、开源、多用户、多任务Linux系统分为内核版和发行版内核版由Linus Torvalds及其团队开发、维护免费、开源负责控制硬件发行版基于Linux内核版进行扩展由各个Linux厂商开发、维护有收费版本和免费版本目录描述bin存放二进制可执行文件boot存放系统引导时使用的各种文件dev。

2024-03-19 08:00:00 1159

原创 Java Web项目—餐饮管理系统Day09-用户端开发(二)

实际上还有一些请求待处理, 例如点击套餐图片展示套餐明细、点击历史订单展示订单列表及其明细等等, 由于请求路径和方法以及返回数据格式等未知, 且未新增技术点, 故暂时不进行讨论. 至此, Reggie 外卖项目的基本内容就完结了。设置默认地址, 注意需要先把原默认地址取消, 这里有一个 trick, 就是如果一个实体类的字段为空, 那么在更新时该字段不会被写入到数据库中.地址簿记录了每个用户的地址信息, 每个用户可以设置多个地址, 但默认地址有且仅有一个.为他们创建 service 和 mapper.

2024-03-18 16:30:00 526

原创 Java Web项目—餐饮管理系统Day08-用户端开发(一)

唯一需要注意的一点是 wrapper 需要在循环体内部定义, 否则 eq 条件会不断叠加. 另外如果有部分菜品设置了口味但未出现 “选择规格” 的字样, 可能是菜品列表中的旧数据id字段等无法对应, 可以一并删除清空, 再利用前端页面添加自定义的数据, 此时这些数据将符合一致性。方法实际处理逻辑待定, 但此时重启应用可以看到分类条目下已经有显示了. 然而, 实际上原先的 list 方法(DishContoller.list)还需要修改, 它返回的值应当还包含口味数据, 返回值类型设定为。

2024-03-18 08:00:00 1134

原创 Java Web项目—餐饮管理系统Day07-套餐管理(二)

的条件, 则实际上只需要更改 setmeal 表即可. 然而, 在考虑该条件后, 涉及到更多的表, 过程是先依据 setmeal 的 id 查询 setmeal_dish 表得到 SetmealDish 的列表, 遍历该列表, 依据其中的 dishId 查询 dish 表, 得到 Dish 对象, 查看该对象的 status 是否为 0 (停售), 若为0, 则抛出业务异常, 信息中提示菜品名称.这部分开发剩下的部分功能, 包括分页查询、更新套餐、批量停售/启售, 继续熟悉业务代码编写.

2024-03-17 16:30:00 890

Vue快速入门使用示例附录

教程资源

2024-03-10

SeachEngine.rar

这里面是信息检索课程大作业写的一个简易搜索引擎的Python源码,包括爬数据、清洗数据、构建倒排索引、实现网页排序算法、网页渲染以及展示。

2020-08-12

空空如也

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

TA关注的人

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