当前位置: 首页 > news >正文

VSCode使用Jupyter完整指南配置机器学习环境

接下来开始机器学习部分
第一步配置环境:

VSCode使用Jupyter完整指南

1. 安装必要的扩展

打开VSCode,按 Ctrl+Shift+X 打开扩展市场,搜索并安装以下扩展:

必装扩展:

  • Python (Microsoft官方) - Python语言支持
  • Jupyter (Microsoft官方) - Jupyter notebook支持
  • Pylance (Microsoft官方) - Python智能提示和语法检查

推荐扩展:

  • Python Docstring Generator - 自动生成函数文档
  • Python Environment Manager - Python环境管理
  • Jupyter Keymap - Jupyter快捷键支持

2. Python环境配置

# 方法1:使用Anaconda(推荐)
conda create -n ai_learning python=3.9
conda activate ai_learning# 安装Jupyter相关包
conda install jupyter notebook ipykernel
# 或使用pip
pip install jupyter notebook ipykernel# 安装AI学习必需的库
pip install numpy pandas matplotlib seaborn scikit-learn
pip install tensorflow keras torch torchvision
pip install plotly jupyter-widgets ipywidgets# 将环境注册到Jupyter内核
python -m ipykernel install --user --name ai_learning --display-name "AI Learning Python 3.9"
# 方法2:使用虚拟环境
python -m venv ai_env
# Windows激活
ai_env\Scripts\activate
# macOS/Linux激活
source ai_env/bin/activate# 安装相同的包
pip install jupyter ipykernel numpy pandas matplotlib seaborn scikit-learn
python -m ipykernel install --user --name ai_env --display-name "AI Environment"

3. VSCode配置优化

Ctrl+, 打开设置,搜索相关设置或直接编辑 settings.json

{// Python解释器路径"python.defaultInterpreterPath": "~/anaconda3/envs/ai_learning/bin/python",// Jupyter设置"jupyter.askForKernelRestart": false,"jupyter.sendSelectionToInteractiveWindow": false,"jupyter.interactiveWindow.creationMode": "perFile","jupyter.widgetScriptSources": ["jsdelivr.com", "unpkg.com"],"jupyter.runStartupCommands": ["%load_ext autoreload", "%autoreload 2"],// Notebook设置"notebook.cellToolbarLocation": {"default": "right","jupyter-notebook": "left"},"notebook.output.textLineLimit": 30,"notebook.showCellStatusBar": "visible",// Python设置"python.terminal.activateEnvironment": true,"python.linting.enabled": true,"python.linting.pylintEnabled": true,// 字体和主题"editor.fontSize": 14,"editor.fontFamily": "'Fira Code', 'Consolas', 'Courier New', monospace","editor.fontLigatures": true,// 中文支持"files.autoGuessEncoding": true
}

4. 创建和使用Jupyter Notebook

方法1:通过命令面板

  1. Ctrl+Shift+P 打开命令面板
  2. 输入 “Jupyter: Create New Jupyter Notebook”
  3. 选择Python内核(选择我们创建的ai_learning环境)

方法2:直接创建文件

  1. 在文件资源管理器中右键点击
  2. 选择 “New File”
  3. 命名为 test.ipynb
  4. VSCode会自动识别为Jupyter文件

方法3:使用快捷键

  • Ctrl+Shift+P → “Python: Create Blank New Jupyter Notebook”

5. Jupyter Notebook基本操作

单元格操作:

  • Shift+Enter - 运行当前单元格并移到下一个
  • Ctrl+Enter - 运行当前单元格不移动
  • Alt+Enter - 运行当前单元格并在下方插入新单元格
  • A - 在当前单元格上方插入新单元格
  • B - 在当前单元格下方插入新单元格
  • DD - 删除当前单元格
  • M - 转换为Markdown单元格
  • Y - 转换为代码单元格

实用快捷键:

  • Ctrl+/ - 注释/取消注释
  • Tab - 自动补全
  • Shift+Tab - 查看函数文档
  • Ctrl+S - 保存
  • Ctrl+Z - 撤销

6. 环境切换和内核管理

切换Python环境:

  1. 点击右上角的内核选择器
  2. 选择 “Select Another Kernel”
  3. 选择 “Python Environments”
  4. 选择你创建的 “AI Learning Python 3.9”

查看可用内核:

jupyter kernelspec list

删除不需要的内核:

jupyter kernelspec uninstall unwanted_kernel_name

7. 实用技巧和最佳实践

7.1 魔法命令(Magic Commands)

# 在notebook中使用以下魔法命令
%matplotlib inline  # 图表内联显示
%load_ext autoreload  # 自动重载模块
%autoreload 2  # 自动重载所有模块# 查看执行时间
%time your_function()
%timeit your_function()# 查看当前变量
%who  # 简单列表
%whos  # 详细信息# 执行shell命令
!pip list
!ls -la

7.2 调试技巧

# 在代码中设置断点
import pdb; pdb.set_trace()# 或使用ipdb(需要安装:pip install ipdb)
import ipdb; ipdb.set_trace()# 在VSCode中可以直接设置断点,点击行号左侧

7.3 输出优化

# 设置pandas显示选项
import pandas as pd
pd.set_option('display.max_columns', None)
pd.set_option('display.max_rows', 100)
pd.set_option('display.width', None)# 设置numpy显示选项
import numpy as np
np.set_printoptions(precision=3, suppress=True)# 设置matplotlib中文显示
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimHei']  # 中文字体
plt.rcParams['axes.unicode_minus'] = False   # 负号显示

8. 测试配置

创建一个测试文件验证配置是否正确:

# 测试基本功能
import sys
print("Python版本:", sys.version)
print("Python路径:", sys.executable)
plt.rcParams['font.sans-serif'] = ['SimHei']  # 用来正常显示中文标签
plt.rcParams['axes.unicode_minus'] = False    # 用来正常显示负号
# 测试科学计算库
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import seaborn as snsprint("NumPy版本:", np.__version__)
print("Pandas版本:", pd.__version__)# 测试简单绘图
x = np.linspace(0, 10, 100)
y = np.sin(x)plt.figure(figsize=(10, 6))
plt.plot(x, y, label='sin(x)')
plt.title('测试图表')
plt.xlabel('x')
plt.ylabel('y')
plt.legend()
plt.grid(True)
plt.show()# 测试数据处理
df = pd.DataFrame({'A': np.random.randn(5),'B': np.random.randn(5),'C': np.random.randn(5)
})
print("\n测试DataFrame:")
print(df)# 测试机器学习库
try:import sklearnprint(f"Scikit-learn版本: {sklearn.__version__}")print("✅ 机器学习环境配置成功!")
except ImportError:print("❌ 需要安装scikit-learn")try:import tensorflow as tfprint(f"TensorFlow版本: {tf.__version__}")print("✅ 深度学习环境配置成功!")
except ImportError:print("❌ 需要安装TensorFlow")

9. 常见问题解决

问题1:内核无法连接

# 重新安装ipykernel
pip uninstall ipykernel
pip install ipykernel
python -m ipykernel install --user

问题2:中文显示乱码

# 在notebook开头添加
import matplotlib
matplotlib.rcParams['font.family'] = ['DejaVu Sans']
# 或下载中文字体文件

问题3:模块导入错误

# 检查当前Python路径
import sys
print(sys.path)# 添加自定义路径
sys.path.append('/path/to/your/modules')

问题4:图表不显示

# 确保添加这行
%matplotlib inline
# 或者尝试
%matplotlib widget

10. 推荐的工作流

  1. 项目结构
ai_learning_project/
├── data/           # 数据文件
├── notebooks/      # Jupyter notebooks
├── src/           # Python源代码
├── models/        # 保存的模型
├── results/       # 结果和图表
└── requirements.txt  # 依赖列表
  1. 文件命名
  • 01_data_exploration.ipynb - 数据探索
  • 02_data_preprocessing.ipynb - 数据预处理
  • 03_model_training.ipynb - 模型训练
  • 04_model_evaluation.ipynb - 模型评估
http://www.lryc.cn/news/594322.html

相关文章:

  • 在服务器无网络的环境下安装 VS Code Remote-SSH 组件
  • (5)从零开发 Chrome 插件:Vue3 Chrome 插件待办事项应用
  • 数控调压BUCK电路 —— 基于TPS56637(TI)
  • Spring Cloud Gateway高危隐患
  • jmeter如何做自动化接口测试?
  • jQuery多库共存
  • http基础一
  • 游戏剧情抄袭侵权比对报告:防止“爆款”变“爆雷”
  • C 语言经典编程题实战:从基础算法到趣味问题全解析
  • Qemu-NUC980(一):SOC框架代码添加
  • LeetCode 3202.找出有效子序列的最大长度 II:取模性质(动态规划)
  • 智能制造——48页毕马威:汽车营销与研发数字化研究【附全文阅读】
  • 【图像处理基石】什么是畸变校正?
  • 2025牛客暑期多校训练营2(部分补题)
  • 【LeetCode 热题 100】124. 二叉树中的最大路径和——DFS
  • 网络安全隔离技术解析:从网闸到光闸的进化之路
  • 【机器学习深度学习】魔塔社区模型后缀全解析:Base、Chat、Instruct、Bit、Distill背后的技术密码
  • leetcode丑数II计算第n个丑数
  • Java行为型模式---解释器模式
  • 大语言模型:人像摄影的“达芬奇转世”?——从算法解析到光影重塑的智能摄影革命
  • 核电子数字多道分析(DMCA)系统中,脉冲展宽的核心目的
  • 力扣:动态规划java
  • 基于单片机的火灾报警系统设计
  • 每日算法刷题Day50:7.20:leetcode 栈8道题,用时2h30min
  • 处理Electron Builder 创建新进程错误 spawn ENOMEM
  • C++ primer知识点总结
  • D. Traffic Lights 【Codeforces Round 1038, Div. 1 + Div. 2】
  • docker制作前端镜像
  • securecrt连接服务器报错 Key exchange failed 怎么办
  • Direct3D 11学习(一)