CustomerSegmentationModel: Autoencoder for Customer Segmentation
Model Details
- Model Architecture: Autoencoder
- Framework: PyTorch
- Input Dimension: User-defined (
input_dim
) - Output: Reconstructed customer features
- Dataset: Predicting Credit Card Customer Attrition
Model Description
The CustomerSegmentationModel is an autoencoder designed to extract low-dimensional representations of customer data. It consists of:
- An encoder that compresses the input into a 2D latent space.
- A decoder that reconstructs the original input from the compressed representation.
This approach enables customer segmentation based on the learned latent space.
Training Details
- Loss Function: Smooth L1 Loss
- Optimizer: Adam
- Batch Size: 256
- Number of Epochs: 100
- Regularization: Dropout (50%) and Layer Normalization
Model Architecture
class CustomerSegmentationModel(nn.Module, PyTorchModelHubMixin):
def __init__(self, input_dim):
super(CustomerSegmentationModel, self).__init__()
self.encoder = nn.Sequential(
nn.Linear(input_dim, 256),
nn.ReLU(),
nn.Dropout(0.5),
nn.Linear(256, 128),
nn.ReLU(),
nn.Dropout(0.5),
nn.LayerNorm(128),
nn.Linear(128, 64),
nn.ReLU(),
nn.Dropout(0.5),
nn.LayerNorm(64),
nn.Linear(64, 2),
)
self.decoder = nn.Sequential(
nn.Linear(2, 64),
nn.ReLU(),
nn.Dropout(0.5),
nn.Linear(64, 128),
nn.ReLU(),
nn.Dropout(0.5),
nn.Linear(128, 256),
nn.ReLU(),
nn.Dropout(0.5),
nn.Linear(256, input_dim),
nn.Sigmoid(),
)
def forward(self, x):
x = self.encoder(x)
x = self.decoder(x)
return x
This model has been pushed to the Hub using the [PytorchModelHubMixin](https://huggingface.co/docs/huggingface_hub/package_reference/mixins#huggingface_hub.PyTorchModelHubMixin) integration:
- Library: [More Information Needed]
- Docs: [More Information Needed]
- Downloads last month
- 17
Inference Providers
NEW
This model is not currently available via any of the supported third-party Inference Providers, and
HF Inference API was unable to determine this model's library.