Module brevettiai.model.factory

Factory for configuration of implemented tensorflow models

Expand source code
"""
Factory for configuration of implemented tensorflow models
"""

from tensorflow.python.keras.engine.functional import Functional
from abc import ABC, abstractmethod
from pydantic import BaseModel


class ModelFactory(ABC, BaseModel):
    """Abstract model factory class"""

    @staticmethod
    def custom_objects():
        """Custom objects used by the model"""
        return {}

    @abstractmethod
    def build(self, input_shape, output_shape, **kwargs) -> Functional:
        """Function to build segmentation backbone"""

Sub-modules

brevettiai.model.factory.lenet_backbone
brevettiai.model.factory.lraspp
brevettiai.model.factory.mobilenetv2_backbone
brevettiai.model.factory.segmentation

Classes

class ModelFactory (**data: Any)

Abstract model factory class

Create a new model by parsing and validating input data from keyword arguments.

Raises ValidationError if the input data cannot be parsed to form a valid model.

Expand source code
class ModelFactory(ABC, BaseModel):
    """Abstract model factory class"""

    @staticmethod
    def custom_objects():
        """Custom objects used by the model"""
        return {}

    @abstractmethod
    def build(self, input_shape, output_shape, **kwargs) -> Functional:
        """Function to build segmentation backbone"""

Ancestors

  • abc.ABC
  • pydantic.main.BaseModel
  • pydantic.utils.Representation

Subclasses

Static methods

def custom_objects()

Custom objects used by the model

Expand source code
@staticmethod
def custom_objects():
    """Custom objects used by the model"""
    return {}

Methods

def build(self, input_shape, output_shape, **kwargs) ‑> tensorflow.python.keras.engine.functional.Functional

Function to build segmentation backbone

Expand source code
@abstractmethod
def build(self, input_shape, output_shape, **kwargs) -> Functional:
    """Function to build segmentation backbone"""