【经验与Bug】tensorflow草记

这篇具有很好参考价值的文章主要介绍了【经验与Bug】tensorflow草记。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 常用小知识

  • conda activate tf

    在anaconda prompt使用,进入名为tf的虚拟环境。

  • pip install <包名>==

    可以查看指定包能被找到的所有版本。

  • pip install <包名> -i https://pypi.org/simple

    从官方源下载包。

  • 绘制多图

    plt.figure(figsize=(10,10))
    plt.subplot(5,5,1)
    
  • Colab挂载谷歌云端硬盘

    from google.colab import drive
    import os
    # 挂载网盘
    drive.mount('/content/drive/')  
    # 切换路径
    os.chdir('/content/drive/MyDrive/rnn') 
    # 查看目录下文件
    !ls -ll # 和linux终端用法差不多 但是!(感叹号)不能少
    
  • python连接列表

    a = [1, 2, 3]
    b = [4, 5, 6]
    c = a + b
    print(c)
    
    '''
    [1, 2, 3, 4, 5, 6]
    '''
    

    同样的,元组也可以使用 “+” 进行连接运算。

2 Learn

  • Max Pooling 增强特征,减少数据。

  • 卷积神经网络理论与算法 https://bit.ly/2UGa7uH (Youtube)

  • 卷积层中,每个filter对应有一个bia

  • tensorflow的自动参数搜索功能,真的有点小期待。

    有点失望,刚刚搜索出来的模型效果并不好。层数是预先固定的,搜索了卷积核数、卷积核的尺寸、全连接层的神经元数。虽然预先少了两层卷积,但准确率差距着实有点大。而且搜索得到模型的大小不好控制,比如刚刚搜索出模型的尺寸是原代码中模型的30倍。

    • 原代码提供的模型,5层卷积,验证集准确率可在多个epoch保持100%。

    • 搜索出模型,3层卷积,验证集准确率只到84%。

    不知道能不能搜索learning_rate、batch_size。

1) 疑惑未解

1、卷积或池化的边界问题是如何处理的,不同的处理方式又各有什么影响?例如(5,5)的特征图被进行(2,2)的kernel池化或卷积。

2、进行了卷积中特征图的可视化,但是中间为什么会出现一些黑格呢?是特征图真的黑,还是显示的逻辑问题(比如有一步特征图后处理裁剪到[0,255])。

【经验与Bug】tensorflow草记

2) 为何要有"bias"?

我们知道,对于一元线性函数,仅仅 y = w x y=wx y=wx 的表达能力是不够的,为了表达二维平面内的任意一条直线,我们使用了 y = w x + b y=wx+b y=wx+b 。但是这个b能否被一个wx所替代?或者说:

y = w x + b y=wx+b y=wx+b y = w 1 x 1 + w 2 x 2 y=w_1x_1+w_2x_2 y=w1x1+w2x2 的一个子集吗?

答案应该是不能。虽然对于任意的b,都可以找到某组(w, x),使得 w x = b wx=b wx=b 。但是我们要的,就是固定,就是不受输入x的影响。

3 问题处理

1) jupyter的环境

如何在conda的不同虚拟环境中使用jupyter notebook?我使用了conda install nb_conda_kernels 后,仍然无法切换想要的环境。

在jupyter notebook的Conda选项卡中,只有两个打勾的环境能被使用。

【经验与Bug】tensorflow草记

打算暂时放弃jupyter notebook,毕竟也不是必需,我可以继续使用我的pycharm。

好像,jupyter notebook还是挺有用的,特别是我现在还没有学会保存模型的情况下,每次运行代码都要重新训练一次。

关于在指定虚拟环境中运行jupyter notebook,这篇教程是可以跑通的: 在Anaconda虚拟环境下打开jupyter notebook 。

指定目录运行jupyter

分为以下几步:

  • 在目标目录启动cmd;
  • conda activate <env_name> ,激活你安装了jupyter notebook的环境;
  • jupyter notebook ,启动notebook。

2) Keras版本

运行下面这段代码时报错了,

import keras
import numpy as np

# 构建模型
model = keras.Sequential([keras.layers.Dense(units=1, input_shape=[1])])
model.compile(optimizer='sgd', loss='mean_squared_error')
# 准备训练数据
xs = np.array([-1.0, 0.0, 1.0, 2.0, 3.0, 4.0], dtype=float)
ys = np.array([-3.0, -1.0, 1.0, 3.0, 5.0, 7.0], dtype=float)
# 训练模型
model.fit(xs, ys, epochs=500)
# 使用模型
print(model.predict([10.0]))

安装keras时,我直接pip install keras,然而tensorflowkeras的版本之前其实是有对应关系的,卸载keras重新下载对应的版本即可。版本关系参见:亲测解决导入Keras报错 。

3) 为什么accuracy为100%,迭代时参数还在更新?

这个问题可以回看一下交叉熵损失函数的公式(如何你是用的它的话)。

关键在于, l o s s = S u m ( − 1 ∗ l o g ( 被 正 确 分 类 的 样 本 的 预 测 概 率 ) ) loss=Sum(-1*log(被正确分类的样本的预测概率)) loss=Sum(1log()) 只要模型输出的预测概率还没有变成100%,参数就会继续更新。文章来源地址https://www.toymoban.com/news/detail-423014.html


到了这里,关于【经验与Bug】tensorflow草记的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vscode conda activate激活环境出错

    conda-script.py: error: argument COMMAND: invalid choice: ‘activate’ 1 vscode 终端是 powershell : 2 重启软件即可

    2024年02月11日
    浏览(43)
  • window10 conda activate指令无效的问题

    usage: conda-script.py [-h] [–no-plugins] [-V] COMMAND … conda-script.py: error: argument COMMAND: invalid choice: ‘activate’ (choose from ‘clean’, ‘compare’, ‘config’, ‘create’, ‘info’, ‘init’, ‘install’, ‘list’, ‘notices’, ‘package’, ‘remove’, ‘uninstall’, ‘rename’, ‘run’, ‘search’, ‘upd

    2024年01月25日
    浏览(30)
  • 【Linux】在Linux上使用Conda报错:CondaError: Run ‘conda init‘ before ‘conda activate‘

    最近使用conda遇到一个报错,特地写下来分享一下。 事情是这样的。 我使用conda新建了一个环境: 然后,在使用下面的命令进入这个环境时,报错。 使用的命令: 报的错误: 在网上搜索了很多方法,都没有用,之后重新用以下命令更新了环境,报错解决。 特此记录。

    2024年01月22日
    浏览(44)
  • conda: error: argument COMMAND: invalid choice: ‘activate‘

    1. 问题:anaconda安装成功之后,使用命令 conda activate py3.8 报错 2. 解决 查询当前环境位置,使用 source activate 进行激活就可以解决问题。 运行: 成功解决 3. 相关文章 (1) 阿里云服务器安装Python3.8|anaconda 阿里云服务器安装Python3.8|anaconda (2) Python3与Python2环境共存 Python3与Python2环

    2024年02月06日
    浏览(38)
  • 预警 项目经验&BUG

    在方法上使用 @Scheduled 注解 cron 参数: cron是一个表达式,最多接收7个参数 从左到右分别表示:秒 分 时 天 月 周 年 参数以空格隔开,其中年不是必须参数,可以省略。 示例: @Scheduled(cron =\\\"0 0 0 * * * ?\\\") fixedRate 参数: fixedRate表示多久执行一次,单位是毫秒。 示例: @Sched

    2024年02月14日
    浏览(35)
  • 黑马头条项目经验&BUG

    同样是配置文件,但与application.yml有所不同 bootstrap.yml的加载比application.yml早 bootstrap.yml作用范围更广,可以被多个应用程序共享(可以在每个服务的application.yml中配置 spring: cloud: config: (name)url ,从而配置bootstrap.yml的位置) bootstrap.yml具有更高的优先级,可以覆盖application.y

    2024年02月14日
    浏览(33)
  • 【已解决】pycharm 终端无法激活conda环境Failed to activate conda environment. Please open Anaconda prompt, and run

    目录 一、问题现象:pycharm 终端无法激活 conda 环境 二、问题原因 三、pycharm 社区版解决方法 四、pycharm 专业版解决方法 一、问题现象:pycharm 终端无法激活 conda 环境 pycharm 终端无法激活 conda 环境二、问题原因 pycharm 默认的终端是 Windows PowerShell 三、pycharm 社区版解决方法 将

    2024年02月07日
    浏览(44)
  • Android BUG 之 Error: Activity class {} does not exist

    更换包名,运行报错 在替换包名的时候要确认,配置文件跟build中的保持一致,在更换后还要将旧包的缓存数据清理掉 1 替换后删除 app 下的build 文件夹 2 Rebuild Project 下项目 3 点击同步代码 如下图

    2024年02月01日
    浏览(44)
  • 官网方法,conda环境安装tensorflow,可使用多个GPU

    仅支持CPU的方案: 创建一个名为‘tf’的conda环境,自动安装cpu的tensorflow 可以使用gpu的方案: 使用conda安装 GPU TensorFlow 会安装依赖库:CUDA(cuda toolkit)以及cudnn。(按理说conda会自动安装好兼容的版本) 对于 Windows 和 Linux 系统,CUDA 10.0 以后的版本才支持 TensorFlow 2.0 以后的

    2024年02月10日
    浏览(38)
  • java项目线上捉BUG经验记录

            昨晚上突然接到公司紧急来电电桩设备大面积离线,意味着某市的车无法充电……”,细想这个平台很久都没有更新,最近出现问题是刚好在一个月前也是出现这种情况,再上一次就是几年前更新的。平台平时是稳定,开始找BUG …… 整个充电桩平台两台线上云服务

    2024年03月09日
    浏览(80)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包