- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
有谁知道是否有所有重要 pycaffe 命令的备忘单?到目前为止,我仅通过 Matlab 界面和终端 + bash 脚本使用 caffe。
我想转向使用 ipython 并完成 ipython 笔记本示例。然而,我发现很难概述 python 的 caffe 模块内的所有函数。 (我对 python 也很陌生)。
最佳答案
pycaffe tests和 this file是通往 Python 编码接口(interface)的主要门户。
首先,您需要选择是使用CPU还是GPU的Caffe。分别调用 caffe.set_mode_cpu()
或 caffe.set_mode_gpu()
就足够了。
pycaffe接口(interface)公开的主要类是Net
。它有两个构造函数:
net = caffe.Net('/path/prototxt/descriptor/file', caffe.TRAIN)
它只是创建一个Net
(在本例中使用指定用于训练的数据层),或者
net = caffe.Net('/path/prototxt/descriptor/file', '/path/caffemodel/weights/file', caffe.TEST)
它创建一个Net
并自动加载保存在提供的caffemodel文件中的权重 - 在本例中使用指定的数据层测试。
Net
对象具有多个属性和方法。可以找到它们here 。我只会引用我经常使用的那些。
您可以通过Net.blobs
访问网络blob。例如
data = net.blobs['data'].data
net.blobs['data'].data[...] = my_image
fc7_activations = net.blobs['fc7'].data
您也可以以类似的方式访问参数(权重)。例如
nice_edge_detectors = net.params['conv1'].data
higher_level_filter = net.params['fc7'].data
好的,现在是时候向网络提供一些数据了。因此,您将使用 backward()
和 forward()
方法。所以,如果你想对单个图像进行分类
net.blobs['data'].data[...] = my_image
net.forward() # equivalent to net.forward_all()
softmax_probabilities = net.blobs['prob'].data
如果有人对计算梯度感兴趣,则 backward()
方法是等效的。
您可以保存净重以便随后重复使用。这只是一个问题
net.save('/path/to/new/caffemodel/file')
pycaffe 公开的另一个核心组件是 Solver
。求解器有多种类型,但为了清楚起见,我将仅使用 SGDSolver
。训练咖啡模型需要它。您可以使用以下命令实例化求解器
solver = caffe.SGDSolver('/path/to/solver/prototxt/file')
求解器
将封装您正在训练的网络以及用于测试的网络(如果存在)。请注意,它们通常是同一网络,只是具有不同的数据层。网络可通过以下方式访问
training_net = solver.net
test_net = solver.test_nets[0] # more than one test net is supported
然后,您可以执行求解器迭代,即带有权重更新的前向/后向传递,只需键入
solver.step(1)
或者运行求解器直到最后一次迭代,
solver.solve()
请注意,pycaffe 允许您做更多的事情,例如 specifying the network architecture through a Python class或creating a new Layer type 。这些功能不太常用,但通过阅读测试用例很容易理解。
关于jupyter-notebook - caffe/pycaffe 备忘单?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32379878/
在尝试安装 jupyter 的许多不同方法之后,它似乎没有正确安装。 根据我最近遇到的 MacOS 系统 python 问题,可能与 MacOS 相关 pip install jupyter --us
命名 Jupyter Notebook 时,如果使用空格,即 This is my notebook.ipynb 然后,当使用网络浏览器打开时,它的渲染效果非常好。然而,空格在命令行环境中是有害的。但
运行 jupyter notebook和 jupyter server给我非常相似的结果,描述也非常相似。 ❯ jupyter notebook -h The Jupyter HTML Noteboo
是否可以在 Jupyter Lab 中使用笔记本扩展 (nbextensions)? 我认为我的扩展已启用...我调用 jupyter nbextension enable事先在他们身上。但我没有在
我将 Jupyter 与 Anaconda3 结合使用。 我的 Anaconda3\ 和 Anaconda3\Scripts\ 文件夹已添加到 %PATH% 变量中。 尽管 jupyter.exe 位
我将 Jupyter 用于我公司的分析。我想制作显示一些漂亮图表的实时页面。我将在大厅的大显示器上显示此页面,我希望它自动刷新。 有什么方法可以通过刷新浏览器页面来触发“运行所有单元格”吗?或者,是否
%store 魔术功能可以保存大型 python 对象,供您在不同 session 之间使用,但我想找出文件的实际位置,以便我也可以在不同 session 之间传输它们不同的电脑。我正在使用 Wind
我在 Windows 10 的本地 Ubunto 机器上运行 Jupyter notebook。问题是所有文本都与屏幕右侧对齐,包括菜单 - 例如"file"选项卡位于最右侧。以这种方式阅读文本非常困
Closed. This question is not reproducible or was caused by typos。它当前不接受答案。 想要改善这个问题吗?更新问题,以便将其作为on-t
我尝试使用以下内容创建指向 jupyter 笔记本中标题的内部链接。 SO上的各种答案,例如here在我的笔记本中似乎没有按预期工作。下面的代码创建了一个链接,但在尝试访问该链接时没有任何 react
这个问题在这里已经有了答案: How can I share Jupyter notebooks with non-programmers? [closed] (6 个回答) 5年前关闭。 我安装了一
我试图在 jupyter notebook 中自动完成路径。按“tab”后,它显示的不仅仅是文件夹或文件。我认为这些是python的内置功能。有没有办法在自动完成路径时只显示路径和文件? 谢谢! 最佳
我在 Jupyter notebook 中组合了一些数据分析步骤。 随着数据的变化,我希望能够 重新运行所有单元格(以考虑新数据) 转换为html以供查看 我知道我可以通过 jupyter nbcon
在 jupyter 中 笔记本 , 我可以用 nbextensions 配置自动单元计时,结果是这样的: 我怎样才能在 jupyter 中做到这一点 实验室 ?我没有找到任何做类似事情的扩展。 观察:
我正在寻找一个带有 Jupter 可选组件的数据处理集群。 gcloud beta dataproc clusters create cluster-1ea3 --enable-component-g
Jupyter Notebook 的自动完成功能似乎有效,但不知何故它会显示该方法的重复选项。例如下面: 对于每个可能的选项,下拉菜单将显示 2 个相同的选项。为什么会发生这种情况以及如何解决? 最佳
每当我将 jupyter 实验室窗口推到一边时,“简单模式”就会被激活。这导致只显示一个选项卡,而其他选项卡被隐藏。这非常烦人,我不敢相信这是一个标准功能(只是再次安装了 jupyter 实验室)。
当我使用jupyter notebook时, 我希望新单元格的类型为“markdown”。 默认情况下,新单元格的类型为“代码”。我应该修改哪个配置文件以及应该更改哪个变量? 最佳答案 转到您的pyt
奇怪的是,互联网上没有关于如何在 Jupyter 环境下运行 Haskell 的说明。任何引导您实现此目的的文档都需要您从源代码编译,但是当尝试这样做时,会发生各种构建错误。 奇怪的是,一个肯定会给
在带有 ipython 内核的 Jupyter 中,是否有以非阻塞方式执行单元格的规范方法? 理想情况下,我希望能够运行一个单元格 %%background time.sleep(10) print(
我是一名优秀的程序员,十分优秀!