## 4 A Multi-View Detecting Framework
### View 2: Measuring Attribute Value Similarity  
This section introduces the approach used to calculate similarity for the attribute values of activity labels. In an event log, attribute values can be the resources needed for executions (e.g., the person who performed the event) or the associated recorded values when executing the event (e.g., the result value for the event). Redundant activity labels share the same attribute values. Therefore, the proposed framework should incorporate attribute values (i.e., both categorical and numerical values) when detecting redundant activity labels. The overall approach, shown in Figure 4, can be divided into two parts: activity labels with categorical values and numerical values. Activity labels with categorical values are relatively easy to calculate. We calculate the frequency distribution of the attribute values for each activity label and apply pairwise EMD between different activity labels. The ground distance function borrows the idea from Equation (4): the same attribute value has no cost, and different ones have a unit cost. For activity labels with numerical values, we firstly cluster each activity label into different clusters based on value percentiles. We then apply EMD to assess the data distributions of activity labels within each cluster. Clustering first ensures that only activity labels with the same data range are further evaluated. Activities with different data ranges are unlikely to share similar data patterns, which do not need to be further assessed for data distributions. We describe how our approach calculates attribute value similarity for activity labels with numerical values in Algorithm 2. For each activity, we first assess whether this activity has a numerical value attribute (Line 2). If not, it has minimal attribute value similarity with other activity labels (i.e., \(AttributeValueSimilarity=1\)). If yes, Line 3 finds all events of the activity (\(\#_{activity}(e)=a\)) and obtains numerical values for that attribute (\(\#_{attribute}(e)\)) into a dataset (i.e., \(DataSet_{a}\)). Line 4 calculates the 25 th and 75 th percentiles for each dataset. We use the 25 th and 75 th percentiles as a 2-D vector and apply agglomerative hierarchical clustering [42] with a threshold \(\theta_{a}\) for all datasets (Line 5). For example, if an activity label has the values 0.3 and 0.5 for its 25 th and 75 th data value percentiles, respectively, then the 2-D vector is \((0.3,0.5)\). We apply the Euclidean distance [43] as the distance measurement between two vectors. Activity labels that are not in the same cluster also have \(AttributeValueSimilarity=1\). There are many unique values in the attribute; it is hard to directly apply EMD because of the many different clusters in the distribution. As a result, we transfer each dataset to a histogram following [PERSON] formula [44], where uniform maximum and minimum values are used to ensure two histograms have the same bin number and size when comparing activity label pairs within the same cluster (Line 11). We pick each interval's left boundary as cluster values (e.g., \(p_{i},q_{j}\)), and Line 12-13 calculate the percentage of each bin as cluster weights (e.g., \(w_{pi},w_{qj}\)). An example cluster is \((10,20\%)\), \((15,30\%)\), \((20,20\%)\), and \((25,30\%)\). In this way, we transfer each histogram as a cluster, and EMD is further used to compare two clusters using the distance function \(D_{d}\) in Equation (5) (Line 14). The \(AttributeValueSimilarity\) is normalised to become a value between 0 and 1 and added to \(S_{n}\). Similar to the control-flow perspective, in the attribute value perspective, the greater the value is, the less similarity they have.