AI应用开发工程师转型计划
第1周详细学习计划(AI基础 + Python快速上手)
Day 1-2:AI基础理论入门
学习目标
理解机器学习、深度学习区别
理解神经网络基本结构
初步了解Transformer架构
了解大语言模型(LLM)基本工作原理
学习内容
机器学习 vs 深度学习
机器学习:从数据中学习规则
深度学习:用多层神经网络自动抽取特征
神经网络基础
神经元模型、感知机
多层感知机结构、激活函数
Transformer核心架构
Attention机制
编码器-解码器结构
大语言模型(LLM)简介
GPT、BERT模型工作原理
预训练与微调
推荐资源
吴恩达机器学习前两章视频(Coursera)
文章:《Attention Is All You Need》简明解读
实践任务
用画图工具(如Xmind或手绘)画出简单神经网络结构图
写100-200字总结Transformer和LLM的核心思想
Day 3-4:Python基础快速掌握
学习目标
掌握Python基础语法
会用Jupyter Notebook交互式编程
学习内容
Python基础语法
变量、数据类型(列表、字典、元组)
条件语句和循环
函数定义
类和对象基础
文件读写操作
Jupyter Notebook安装与使用
代码示例
python
复制
编辑
计算列表中数字的平方
numbers = [1, 2, 3, 4, 5]
squares = [x**2 for x in numbers]
print(squares) # 输出: [1, 4, 9, 16, 25]
定义函数,判断是否为偶数
def is_even(num):
return num % 2 == 0
print(is_even(10)) # True
print(is_even(7)) # False
简单类的定义
class Person:
def init(self, name):
self.name = name
def greet(self):
print(f"Hello, my name is {self.name}")
p = Person("Alice")
p.greet()
实践任务
安装Python 3.x 和 Jupyter Notebook
在Notebook中练习上述代码,尝试修改参数,理解运行结果
Day 5-7:PyTorch入门 + 简单神经网络训练
学习目标
理解Tensor概念
会使用PyTorch构建简单网络
能训练MNIST手写数字识别模型
学习内容
PyTorch基础
Tensor创建与操作
自动求导机制
简单神经网络实现
MNIST数据集介绍
代码示例(MNIST训练简易版)
python
复制
编辑
import torch
from torch import nn
from torch.utils.data import DataLoader
from torchvision import datasets, transforms
数据预处理
transform = transforms.Compose([
transforms.ToTensor(),
transforms.Normalize((0.5,), (0.5,))
])
下载数据集
train_data = datasets.MNIST(root='./data', train=True, download=True, transform=transform)
train_loader = DataLoader(train_data, batch_size=64, shuffle=True)
简单神经网络定义
class SimpleNN(nn.Module):
def init(self):
super(SimpleNN, self).init()
self.flatten = nn.Flatten()
self.linear = nn.Linear(28*28, 10)
def forward(self, x):
x = self.flatten(x)
logits = self.linear(x)
return logits
model = SimpleNN()
损失函数和优化器
loss_fn = nn.CrossEntropyLoss()
optimizer = torch.optim.SGD(model.parameters(), lr=0.01)
训练循环
for epoch in range(3): # 训练3个epoch
for images, labels in train_loader:
outputs = model(images)
loss = loss_fn(outputs, labels)
optimizer.zero_grad()
loss.backward()
optimizer.step()
print(f"Epoch {epoch+1}, Loss: {loss.item():.4f}")
实践任务
跑通上面代码,理解模型结构和训练流程
尝试修改学习率或epoch数量,观察训练效果