Installs into .claude/skills of the current project.
Are you the author of Keras Model Workflows?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/vectorspacelab-keras-model-workflows)
---
name: keras-model-workflows
description: "Use this DeepCTR sub-skill for Keras-style CTR and recommender
models, model selection, compile-fit-predict workflows, save/load, and tiny
DeepFM smoke tests."
disable-model-invocation: true
metadata:
disco-role: operating
license: Apache 2.0
---
# Keras Model Workflows
Use this sub-skill for DeepCTR's primary `tf.keras.Model`-style API: choose a CTR/recommender model, build Keras feature columns, compile, fit, evaluate, predict, save/load, and smoke-test an installation.
## When to use this sub-skill
- The user asks for DeepFM, WDL, DCN, xDeepFM, AutoInt, FiBiNET, AFM, NFM, PNN, FGCNN, EDCN, or another single-output DeepCTR model.
- The task is binary CTR classification or scalar regression with tabular sparse/dense features.
- The user needs Keras `compile`, `fit`, `predict`, `evaluate`, `save_model`, `load_model`, custom objects, callbacks, optimizers, or embedding extraction.
- The user wants a safe DeepCTR smoke test that does not depend on example files.
## Route map
- Read [references/model-catalog.md](references/model-catalog.md) to choose a model family and understand the supported Keras model constructors.
- Read [references/workflows.md](references/workflows.md) for end-to-end preprocessing, model creation, fitting, prediction, evaluation, save/load, embedding extraction, and AFM attention recipes.
- Read [references/api-reference.md](references/api-reference.md) for verified constructor signatures and Keras method contracts.
- Read [references/troubleshooting.md](references/troubleshooting.md) for TensorFlow compatibility, missing dependencies, input shape, string hashing, save/load, and optional GPU issues.
- Run [scripts/keras_tiny_ctr_smoke.py](scripts/keras_tiny_ctr_smoke.py) to verify a public DeepCTR installation using synthetic data.
## Minimal Keras CTR workflow
```python
from deepctr.feature_column import DenseFeat, SparseFeat, get_feature_names
from deepctr.models import DeepFM
feature_columns = [
SparseFeat("user_id", vocabulary_size=10000, embedding_dim=8),
SparseFeat("item_id", vocabulary_size=50000, embedding_dim=8),
DenseFeat("score", 1),
]
feature_names = get_feature_names(feature_columns)
model_input = {name: frame[name].values for name in feature_names}
model = DeepFM(feature_columns, feature_columns, task="binary")
model.compile("adam", "binary_crossentropy", metrics=["binary_crossentropy"])
model.fit(model_input, labels, batch_size=256, epochs=3, validation_split=0.2)
pred = model.predict(model_input, batch_size=256)
```
For feature-column construction details, route to [../data-and-feature-columns/SKILL.md](../data-and-feature-columns/SKILL.md).
## Smoke test
From the generated skill root, run:
```bash
python sub-skills/keras-model-workflows/scripts/keras_tiny_ctr_smoke.py --task binary --save-load --json
```
A successful run builds a tiny `DeepFM`, trains one epoch on synthetic data, predicts a `(n, 1)` output, and optionally verifies H5 save/load with DeepCTR `custom_objects`.
## Boundaries
- Use [../sequence-models/SKILL.md](../sequence-models/SKILL.md) for DIN, DIEN, DSIN, and BST history/session-specific conventions.
- Use [../multitask-models/SKILL.md](../multitask-models/SKILL.md) for SharedBottom, ESMM, MMOE, and PLE multi-output models.
- Use [../estimator-workflows/SKILL.md](../estimator-workflows/SKILL.md) for legacy `tf.estimator` workflows.
- Do not depend on original example scripts or sample files at runtime; use the bundled smoke script and references here.