【问题标题】:Jupyter Notebook set-upJupyter 笔记本设置
【发布时间】:2020-01-16 04:03:29
【问题描述】:

Jupyter notebook 最初可以工作,但我尝试导入 tensorflow 却无法正常工作,这导致我搞砸了一切。

我基本上把所有事情都搞砸了,我觉得现在唯一的出路就是核弹我的设备并重新启动。我不知道 pip 和 anaconda 是什么(仍然不知道),尝试了一堆时髦的更新和安装等等,现在一切都死了。我的 jupyter notebook 甚至无法运行普通的 python 内核。

如何硬重置所有内容?

作为奖励,如果有人要使用 ELI5,conda、pip、gitbash 和 PowerShell 之间的区别是。 Jupyter 运行在哪些版本的东西上(因为我认为我的 conda 和设备有不同版本的东西?)。我使用的是 Windows 10。

【问题讨论】:

    标签: pip jupyter-notebook anaconda


    【解决方案1】:

    我的第一条建议是不要使用 Windows,尽管我可能会因此而遭到垃圾邮件的否决。在 Ubuntu 上,我可以将 Jupyter 设置放入一行:

    # update, install python3, python3-dev, and pip3; get pip packages
    sudo apt-get update && sudo apt-get install -y python3 python3-dev python3-pip && sudo -H python3 -m pip install jupyter notebook ipykernel tensorflow
    

    安装软件包后,就像在终端中运行 jupyter notebook 一样简单。

    Anaconda 是 Python 的一个发行版,其中包含大量预构建的软件包,包括 Jupyter 和 scipy、numpy、pandas 等。它基本上是一个“开箱即用”的解决方案,附带了您需要的大部分工具. “Pip”是 Python 的包管理器; pip install [package] 允许您在脚本中使用包,例如 import [package]。在这种情况下,就是tensorflow

    ipykernel 是一个可以为 Jupyter 打开 Python 内核的包。您可以在 Python3.7 后端运行 Jupyter 笔记本,但通过使用 Python2 的 pip 安装 ipykernel 来处理 Python2 代码,通常(在 Ubuntu 上)sudo apt-get update && sudo apt-get install -y python-pip && sudo -H python -m pip install ipykernel

    当你运行jupter notebook 时会发生什么?你有错误吗?你能让笔记本打开,但没有内核可以附加到笔记本上吗?

    【讨论】:

    • 它打开了,我有内核,但它们都不起作用。它在内核启动时卡住了,请稍候。我尝试通过 python venv 和普通的 conda create env 制作几个我自己的内核,因为我看到这是推荐的。普通的 python 不如我创建的所有的那样好用。此时我有点想删除 pip delete anaconda 并删除 jupyter 并重新开始。这是个好主意吗?
    • virtualenv 超级时髦而且很酷,每个人都说要使用它们,但我从不使用。他们经常破坏东西。尝试重新启动计算机并重新启动笔记本电脑。可以加载内核吗?
    • 刚刚尝试重新启动,其中一个内核现在可以工作了!默认的python 之一不起作用。但是我制作了 3 个测试内核,由于某种原因,现在只有其中一个可以工作。我不确定它们之间有什么区别-我认为但不确定我用 conda 制作的那个,以及我用 venv 制作的另外两个。你知道如何让默认的 python 重新工作吗?
    • 对不起,老兄,如果归结为 Windows 故障排除,我真的无能为力,我一生中大部分时间都设法避免了它。不知道 python 在 Windows 系统中是如何工作的。可能有人会帮助你,所以这个肿块应该不会受伤。
    • 好吧,不用担心。还是谢谢!
    【解决方案2】:

    我刚刚为 Python、Jupyter 和 Tensorflow 设置了一台新的 Windows 10 机器。我在没有 anaconda 的情况下进行了设置。我通过一些特殊步骤完成了正常的设置过程:

    1) 通过“pip install”安装的 Python 3.8 和 Jupyter 不起作用。您需要在安装 Jupyter 时作为依赖项安装的模块中添加三行代码。 change asyncio.py

    2) 当前的 TensorFlow 不适用于 Python 3.8。您需要安装 Python 3.7。如果您有 Python 3.8,则无需删除。如此处所述,使用 virtualenv 创建一个虚拟环境,并提供 Python 3.7 的路径 Special Python in virtualenv

    3) 如果你想在 Tensorflow 中为 NVIDIA 使用 GPU,你需要处理两个不兼容的事实:当前的 Tensorflow 和当前版本的'NVIDIA GPU Computing Toolkit'(GPU 支持所需的工具)。在这里查看修复:cudart64_XYZ.dll not found

    【讨论】:

    • 嗨,一旦我到达那里,我会做 python 3.7 的东西,但首先,我的内核根本没有工作。如何获得功能内核?我什么也做不了,即使我制作的任何内核上的 3 + 3 也是如此。我在我的虚拟环境中运行 jupyter,但它仍然有我的旧内核 - 我如何制作一个新的表单 python venv?
    【解决方案3】:

    让我们从基础开始:

    作为奖励,如果有人要 ELI5,conda、pip、gitbash 和 powershell 之间的区别是

    您可能知道经典的cmd.exe,它会打开一个基本终端,您可以在其中使用不同的命令并从中调用程序。它基本上是一种与操作系统交互的基于文本的方式。

    Powershell 在我的理解中只是它的扩展(我自己不使用它)并且具有更多的功能以及更好的脚本支持。

    gitbash 是您在计算机上安装git 时可能安装的可选工具。它模拟了一个bash shell,许多人习惯于使用不同的操作系统(如 ubuntu),其中bash 通常是默认终端,因此更易于使用,因为所有语法和命令都与这些 ppl 相同用过。

    除了能够在这些终端中输入pythonjupyter notebook 来启动应用程序之外,这些都与在您的计算机上使用python 没有任何直接关系。

    对于更具体的python问题:

    conda 是一个包和虚拟环境管理工具。它可用于安装各种软件,还可以创建虚拟环境以使不同的设置彼此分开(例如,同一台机器上的不同 python 版本)。但它不仅限于python。它是在您下载并安装minicondaanaconda 这两个python 发行版时预先安装的。

    pip 是一个仅适用于 python 包的包管理器,并且预装在大多数 python 发行版中。

    anaconda/miniconda 经常与conda 混淆是两个python 发行版,即预装了conda 包管理器的“我在我的系统上安装了python”。 miniconda 不提供任何其他软件包,而 anaconda 预装了一长串有用的软件包,因此当您希望轻松使用 python 进行研究时,这是一个受欢迎的选择

    更多信息,你也可以阅读understanding-conda-and-pip

    现在如何保存系统

    我基本上把一切都搞砸了

    很难访问系统的当前状态,但我建议您尝试以下步骤以再次进入工作状态:

    1. 进入设置 -> 应用程序并删除与pythonanaconda 相关的所有内容。通过在C:\Users 的某处搜索(使用 Windows 搜索功能)pythonconda 文件夹,确保删除所有内容。这应该确保您设置的所有内容都已清除
    2. 确保pythonpipjupyter 命令在您的cmd 中不再有效(确认清除)
    3. 下载安装miniconda
    4. 现在创建一个虚拟环境并安装tf。这是一个很好的方法,因为如果你应该设法搞砸环境,你可以删除并重新创建它,而不会有太多麻烦:

    conda create -n venv pip python=3.7 #create environment
    conda activate venv #activate the environment
    conda install jupyter #for jupyter notebook
    pip install https://storage.googleapis.com/tensorflow/windows/gpu/tensorflow_gpu-2.1.0-cp37-cp37m-win_amd64.whl
    

    1. 启动 jupyter notebook:jupyter notebook。因为它只存在于这个环境中,和tensorflow一样,所以正常使用tensorflow应该没有问题了

    【讨论】:

    • 谢谢!我遵循了这些说明,但是,即使我在新的 miniconda 环境 venv 中打开 jupyter notebook,我的 jupyter notebook 仍然具有相同的旧 4 个内核。如何让新内核显示出来?
    • 你完全卸载了一切,where jupyter指向属于venv的目录?
    猜你喜欢
    • 2018-09-04
    • 2020-08-26
    • 2021-08-05
    • 2018-06-25
    • 2023-04-09
    • 2020-12-26
    • 2019-05-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多