Files
2026_DesignAI/02-foundations/01.3-programming.md
T
pengxiao e58b95d227 初始化:从 docx 拆分为独立 Markdown 章节
将《设计人工智能:基础与应用》拆分为 38 个 Markdown 文件,
按 11 个部分(上篇6部分+下篇5部分)+ 3 个附录组织。

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-04-25 10:32:58 +08:00

227 lines
5.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
## 学习目标
掌握Python AI开发环境配置
了解核心科学计算库
理解Vibe Coding的AI辅助编程新模式
### Python环境配置
#### Anaconda vs Miniconda
-----------------------------------------------
工具 大小 特点 适用场景
----------- --------- ------------ ------------
Anaconda \~500MB 预装常用库 初学者推荐
Miniconda \~50MB 仅含conda 精简安装
-----------------------------------------------
#### 安装步骤
##### 1.下载安装
o访问 https://www.anaconda.com/download
o选择Python 3.x版本
o按提示安装
##### 2.创建虚拟环境
`conda`` create ``-n`` ai-env python=3.10`\
`conda`` activate ai-env`
##### 3.安装核心库
`conda`` install ``numpy`` pandas ``scipy`\
`pip`` install torch ``torchvision`
### 核心科学计算库
#### NumPy:数值计算基础
`import`` ``numpy`` ``as`` np`\
\
`# ``创建数组`\
`x ``=`` ``np.array``([``1``, ``2``, ``3``, ``4``])`\
\
`# ``矩阵运算`\
`W ``=`` ``np.random.randn``(``4``, ``3``) ``# 4×3``权重矩阵`\
`h ``=`` np.dot(x, W) ``# ``矩阵乘法`\
\
`# ``激活函数`\
`relu`` ``=`` ``np.maximum``(``0``, h) ``# ``ReLU`
#### Pandas:数据处理
`import`` pandas ``as`` pd`\
\
`# ``读取数据`\
`df`` ``=`` ``pd.read_csv``(``'data.csv'``)`\
\
`# ``数据清洗`\
`df`` ``=`` ``df.dropna``()`\
`df`` ``=`` ``df`` normalized ``=`` (``df`` ``-`` ``df.mean``()) ``/`` ``df.std``()`\
\
`# ``统计分析`\
`df.describe``()`
#### SciPy:科学计算
`from`` ``scipy`` ``import`` optimize`\
`from`` ``scipy.spatial`` ``import`` distance`\
\
`# ``优化问题`\
`result ``=`` ``optimize.minimize``(``loss_func``, x0)`\
\
`# ``距离计算`\
`dist`` ``=`` ``distance.euclidean``(point1, point2)`
### 开发工具选择
#### VSCode
**特点**: - 微软开源,免费 - 丰富的插件生态 - 轻量级,启动快
**AI开发常用插件** - Python - Jupyter - Pylance - Copilot
## Cursor
**特点**: - AI原生IDE - 代码补全与生成 - 自然语言编程
**使用场景**: - 快速原型开发 - 代码重构 - 学习新API
## Jupyter Notebook
**特点**: - 交互式编程 - 可视化友好 - 文档即代码
**使用场景**: - 数据探索 - 算法实验 - 教学演示
# Vibe CodingAI辅助编程
## 什么是Vibe Coding
传统编程:**明确需求 → 设计算法 → 编写代码**
Vibe Coding**模糊想法 → AI辅助 → 迭代完善**
## 工作流程
### 1. 描述意图(自然语言)
`"``帮我创建一个简单的神经网络``"`
###
`2. AI``生成代码`
### → 自动生成完整代码框架
`3. ``运行测试`
`→ ``发现问题或需要调整`
`4. ``迭代优化`
`"``把隐藏层改成``128``个神经元``"`
`→ AI``自动修改代码`
`5. ``理解学习`
→ 阅读AI生成的代码,学习最佳实践
## 实践技巧
---------------------------------
技巧 说明
---------- ----------------------
明确需求 详细描述输入输出
分步实现 复杂功能拆解为小任务
验证结果 检查生成的代码
学习思考 理解AI为什么这样写
---------------------------------
## 工具推荐
--------------------------------------------
工具 特点 适用场景
---------------- ---------------- ----------
GitHub Copilot 代码补全 日常开发
Cursor 对话式编程 快速原型
ChatGPT/Claude 代码生成与解释 学习咨询
Replit Agent 端到端开发 小型项目
--------------------------------------------
## 开发工作流
项目结构
`project/`\
`├── data/ # ``数据文件`\
`├── notebooks/ # ``Jupyter``笔记本`\
`├── ``src``/ # ``源代码`\
`│ ├── models/ # ``模型定义`\
`│ ├── utils/ # ``工具函数`\
`│ └── train.py # ``训练脚本`\
`├── requirements.txt # ``依赖列表`\
`└── README.md # ``项目说明`
### 典型工作流
`# 1. ``创建环境`\
`conda`` create ``-n`` ``myproject`` python=3.10`\
`conda`` activate ``myproject`\
\
`# 2. ``安装依赖`\
`pip`` install ``-r`` requirements.txt`\
\
`# 3. ``开发迭代`\
`# - ``在``notebook``中实验`\
`# - ``整理到``src``/``目录`\
`# - ``运行测试`\
\
`# 4. ``保存环境`\
`conda`` env export ``>`` ``environment.yml`
## 思考与练习
1.对比Anaconda和Miniconda,什么时候该用哪个?
2.尝试用Cursor/Copilot生成一个简单的神经网络代码
3.Vibe Coding如何改变传统的编程学习方式?
## 关键术语
-----------------------------------------------------------
中文 英文 说明
---------- ----------------------- ------------------------
虚拟环境 Virtual Environment 隔离的Python运行环境
依赖管理 Dependency Management 管理项目所需的库
代码补全 Code Completion 自动补全正在输入的代码
原型开发 Prototyping 快速构建可运行版本
迭代优化 Iterative Refinement 逐步改进代码
-----------------------------------------------------------
## 延伸阅读
[Anaconda官方文档](https://docs.anaconda.com/)
[NumPy快速入门](https://numpy.org/doc/stable/user/quickstart.html)
[Cursor使用指南](https://cursor.com/docs)