# nerofort Neuro-Symbolic Fortran Library ## Introduction Welcome to nerofort! This library is a work-in-progress implementation of a convolutional neural network (CNN) in Fortran, inspired by the instructions provided in [Python and Machine Learning](https://pythonandml.github.io/dlbook/content/intro.html). The project is currently being developed using CMake, with efforts focused on integrating Python preprocessing to enhance its capabilities and refine various aspects of the implementation. ## Features - Implementation of a convolutional neural network (CNN) in Fortran. - Work is ongoing, with many areas slated for improvement and completion. - Building in Approximatrix Simply Fortran for ease of development. - Future plans include implementing a symbolic neural network, creating wrappers for Java and Python for seamless integration, extending functionality, refining core functions for better performance. ## Requirements - Fortran 2008 compliant compiler - CMake - Make - fypp ### Build ``` cmake -B build ``` ## Getting Started To get started with nerofort, follow these steps: 1. Clone this repository to your local machine. 2. Install the build dependencies (for example, with ```pip``` or ```conda```) 3. Explore the source code to understand the implementation of the convolutional neural network. 4. Experiment with the code, contribute improvements, or report any issues you encounter. ## Future Plans - Work is in progress, so the priority is to finish the core functionalities. - Implement a symbolic neural network. - Create wrappers for Java and Python to facilitate communication with the models. - Extend functionality to support additional features. - Refine core functions to improve performance. ## Contributing Contributions to nerofort are welcome! Whether you're interested in adding new features, fixing bugs, or improving documentation, your help is appreciated. Please contact the project maintainer for more information on how to contribute. ## License This project is licensed under the [Apache License](LICENSE). Feel free to use, modify, and distribute the code in accordance with the terms of the license. ## Contact If you have any questions, suggestions, or feedback, please don't hesitate to reach out. You can contact the project maintainer via [email](mailto:polenciucrares@gmail.com) or open an issue on the GitHub repository. Thank you for your interest in nerofort! We hope you find it useful and look forward to your contributions.