There are five available Python environments for the AI Ready Application and Images:
- Base Python Environment
- PyTorch
- PyTorch and TorchVision
- TensorFlow
- Generative AI and Large Language Models (LLMs)
Using a tiered approach, each environment layer builds upon the previous, offering increasing capabilities, additional libraries and specialised tools. By offering these distinct Python environments, the AI Ready Application and Images cater to a wide range of user needs, from basic data analysis to advanced deep learning and generative AI.
Base Python Environment
This environment provides the foundational Python libraries to allow users to perform basic data analysis and begin their machine learning (ML) and artificial intelligence (AI) journey.
Libraries
Click each subtitle to expand and view the included libraries:
Data manipulation and analysis
pandas
: For data manipulation and analysis (data frames, series).numpy
: For efficient numerical computing and array operations.scipy
: For scientific computing and technical computing.dask
: For parallel computing in Python.bottleneck
: Fast NumPy array functions written in C.patsy
: A Python package for describing statistical models.statsmodels
: Provides classes and functions for the estimation of many different statistical models.
Machine learning
scikit-learn
: For machine learning algorithms (classification, regression, clustering, etc.).scikit-image
: Image processing in Python.
Visualisation
matplotlib
: For creating static, interactive, and animated visualisations.seaborn
: Statistical data visualisation based on Matplotlib.plotly
: Interactive, web-based visualisations.bokeh
: Interactive data visualisation for modern web browsers.ipympl
: Matplotlib Jupyter integration.
Data persistence and I/O
h5py
: Python interface to the HDF5 binary data format.openpyxl
: A Python library to read/write Excel 2010 xlsx/xlsm files.pytables
: A package for managing hierarchical datasets.sqlalchemy
: Python SQL toolkit and Object Relational Mapper.xlrd
: Library for extracting data from Excel spreadsheets.
Web scraping and parsing
beautifulsoup4
: For pulling data out of HTML and XML files.requests
: For making HTTP requests in Python.
Utilities and other libraries
git
: For version control.cloudpickle
: Extended pickling support for Python objects.dill
: Extends Python's pickle module for serialisation.ipympl
: Matplotlib Jupyter integration.ipywidgets
: Interactive HTML widgets for Jupyter notebooks.matplotlib-base
: Core Matplotlib library (often a dependency).numba
: NumPy-aware dynamic Python compiler.numexpr
: Fast numerical array interpreter for Python.pillow
: Python Imaging Library, adds image processing capabilities to your Python interpreter.protobuf
: Protocol Buffers - Google's data interchange format.sympy
: Python library for symbolic mathematics.widgetsnbextension
: Jupyter Notebook extensions for widgets.wandb
: Weights and Biases, for tracking machine learning experiments.
User benefits
- Getting started easily: Ideal for users new to AI or data science. Provides a ready-to-use environment for basic data analysis and exploration.
- Data manipulation and analysis: Enables users to clean, transform, and analyse datasets efficiently using Pandas and NumPy.
- Statistical modelling: Scikit-learn offers a wide range of algorithms for statistical modelling and machine learning tasks.
- Data visualisation: Matplotlib, Seaborn, Plotly, and Bokeh allow users to create various types of plots and charts to understand and present data.
- Foundation for advanced work: Serves as the base for users who plan to move into more specialised AI domains.
- Quick prototyping: Provides a fast way to prototype data-driven solutions and test hypotheses.
PyTorch
In addition to the libraries included in the Base Python Environment, this environment also includes the PyTorch library, a powerful deep learning framework. PyTorch is known for its dynamic computation graph and ease of use, making it popular for research and development.
User benefits
- Deep learning development: Enables users to build and train complex neural networks for various deep learning tasks.
- Research and experimentation: PyTorch’s dynamic nature is excellent for research, allowing for flexible model architectures and experimentation.
- GPU acceleration: Supports GPU acceleration for faster training of deep learning models.
- Large community and resources: Extensive documentation, tutorials, and a large community provide ample support for users.
- Natural language processing (NLP): Suitable for NLP tasks, including text classification, sentiment analysis, and language generation.
- Computer vision (CV): Can be used for basic to advanced CV tasks, enhanced by OpenCV-Python and Python imaging library Pillow.
- Enhanced Capabilities: Pytorch, in addition to libraries like scikit-learn, NumPy, Matplotlib, and seaborn, provides a richer environment for data analysis and visualisation.
PyTorch and TorchVision
In addition to the libraries included in the PyTorch environment, this environment layer combines PyTorch with image processing library TorchVision, a library specifically designed for computer vision tasks:
Image processing libraries
torch-vision
: Library of datasets, model architectures, and image transformations commonly used in computer vision.opencv-python
: Library of programming functions mainly aimed at real-time computer vision.
User benefits
- Advanced image processing: Facilitates advanced image processing, object detection, image segmentation, and other computer vision tasks.
- Pre-trained models: Provides access to pre-trained models for image classification, detection and segmentation.
- Datasets and transforms: Includes popular datasets and image transformation tools for easy experimentation.
- Computer vision research: Ideal for researchers working on computer vision problems.
- Rapid prototyping: Simplifies the development of computer vision applications with ready-to-use components.
TensorFlow
In addition to the libraries included in the PyTorch and TorchVision environment, this environment layer adds TensorFlow, another leading deep learning framework. TensorFlow is known for its scalability and production readiness.
User benefits
- Production-ready deep learning: TensorFlow is well-suited for deploying deep learning models in production environments.
- Scalability: Can handle large-scale deep learning workloads and distributed training.
- Rich ecosystem: Offers a wide range of tools and libraries (e.g., Keras) for building and deploying models.
- Computer vision and NLP: Supports both computer vision and NLP tasks with pre-trained models and tools, enhanced by libraries like OpenCV-Python and Python imaging library Pillow.
- Mobile and embedded deployment: TensorFlow Lite allows for deploying models on mobile and embedded devices.
- Strong industry support: Widely used in industry, ensuring long-term support and development.
- Interactive development: JupyterLab and IPyWidgets provide a rich, interactive environment for development and experimentation.
- Data analysis and visualisation: Pandas, NumPy, Matplotlib, and Seaborn provide tools for data manipulation, analysis, and visualisation.
- Experiment tracking: Weights & biases (wandb) helps in tracking and managing machine learning experiments.
- Progress monitoring: tqdm provides progress bars for loops and iterables, making it easier to monitor long-running tasks.
- Enhanced data analysis: pandas-profiling provides detailed data reports for quick insights.
Generative AI and Large Language Models (LLMs)
This environment focuses on providing the necessary tools and libraries for generative AI and LLMs. It includes libraries like Hugging Face Transformers, pre-trained models, and tools for fine-tuning and deploying LLMs:
Additional libraries
datasets
: Provides easy access to many public datasets for NLP and ML.regex
: Provides regular expression operations for text pattern matching.rouge_score
: For evaluating text summarisation and generation tasks.safetensors
: A safe and efficient format for storing tensors.torch
: PyTorch deep learning framework, essential for building and training neural network-based LLMs.transformers[torch]
: The Hugging Face Transformers library with PyTorch support.textblob
: Provides a simple API for common NLP tasks.gensim
: A library for topic modelling, document similarity analysis, and other text processing tasks.sentencepiece
: A tokenizer and detokenizer for neural network-based text processing.sentence-transformers
: For generating sentence embeddings for semantic search and similarity tasks.
User benefits
- Natural language generation: Enables users to generate text, translate languages, write different kinds of creative content, and answer questions in an informative way.
- NLP tasks: Supports advanced NLP tasks like text summarisation, question answering, and sentiment analysis.
- Fine-tuning pre-trained models: Allows users to fine-tune pre-trained LLMs on their specific datasets.
- Generative modelling: Facilitates the development of generative models for creating images, audio, and other types of data.
- Cutting-edge AI research: Provides access to the latest advancements in AI and ML.
- Innovative applications: Opens up possibilities for developing innovative applications leveraging generative AI.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article