自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 多层时间轮原理以及使用

模拟时钟的运作机制,将时间划分为多个固定的时间间隔(称为槽位),并将定时任务存储在相应槽位中,随着时间的推进,时间轮会周期性地转动,执行到达时间点的任务。

2024-09-29 13:57:41 954

原创 跳表的理解以及使用

跳表(SkipList),是一种随机化的数据结构,可以看作是一种可以进行二分查找的有序链表。跳表通过增加多级索引(即“跳跃”的层)来优化链表的查找、插入和删除操作,使得这些操作的时间复杂度降低到O(logn)。跳表在Redis和LevelDB等系统中都有应用,其实现和维护相对简单,但性能上却与红黑树、AVL树等平衡树不相上下。

2024-09-27 16:57:33 814

原创 FTP介绍、环境搭建、常用命令以及脚本

Protocol,文件传输协议)是一种用于在网络上进行文件传输的标准网络协议。它使用客户端-服务器模型,允许用户将文件从一台计算机传输到另一台计算机,通常通过互联网。FTP支持两种模式:主动模式和被动模式。

2024-09-25 18:01:28 987

原创 开发后台管理系统-开发环境搭建

在使用 npm(Node Package Manager)安装包时,–save 标志用于将安装的包添加到项目的 package.json文件中的 dependencies 部分。这意味着你声明这个包是项目运行时所需要的依赖项之一。开发一个后台管理系统 这里以CDN后台管理系统为例。创建 src/router/index.js。确保已经安装了Node.js和npm。环境搭建完成 编写简单登陆页面测试。CDN后台管理系统功能说明文档。

2024-09-14 15:22:27 559

原创 curl证书问题如何解决

curl使用以及常见问题

2024-09-11 10:27:52 801

原创 ubuntu内核升级后的问题修复

在 Ubuntu 系统中使用 apt install linux-headers-$(uname -r) 命令安装内核头文件时,这些头文件并不会直接安装到 /usr/include 目录下。相反,它们会被安装到一个特定的目录中,通常是 /usr/src 下的一个子目录里,这个子目录的命名规则与内核版本相关。现代的编译器会自动搜索标准目录和额外的目录来查找头文件。例如,GCC 会在 /usr/include 以及 /usr/src/linux-headers- 等位置查找头文件。

2024-09-10 16:01:43 678

原创 局域网设备自动发现常用方法

Avahi 是一个开源项目,提供了一套用于实现 mDNS (Multicast DNS) 和 SSDP (Simple ServiceDiscovery Protocol) 的工具和库。它主要用于局域网内的零配置网络服务发现。Avahi 支持多种操作系统,包括 Linux、BSD 变体以及其他类 Unix 系统。Avahi 库的主要用途服务发现: 让设备在本地网络中自动发现彼此提供的服务。名称解析: 自动解析设备和服务的名称到 IP 地址,而无需手动配置。

2024-09-10 11:34:27 1071

原创 opencv将灰度图转为彩色图片

最常用的加权方法是使用亮度(或灰度)感知的加权,因为人类对绿色的敏感度最高,对蓝色的敏感度最低。灰度图,也称为灰度图像或黑白图像,是一种只包含亮度信息而不包含颜色信息的图像。在灰度图中,每个像素的亮度级别通常用0到255之间的整数表示,其中0表示黑色,255表示白色,中间的数值表示不同级别的灰色。选项读取图像时,读入的图像将自动转换为灰度图像,这意味着该图像只包含一个灰度通道而不是传统的 RGB 三通道。在图像处理中,当我们将图片转换为灰度图并进行一系列处理后,得到的灰度图实际上已经丢失了原始的颜色信息。

2024-09-09 17:57:39 994

原创 使用opencv优化图片(画面变清晰)

然而,高斯滤波会造成图像细节丢失,降低图像锐度,对椒盐噪声等非平滑噪声的去除效果不佳。特点:双边滤波结合了图像的空间邻近度和像素值相似度,通过对像素的空间距离和颜色相似度进行加权平均来实现滤波。对于图像中的每个像素,选取其周围一定区域内的所有像素值,并对其进行排序,然后将排序后的像素值的中位数赋予该像素。原理:双边滤波是一种边缘保留滤波方法,它不仅考虑像素的空间距离,还考虑像素值的相似性。原理:高斯滤波是一种线性平滑滤波器,它利用高斯函数对图像进行加权平均,从而有效地去除噪声并平滑图像。

2024-09-09 17:09:11 1511

原创 GoogleTest安装以及使用

Google Test(也称为gtest)是Google开发的一个用于C++的单元测试库。它允许开发者方便地编写和运行测试用例,以确保代码的正确性和健壮性。GoogleTest 提供了一系列的断言宏,如 ASSERT_, EXPECT_等,用于验证代码的行为。Google Test 的特点易用性:Google Test 提供了一个简单易用的API,让开发者能够快速编写测试用例。强大的断言:提供了丰富的断言宏来检查各种条件是否满足。

2024-09-09 11:34:26 827

原创 SRT库介绍

SRT(Secure Reliable Transport,安全可靠的传输)是一种由Haivision开发的开源、低延迟、高带宽的网络流媒体传输协议。它旨在通过互联网提供安全、高质量的视频流,特别适用于直播、视频会议、监控等领域。SRT协议建立在UDT(基于UDP的数据传输协议)之上,继承了UDP速度快、开销低的优点,并增加了可靠性、安全性和低延迟等特性。参照SRT协议介绍源码下载地址解压后。

2024-09-06 18:24:01 809

原创 ffmpeg安装测试(支持cuda支持SRT)

在音视频开发测试中,FFmpeg是一个不可或缺的工具,它以其强大的音视频处理能力,支持多种格式的编解码、转换、录制、流化等功能,赢得了广泛的应用。当编译 glibc 或其他系统级库时,包含当前目录作为搜索路径可能会导致意外的链接到不正确的库版本,或者链接到正在构建的库的不稳定版本,从而引入潜在的问题。这意味着在编译 glibc(GNU C Library,GNU 的 C 语言标准库)时,你的 LD_LIBRARY_PATH 环境变量中包含了当前目录(. 或 ./),这通常是不被推荐的。

2024-09-06 15:10:16 1741

原创 模拟网络丢包常用方法以及工具

无论你是要重现网络异常造成的程序错误,还是评估你的应用程序在不良网络状况下的表现,clumsy 都能让你在不需要额外添加代码的情况下,在系统层次帮你达到想要的效果。模拟网络丢包是测试网络性能和稳定性的关键手段之一,它帮助开发人员和测试人员了解应用在不同网络条件下的表现,从而确保应用在实际部署时能够应对各种网络挑战。命令会在eth0接口上添加一个类别规则,将classid为1:10的流量限制为500Kbps,峰值速率为1Mbps。在软件开发过程中,经常需要模拟不同的网络环境来测试应用在不同条件下的表现。

2024-09-05 17:23:16 1420

原创 SRT协议分析以及收拉流测试

SRT(Secure Reliable Transport)安全 可靠 传输协议 SRT协议基于UDT(UDP-based DataTransfer)协议,继承了UDP开销低、速度快的优点,并结合了TCP的可靠性特性,为视频流媒体传输提供了全新的解决方案。详细说明特点安全性:SRT支持AES加密,保障端到端的视频传输安全。可以选择AES-128或AES-256位加密,确保数据在传输过程中不被窃取或篡改。握手过程支持出站连接,无需在防火墙中打开永久外部端口,维护公司安全策略。

2024-09-05 15:16:32 1268

原创 分析源码学习c++(srs中http客户端)

从c到c++ 源码分析 http

2024-09-04 18:19:09 1499

原创 重拾英语,从头学起-词法

英语 词法 学习 语法 阅读文档

2024-09-04 14:20:59 786

原创 重拾英语,从头学起

程序员 英语 文档阅读

2024-09-04 10:28:55 1129

原创 shell脚本发送随机请求

随机 频率 脚本 shell 测试 发送 wget 客户端

2024-09-03 16:08:25 832

原创 TCP长连接、短链接测试代码

测试 长连接 短连接

2024-09-02 18:22:12 512

原创 StateThreads 库使用

协程 库 测试

2024-09-02 16:43:26 748

原创 常见并发模型-协程与事件驱动对比(举例StateThreads 与epoll)

高并发

2024-09-02 15:22:58 994

原创 数据备份-linux之间同步目录和文件

在 rsync 的网络同步场景中,通常有一个服务器端和一个或多个客户端。客户端发起同步请求:客户端通过命令行调用 rsync,并指定源文件和目标文件的位置。如果目标文件位于远程服务器上,客户端会通过网络连接到远程服务器。服务器端响应:服务器端接收到客户端的请求后,开始执行同步操作。服务器端计算源文件的块校验和,并与客户端发送的目标文件的块校验和进行比较。数据传输:对于不匹配的块,客户端只传输这些块给服务端。服务端接收到这些块后,将它们合并到目标文件中。

2024-08-30 14:49:29 1189

原创 网络传输加密及openssl使用样例(客户端服务器)

上述例子由于是自签名证书,其颁发者信息、签名和公钥都是基于server.key中的私钥生成的,因此不需要外部证书颁发机构(CA)的参与。私钥的格式和内容取决于所使用的加密算法(如RSA、DSA、ECDSA等)和密钥的格式(如PEM、DER等)。-nodes命令生成的证书(server.crt)是一个自签名的X.509证书,其数据结构包含了多个关键的信息字段。Layer)是最常用的网络传输加密协议之一,但需要注意的是,随着技术的发展,SSL的继任者TLS(Transport Layer。

2024-08-29 17:58:41 1421

原创 网络传输-平滑发送

平滑发送”通常指的是控制数据包的发送速率,使其在网络中的分布更加均匀,从而减少网络拥塞的可能性

2024-08-29 11:39:54 1084

原创 udp可靠传输中ACK与NACK的选择

在 UDP 可靠传输中,ACK(Acknowledgment)和 NACK(NegativeAcknowledgment)是两种常用的反馈机制,用于确保数据包的成功传输。这两种机制主要用于在不可靠的 UDP协议之上建立可靠的传输层。如果网络环境相对稳定,丢包率较低,则使用 ACK 可以更好地保证数据的可靠性。如果网络环境不稳定,丢包率较高,则使用 NACK 可以减少不必要的网络流量,但可能需要更复杂的重传机制来处理可能的 NACK 丢失问题。

2024-08-28 18:01:41 1487

原创 Windows 程序打包工具NSIS使用

NSIS (Nullsoft Scriptable Install System) 是一个免费开源的 Windows安装程序制作工具,它允许开发者创建轻量级、可定制的安装程序。NSIS 使用类似于脚本语言的方式编写安装程序逻辑,非常适合创建复杂的安装流程。

2024-08-28 15:57:48 388

原创 基于用户的协同过滤以及ALS的混合召回算法

基于用户的协同过滤是一种经典的推荐算法,它通过寻找具有相似兴趣的用户来推荐物品,它关注的是用户之间的相似性而非物品之间的相似性。然而,在大规模数据集上,这种方法可能会因为计算用户相似度矩阵所需的大量计算资源而变得不太实用。基于用户之间的相似度来进行推荐。在基于用户的协同过滤中,系统寻找与目标用户兴趣相似的其他用户,然后推荐这些相似用户喜欢的物品给目标用户。ALS 的优点(如处理稀疏数据的能力)来改进基于用户的协同过滤。因为不同用户直接的评分范围差异比较大 使用余弦相似度来计算。

2024-08-28 15:30:22 2343

原创 个性化推荐系统-实时召回模型

因此,需要一个实时推荐模块,以实现对用户兴趣变化的即时捕捉和响应。这个模块将紧密集成到现有的推荐系统中,通过实时分析用户对items的评分、点击、浏览等互动行为,动态调整推荐策略。目前,已经验证了离线推荐模块,该模块基于历史数据提取特征并聚合相似度计算、基于用户的协同过滤、ALS等算法模型,为用户预先筛选并召回了大量可能感兴趣的items。然而,随着用户行为的日益多样化和实时性的增强,仅仅依赖离线推荐已难以满足用户对即时性和个性化的更高需求。

2024-08-28 14:47:08 351

原创 常用格式转换-AZW3转epub

电子书格式转换

2024-08-28 11:22:18 954

原创 个性化推荐系统-离线召回模型验证

此模块旨在通过高效的数据处理与分析,预先筛选出用户可能感兴趣的内容或商品,为后续的实时推荐流程提供丰富且精准的候选集。为了确保实施效果与性能,我们将设计最简前端界面以直观展示召回结果,同时构建后端服务来处理大量数据并响应前端请求。在前端部分,将开发用户基本的交互界面,允许用户在不影响系统性能的前提下,轻松浏览和反馈召回结果,支持切换用户查询,从而辅助验证推荐算法的有效性与准确性。后端方面,以验证模型以及算法为主,验证过程中不采用离线计算框架(解析参数,判断uid是否为0,分别进行不同处理。

2024-08-27 18:23:51 579

原创 个性化推荐系统-离线召回模型框架

召回是推荐系统的一个核心组件,其主要任务是从庞大的候选池中快速筛选出一小部分最相关的项目。离线推荐是指在推荐系统开发阶段,在不直接影响用户的情况下对推荐算法进行设计、训练和评估的过程。离线推荐的优点在于它可以在不影响实际用户体验的情况下进行大量的实验和调整,因此是推荐系统开发初期不可或缺的一环。模型验证不仅可以帮助我们了解推荐模型的整体表现,还可以揭示模型在特定情况下的弱点,从而指导后续的改进工作。在推荐系统的设计和开发过程中,离线推荐、召回以及模型验证是三个关键步骤。

2024-08-27 17:55:39 576

原创 推荐召回中ALS(交替最小二乘法)算法验证

bm25_weight函数期望输入是一个物品-用户评分矩阵,即转置后的user_item_matrix.T。在推荐系统中,它可以提高推荐的质量。这里两次使用转置操作的原因在于bm25_weight函数的输入期望是物品-用户评分矩阵,而不是用户-物品评分矩阵。ALS是一种广泛应用于协同过滤推荐系统的方法,主要用于解决用户-物品评分矩阵中的缺失值问题,从而生成用户对未评分物品的预测评分或推荐。Format)的稀疏矩阵。原始的user_item_matrix是一个用户-物品评分矩阵,其中行代表用户,列代表物品。

2024-08-26 11:38:12 834

原创 常见稀疏矩阵格式及转换

COO(Coordinate Format)是一种简单的稀疏矩阵存储格式,它通过三个一维数组来存储非零元素的位置和值。这三个数组分别是:data:存储非零元素的值。row:存储每个非零元素所在的行索引。col:存储每个非零元素所在的列索引。CSR(Compressed Sparse Row)是一种用于存储稀疏矩阵的格式,它通过三个一维数组来存储非零元素的位置和值。data:存储非零元素的值。indices:存储每个非零元素所在的列索引。

2024-08-26 11:18:29 966

原创 矩阵分解中SVD与ALS区别

例如,在深度学习中,可以通过矩阵分解来初始化网络的权重矩阵,加快网络的训练速度;通过将文档-词汇矩阵分解为文档-主题矩阵和主题-词汇矩阵,可以揭示文档与主题之间的关系以及主题与词汇之间的关系,进而实现文档的聚类、分类、摘要等任务。通过将图的邻接矩阵或拉普拉斯矩阵进行分解,可以得到节点之间的低维嵌入表示,这些表示能够反映节点在图中的位置、角色和关系,从而有助于后续的图数据挖掘和分析。矩阵分解可以通过将数据矩阵分解为信号和噪声的叠加,进而实现对噪声的去除或抑制,提高数据的信噪比,从而改善数据的质量。

2024-08-23 17:07:43 531

原创 使用implicit处理稀疏矩阵

implicit是一个非常强大的Python库,专门用于实现推荐系统中的协同过滤算法,尤其是针对大规模稀疏数据集。它主要支持两种类型的协同过滤方法:基于用户的协同过滤和基于项目的协同过滤。implicit库特别适用于处理显式反馈(如评分数据)和隐式反馈(如点击、浏览等行为数据)

2024-08-23 16:49:14 988

原创 python常用解析html内容方法BeautifulSoup、lxml以及xpath

是一个用于从HTML或XML文件中提取数据的Python库。它创建了一个解析树,用于方便地提取各种数据,如标签名、属性、字符串内容等。

2024-08-23 15:02:00 249

原创 根据评分数据进行推荐

surprise 是一个用于构建和分析推荐系统的 Python 库,它提供了多种算法和工具来评估推荐系统的性能。这个库特别适用于那些想要快速开始构建和测试推荐系统原型的研究人员和开发者。以下是一些关于 surprise 库的基本介绍和常用使用方法。安装在 conda 命令中,-c 或 --channel 选项用于指定安装包的来源渠道(channel)。conda-forge 是一个由社区维护的 Conda 渠道,它提供了大量由社区贡献者构建和维护的开源软件包。

2024-08-22 14:07:54 959

原创 计算文本矩阵之间相似度

Word2Vec 函数参数分别表示 vector_size 维度大小 window 上下文窗口的大小 min_count 出现几次纳入模型 workers训练线程数。mode是一个 Word2Vec<vocab=30, vector_size=100, alpha=0.025>计算多个文本之间的相似度 按照相似度排序。使用列表推导式遍历每行数据 进行分词。实际测试中数据量过大,改为分批处理。方式一 使用mysql数据。相似度采用 向量余弦相似度。方式一 使用测试数据。结果为每行数据的词汇。

2024-08-20 12:38:13 320

原创 python生成随机关联数据存入mysql

软件测试过程中常需要生成大量测试数据,并且这些数据之间有一定的关联。

2024-08-20 11:07:39 201

空空如也

空空如也

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

TA关注的人

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