alejandro-isaza/BrainCore

Add ability to import Caffe networks

alejandro-isaza opened this issue · 13 comments

I don't think we should add all of Protobuf but maybe have a script that converts a caffe prototxt into simpler format. Then have that simpler format be the standard BrainCore network definition format.

@Aleph7 Are you thinking JSON? Or something even lighter? Take a look at msgpack.org

I was thinking YAML

-
    name: ip1
    type: Inner Product
-
    name: relu1
    type: ReLU
    sources: [ip1]

Ooo very nice.

Any news on that? Will love to use Caffe models with BrainCore. 👍

@hartator this is not a priority for us right now, hence the 'help wanted' tag.

@Aleph7 since BrainCore primary target is mobile, wouldn't it be more reasonable to drop json/yaml and go with binary protobuf, to avoid processing overhead?

@skeeet yes, that would be good but I don't want to force people to get all the protobuf dependencies just to use BrainCore. Maybe that can be a separate project.

Maybe we should just read protobuf now that https://github.com/apple/swift-protobuf-plugin is out!

Hi, I'm wondering if this is still an ongoing update to BrainCore still? I'm interested in possibly helping to contribute but I'm not sure where to get started.

Thanks!

If you want to contribute reading protobuf models I would suggest starting with caffe's protobuf definition. Try to to generate the Swift code for that with with swift-protobuf on a project by itself. Then try generating BrainCore layers from that. If you get that working on a separate repo I'd be happy to integrate it to BrainCore.

Great thanks, I'll take a look at it.