我读到的教程是,您创建数据,然后使用 protobuf 编写模型,然后编写求解器文件。最后训练模型并获得生成的文件。所有这些都是通过命令行完成的。现在有两个问题
1) 假设我现在有了生成的模型,如何加载不在测试文件夹中的新图像并执行前向传递。应该通过命令行还是通过某种语言(c++、python)完成?
2)我想上面是一种方法。训练分类器的最佳方法是什么(命令行训练/或通过编码)以及如何在代码中使用生成的模型文件(训练后)。
我想将caffe与我的代码连接起来,但我找不到一个简短的教程,它可以让我一步一步地了解任何数据库,比如mnist,并且模型不需要像LeNet那么复杂,而是一个简单的Fully连接层也可以。但是谁能告诉我如何使用 C++ 或 python 编写简单的代码并从头开始训练任何数据集。
用于训练分类器并使用它来使用 caffe 预测新数据的示例 C++/python 代码也将受到赞赏。
最佳答案
最好使用命令行进行培训。请参阅this tutorial .
一旦你训练了一个模型,你就有了一个 myModel.caffemodel
文件(一个存储不同层的权重的二进制文件)和一个 deploy.prototxt
文件(一个描述网络的文本文件),您可以使用Python接口(interface)对图像进行分类。
您可以运行python脚本classify.py
从命令行对图像进行分类。该脚本围绕 classifier.py
- 一个Python对象,它包含一个经过训练的网络,并允许您在Python中执行前向传递。
关于python - 将 caffe 与 c++ 或 python 连接时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29328031/