Bånder

SimilarityCalculator
in package
implements CalculatorInterface

Table of Contents

Interfaces

CalculatorInterface

Methods

calculate()  : array<string|int, mixed>
Calculate recommendations based on similarity metrics
calculateSimilarityScore()  : float
Calculate similarity score between two models
extractFeatures()  : array<string|int, mixed>
Extract boolean feature values from model
extractNumericValues()  : array<string|int, mixed>
Extract numeric values from model
generateTaxonomies()  : array<string|int, mixed>
Generate taxonomies (categorical data) from model
normalizeSourceData()  : Collection
Normalize source data to a collection of models

Methods

calculate()

Calculate recommendations based on similarity metrics

public calculate(mixed $sourceData, array<string|int, mixed> $configuration) : array<string|int, mixed>
Parameters
$sourceData : mixed

Source model(s) to calculate recommendations for

$configuration : array<string|int, mixed>

Configuration parameters for calculation

Return values
array<string|int, mixed>

Array of recommendations [sourceId => [targetId => score]]

calculateSimilarityScore()

Calculate similarity score between two models

private calculateSimilarityScore(int|string $sourceId, int|string $targetId, array<string|int, mixed> $configuration, array<string|int, mixed> $cachedTaxonomies, array<string|int, mixed> $cachedFeatures, array<string|int, mixed> $normalizedNumericValues) : float
Parameters
$sourceId : int|string
$targetId : int|string
$configuration : array<string|int, mixed>
$cachedTaxonomies : array<string|int, mixed>
$cachedFeatures : array<string|int, mixed>
$normalizedNumericValues : array<string|int, mixed>
Return values
float

Similarity score between 0-100

extractFeatures()

Extract boolean feature values from model

private extractFeatures(Model $model, array<string|int, mixed> $featureFields) : array<string|int, mixed>
Parameters
$model : Model
$featureFields : array<string|int, mixed>
Return values
array<string|int, mixed>

extractNumericValues()

Extract numeric values from model

private extractNumericValues(Model $model, array<string|int, mixed> $numericFields) : array<string|int, mixed>
Parameters
$model : Model
$numericFields : array<string|int, mixed>
Return values
array<string|int, mixed>

generateTaxonomies()

Generate taxonomies (categorical data) from model

private generateTaxonomies(Model $model, array<string|int, mixed> $taxonomyFields) : array<string|int, mixed>
Parameters
$model : Model
$taxonomyFields : array<string|int, mixed>
Return values
array<string|int, mixed>

normalizeSourceData()

Normalize source data to a collection of models

private normalizeSourceData(mixed $sourceData) : Collection
Parameters
$sourceData : mixed
Return values
Collection

        
On this page

Search results