About
This section provides the API documentation for the kxi.ml Python library provided by KX for use by customers of kdb Insights, both for interactions with the Microservices/Enterprise, and independent use.
Presently this library provides users with the ability to interact with the ML Registry for persistence, retrieval and removal of Machine Learning models written in q or Python within the following libraries:
- 
                                                        q functions generated using PyKX. 
- 
                                                        Scikit-learn 
- 
                                                        Keras 
- 
                                                        PyTorch 
Installation
Note
Python packages should typically be installed in a virtual environment. This can be done with the venv package from the standard library.
kxi.ml is only intended for use on Linux based systems; it is not supported presently on Windows or MacOS
Ensure you have a recent version of pip:
pip install --upgrade pip
Then to install kxi.ml using the KX PyPI server run the following command:
pip install --extra-index-url=https://$KX_PYPI_USER:$KX_PYPI_PASS@nexus.dl.kx.com/repository/kxi/simple/ kxi.ml
Where the environment variables KX_PYPI_USER and KX_PYPI_PASS have been set as appropriate. Please contact kxpy@kx.com for information on getting access to the KX PyPI server.
Python Dependencies
kxi.ml depends on the following Python packages:
- 
                                                        kxi==1.0.2
- 
                                                        scipy==1.7.3
- 
                                                        scikit-learn==1.0.2
- 
                                                        statsmodels==0.13.1
- 
                                                        pandas==1.4.1
- 
                                                        joblib==1.1.0
These are installed automatically by pip when kxi.ml is installed. The following are optional dependencies which can be installed by a user to provided additional functionality:
| Library | Version | Usage | 
|---|---|---|
| 
 | 
 | Save  | 
| 
 | 
 | Save  | 
Use cases
There are many ways users can make use of the machine learning functionality provided here:
- 
                                                        Train models on historical data and deploy these to real-time systems - Anomaly detection within manufacturing. 
- Trade surveillance. 
 
- 
                                                        Machine Learning Operations development cycle - Storage of frequently updated models for future deployment (trading models/recommendation engines). 
- Deployment of stored models to production settings. 
- Use of versioning to maintain control over model accountability.