0

0

Windows环境下Keras 3安装与WSL2解决方案

花韻仙語

花韻仙語

发布时间:2025-11-11 11:55:09

|

161人浏览过

|

来源于php中文网

原创

Windows环境下Keras 3安装与WSL2解决方案

本文针对windows用户在安装keras 3时遇到的“dm-tree”依赖构建失败问题,指出keras 3官方推荐在linux或wsl2环境下运行。教程将详细指导如何在windows上设置和使用wsl2来成功安装并运行keras,确保深度学习项目的顺利进行。

Windows环境下Keras 3安装困境分析

在Windows操作系统上直接通过pip install keras安装Keras 3时,用户可能会遇到一系列依赖构建错误,其中最常见的是在构建dm-tree这一Keras核心依赖时失败。错误信息通常会指出subprocess-exited-with-error,并最终提示RuntimeError: CMake must be installed to build the following extensions: _tree。

这表明在尝试编译dm-tree的C++扩展时,系统未能找到必要的构建工具CMake。尽管可以尝试手动安装CMake和Visual C++ Build Tools来解决这类问题,但Keras 3的开发团队对Windows平台的支持策略有所调整。

Keras 3的官方立场与WSL2推荐

Keras 3作为一个独立的深度学习API,其设计目标是与多个后端(如TensorFlow、JAX、PyTorch)兼容,并致力于提供更强大的功能和更好的性能。然而,官方明确指出,Keras 3目前主要兼容Linux和macOS系统。对于Windows用户,官方推荐使用Windows Subsystem for Linux 2 (WSL2) 来运行Keras。

这意味着,直接在Windows环境下安装Keras 3可能并非最佳实践,并且可能持续遇到各种兼容性或构建问题。WSL2提供了一个完整的Linux内核环境,允许用户在Windows内部无缝运行Linux发行版,从而获得与原生Linux环境相近的开发体验。

WSL2简介及其优势

Windows Subsystem for Linux 2 (WSL2) 是微软为Windows 10/11用户提供的一项功能,它允许开发者在Windows操作系统上直接运行一个完整的Linux内核,并安装各种Linux发行版(如Ubuntu、Debian等)。相较于WSL1,WSL2提供了真正的Linux内核,这意味着更好的文件系统性能、完整的系统调用兼容性以及对Docker等工具的良好支持。

对于深度学习开发而言,WSL2的优势显而易见:

  • 环境隔离: 可以在Windows主系统之外维护一个独立的Linux开发环境,避免依赖冲突。
  • 性能优化: 接近原生Linux的性能,尤其是在文件I/O和网络操作方面。
  • GPU支持: WSL2支持GPU直通(WSLg),允许Linux应用程序直接访问Windows主机的GPU进行计算,这对于深度学习训练至关重要。
  • 工具链兼容性: 许多深度学习库(包括Keras 3及其依赖)在Linux环境下拥有更成熟、更稳定的构建和运行支持。

在Windows上安装和配置WSL2

要在Windows上成功安装和使用WSL2来运行Keras 3,请遵循以下步骤:

1. 启用WSL和虚拟机平台功能

在PowerShell或命令提示符中(以管理员身份运行),执行以下命令:

dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart

执行完毕后,重启计算机以使更改生效。

2. 设置WSL2为默认版本

重启后,再次打开PowerShell或命令提示符(无需管理员权限),执行:

wsl --set-default-version 2

如果提示需要更新WSL内核,请访问WSL官方文档下载并安装最新的WSL2 Linux内核更新包。

3. 安装Linux发行版

从Microsoft Store搜索并安装你偏好的Linux发行版,例如Ubuntu。安装完成后,首次启动Ubuntu应用,它会提示你设置用户名和密码。

网胜B2B电子商务系统蓝色风格 2008 SP6.2 普及版
网胜B2B电子商务系统蓝色风格 2008 SP6.2 普及版

  websenB2B是一套经过完善设计的B2B行业网站程序,是windows nt系列环境下最佳的B2B行业网产站解决方案。精心设计的架构与功能机制,适合从个人到企业各方面应用的要求,为您提供一个安全、稳定、高效、易用而快捷的行业网站商务系统。分普及版和商业版等不同版本。一、网胜B2B电子商务系统SP6.2蓝色风格普及版本升级功能说明:1、邮件群发功能:可以选择某一级别的会员,并放入支持html

下载

4. 更新Linux环境

进入WSL2中的Linux终端,首先更新软件包列表并升级已安装的软件包:

sudo apt update
sudo apt upgrade -y

5. 安装Python和pip(如果未预装或版本不符)

WSL2中的Linux发行版通常预装了Python,但可能不是最新版本。建议使用pyenv或直接通过apt安装特定版本。

# 检查Python版本
python3 --version
pip3 --version

# 如果需要安装最新Python,例如Python 3.10或3.11
sudo apt install software-properties-common -y
sudo add-apt-repository ppa:deadsnakes/ppa -y
sudo apt update
sudo apt install python3.11 python3.11-venv python3.11-dev -y

# 设置默认python版本(可选,或使用虚拟环境)
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.11 1
sudo update-alternatives --install /usr/bin/pip3 pip3 /usr/bin/pip3.11 1

6. 创建并激活Python虚拟环境

强烈建议为Keras项目创建一个独立的Python虚拟环境,以管理依赖。

mkdir my_keras_project
cd my_keras_project
python3 -m venv .venv
source .venv/bin/activate

激活虚拟环境后,你的终端提示符前会显示虚拟环境的名称(例如 (.venv))。

在WSL2中安装Keras 3

在虚拟环境激活状态下,现在可以安全地安装Keras 3及其依赖:

pip install keras

此命令会自动安装Keras 3及其所有必要的依赖,包括dm-tree。在Linux环境下,dm-tree的编译通常不会遇到Windows上常见的CMake问题。

Keras 3使用示例

安装完成后,你可以在WSL2的Linux环境中编写和运行Keras代码。

创建一个名为 simple_keras_model.py 的文件:

import keras
from keras import layers
import numpy as np

# 检查Keras版本和后端
print(f"Keras version: {keras.__version__}")
print(f"Keras backend: {keras.backend.backend()}")

# 构建一个简单的序贯模型
model = keras.Sequential([
    layers.Input(shape=(784,)),
    layers.Dense(256, activation="relu", name="first_layer"),
    layers.Dense(128, activation="relu", name="second_layer"),
    layers.Dense(10, activation="softmax", name="output_layer"),
])

# 编译模型
model.compile(optimizer="adam",
              loss="sparse_categorical_crossentropy",
              metrics=["accuracy"])

# 打印模型摘要
model.summary()

# 生成一些虚拟数据进行训练
num_samples = 1000
x_train = np.random.rand(num_samples, 784).astype("float32")
y_train = np.random.randint(0, 10, size=(num_samples,)).astype("int32")

# 训练模型
print("
Training the model...")
model.fit(x_train, y_train, epochs=5, batch_size=32, verbose=1)

print("
Keras model training completed successfully in WSL2.")

在WSL2终端中,确保虚拟环境已激活,然后运行:

python simple_keras_model.py

你将看到Keras模型被成功构建、编译和训练的输出。

重要注意事项

  1. GPU支持 (WSLg): 如果你的Windows系统支持GPU,并且已正确配置WSLg,Keras在WSL2中可以利用GPU进行加速。确保安装了相应的CUDA驱动(在Windows上安装,但WSL2中的Linux会通过WSLg访问)和CUDA Toolkit(在WSL2的Linux中安装)。
  2. 文件系统访问: 你可以在WSL2的Linux终端中直接访问Windows文件系统,路径通常为 /mnt/c/Users/YourUsername/...。反之,在Windows文件资源管理器中,可以通过 \wsl.localhost... 访问Linux文件。
  3. 虚拟环境管理: 始终使用Python虚拟环境来安装项目依赖,以避免全局包污染和版本冲突。
  4. VS Code集成: Visual Studio Code对WSL2有出色的集成支持。安装VS Code的“Remote - WSL”扩展后,可以直接在Windows上使用VS Code编辑WSL2中的文件,并在WSL2环境中运行代码和调试。

总结

尽管在Windows上直接安装Keras 3可能会遇到挑战,但通过充分利用Windows Subsystem for Linux 2 (WSL2),开发者可以轻松地在Windows机器上搭建一个稳定、高效的Keras开发环境。WSL2不仅解决了Keras 3在Windows上安装时的依赖构建问题,还提供了接近原生Linux的性能和完整的GPU支持,是Windows深度学习开发者的理想选择。遵循本教程的步骤,你将能够顺利在WSL2中安装并运行Keras 3,从而专注于模型开发,而不是环境配置的困扰。

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
pip安装使用方法
pip安装使用方法

安装步骤:1、确保Python已经正确安装在您的计算机上;2、下载“get-pip.py”脚本;3、按下Win + R键,然后输入cmd并按下Enter键来打开命令行窗口;4、在命令行窗口中,使用cd命令切换到“get-pip.py”所在的目录;5、执行安装命令;6、验证安装结果即可。大家可以访问本专题下的文章,了解pip安装使用方法的更多内容。

373

2023.10.09

更新pip版本
更新pip版本

更新pip版本方法有使用pip自身更新、使用操作系统自带的包管理工具、使用python包管理工具、手动安装最新版本。想了解更多相关的内容,请阅读专题下面的文章。

433

2024.12.20

pip设置清华源
pip设置清华源

设置方法:1、打开终端或命令提示符窗口;2、运行“touch ~/.pip/pip.conf”命令创建一个名为pip的配置文件;3、打开pip.conf文件,然后添加“[global];index-url = https://pypi.tuna.tsinghua.edu.cn/simple”内容,这将把pip的镜像源设置为清华大学的镜像源;4、保存并关闭文件即可。

799

2024.12.23

python升级pip
python升级pip

本专题整合了python升级pip相关教程,阅读下面的文章了解更多详细内容。

370

2025.07.23

scripterror怎么解决
scripterror怎么解决

scripterror的解决办法有检查语法、文件路径、检查网络连接、浏览器兼容性、使用try-catch语句、使用开发者工具进行调试、更新浏览器和JavaScript库或寻求专业帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

451

2023.10.18

500error怎么解决
500error怎么解决

500error的解决办法有检查服务器日志、检查代码、检查服务器配置、更新软件版本、重新启动服务、调试代码和寻求帮助等。本专题为大家提供相关的文章、下载、课程内容,供大家免费下载体验。

373

2023.10.25

windows查看端口占用情况
windows查看端口占用情况

Windows端口可以认为是计算机与外界通讯交流的出入口。逻辑意义上的端口一般是指TCP/IP协议中的端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等等。怎么查看windows端口占用情况呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来阅读学习。

1431

2023.07.26

查看端口占用情况windows
查看端口占用情况windows

端口占用是指与端口关联的软件占用端口而使得其他应用程序无法使用这些端口,端口占用问题是计算机系统编程领域的一个常见问题,端口占用的根本原因可能是操作系统的一些错误,服务器也可能会出现端口占用问题。php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

1164

2023.07.27

JavaScript浏览器渲染机制与前端性能优化实践
JavaScript浏览器渲染机制与前端性能优化实践

本专题围绕 JavaScript 在浏览器中的执行与渲染机制展开,系统讲解 DOM 构建、CSSOM 解析、重排与重绘原理,以及关键渲染路径优化方法。内容涵盖事件循环机制、异步任务调度、资源加载优化、代码拆分与懒加载等性能优化策略。通过真实前端项目案例,帮助开发者理解浏览器底层工作原理,并掌握提升网页加载速度与交互体验的实用技巧。

23

2026.03.06

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 10.3万人学习

Git 教程
Git 教程

共21课时 | 4万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号