数据来源
kaggle
模型来源
Huggingface
pycharm远程AutoDL
解释器设置
既然conda list scikit-learn
命令显示scikit-learn
已经在您的li_3_8
环境中安装了(版本1.3.2,通过pypi安装),但运行脚本时仍然提示ModuleNotFoundError: No module named 'sklearn'
,这可能是因为您在使用不同的Python环境或解释器运行脚本。
请确保执行脚本时使用的Python解释器与安装了scikit-learn
的Conda环境(即li_3_8
)相对应。从您的SSH命令来看:
ssh://root@connect.cqa1.seetacloud.com:16321/root/miniconda3/bin/python -u "/root/DeepLearning/test17 Transformer bert 文字分类.py"
这条命令直接指定了Python解释器的路径(/root/miniconda3/bin/python
),而不是激活的Conda环境中的解释器。如果这个解释器不是指向li_3_8
环境,那么它将无法找到scikit-learn
库。
为了确保使用正确的Python解释器,您可以尝试以下步骤:
- 激活相应的Conda环境:
source /root/miniconda3/bin/activate li_3_8
或者,如果您希望直接通过命令行指定解释器,请确保使用的是正确环境中的解释器路径。可以通过以下命令获取li_3_8
环境中Python解释器的实际路径:
which python
在激活的li_3_8
环境中运行上面的命令会给出该环境中Python解释器的路径。使用这个确切路径来替换您原来命令中的解释器路径即可。
这样做应该可以解决由于使用不同Python环境导致的模块找不到的问题。
AutoDL 默认挂载用户目录到 /root/autodl-tmp,系统根目录可能不可见
文件浏览器看到的/其实是/root下的,而不是真正根目录/下的
同步文件
Your shell has not been properly configured to use ‘conda activate’.
根据你提供的信息,看起来你的shell没有正确配置以使用conda activate
命令。你需要初始化Conda以便在当前shell中使用conda activate
。由于你在容器环境中操作(从提示符root@autodl-container-9b3c4988cb-21b828f2
可以看出),这里是如何解决这个问题的步骤:
步骤 1: 确认当前使用的Shell
首先确认你正在使用的shell类型。可以通过以下命令检查:
echo $SHELL
如果输出类似于/bin/bash
,则说明你正在使用Bash shell。
步骤 2: 初始化Conda
根据你的shell类型运行相应的conda init
命令。因为你在容器中使用的是Bash,所以应该运行:
conda init bash
这将在你的.bashrc
文件中添加必要的初始化代码。
步骤 3: 重新加载Shell配置
由于你是在一个已经启动的容器中工作,关闭并重启shell可能不太方便。你可以手动重新加载你的shell配置文件,而无需完全退出和重新进入shell:
对于Bash,可以使用以下命令重新加载.bashrc
:
source ~/.bashrc
步骤 4: 激活Conda环境
现在你应该能够激活你的Conda环境了:
conda activate li_3_8
总结
通过初始化Conda并在当前shell会话中重新加载配置文件,你应该能够让conda activate
命令正常工作。确保你根据实际使用的shell类型选择正确的初始化命令,并且正确地重新加载了shell配置。如果问题依旧存在,请检查是否有权限问题或考虑更新Conda到最新版本。
PyCharm
断点不能在def __init__调试
结构化数据与非结构化数据
结构化数据:有固定格式,如数据库表中的数据,银行交易记录、销售数据、客户信息
非结构化数据:图像、文本、音频、视频
深度学习和机器学习区别
如果数据量较小或任务较简单,可以选择机器学习。
如果数据量较大且任务复杂(如图像、语音、文本处理),深度学习通常是更好的选择。
python
库 模块 类
一个库可以包含多个模块。
模块内部可以定义多个类。
类可以包含方法(函数)和属性(变量),这些方法和属性可以在模块内定义,并作为模块的一部分被导出使用。
- 基础用法
(1) 导入整个模块
import math
print(math.sqrt(16)) # 输出: 4.0
特点:
通过模块名访问内部函数/类(如 math.sqrt)。
避免命名冲突,但代码较长。
(2) 导入模块并指定别名
import numpy as np
arr = np.array([1, 2, 3