linux下xgboost、python版本、tensorflow_GPU的一些小事情

本文分享了Python环境下xgboost的安装经验,包括不同Python版本间的库安装区别及注意事项,并探讨了TensorFlow与GPU资源的适配问题。
部署运行你感兴趣的模型镜像
最近要搬实验室的砖,博客不怎么更新,可能到11月继续开始跟新,这次就说说最近的一些小问题
  • python版本的事情

    其实这也没啥大事,因为之前一直用anaconda所以没啥坑,最近装xgboost的时候就遇到了。

    总结一下:pip安装好像安装到python2那里去了,要在python3.5安装库啥的,用pip3;安装xgboost,运行setup.py的时候,如果要安装到python3.5,我记得用的是sudo python3 setup.py install;总之安装注意Python的版本。
    附上一个步骤链接助你安装:
    http://blog.youkuaiyun.com/tobeyourlover/article/details/53244421
    注意里面的pip/pip3,python/python3。

    下面有gpu加速资料的mark一下
    http://blog.youkuaiyun.com/bojackhosreman/article/details/71480614
    http://weibo.com/1402400261/ElI2M62Tn?type=comment#_rnd1506236204757
    https://github.com/dmlc/xgboost/blob/master/plugin/updater_gpu/README.md
    ps:python传递引用,这个事情在写复杂链表拷贝的时候又出现了,哎
    举个例子:

    >>> a=[1,2,3]
    >>> b=a
    >>> b
    [1, 2, 3]
    >>> b[1]=3
    >>> b
    [1, 3, 3]
    >>> a
    [1, 3, 3]

    在把a这个list类(node类啥的同理)赋给b的时候,传递的是引用,内存中存储的还是只有一个list,这个细节在较大程序里可能会不小心,再次给自己做个记号。

  • tensorflow和GPU相关的
    特么又是你的问题!
    你大爷的!

    tensorflow是一个比较素质低的玩家,注意指定使用gpu的编号,不然单机容易bug,服务器也应该有人会举报你,因为这个玩家默认调用所用的gpu资源,申请不到就报错。

    所以,设置可见的GPU和使用的显存资源;

    (1)功劳不是我的,老老实实贴链接
    http://blog.youkuaiyun.com/wangkun1340378/article/details/72782593
    ps:当然也可以在执行的时候用CUDA_VISIBLE_DEVICES=0 python3 xx.py
    话说,这里又注意是python3,版本大家就不能只有一种么….
    (2)单机下看自己的GPU编号命令:nvidia-smi
    (3)安装tensorflow的时候,import可能出现有时候找不到对应版本的libcudnn啥的文件,那就去nvidia官网上找对应版本的cudnn,把一些文件拷贝到/usr/local/cuda-8.0/lib64里面去吧(有时候还要拷贝include文件夹的东西),具体细节应该在第二篇文本分类文章里有链接,关于cuda和cudnn的安装

没啦,没啥要说的了,oh还有就是感觉xgboost这种,特么要做的就是调参调参。。。

还有,听说u8出了7700k会降价?
哎,一不小心先买了微星z270 gaming pro的主板,听说也会降;
1100买了英睿达白马甲8g*2,一看别人买的,都是几百块钱的时候买的;
我好傻,买1060的时候也是贵的时候,但是有时候是真着急,刚需!
所以求牙膏厂给条活路,让我买到降价的7700k吧,我等你两周好不好,
很急很关键!

您可能感兴趣的与本文相关的镜像

TensorFlow-v2.15

TensorFlow-v2.15

TensorFlow

TensorFlow 是由Google Brain 团队开发的开源机器学习框架,广泛应用于深度学习研究和生产环境。 它提供了一个灵活的平台,用于构建和训练各种机器学习模型

<think>好的,我现在需要帮助用户解析Conda环境配置文件中pip部分的含义,特别是-e参数的作用。用户之前询问过关于pip的-e参数,现在结合新的引用内容,需要进一步解答。首先,我得回顾之前的对话和相关引用。 用户提供的引用中,[^2]提到了pip install .和pip install -e .的区别,指出-e是editable模式,修改本地文件会立即生效。之前的回答也详细解释了-e的作用,包括源码关联和开发调试场景。现在用户的问题是针对Conda环境配置文件中的pip部分,特别是如何处理-e参数。 首先,我需要明确Conda环境文件的结构。通常,环境文件包含name、channels、dependencies等部分。在dependencies下,可能会有pip的依赖项,包括使用-e安装的可编辑包。例如: dependencies: - python=3.8 - pip - pip: - -e ./code/tape-neurips2019/ - numpy==1.21.0 这里的-e在pip部分的作用与之前解释的一样,即启用可编辑模式。但需要注意,Conda环境文件中的pip部分需要正确书写,确保路径正确,并且项目包含setup.py或pyproject.toml。 接下来,需要结合用户提供的引用[^1]中的错误信息。用户可能遇到了pip安装问题,特别是Python 3.5的兼容性问题,因为SyntaxError出现在sys.stderr.write(f"ERROR: {exc}"),这可能是由于Python 3.5不支持f-strings。用户可能升级了Python版本或者重新安装了pip来解决这个问题。因此,在配置Conda环境时,确保Python版本兼容性很重要,比如使用3.5以上版本以避免语法错误。 然后,引用[^3]提到安装miniconda时遇到的dll缺失问题,这可能在用户的环境中存在系统兼容性问题,但当前问题集中在环境配置文件中的pip部分,暂时不需要处理dll问题,但可能需要提醒用户确保Conda环境正确安装。 现在,用户的问题是将pip的-e参数整合到Conda环境配置文件中。需要解释如何在这样的文件中正确使用-e,并指出注意事项,比如路径、Python版本、依赖管理等。同时,需要区分Conda和pip的依赖管理,避免冲突。 可能的思考步骤包括: 1. 确认Conda环境文件中pip部分的语法结构。 2. 解释-e参数在其中的作用,与之前回答的pip -e一致。 3. 强调路径的正确性,相对路径相对于环境文件的位置还是项目的位置? 4. 提醒用户关于Python版本问题,如引用[^1]中的Python 3.5可能导致问题。 5. 对比Conda和pip安装方式的差异,说明为何在Conda环境中使用pip的-e参数。 6. 可能遇到的问题,如路径错误、依赖冲突等,如何解决。 需要确保回答结构清晰,分点说明,并结合用户之前的疑问和引用内容,给出具体的示例和注意事项。同时生成相关问题,帮助用户深入理解。</think>### Conda环境配置文件中`pip`部分与`-e`参数解析 结合Conda环境配置文件的语法结构和`pip install -e`的特性,具体分析如下: --- #### 一、Conda环境文件中`pip`依赖项的书写规范 在`environment.yml`文件中,通过`pip`字段声明**Conda无法直接管理的Python包**,格式为: ```yaml name: my_env channels: - defaults dependencies: - python=3.8 - pip # 必须声明pip - pip: # 缩进层级与普通依赖项对齐 - -e ./code/tape-neurips2019/ # 可编辑模式安装本地包 - numpy>=1.18 # 普通PyPI包 ``` 此时,Conda会先安装基础环境,再通过`pip`安装指定包[^2]。 --- #### 二、`-e`参数在Conda环境文件中的作用 `-e ./code/tape-neurips2019/` 的语义与直接使用`pip install -e`完全一致: 1. **源码映射机制** 在`site-packages`中创建`.egg-link`文件,指向本地项目目录(而非复制文件),实现代码修改实时生效。 2. **路径规范要求** - 路径需为**绝对路径或相对于环境文件所在目录的相对路径** 例如:若`environment.yml`位于`/project/`,则应写为`./code/tape-neurips2019/`(假设项目路径为`/project/code/tape-neurips2019/`)。 - 目标目录必须包含`setup.py`或`pyproject.toml`,否则安装失败。 --- #### 三、Conda与`pip -e`的协作注意事项 1. **Python版本兼容性** 若环境文件指定`python=3.5`,需确保本地包的代码兼容Python 3.5语法(例如避免使用f-strings等特性)[^1]。 2. **依赖优先级** Conda会优先安装其仓库中的包,若与`pip`安装的包冲突,可能导致环境不稳定。建议通过`conda list`检查版本一致性。 3. **跨平台问题** 包含`-e`路径的环境文件在Windows/Linux之间共享时,需注意路径分隔符差异(`/` vs `\`)。 --- #### 四、完整应用场景示例 假设项目结构如下: ``` project/ ├── environment.yml └── code/ └── tape-neurips2019/ ├── setup.py └── src/ ``` 则`environment.yml`中应配置: ```yaml dependencies: - pip: - -e ./code/tape-neurips2019/ # 正确路径 ``` 激活环境后,代码修改会直接反映到导入的包中。 --- ### 对比普通安装与可编辑安装 | 特性 | `pip install .` | `pip install -e .` | |---------------------|------------------------------|--------------------------------| | 文件存储位置 | 复制到`site-packages` | 仅创建链接文件 | | 修改源码生效方式 | 需重新安装 | 立即生效 | | 适用场景 | 生产环境 | 开发调试环境 | ---
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值