真的想入门大语言模型,只看这一个文章应该是可以入门的。但是修行下去,还是要靠自己的了!

如果你把大语言模型/LLM 当成一门技术来看,那就要看一下这门技术需要什么。

基本要求:

  • 开发语言:Python, C/C++
  • 开发框架:Numpy/Pytorch/Tensorflow/Keras/Onnx
  • 数学知识:线性代数、高数、概率、凸优化

这些东西我们假定你都已经会了,或者熟练使用了。

如果不熟,我建议你自己再学习一下。尤其是数学的几个基本公式,是要学会的。我列一下吧。

数学核心内容

  1. 「线性代数」:关键概念包括向量、矩阵、特征值和特征向量。重要的公式涉及矩阵乘法、行列式以及特征值方程Av=λv,其中 A是矩阵,v 是特征向量,λ是特征值。
  2. 「高数」:基本主题是微分和积分,重点是理解极限、导数和积分的概念。函数 f(x) 在点 x的导数由f′(x)=limh→0 f(x+h)−f(x) 给出,基本微积分定理将微分与积分联系起来。
  3. 「概率」:关键点包括概率公理、条件概率、贝叶斯定理、随机变量和分布。例如,贝叶斯定理由P(A∣B)=P(B∣A)P(A)/P(B)给出,它帮助在发生B 的情况下更新 A 的概率。
  4. 「凸优化」:关注目标函数为凸函数的问题。关键概念包括凸集、凸函数、梯度下降和拉格朗日乘数。梯度下降更新规则可以表示为 xn+1 =xnαf(xn ),其中 α是学习率。

你可以看到这些相对经常用到的数学,其实没有多难,只要你再看一下记住就好了。

开发框架

Numpy 主要是掌握各种数据的使用方法

Pytorch 与 Tensor、 Keras 就是完成各种网络及训练的方法

你至少要能保证下面的代码里的每一行代码都能完全理解

import torch
from torch import nn, optim
from torchvision import datasets, transforms
from torch.utils.data import DataLoader
# Define a transformation to normalize the data
transform = transforms.Compose([transforms.ToTensor(), transforms.Normalize((0.5,), (0.5,))])
# Load the Fashion MNIST dataset
train_dataset = datasets.FashionMNIST(root='./data', train=True, download=True, transform=transform)
test_dataset = datasets.FashionMNIST(root='./data', train=False, download=True, transform=transform)
train_loader = DataLoader(train_dataset, batch_size=64, shuffle=True)
test_loader = DataLoader(test_dataset, batch_size=64, shuffle=False)
# Define the neural network structure
class FashionMNISTNN(nn.Module):
    def __init__(self):
        super(FashionMNISTNN, self).__init__()
        self.flatten = nn.Flatten()
        self.linear_relu_stack = nn.Sequential(
            nn.Linear(28*28, 512),
            nn.ReLU(),
            nn.Linear(512, 256),
            nn.ReLU(),
            nn.Linear(256, 10),
        )
    def forward(self, x):
        x = self.flatten(x)
        logits = self.linear_relu_stack(x)
        return logits
model = FashionMNISTNN()
# Define the loss function and optimizer
loss_fn = nn.CrossEntropyLoss()
optimizer = optim.Adam(model.parameters(), lr=0.001)
# Function to train the model
def train(dataloader, model, loss_fn, optimizer):
    size = len(dataloader.dataset)
    model.train()
    for batch, (X, y) in enumerate(dataloader):
        # Compute prediction and loss
        pred = model(X)
        loss = loss_fn(pred, y)
        # Backpropagation
        optimizer.zero_grad()
        loss.backward()
        optimizer.step()
        if batch % 100 == 0:
            loss, current = loss.item(), batch * len(X)
            print(f"loss: {loss:>7f}  [{current:>5d}/{size:>5d}]")
# Function for testing the model
def test(dataloader, model, loss_fn):
    size = len(dataloader.dataset)
    num_batches = len(dataloader)
    model.eval()
    test_loss, correct = 0, 0
    with torch.no_grad():
        for X, y in dataloader:
            pred = model(X)
            test_loss += loss_fn(pred, y).item()
            correct += (pred.argmax(1) == y).type(torch.float).sum().item()
    test_loss /= num_batches
    correct /= size
    print(f"Test Error: \n Accuracy: {(100*correct):>0.1f}%, Avg loss: {test_loss:>8f} \n")
# Train the model
epochs = 5
for t in range(epochs):
    print(f"Epoch {t+1}\n-------------------------------")
    train(train_loader, model, loss_fn, optimizer)
    test(test_loader, model, loss_fn)
print("Done!")
print("关注微信公众号:佑佑有话说")

注意,是每一行代码,都能完全理解!!!

Transformer基础

做为 LLM 的基础模型,你要想入门,那对 Transformer 这个模型要了如指掌才成!

而 Transformer 的基本图像就是下面这样的:

图片

推荐自己手写一个 Transformer 模型,至少要写一个 Attention 的结构。还要看懂下面这个图。你就能体会到一个至简的模型是怎么遵循 Scaling Law的,AGI 可能就在这个简单的重复与变大中了!

图片

但是Transformer 这么简单的东西怎么就这么厉害了呢?整个大模型已经发展两三年了,如果你再不跟上,可能很快就淘汰了。

「只要你有想法,你就有结果!只要你投入,就会有成就!」

这些是个基础了。但是对于 LLM 来讲吧,如果你想自己继续研究,那可能要接触的就是下面这些东西了。

  • Prompt 工程
  • RAG 技术
  • Fine-Tune 技术
  • LLM Training From Scratch
  • LLM 部署及优化技术

这几项基本上是针对效果及成本的要求从低到高的顺序,也是技术上从简单到难的顺序列出来的。

  1. 「Prompt 工程」:涉及设计和完善给LLM的Prompt,来得到最准确或最有用的Response。核心原则是通过精心设计的问题或陈述引导LLM生成所需的输出。它需要理解LM的能力和限制,并且通常涉及反复试验以找到最有效的提示。基本技术就是三件事:
    指令角色、精确表达、要求输出格式。
  2. 「RAG 技术(检索增强生成)」:RAG 是一种方法,结合了检索器模型来获取相关文档或数据和生成器模型来产生最终输出。这种技术通过外部信息丰富LLM的响应,提高其准确性和可靠性,特别是对于知识密集型任务。关键是有效整合检索和生成过程,以利用现有知识和生成能力。
    你需要了解的就是 LangChain
  3. 「Fine-Tune 技术」:微调涉及在特定数据集或特定任务上轻微调整预训练模型参数以提高性能。这种方法允许利用大型预训练模型并将它们适应于专门的要求,无需进行大量重新训练。本质是保持LM的一般能力,同时为特定用例进行优化。
    没啥好说的了,自己准备数据针对特定任务训练
  4. 「LLM 从零开始训练」:从头开始训练大型语言模型(LLM)意味着在不依赖现有预训练权重的情况下构建模型。这个过程涉及收集大量数据集、设计模型架构,然后在高性能计算资源上长时间训练模型。核心挑战是需要大量的计算能力和数据,以及有效管理训练过程的专业知识。
    如果你没有在一个顶级的公司或者研究团队,想想就好了。
  5. 「LLM 部署及优化技术」:部署和优化LLM涉及有效提供预测的策略,同时有效管理计算资源。这包括模型量化(减少数字的精度以节省内存)、模型修剪(移除不那么重要的权重)和蒸馏(训练一个较小的模型来模仿一个较大的模型)。目标是减少模型的大小和推理时间,而不会显著影响其性能,使其适合生产环境。

如何系统的去学习大模型LLM ?

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “AI会取代那些行业?”“谁的饭碗又将不保了?”等问题热议不断。

事实上,抢你饭碗的不是AI,而是会利用AI的人。

科大讯飞、阿里、华为等巨头公司发布AI产品后,很多中小企业也陆续进场!超高年薪,挖掘AI大模型人才! 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗?

与其焦虑……

不如成为「掌握AI工具的技术人」,毕竟AI时代,谁先尝试,谁就能占得先机!

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 LLM大模型资料 分享出来:包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

一、LLM大模型经典书籍

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

在这里插入图片描述

二、640套LLM大模型报告合集

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)

在这里插入图片描述

三、LLM大模型系列视频教程

在这里插入图片描述

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt)

在这里插入图片描述

LLM大模型学习路线

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 LLM大模型资料 包括LLM大模型书籍、640套大模型行业报告、LLM大模型学习视频、LLM大模型学习路线、开源大模型学习教程等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击)👈

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐