featurebyte.Feature.cd.cosine_similarity¶
cosine_similarity(
other: Feature
) -> FeatureDescription¶
Computes the cosine similarity with another Cross Aggregate feature.
Parameters¶
- other: Feature
Another dictionary feature.
Returns¶
- Feature
Another Cross Aggregate feature.
Examples¶
Create a similarity feature between two dictionary features:
>>> feature_1 = catalog.get_feature("CustomerProductGroupCounts_7d")
>>> feature_2 = catalog.get_feature("CustomerProductGroupCounts_90d")
>>> similarity = feature_1.cd.cosine_similarity(feature_2)
>>> similarity.name = "CustomerProductGroupCounts_7d_90d_similarity"
>>> features = fb.FeatureGroup([feature_1, feature_2, similarity])
>>> df = features.preview(
... pd.DataFrame([
... {
... "POINT_IN_TIME": "2022-04-15 10:00:00",
... "GROCERYCUSTOMERGUID": "2f4c1578-29d6-44b7-83da-7c5bfb981fa0",
... }
... ])
... )
Dictionary feature 1:
>>> df["CustomerProductGroupCounts_7d"].iloc[0]
{'Chips et Tortillas': 1, 'Colas, Thés glacés et Sodas': 3, 'Crèmes et Chantilly': 1, 'Pains': 1, 'Œufs': 1}
Dictionary feature 2:
>>> df["CustomerProductGroupCounts_90d"].iloc[0]
{'Biscuits apéritifs': 1, 'Biscuits': 1, 'Bonbons': 1, 'Chips et Tortillas': 2, 'Colas, Thés glacés et Sodas': 12, 'Confitures': 1, 'Crèmes et Chantilly': 2, 'Céréales': 1, 'Emballages et sacs': 1, 'Fromages': 3, 'Glaces et Sorbets': 1, 'Glaçons': 1, 'Laits': 4, 'Noix': 1, 'Pains': 4, 'Petit-déjeuner': 2, 'Viande Surgelée': 1, 'Œufs': 1}
Similarity feature: