Yes it is totally possible, see these resources:
- OCaml Owl scientific computing library, in particular Neural Networks and Algorithmic Differentiation chapters of their manual
- Deep Learning with OCaml blog post from Jane Street
- OCaml in Data Science discussion at this forum
- Will OCaml be a good choice for writing high performance, parallelizable machine learning libraries discussion at this forum
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