I was wondering if this was possible at all?
The reason I am asking is because there has been some attempts at doing this but from Python to OCaml like languages. Outlined here: https://coq.discourse.group/t/machine-learning-and-hammers-for-coq/303
I was wondering if this was possible at all?
The reason I am asking is because there has been some attempts at doing this but from Python to OCaml like languages. Outlined here: https://coq.discourse.group/t/machine-learning-and-hammers-for-coq/303
Yes it is totally possible, see these resources:
If you are interested in improving the OCaml capabilites in this area, I think joining Owl development is the way to go, you can see their repositories here: https://github.com/owlbarn/
They have some ideas on possible improvements of the library at Proposed Projects page. I personally think, that saving and loading ONNX format is the most important improvement, to be able to load networks created in third-party tools, see the IR specification itself.
See the example on how to code the simple object-detection convolutional neural network (Mask R-CNN) at https://github.com/owlbarn/owl_mask_rcnn
There’s also a couple of followup posts to that first one:
Update: It seems that Owl project started to implement ONNX integration. Wish them luck, and more pull requests!
An update about MLIR from Google - it was merged in the LLVM mainstream and now officially a part of the project - see https://mlir.llvm.org/
It should be released together with LLVM 10 and you can expect wider adoption after that move.
related: [ANN] PyTorch bindings