- 博客(153)
- 问答 (1)
- 收藏
- 关注
原创 天猫推荐数据集实践
参考自 https://github.com/xufengtt/recom_teach_code,学习记录。环境配置(maxcompute+dataworks)下载天猫推荐数据集;开启 aliyun 的 maxcompute,dataworks,pai;使用 odpscmd 上传本地数据,具体配置方法是在 conf 文件夹配置 odps_config.ini 文件,填写 project_name(recom_maxcompute)、access_id、access_key、end_point 参数
2025-01-02 22:03:20
1230
原创 xiaolin coding 图解 MySQL笔记——锁篇
死锁发生在两个或多个事务在等待对方释放资源以便自己继续执行,但每个事务又持有对方需要的资源,从而导致所有相关事务都无法继续执行的情况。
2024-12-05 11:38:55
717
原创 xiaolin coding 图解 MySQL笔记——事务篇
事务 B 的 id 为 52,此时它的活跃事务 id 列表是 51,52,然后第一次读的时候发现 trx_id 为 50,所以可见,在事务 A 更改后,事务 B 再次读,发现 trx_id 为 51,在活跃 id 列表的最大最小值(min_trx_id,max_trx_id)之间,所以查看事务 A id 51 是否在 m_ids 范围内,发现在,说明还未提交,所以 B 沿着 undo log 的链条找到第一条 trx_id 小于 B 的 min_trx_id 的旧版本的记录。
2024-12-03 22:14:13
706
原创 xiaolin coding 图解 MySQL笔记——索引篇
帮助存储引擎快速获取数据的一种数据结构,所谓存储引擎,就是如何存储数据、如何为存储的数据建立索引和如何更新、查询数据等技术的实现方法。
2024-12-02 21:04:52
1142
原创 xiaolin coding 图解 MySQL笔记——基础篇
连接器的工作完成后,客户端就可以向 MySQL 服务发送 SQL 语句了,MySQL 服务收到 SQL 语句后,就会解析出 SQL 语句的第一个字段,看看是什么类型的语句。如果 MySQL 服务正常运行,完成 TCP 连接的建立后,连接器就要开始验证你的用户名密码,如果都没有问题,连接器就会获取该用户的权限,然后保存起来,后续该用户在此连接里的任何操作,都会基于连接开始时读到的权限进行权限逻辑的判断。所以,如果一个用户已经建立了连接,即使管理员中途修改了该用户的权限,也不会影响已经存在连接的权限。
2024-11-28 11:16:43
1054
原创 xiaolin coding 图解网络笔记——TCP篇
建立一个 TCP 连接是需要客户端与服务端达成上述三个信息的共识。Socket:由 IP 地址和端口号组成序列号: 用来解决乱序问题窗口大小:用来做流量控制TCP连接是包括 Socket、序列号和窗口大小称为连接,三次握手的首要原因是为了防止旧的重复连接初始化造成混乱,两次握手连接的情况下,服务端没有中间状态给客户端来阻止历史连接,因为两次握手时服务端收到 SYN 报文直接进入 ESTABLISHED 状态,但是客户端并没有进入,所以会建立一个历史连接造成资源浪费。
2024-11-26 20:56:09
1255
1
原创 xiaolin coding 图解网络笔记——HTTP篇
强制缓存指的是只要浏览器判断缓存没有过期,则直接使用浏览器的本地缓存,决定是否缓存的主动性在于浏览器。,是一个相对时间Expires,是一个绝对时间如果 HTTP 响应头部同时有这两个字段,Cache-Control 的优先级高于 Expires。当浏览器第一次请求服务器资源时,服务器会在返回这个资源的同时,在 Response 头部加上 Cache-Control,设置了过期时间大小;浏览器再次请求访问服务器中的该资源时,会先。
2024-11-22 18:13:23
978
原创 xiaolin coding 图解网络笔记——基础篇
协议栈的内部分为几个部分,分别承担不同的工作。上下关系有一定的规则,上面的部分会向下面的部分委托工作,下面的部分收到委托的工作并执行。应用程序(浏览器)通过调用 Socket 库。来委托协议栈工作。协议栈的上半部分为两块,分别是负责收发数据的 TCP 和 UDP 协议,这两个传输协议会接受应用层的委托执行收发数据的操作。协议栈的下面一半是用 IP 协议控制网络包收发操作。此外 IP 中还包括。
2024-11-21 21:30:45
979
原创 深度学习推荐系统的前沿实践
无论是GBDT+LR组合模型,还是最新的DLRM模型,Facebook的技术选择总给人非常工业化的感觉,简单直接,以解决问题为主。虽然从学术角度看模型的创新性不足,但业界的从业者却能从中借鉴非常多的工程实践经验。DLRM模型是非常标准且实用的深度学习推荐模型。如果公司刚开始从传统机器学习模型转到深度学习模型,则完全可以采用DLRM作为标准实现。而GBDT+LR组合模型传递出的特征工程模型化及模型组合的思路,对推荐系统技术发展有更深远的影响。
2024-11-19 23:00:36
1117
原创 推荐系统的评估
推荐系统评估的重要性应摆在与推荐系统构建同样重要的位置,它的重要性主要有以下3点:(1)推荐系统评估所采用的指标直接决定了推荐系统的优化方向是否客观合理。(2)推荐系统评估是机器学习团队与其他团队沟通合作的接口性工作。(3)推荐系统评估指标的选取直接决定了推荐系统是否符合公司的商业目标和发展愿景。本章聚焦推荐系统的评估问题,从离线评估到线上测试,从多个层级探讨推荐系统评估的方法和指标,具体包括下面内容:(1)离线评估的方法和指标。(2)离线仿真评估方法一Replay(重播评估法)
2024-11-14 20:53:43
645
原创 深度学习推荐系统的工程实现
之前章节主要从理论和算法层面介绍了推荐系统的关键思想。但算法和模型终究只是“好酒”,还需要用合适的“容器”盛载才能呈现出最好的味道,这里的“容器”指的就是实现推荐系统的工程平台。数据部分和模型部分。数据部分主要指推荐系统所需数据流的相关工程实现;模型部分指的是推荐模型的相关工程实现,根据模型应用阶段的不同,可进一步分为离线训练部分和线上服务部分。根据推荐系统整体的工程架构,本章的主要内容可以分为以下三大部分:(1)推荐系统的数据流。
2024-11-14 12:26:46
1160
原创 多角度审视推荐系统
推荐工程师需要从不同的维度审视推荐系统,不仅抓住问题的核心,更要从整体上思考推荐问题。(1)推荐系统如何选取和处理特征?(2)推荐系统召回层的主要策略有哪些?(3)推荐系统实时性的重要性体现在哪儿?有哪些提高实时性的方法?(4)如何根据具体场景构建推荐模型的优化目标?(5)如何基于用户动机改进模型结构?(6)推荐系统冷启动问题的解决方法有哪些?(7)什么是“探索与利用”问题?有哪些主流的解决方法?
2024-11-13 15:04:54
805
原创 Embedding 技术在推荐系统中的应用
Embedding,中文直译为“嵌入”,常被翻译为“向量化”或者“向量映射”。它的主要作用是将稀疏向量转换成稠密向量,便于上层深度神经网络处理。事实上,Embedding技术的作用远不止于此,它的应用场景非常多元化,而且实现方法也各不相同。在学术界,Embedding本身作为深度学习研究领域的热门方向,经历了从处理序列样本,到处理图样本,再到处理异构的多特征样本的快速进化过程。在工业界,Embedding技术凭借其综合信息的能力强、易于上线部署的特点,几乎成了应用最广泛的深度学习技术。
2024-11-08 16:11:51
1080
原创 深度学习在推荐系统中的应用
参考自《深度学习推荐系统》,用于学习和记录。前言(1)与传统的机器学习模型相比,深度学习模型的表达能力更强,能够挖掘(2)深度学习的模型结构非常灵活,能够根据业务场景和数据特点,灵活调整模型结构,使模型与应用场景完美契合。主流深度学习推荐模型的演化图谱AutoRec 单隐层神经网络推荐模型AutoRec 将自编码器(AutoEncoder)的思想和协同过滤结合,提出了一种单隐层神经网络推荐模型。AutoRec模型是一个标准的自编码器,它的基本原理是利用协同过滤中的共现矩阵,完成物品向量或者用户
2024-11-08 10:45:15
1276
原创 前深度学习时代-经典的推荐算法
参考自《深度学习推荐系统》—— 王喆,用于学习记录。1.协同过滤“协同过滤”就是协同大家的反馈、评价和意见一起对海量的信息进行过滤,从中筛选出目标用户可能感兴趣的信息的推荐过程。基于用户相似度进行推荐的协同过滤算法 UserCF用户相似度计算余弦相似度余弦相似度(CosineSimilarity)衡量了用户向量i和用户向量j之间的向量夹角大小。显然,夹角越小,证明余弦相似度越大,两个用户越相似。sin(i,j)=cos(i,j)=i⋅j∥i∥⋅∥j∥\sin(i,j)=\cos(i,j)=
2024-11-06 10:27:06
1316
原创 Embedding评估榜单MTEB
MTEB——海量文本嵌入基准测试(MassiveTextEmbeddingBenchmark)中文榜单(截至 2024/10/30)提供了一组人工编写和机器生成的摘要。目的是给机器生成的摘要进行打分,对每个机器生成的摘要嵌入,计算与所有人类摘要嵌入的距离。最接近的分数被保留并用作单个机器生成摘要的模型分数。
2024-10-30 11:20:45
2539
2
原创 llama3 implemented from scratch 笔记
在完成第 0 层注意力机制的最后一步是,将注意力输出与权重矩阵相乘。具体来说,我们将最终的注意力输出矩阵与权重矩阵相乘,生成最终的注意力输出。这是一个简单的线性层,所以我们只需要进行矩阵乘法(matmul)。我们现在有了注意力机制之后的嵌入值变化,这应该加到原始的标记嵌入值上。我们将使用输出解码器将最终嵌入解码成令牌根据《银河系漫游指南》这本书,42 是“生命、宇宙以及一切的终极问题的答案”。所以大多数 LLMs 在这里都会回答 42.
2024-10-09 22:54:29
568
原创 茴香豆:企业级知识库问答工具
茴香豆 是由书生·浦语团队开发的一款开源、专门针对国内企业级使用场景设计并优化的知识问答工具。在基础 RAG 课程中我们了解到,RAG 可以有效的帮助提高 LLM 知识检索的相关性、实时性,同时避免 LLM 训练带来的巨大成本。在实际的生产和生活环境需求,对 RAG 系统的开发、部署和调优的挑战更大,如需要解决群应答、能够无关问题拒答、多渠道应答、更高的安全性挑战。因此,根据大量国内用户的实际需求,总结出了三阶段Pipeline的茴香豆知识问答助手架构,帮助企业级用户可以快速上手安装部署。
2024-08-26 22:46:19
1272
原创 MindSearch 部署
按照教程,将 MindSearch 部署到 HuggingFace 并美化 Gradio 的界面,并提供截图和 Hugging Face 的Space的链接。
2024-08-26 12:39:04
1376
原创 (第三期)书生大模型实战营——InternVL(冷笑话大师)部署微调实践
Pixel Shuffle在超分任务中是一个常见的操作,PyTorch中有官方实现,即nn.PixelShuffle(upscale_factor) 该类的作用就是将一个tensor中的元素值进行重排列,假设tensor维度为[B, C, H, W], PixelShuffle操作不仅可以改变tensor的通道数,也会改变特征图的大小。对于输入的图片,首先resize成448的倍数,然后按照预定义的尺寸比例从图片上crop对应的区域。这里我们也为大家准备好了可以直接进行微调的数据集。进入XTuner目录。
2024-08-21 10:55:04
1462
原创 (第三期)书生大模型实战营——OpenXLab部署InternLM2实践——上传模型
OpenXLab 使用你在平台的用户名作为 Git的用户名,具体获取路径,可登录 OpenXLab 后,点击个人头像下的 【账号与安全】查看个人的用户名。
2024-08-20 21:28:05
593
原创 (第三期)书生大模型实战营——Lagent自定义你的Agent智能体
Lagent 是一个轻量级开源智能体框架,旨在让用户可以高效地构建基于大语言模型的智能体。同时它也提供了一些典型工具以增强大语言模型的能力。Arxiv搜索Bing地图Google学术搜索Google搜索交互式IPython解释器IPython解释器PPTPython解释器在本节中,我们将带大家基于 Lagent 自定义自己的智能体。Lagent 中关于工具部分的介绍文档位于。使用 Lagent 自定义工具主要分为以下几步:继承BaseAction类实现简单工具的。
2024-08-12 13:08:36
892
原创 (第三期)书生大模型实战营——OpenCompass评测InternLM-1.8B
上海人工智能实验室科学家团队正式发布了大模型开源开放评测体系 “司南” (OpenCompass2.0),用于为大语言模型、多模态模型等提供一站式评测服务。开源可复现:提供公平、公开、可复现的大模型评测方案全面的能力维度:五大维度设计,提供 70+ 个数据集约 40 万题的的模型评测方案,全面评估模型能力丰富的模型支持:已支持 20+ HuggingFace 及 API 模型分布式高效评测:一行命令实现任务分割和分布式评测,数小时即可完成千亿模型全量评测。
2024-08-04 09:42:45
1041
原创 git lfs使用(huggingface下载大模型文件)-教程记录
写的比较清楚的教程,用于之后有需求时查找用:https://blog.youkuaiyun.com/flyingluohaipeng/article/details/130788293
2024-08-02 18:57:52
441
原创 (第三期)书生大模型实战营——浦语提示词工程实践
Prompt是一种用于指导以大语言模型为代表的生成式人工智能生成内容(文本、图像、视频等)的输入方式。它通常是一个简短的文本或问题,用于描述任务和要求。Prompt可以包含一些特定的关键词或短语,用于引导模型生成符合特定主题或风格的内容。例如,如果我们要生成一篇关于“人工智能”的文章,我们可以使用“人工智能”作为Prompt,让模型生成一篇关于人工智能的介绍、应用、发展等方面的文章。Prompt还可以包含一些特定的指令或要求,用于控制生成文本的语气、风格、长度等方面。
2024-07-30 14:02:48
542
1
原创 (第三期)书生大模型实战营——XTuner微调个人小助手
微调(fine-tuning)是一种基于预训练模型,通过少量的调整(fine-tune)来适应新的任务或数据的方法。微调是在预训练模型的基础上,将模型中一些层的权重参数进行微调,以适应新的数据集或任务。预训练模型部分已经在大规模数据上得到了训练,它们通常是较为通用且高性能的模型,因此可以很好地作为新任务的起点。微调可以加快模型的收敛速度,降低模型过拟合的风险,并在不消耗过多计算资源的情况下获取较好的模型性能。
2024-07-29 13:41:13
1170
原创 vLLM——使用PagedAttention加速推理
vLLM是一个用于快速LLM推理和服务的开源库。vLLM 利用,可以有效地管理注意力键和值。PagedAttention 的 vLLM 重新定义了 LLM 服务的最新水平:它提供了比 HuggingFace Transformers 高 24 倍的吞吐量,而无需任何模型架构更改。
2024-07-26 10:22:28
1331
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人