Generator
A python class for generating enhanced features using Feature Enhancement.
The Generator object learns to generate enhanced features that approximate unobserved confounder variables. This class is designed to intake and generate various data types, including continuous and discrete variables.
Parameters:
in_size
: intInput dimension. Number of variables to be transformed. Value must be >= 1.
out_size
: intOutput dimension. Number of variables to predict. Value must be >= 1.
n_features
: int, default=2Number of enhanced or generated features. Value must be >= 1.
datatype
: str, default="continuous"The generated data type. This can be "continuous" or "categorical".
explainable
: bool, default=FalseIf set to True, output will be pandas.DataFrame and include column names of origin variable.
Methods:
Fit the Generator object to inputs and target variables using Ensemble's proprietary Feature Enhancement algorithm to learn enhanced statistical properties.
Apply fitted Generator object to inputs to get enhanced features.
Example:
import ensemble_core as ec
# Login
user = ec.User()
user.login(username="YOUR_USERNAME", password="YOUR_PASSWORD", token="YOUR_TOKEN")
# Example data
X = np.array([[1, 1], [1, 2], [2, 2], [2, 3]])
y = np.dot(X, np.array([1, 2])) + 3
# Initialize generator with your desired specifications
generator = ec.Generator(in_size=2, out_size=1, n_features=5)
# Run Feature Enhancement
generator.fit(X, y)
# Generate new and enhanced features
enhanced_X = generator.generate(X)
Last updated