机器学习之Logistic回归
Logistic回归根据现有数据对分类边界线(Decision Boundary)建立回归公式,以此进行分类。 基础概念Sigmoid函数 二值型输出分类函数 我们想要函数应该是:能接受所有的输入然后预测出类别。例如,在两个类的情况下,上述函数输出0或1.该函数称为海维赛德阶越函数,或直接称为单位阶越函数。单位阶越函数的问题在于:该函数在跳跃点上从0瞬间跳跃到1,这个瞬间跳跃的过程有时很难处理。 实现原理逻辑回归通过使用逻辑函数(Sigmoid函数)将线性回归的输出映射到0和1之间,从而预测某个事件发生的概率。 逻辑回归模型 损失函数 逻辑回归的损失函数是对数损失函数(Log...
机器学习之决策树
决策树(Decision Tree)是一种基本的分类与回归方法,是最经常使用的数据挖掘算法之一。决策树模型呈树型结构,在分类问题中,表示基于特征对实例进行分类的过程。 决策树学习通常包括3个步骤:特征选择、决策树的生成和决策树的修剪。 基础概念 信息熵&信息增益 熵(entropy):熵指的是体系对混乱程度。 信息论(information theory)中的熵(香农熵):是一种信息的度量方式,表示信息的混乱程度。 信息增益(information...
机器学习之朴素贝叶斯
LINK 朴素贝叶斯概述贝叶斯分类算法是统计学的一种概率分类方法,朴素贝叶斯分类(Naive Bayes)是贝叶斯分类中最简单的一种。分类原理:利用贝叶斯公式根据某特征的先验概率计算出其后验概率,然后选择具有最大后验概率的类作为该特征所属的类。朴素:贝叶斯分类只做最原始、最简单的假设:所有特征之间是统计独立的。 相关概念条件概率条件概率(Condittional probability),就是指在事件B发生的情况下,事件A发生的概率,用P(A|B)来表示。 全概率如果事件 A1,A2,…,An 构成一个完备事件且都有正概率,那么对于任意一个事件B则有: 根据条件概率和全概率公式,可以得到贝叶斯公式如下:P(A)称为”先验概率”(Prior probability),即在B事件发生之前,我们对A事件概率的一个判断。P(A|B)称为”后验概率”(Posterior probability),即在B事件发生之后,我们对A事件概率的重新评估。P(B|A)/P(B)称为”可能性函数”(Likely...
机器学习之KNN
K-近邻算法k-近邻(KNN K-Nearest-Neighbor)knn的输入为样本的特征向量,对应其在特征空间的点;输出为类别。 KNN原理 1.假设有一个带标签的样本数据集(训练样本集),其中包含每条数据与所属分类的对应关系。 2.输入没有标签的新数据后,将新数据的每个特征与样本集中数据对应的特征进行比较。 i.计算新数据与样本数据集中每条数据的距离 计算距离的方式 有很多 这里可以和RAG联系起来 (通常有欧式距离 还可以是minkowski距离或者曼哈顿距离。) ii.对求得的所有距离进行排序(从小到大,越小表示越相似) iii.取前k个样本数据对应的分类标签 KNN算法特点精度高,对异常值不敏感缺点:计算复杂度高,空间复杂度高适用范围:数值型和标称型 小结 如何选择合适对k值? k值小对时候,近似误差小,估计误差大。k值大 近似误差大,估计误差小。 太大太小都不好,可以使用交叉验证(cross validation)来选取合适的k值。(就是挨个试) 实现算法 Brute Force 暴力搜索/线性扫描 KD Tree...
机器学习
(注:博客属个人复习笔记,不会介绍基础概念,仅记录个人遗忘的部分知识点) RUNOBB教程 BLOG教程 机器学习 概述 “机器学习是对能通过经验自动改进的计算机算法的研究” “机器学习是用数据或以往的经验,以此优化计算机程序的性能标准” 机器学习和深度学习的最大区别在神经网络,深度学习使用神经网络去提取事物的深层或者说是隐性的一些特征 常见的模型指标 正确率 —— 提取出的正确信息条数 / 提取出的信息条数 召回率 —— 提取出的正确信息条数 / 样本中的信息条数 F 值 —— 正确率 * 召回率 * 2 / (正确率 + 召回率)(F值即为正确率和召回率的调和平均值) 特征工程 特征选择-也叫特征子集选择(FSS,Feature Subset...
Python并发编程
简介 引入并发,就是为了提升程序运行速度 单线程串行:不加改造的程序 多线程并发:threading 多线程:thhreadding,利用CPU和IO可以同时执行的原理,让CPU不会干巴巴地等待IO完成 多cpu并行:multiprocessing 多进程:multiprocessing,利用CPU的多核原理,让CPU可以同时运行多个进程 多机器并行:hadoop/hive/spark IO:读取内存、磁盘、网络 异步IO:asyncio,在单线程利用CPU和IO同时执行的原理,实现函数异步执行 使用Lock对资源加锁,防止冲突访问 使用Queue实现不同线程/进程之间的数据通信,实现生产者-消费者模式 使用线程池Pool/进程池Pool,实现线程/进程的任务提交、等待结束、获取结果 使用subprocess启动外部程序的进程,并进行输入输出的交互 怎样选择多线程、多进程和多协程 Thread Process...
大模型学习之DeepSeek
个人学习笔记,如有错误欢迎指正 参考链接🔗: B站视频 DeepSeek LLM: Scaling Open-Source Language Models with Longtermism DeepSeek-V2: A Strong, Economical, and Efficient Mixture-of-Experts Language Model DeepSeekMoE: Towards Ultimate Expert Specialization in Mixture-of-Experts Language Models DeepSeek-R1: Incentivizing Reasoning Capability in LLMs via Reinforcement Learning 引言因为要看DeepSeek的优化的部分,绕不开的就是MoE 再然后就是COT MoE 混合专家模型混合专家模型详解 MoE发展历史Jacobs et al 1991 每个专家都是独立的FFN,Gating是FFN,由Gating来决定输出那一个专家的结果 2017...
FastApi
写的不全!参考视频 @fastapi框架FastApi: 一个用于构建API的现代、快速(高性能)的web框架 Starlette:一个用于构建ASGI(异步服务器网关接口)的web框架Pydantic:一个用于数据验证和序列化的库 1 预备知识点1.1 http协议1.1.1 简介HTTP协议是Hyper Text Transfer Protocol的缩写,它是一个用于在Internet上传输超文本的协议。HTTP是一个属于应用层的面向对象的协议。由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断的完善和拓展。HTTP工作与客户段-服务端架构上。浏览器作为HTTP客户端通过URL向HTTP服务端即WEB服务器发送所有请求。Web服务器根据收到的请求后,向客户端发送响应信息。 1.1.2...
大模型学习之资源占用
待测试更新 大模型学习之资源占用资源:在本文中主要指的是cpu内存和gpu显存。 首先要分两种场景模型推理和模型训练进行讨论,针对不同的场景显存所需要加载的内容也不一样 0.预备知识模型参数1B 代表10亿个参数;1byte(字节)=8bit(位) 参数精度 fp32 fp16/bp16 int8/fp8 Int4 所占内存 4byte 2byte 1byte 0.5byte eg:fp32 1B:4byte * 10亿 / 1024^3(kb mb gb) 约等于 3.725GB 量化量化一般指的降低参数所占的内存空间,比如一个参数本来占4字节32位,现在为了节省空间,需要将其量化到int8也就是只允许参数占8位,量化的过程并不是简单的抹除小数位! 在神经网络模型导出的时候我们才会去做量化,以提高模型的推理速度以及模型所占显存大小,但量化同时会导致模型精度的下降。 量化方法的分类: QAT(Quant-Aware Training)也可以称为在线量化(On...
LlamaFactory参数详解
LlamaFactory参数详解Link LlamaFactory是一个简单易上手的大模型训练工具 微调的概念微调是指在一个已经预训练的模型基础上进行进一步的训练。预训练模型通常是在大规模数据集(如imageNet或大型文本语料库)上训练的,因此已经捕获了丰富的特征和知识。微调的目标是利用预训练模型的知识,在较小的数据集砂锅进行特定任务的优化。 主要特点1.预训练模型:基于已经训练好的模型进行 2.较少数据:通常只需要较小的数据集 3.较短时间:训练时间相对较短,因为模型已经有了良好的初始化 4.目标:适应特定任务或领域,优化模型性能 1.微调方法LORALoRA(低秩微调,Low-Rank Adaption)是一种通过低秩近似方法来减少模型参数数量和计算量的技术。它的主要目标是通过将原始的高纬参数矩阵分解成两个低秩矩阵的乘积(W ≈ A · B),从而实现模型的参数压缩和计算加速。 其中: W 是原始的高维参数矩阵。 A 和 B 是低秩矩阵,其秩(rank)远小于 W 的维度。 A的维度为 m x r 。 B的维度为 r x n 。 通过这种分解,我们可以将参数数量从 m...