Object clustering method and device

Through principal component analysis and weighted value generation technology, the problem of reduced accuracy caused by high-dimensionality and statistical differences in object clustering is solved, and higher clustering accuracy and grouping clarity are achieved, and the selection of diagnostic and disposal options is improved.

CN119889719APending Publication Date: 2025-04-25KONINKLIJKE PHILIPS NV
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411944438.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2017-09-20
Filing Date
2018-09-18
Publication Date
2025-04-25

AI Technical Summary

Technical Problem

In the prior art, the clustering accuracy is reduced due to the high dimensionality and statistical differences of object data during object clustering, making it difficult to accurately group similar objects.

Method used

Identify principal components of object data through principal component analysis (PCA), generate a weighted value data set, and use these weighted values ​​to weight the object data, thereby performing clustering algorithms to achieve more accurate object grouping.

Benefits of technology

By reducing the statistical changes between different measurable features of the object, the features become statistically more similar, improving the accuracy of object clustering and clarity of grouping, and improving the selection of diagnostic capabilities and disposal options.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119889719A_ABST
    Figure CN119889719A_ABST
Patent Text Reader

Abstract

A method of clustering or grouping objects similar to each other. The data set contains a set of quantitative values for each subject, each quantitative value representing a respective clinical or pathological characteristic of the subject. And performing principal component analysis (PCA) on the data set. The load of one of the first two principal components identified by the PCA is used to generate a corresponding data set of weighted values. These weighted values are used to weight or modify each set of quantitative values in the data set. A clustering algorithm is performed on the weighted object data set. The process may be iterated until a user-defined stop condition is satisfied.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] This application is a divisional application of the invention patent application with application number 201880068355.0 and name “Object Clustering Method and Device” filed on September 18, 2018. Technical Field

[0002] The present invention relates to the field of clustering objects, and more particularly to the field of clustering using data of objects. Background Art

[0003] The grouping of subjects is a routine activity in clinical practice, the purpose of which is to define the best treatment options for a given subject. Specifically, if subjects can be accurately grouped together into similar groups, this will allow clinicians to easily compare a given subject or case with similar subjects or cases to identify potential diagnoses, appropriate treatment options, and possible outcomes of the treatment options. This often leads to improved subject outcomes and more accurate diagnoses, as relevant historical medical data (i.e., of similar cases) can be accurately identified and utilized by clinicians.

[0004] There is therefore an increasing desire to improve the accuracy of the grouping process. However, determining whether two objects are similar is difficult even for experienced clinicians due to the often large number of variables or characteristics of the objects that may have an impact. Clinicians have therefore turned to automated or supervised 'machine learning' (ML) methods for grouping objects.

[0005] Conventional grouping methods assume that all features (i.e., variables or characteristics) are statistically similar, for example, have similar ranges or have similar ranges of variation and statistical distributions. However, object data (e.g., biomedical information) are usually diverse, and different data therefore often belong to different categories with high statistical differences. This results in significantly reduced accuracy when performing conventional clustering methods. Summary of the invention

[0006] The present invention is defined by the claims.

[0007] A method for clustering similar objects among a plurality of objects is proposed, the method comprising: obtaining a data set of object data, the data set comprising a corresponding set of quantitative values ​​for each object, each quantitative value being a measurement result of a clinical or pathological feature of the object, and each set of quantitative values ​​having the same number of quantitative values; and performing a clustering process, comprising: performing principal component analysis on the data set of object data to identify at least two principal components, each principal component being associated with a data set of component scores and loads, the number of loads in each data set of loads being equal to the number of quantitative values ​​in the data set of object data; generating a first data set of weighted values, each weighted value being based on a corresponding load associated with one of the first two principal components in the data set of loads, the number of weighted values ​​in the first data set being equal to the number of loads in the data set of loads; weighting the quantitative values ​​of the data set of object data using the first data set of weighted values ​​to obtain a weighted data set of object data; and performing a clustering algorithm on the weighted data set of object data so as to cluster similar objects into groups of objects having similar clinical characteristics, wherein the objects in each group of objects have similar diagnoses, predicted object outcomes, and / or suitable treatment options.

[0008] Therefore, a method is proposed to modify the object data according to the statistical information of the object data and to perform a clustering process based on the modified object data. In particular, principal component analysis PCA is performed to generate a data set of weighted values ​​for modifying the object data. The modification of the object data allows the objects to be grouped into groups (of similar objects) with a higher degree of accuracy and with an improved degree of separation between the groups.

[0009] This, in turn, allows for improved diagnostic capabilities, selection of appropriate treatment options and prediction of likely subject outcomes for the selected treatment options.As a result, overall subject outcomes can be significantly improved.

[0010] The present invention recognizes that generating appropriate weighting values ​​based on principal component analysis allows the statistical variation between different measurable features of an object (i.e., object properties or variables) to be reduced, making the features statistically more similar. This allows for improved accuracy when grouping similar objects, because the impact of features that may be statistically unbalanced (e.g., features with extremely large standard deviations or ranges) on the clustering method is reduced.

[0011] Principal component analysis has been identified herein as a method for more accurate and precise identification of appropriate weighting values ​​that result in object data being able to be clustered into groups of greater similarity and improved separation. The loading associated with one of the most influential principal components (being one of at least the first two principal components) is used as a basis for generating weighting values, and therefore as a basis for modifying a data set of object data.

[0012] The method may further comprise the step of obtaining a second data set of weighted values, the number of weighted values ​​in the second data set being equal to the number of quantitative values ​​in the data set of object data, and wherein the step of generating the first data set of weighted values ​​comprises modifying each weighted value in the second data set of weighted values ​​based on a corresponding loading in the data set of loads associated with one of the first two principal components, to thereby obtain the first data set of weighted values.

[0013] Thus, the first data set of weighted values ​​may be calculated, generated or obtained by modifying an existing data set of weighted values, which may be an initial data set of weighted values ​​or a result of a previous iteration of a weighted value generation step. The initial data set or previous data set is labeled as the second data set of weighted values.

[0014] Therefore, embodiments are proposed that allow weights to be adjusted and changed. This allows historical weights (e.g., weights previously used or generated in a previous weight generation step) to be used in subsequent clustering methods. This can reduce the workload of generating a suitable data set of weights and enables an iterative procedure to iteratively generate a convergent set of suitable weights.

[0015] In some embodiments, the modification of each weighted value in the second data set of weighted values ​​includes: selecting a data set of loads associated with one of the first principal component or the second principal component; and multiplying each weighted value in the second data set of weighted values ​​by the corresponding loading in the data set of loads associated with the selected principal component to obtain a modified first data set of weighted values.

[0016] In further embodiments, said modifying each value in said second data set of weighted values ​​further comprises dividing each weighted value in said second data set of weighted values ​​by a randomly or pseudo-randomly selected number between 0 and 1.

[0017] In this way, each weighted value of the second data set of weighted values ​​is modified as a random proportion of the corresponding load in the data set of load values. This allows a degree of randomness to be introduced into the modification of the object data set, which allows a fairly diverse set of strategies to be implemented.

[0018] This can be particularly important in an iterative search (for appropriate weight values) in order to improve the likelihood that a suitable weight value is identified. In particular, this allows a heuristic search to be performed to more accurately and efficiently generate a converged data set of weight values.

[0019] Said modifying each value of said second data of weighted values ​​may comprise modifying each value of said second data of weighted values ​​based on a corresponding loading in said data set of loadings associated with a randomly or pseudo-randomly selected one of said first two principal components.

[0020] Thus, embodiments provide further randomness in the generation of the first data set of weighted values ​​by non-deterministic selection between the most influential principal components. This can further improve the likelihood and efficiency with which a suitable data set of weighted values ​​is calculated or identified, particularly during an iterative procedure.

[0021] The execution of the clustering process optionally includes iteratively executing the clustering process, wherein the clustering process (optionally) also includes: calculating a quality value indicating the quality of the clustering performed by the clustering algorithm; in response to the quality value being greater than a first predetermined threshold, replacing the weighted values ​​in the second data set of weighted values ​​with the weighted values ​​in the first data set of weighted values; and in response to the quality value being below the first predetermined threshold, rejecting the first data set of weighted values ​​and retaining the weighted values ​​of the second data set of weighted values.

[0022] Embodiments of the present invention therefore provide an iterative process of calculating weighted values ​​to generate a satisfactory or optimized data set of weighted values, which allows the object data to be modified to a high degree of accuracy, so as to improve the separation between object groups and improve the similarity of objects within the group. This significantly improves the performance of the overall clustering method. After each iteration, the optimized data set of weighted values ​​is represented by a second data set of weighted values. In particular, after each iteration, the second data set of weighted values ​​represents a data set of weighted values ​​that improves the quality of the clustering process to the best known capability.

[0023] An evaluation method for the generated data set of weighted values ​​can therefore be performed to determine whether the newly generated data set of weighted values ​​(first data set) has improved the quality of the object data, such as the separation between object groups. The evaluation method calculates a quality value indicating the quality of the clustering. Any known quality value generation method can be used, as will be appreciated by those skilled in the art.

[0024] The proposed method rejects adjustments, modifications or changes to the weighting values ​​that do not improve the quality of the clusters or otherwise fail to ensure that the quality of the clusters is above a predetermined value. The predetermined value can be determined, for example, based on quality values ​​calculated during previous iterations of the clustering process, or can be a standardized value (e.g. 0.5).

[0025] In at least one additional embodiment, the method further includes: interrupting execution of the iterative clustering process in response to any one or more of the following: the quality value is greater than a second predetermined threshold; the number of iterations is greater than a predetermined number of iterations; the length of time elapsed during the iterative clustering process is greater than a predetermined length of time; and the number of successive rejections of the first data set of weighted values ​​is greater than a predetermined number of rejections.

[0026] The method can therefore be adapted to iteratively perform the clustering process only a specific number of times. The number of times the iterative process is performed can be limited based on, for example, a predetermined number of iterations (e.g., 25 or 50 iterations), a predetermined time (e.g., 30 minutes or 1 hour) spent performing the iterative clustering process. Preferably, the iterative process is stopped when an appropriate or predefined level of similarity between the object groups has been reached and / or the iterative process converges. This can be indicated accordingly by, for example, a quality value rising above a predetermined value (e.g., an average contour width rising above 0.5) or a new data set of weighted values ​​being rejected for a predetermined number of iterations (e.g., 5 iterations).

[0027] The above embodiments can prevent the iterative process from being executed for excessive periods of time (thereby reducing processing power) without significantly affecting the likelihood that a suitable or optimized data set of weighted values ​​is calculated. The efficiency of the method is therefore improved and redundant calculations are avoided.

[0028] The first predetermined value may be a quality value of clustering performed by the clustering algorithm based on the dataset of object data weighted using the second dataset of weighted values. The second dataset of weighted values ​​may represent an initial dataset of weighted values ​​and / or a dataset of weighted values ​​generated in a previous iteration.

[0029] Thus, if the quality values ​​for the clustering process are not improved in subsequent iterations, the modified first data set of weighted values ​​may be rejected. This allows convergence to an appropriate data set of weighted values ​​to be achieved by allowing a newly generated data set of weighted values ​​to proceed to a subsequent iteration only if that value set improves the clustering of the objects.

[0030] In some embodiments, the method comprises, during the iterative clustering process and in response to the quality value being greater than a first predetermined threshold, replacing the first predetermined threshold with the quality value.Therefore, the quality value may be set as a threshold for subsequent iterations.

[0031] Optionally, the method also includes: weighting the quantitative values ​​using the second data set of weighted values ​​to obtain an initial weighted data set of object data; performing a clustering algorithm on the initial weighted data set of object data to cluster similar objects; and calculating a quality value indicating the quality of the clustering performed by the clustering algorithm to thereby obtain the first predetermined threshold.

[0032] Calculating the quality value may comprise calculating one or more of: Dunn index; profile width and Davies-Bouldin index. Other quality values ​​will be apparent to the skilled person.

[0033] Preferably, the quality value indicates the degree of separation between different object clusters or groups. However, any known quality value for the results of a clustering algorithm may be employed. For example, the quality value may indicate the similarity between objects within any given group, which also indicates an improvement to the overall object data.

[0034] A computer program product comprising a computer readable storage medium having computer readable program instructions embodied therewith which, when executed on a processor device, cause the processor device to carry out any of the previously described methods.

[0035] According to another aspect of the present invention, there is provided a processor device adapted to cluster similar objects among a plurality of objects, the processor device comprising: an obtaining unit adapted to obtain a data set of object data, the data set comprising a corresponding set of quantitative values ​​for each object, each quantitative value being a measurement result of a clinical or pathological feature of the object, and each set of quantitative values ​​having the same number of quantitative values; and a clustering unit adapted to perform a clustering process by: performing principal component analysis on the data set of object data to identify at least two principal components, each principal component being associated with a data set of component scores and loads, the number of loads in each data set being equal to the quantitative value. The invention relates to a method for clustering object data comprising: generating a first data set of weighted values, wherein the number of weighted values ​​in the first set is equal to the number of loadings in the data set of loadings, wherein each weighted value in the first data set of weighted values ​​is based on a corresponding loading associated with one of the first two principal components in the data set of loadings; weighting the quantitative values ​​using the second data set of weighted values ​​to obtain a weighted data set of object data; and performing a clustering algorithm on the weighted data set of object data to cluster similar objects into groups of objects having similar clinical characteristics, wherein the objects in each group of objects have similar diagnoses, predicted object outcomes, and / or appropriate treatment options.

[0036] The processor device can be adapted, wherein: the obtaining unit is suitable for obtaining a second data set of weighted values, the number of weighted values ​​in the second set being equal to the number of quantitative values ​​in the set of quantitative values, and the clustering unit is suitable for generating the first data set of weighted values ​​by modifying each weighted value in the second data set of weighted values ​​based on the corresponding loading associated with one of the first two principal components in the data set of loads, so as to thereby obtain the first data set of weighted values.

[0037] The clustering unit may be adapted to iteratively perform the clustering process, and wherein the clustering process further comprises: calculating a quality value indicating the quality of the clustering performed by the clustering algorithm; in response to the quality value being greater than a first predetermined threshold, replacing the weighted values ​​in the second data set of weighted values ​​with the weighted values ​​in the first data set of weighted values; and in response to the quality value being below the first predetermined threshold, rejecting the first data set of weighted values ​​and retaining the weighted values ​​of the second data set of weighted values.

[0038] These and other aspects of the invention will be apparent from and elucidated with reference to the embodiment(s) described hereinafter. BRIEF DESCRIPTION OF THE DRAWINGS

[0039] Examples of the present invention will now be described in detail with reference to the accompanying drawings, in which:

[0040] Figure 1 A method for clustering objects according to a first embodiment is illustrated;

[0041] Figure 2 The concept of performing principal component analysis on a data set of object data is shown;

[0042] Figure 3 A method for clustering objects according to a second embodiment is illustrated;

[0043] Figure 4 A method for clustering objects according to a third embodiment is illustrated;

[0044] Figure 5 The concept of generating a data set of weighted values ​​is shown;

[0045] Figure 6 The concept of modifying a data set of object values ​​based on weighted values ​​is shown;

[0046] Figure 7 and Figure 8 illustrates the results of executing a clustering algorithm on an unweighted data set of object values;

[0047] Fig. 9 and Fig.10 illustrates the results of executing a clustering algorithm on a weighted data set of object values ​​according to an embodiment; and

[0048] Fig.11 A processor arrangement according to an embodiment is illustrated. DETAILED DESCRIPTION

[0049] According to the concept of the present invention, a method for clustering or grouping objects similar to each other is proposed. The data set contains a set of quantitative values ​​for each object, and each quantitative value represents the corresponding clinical or pathological characteristics of the object. Principal component analysis PCA is performed on the data set. The load of one of the first two principal components identified by PCA is used to generate a corresponding data set of weighted values. These weighted values ​​are used to weight or modify each set of quantitative values ​​in the data set. A clustering algorithm is performed on the weighted object data set. The process can be iterated until a user-defined stop condition is met.

[0050] Embodiments are based at least in part on the recognition that appropriate weighting of object data can reduce the statistical variation between different parameters or variables in the object data and thereby improve clustering quality. In particular, it has been recognized that principal component analysis allows those variables that contribute to the most significant statistical bias in a data set of object data to be mitigated.

[0051] The illustrative embodiments can be used, for example, in a clinical setting to allow clinicians to use improved autonomous processes to more accurately and efficiently group similar objects into groups. In particular, objects are grouped based on similar clinical characteristics, i.e., objects in a particular group can have similar diagnoses, similar predicted object outcomes, and / or similar suitable treatment options (including, for example, similar predicted outcomes of such treatment options). This will significantly improve the likelihood of accurately diagnosing an object (e.g., because similar historical situations can be grouped together), improve the prediction of object outcomes, and improve the selection of suitable treatments, thereby leading to improvements in overall object outcomes.

[0052] Figure 1 A method 1 of clustering objects according to an embodiment is illustrated.

[0053] The method comprises a step 2 of obtaining a data set of object data and a clustering process 3 or routine.

[0054] The data set obtained in step 2 contains a corresponding set of quantitative values ​​for each subject. Each quantitative value represents a different (clinical or pathological) feature or characteristic of the subject, so that an object can be associated with any multiple variables (ie features or characteristics).

[0055] Conceptually, a dataset represents multiple records, each associated with a different object. Each record contains a collection of fields or variables, and each field is associated with a corresponding quantitative value. Thus, each field of a record can represent a different pathological or clinically relevant parameter, variable, or characteristic of the object associated with the record.

[0056] Quantitative value can indicate for example the clinical stage of object, the percentage of positive biopsy score, the pulse rate of object, the age of object, the number of hospitalizations of object, the primary and / or secondary biopsy Gleason score of object, prostate specific antigen density etc.Each quantitative value set (i.e. each object) has the quantitative value of the same number contained therein.The quantitative value of disappearance can be set to zero, default value or mean value, as explained later.In the context of the present invention, quantitative value can be the numerical representation (such as temperature or pain score) of the specific sign or symptom of object thus.

[0057] The clustering process 3 comprises a step 4 of performing a principal component analysis PCA on the data set of object data. The principal component analysis identifies at least two principal components of the object data according to a known scheme. Each principal component is generally associated with a data set of component scores and loadings for each component score.

[0058] The clustering process 3 also includes a step 5 of generating a first data set of weighted values. Each weighted value is based on a corresponding loading of the selected data set of loadings. The number of weighted values ​​is equal to the number of loadings (in the data set of loadings) and the number of quantitative values ​​in the set of quantitative values. The selected data set of loadings is associated with one of the first two principal components obtained during the principal component analysis step 4. The first two principal components are those two components that explain most of the variance in the data set, as the skilled person will readily recognize.

[0059] The clustering process 3 also includes a step 6 of weighting each quantitative value in the data set of object data using the first data set of weighted values. In particular, each quantitative value is weighted based on a corresponding load in the first data set of loads. Thus, by way of example, a first quantitative value in the first set of quantitative values ​​is weighted based on a first load in the first data set of loads. Weighting each quantitative value in this manner produces a weighted data set of object data.

[0060] The clustering process 3 also includes a step 7 of performing a clustering algorithm on the weighted data set of object data. In other words, the data set is modified by the weighted values ​​and then clustered into groups of similar objects. The clustering algorithm can be any known clustering algorithm, such as k-means clustering (which is a centroid model), hierarchical cluster analysis, a biclustering process, etc.

[0061] Performing a clustering process on the object data that has been modified based on the results of the PCA process results in improved clustering of objects and improved separation between groups of objects. As previously explained, this results in improved diagnostic capabilities, improved selection of appropriate treatment options, and improved prediction of likely object outcomes for selected treatment options. In particular, historical data can be more accurately classified and compared (e.g., with new object cases).

[0062] For example, the characteristic, feature or quantitative value of the new object can be added to the database of the object data to which the clustering process according to the embodiment is applied. This will result in the new object being grouped together with similar existing or historical cases with high accuracy and good separation between the groups. This will allow the clinician to diagnose the new object more accurately, because the object is more likely to have the same diagnosis as the object grouped with it. Similarly, the improved grouping will also allow the clinician to observe the results of the historical treatment options (i.e., performed on similar objects) and those options. This allows the clinician to select the most appropriate option based on the known results of similar objects (in similar groups). In general, the proposed method results in significantly improved object results, because the results, treatment and diagnosis of similar (historical) objects can be used to improve object results.

[0063] Although the PCA method will be well known to the skilled person, for improved understanding in the context of the present invention, Figure 2 Illustrated is a step 4 of performing a principal component analysis PCA on a (reduced) initial data set 20 of object data.

[0064] The data set 20 of object data comprises a first set A of quantitative values ​​v1, v2 and a second set B of quantitative values ​​v3, v4. Each set A, B is associated with a different object and can be considered to represent a record of that object. Each quantitative value v1, v2 in set A represents a different (clinical or pathological) feature or characteristic X, Y for that particular object and can thus represent a field of a record of an object. For example, quantitative value v1 represents the value of characteristic X (e.g., the age of the object) for object A, and quantitative value v3 represents the value of the same characteristic X for a different object B.

[0065] Performing the PCA step 4 generates a dataset 21 of component scores (sometimes referred to as factor scores), which identifies at least two principal components PC1, PC2. Each principal component PC1 is associated with a set of component scores cs1, cs2. Each component score cs1, cs2 of the principal component PC1 is associated with a corresponding set of quantitative values ​​A, B (i.e., a corresponding object). For example, a first component score cs1 is associated with a first set A of quantitative values, while a second component score cs2 is associated with a second set B of quantitative values. The component scores are understood to be transformed variable values ​​that represent the relative variance of the associated set of quantitative values ​​of the object data.

[0066] Performing the PCA step 4 also generates multiple 22 (load) data sets 22A, 22B of loads (sometimes referred to as load values). Each load data set 22A is associated with a different principal component PC1. For example, the first data set 22A is associated with the first principal component PC1, and the second data set 22B is associated with the second principal component PC2. Each data set 22A includes loads L1, L2, L3 and L4. The load L1 represents the weight or value by which the standardized quantitative value v1 should be multiplied to obtain the component score cs1 associated with the set of quantitative values ​​containing the quantitative value v1. By way of example, the second load L2 is equal to the component score cs1 divided by the standardized quantitative value v2. Therefore, each load L1 in the data set 22A can be mapped to a corresponding quantitative value v1.

[0067] A normalized quantitative value is a quantitative value that has been (statistically) normalized or normalized with respect to other quantitative values ​​in the same set of quantitative values.Thus, step 4 of performing PCA may comprise a sub-step (not shown) of generating a normalized data set of object data.

[0068] By way of further explanation, it should be noted that PCA is mathematically defined as an orthogonal linear transformation that transforms the data into a new coordinate system such that the maximum variance through a certain projection of the data is located on the first coordinate (called the first principal component), the second maximum variance is located on the second coordinate (the second principal component), etc. This is explained in considerable detail in Principal Component Analysis by Jolliffe IT (Series: Springer Series in Statistics, 2nd ed., Springer, NY, 2002, XXIX, 487 p. 28 illus. ISBN 978-0-387-95442-4).

[0069] Figure 3 A second embodiment of the method 1 is illustrated as a modified version of the first embodiment.

[0070] The modified method 1 also includes a step 31 of obtaining a second data set of weighted values. The obtained second data set may, for example, be a past or historical data set of weighted values. By way of example, the obtained second data set may have been generated in a previous iteration, as explained below, or may have been generated based on a different object data set. In other embodiments, the obtained second data set is an initial data set of arbitrary values, for example, wherein the weighted values ​​are all initialized to 1 or a randomly (or pseudo-randomly) selected number between 0 and 1.

[0071] Step 5 of generating the first data set of weighted values ​​includes modifying the weighted values ​​of the second data set. In particular, modifying the weighted values ​​of the second data set is based on the data set of loadings of one of the first two principal components.

[0072] Step 5 may include a step 32 of selecting one of the first two principal components. Preferably, step 32 includes randomly or pseudo-randomly selecting one of the first two principal components, and may alternatively include selecting only the first principal component or the second principal component. As will be appreciated by those skilled in the art, the first two principal components are the two components generated by PCA that explain most of the variance in the data set of the object data.

[0073] Step 5 may also include a step 33 of multiplying each weighted value in the second data set of weighted values ​​by the corresponding loading associated with the selected principal component in the data set of loading values. The number of weighted values ​​in the second data set of weighted values ​​is equal to the number of loading values ​​in the data set of loading values. In this way, each weighted value is modified based on the corresponding loading in the data set of loading values.

[0074] Step 5 may further comprise the step 34 of dividing each weighted value in the second data set of weighted values ​​by a randomly or pseudo-randomly selected number between 0 and 1. Thus, steps 33 and 34 together comprise multiplying each weighted value in the second data set of weighted values ​​by the proportion of the corresponding load in the data set of load values.

[0075] When used in an iterative procedure for calculating a suitable data set of weighted values ​​(such as those described later), step 5 is as described in reference Figure 3 The described step of generating the first data set of weighting values ​​by modifying the second data set of weighting values ​​is particularly advantageous.

[0076] In particular, randomness can be introduced into the iterative procedure by step 5, thereby allowing a heuristic search and / or a heuristic optimization method. In particular, this randomness leads to a considerable diversity capability of the search procedure, which is preferably provided by a non-deterministic (i.e. random) selection between the two most influential principal components and also by a random ratio of the loadings of the selected principal components.

[0077] The step 4 of performing a principal component analysis may be performed on the data set of object data weighted by the second data set of weighting values.

[0078] Figure 4 Method 1 according to the third modified embodiment is illustrated.

[0079] In a third embodiment, the clustering process 3 is performed iteratively to optimize the data set of weighted values ​​(eg, by determining whether the data set of weighted values ​​has converged in successive iterations).

[0080] In particular, the data set of weighted values ​​may be iteratively modified, wherein (during each iteration) a determination is made as to whether an improvement results from any modification made. Modifications that do not improve may be rejected, and modifications that improve may be accepted. This advantageously allows for gradual convergence to a most appropriate or otherwise optimized data set of weighted values.

[0081] Method 1 includes a step 41 of calculating (in step 7) a quality value of the clustering performed by the clustering algorithm. A skilled person will readily appreciate various methods of calculating the quality value, including calculating, for example, average contour width, Dunn index, and Davies-Bouldin index. Contour width can be calculated using any known distance metric, such as Euclidean distance.

[0082] The method further comprises the step 42 of determining whether the quality value is greater than a first predetermined threshold value.

[0083] The method 1 comprises a step 43 of replacing weighted values ​​of the second data set of weighted values ​​with weighted values ​​of the first data set of weighted values ​​in response to the quality value being greater than a predetermined threshold.

[0084] Similarly, method 1 comprises the step 44 of rejecting the weighted values ​​of the first data set of weighted values ​​and retaining the weighted values ​​of the second data set of weighted values ​​in response to the quality value being less than a predetermined threshold.

[0085] The first predetermined threshold is preferably a quality value of clustering performed by the clustering algorithm on the data set of object data weighted using the second data set of weighting values. In particular, the quality value may be a quality value calculated in a previous iteration of the clustering process 3. In this way, modifications to the data set that improve the weighting values ​​are retained, and modifications that adversely affect the data set of weighting values ​​are rejected, discarded or otherwise processed.

[0086] In some other embodiments, the first predetermined threshold is a ratio or fraction of the quality value of the previous iteration. Using a fraction of the previous quality value (e.g., 0.95 of the previous quality value) improves the diversification of the algorithm by utilizing slightly worse solutions. This can result in more promising areas of the solution search space being identified.

[0087] Similarly, in other embodiments, a multiple of the quality value of the previous iteration (eg >1x, such as 1.1x) may also be used as the first predetermined threshold. This may ensure that only solutions that are significantly better than the previous solution are identified and may lead to more promising paths.

[0088] The first data set of weighted values ​​is the current data set (i.e. of the current iteration) and the second data set of wait values ​​is the previous data set (i.e. of the previous iteration) for example for a second subsequent iteration, or for example for the first iteration, an initialization or default data set of weighted values ​​as obtained in step 31.

[0089] The clustering process 3 thereby modifies or otherwise generates a new data set of weighted values ​​(e.g., based on a previous set), and determines whether the new data set of weighted values ​​favorably or unfavorably affects the quality of clustering performed on the data set of object data weighted by the weighted values. In an example, the quality value generated in the previous clustering process is compared with the quality value generated in the current clustering process. The previous clustering process is a clustering process performed on the data set of object data when weighted using the previous data set of weighted values ​​(i.e., the second data set of weighted values). The current clustering process is a clustering process performed on the data set of object data when weighted using the newly generated data set of weighted values ​​(i.e., the first data set of weighted values).

[0090] The clustering process 3 may further comprise a step 45 of determining whether to interrupt the iterative clustering process 3 to thereby determine whether to prevent further iterations of the clustering process 3 from being performed.

[0091] Step 45 may include determining whether the number of iterations is greater than a predetermined number of iterations (e.g., about 25 or about 50), or determining whether the length of time that has elapsed during the iterative clustering process (the time during which the clustering process 3 is repeated) is greater than a predetermined length of time (e.g., about 1 minute, about 10 minutes, or about 30 minutes). In either case, when the measured value is above the corresponding predetermined value (e.g., when the number of iterations is greater than the predetermined number of iterations), step 45 determines that the iterative clustering process 3 is to be interrupted.

[0092] The predetermined time length may depend on the size of the data set, such as the number of quantitative values ​​in the data set, the number of sets and / or the number of quantitative values ​​in a set. Of course, the calculation time may also depend on the type of device performing the calculation and / or the availability of the device.

[0093] For smaller sets (e.g. <10,000 quantitative values), roughly acceptable computational runtimes have been identified to be in the region of 1-30 minutes. In more complex cases (e.g. >10,000 quantitative values), roughly acceptable runtimes are in the region of 1-2 hours.

[0094] The predetermined number of iterations may depend on the size of the data set (e.g., the number of quantitative value sets and / or the number of quantitative values ​​in a set). In one embodiment, the predetermined number of iterations is no less than the total number of quantitative values ​​in the data set divided by 500, e.g., no less than the total number of quantitative values ​​in the data set divided by 1000. These values ​​have been identified as appropriately providing accurate weighted values ​​while minimizing computation time, and thereby improving efficiency.

[0095] In some examples, the predetermined number of iterations is no less than 50, for example, no less than 100. These values ​​have been shown to provide adequate and accurate identification of suitable weights without requiring excessive computation time or iterations.

[0096] Preferably, step 45 instead comprises determining whether the quality value (calculated in step 41) is greater than a second predetermined threshold. The second predetermined threshold may depend on the type of quality value calculated, and by way of example only, when the quality value is the average contour width, the second predetermined threshold may be approximately 0.5 or 0.7.

[0097] Alternatively, step 45 may include whether the number of consecutive rejections of the first data set of weighted values ​​is greater than a predetermined number of rejections. This approach will identify whether the data set of weighted values ​​has converged with a high degree of confidence. The predetermined number of rejections made is, for example, in the region of 10 or 15.

[0098] Other suitable determinations may be made, for example, determining whether the quality value (calculated in step 41) has remained substantially unchanged (eg ±1%) for a predetermined number of iterations. This may also indicate that the data set of weighted values ​​has converged towards an optimized data set of weighted values.

[0099] Of course, step 45 may combine any of the aforementioned determinations as an alternative for determining whether to stop executing the iterative process (eg if the quality value is above a second predetermined threshold or the elapsed time is greater than a predetermined time length, process 3 is stopped).

[0100] If it is determined that the iterative clustering process 3 is to be interrupted, the method may end at step 46. In particular, the iterative clustering process may be stopped when the measured values ​​(quality value, number of iterations, amount of time to perform iterations, number of rejections of the first data set of weighted values) are above a predefined threshold. The predetermined threshold may be defined by a user or according to the known principles described above.

[0101] At step 46, the weighted dataset of object data (ie, as weighted using the second dataset of weighting values) or the output of the clustering process as performed in step 7 may be output, stored, displayed or otherwise provided to a user of the method.

[0102] In each iteration, step 4 of performing a principal component analysis is performed on the database of object data that has been weighted by the second data set of weighted values. Thus, principal components (with sets of component scores and loadings) are identified for each iteratively weighted data set of object data. This ensures that the method can account for the most significant variance that remains after weighting of the object data, and thereby allows further optimization of the data set of weighted values.

[0103] In embodiments, step 4 of performing PCA may thus comprise weighting or modifying the dataset of object data using the second dataset of weighted values, or may alternatively comprise using a weighted dataset of object data generated in a previous iteration of step 6. In some embodiments, if it is determined in step 42 that the quality value (associated with the newly calculated dataset of weighted values) is less than the first predetermined threshold, then step 4 of performing PCA is not repeated in a subsequent iteration, and the stored PCA performed in the previous iteration may be used instead.

[0104] Figure 5 Step 5 of generating a first data set 51 of weighted values ​​according to an embodiment is illustrated.

[0105] Step 5 includes modifying the second data set 52 of weighted values ​​w1, w2, w3 and w4. The second data set 52 of weighted values ​​may be, for example, a data set of weighted values ​​generated in a previous iteration of the clustering process 3, or may be an initialized data set of weighted values ​​(e.g., all weighted values ​​are set to 1 or to random numbers between 0 and 1).

[0106] Step 5 comprises multiplying each weight value w1 by the corresponding loading L1. The loading is selected from the set of loadings 51 associated with one of the first two principal components produced by PCA of the (previously weighted) object data, as previously described.

[0107] The principal components are randomly or pseudo-randomly selected to thereby introduce some randomness into the weighting process. Step 5 may further comprise dividing each weight value w1 by a random or pseudo-random number between 0 and 1.

[0108] Introducing randomness into generating new weight values ​​during the iteration process improves the diversification capability of the iterative clustering process. This makes it more likely that an improved data set of weight values ​​can be identified during the iterative process (ie, the quality value can be improved).

[0109] Modifying each weighted value may thus be performed by multiplying each weighted value by:

[0110]

[0111] where i is 1 or 2 and indicates the selected principal component (among the top two most influential components), x represents a related set of quantitative values ​​or objects, j indicates the related characteristic or quantitative value, and r(∈[0,1]) is a random (e.g., double precision or floating point) number selected between 0 and 1.

[0112] Figure 6The step 6 of weighting the quantitative values ​​of the dataset 20 of object data using the datasets 51, 52 of weighted values ​​is illustrated. This step may be performed at step 6 (before clustering the objects to determine the quality values) or during the principal component analysis step 5.

[0113] Each quantitative value of the data set 20 can be mapped, associated or otherwise linked to a specific weight. To weight the data set, each quantitative value is multiplied by a corresponding weight. By way of example, a first quantitative value v1 can be multiplied by a first weight value w1. This results in a weighted data set 60 of object data.

[0114] Figure 7 , Figure 8 , Fig. 9 and Fig.10 The figure shows the actual situation without using the iterative clustering process 3 ( Figure 7 and Figure 8 ) and using iterative clustering process 3 ( Fig. 9 and Fig.10 )The results of a clustering process performed on an exemplary data set of object data.

[0115] An exemplary dataset of subject data contains details of 2992 subjects at risk for prostate cancer tumors, all of whom underwent radical prostatectomy. The dataset contains a collection of six quantitative values ​​for each subject, which indicate the following clinical and pathological characteristics of the subject: age at surgery, prostate-specific antigen (PSA) density, percentage of positive biopsy scores, primary and secondary biopsy Gleason scores, and clinical stage.

[0116] When no (iterative) clustering process 3 is performed (i.e. the dataset of object data is not weighted), k-means clustering applied to the dataset of object data results in Figure 7 70, also referred to as a Clusplot. The Clusplot 70 graphically displays objects as points in a binary plot and graphically displays clusters of these objects as ellipses of various sizes and shapes. Of course, information indicating the clustering of objects can also be stored in the memory. When no iterative clustering process 3 is performed, the objects are clustered into three different and separate groups 71, 72, 73.

[0117] Also generated Figure 8 The first cluster outline plot 80 is shown in FIG. The cluster outline plot graphically represents the separation of groups 71, 72, and 73. An average outline width 81 or score can be calculated. Generally, clustering is considered satisfactory if the outline width is above 0.5. Figure 8As shown in , the average contour width 81 is well below the threshold, at approximately 0.2, which indicates poor data separation for the three clusters generated.

[0118] When the iterative clustering process 3 is performed according to the previously described embodiment, k-means clustering of the appropriately weighted object data results in Fig. 9 A second bivariate cluster plot 90 is shown in FIG. 1. In particular, the weighted data set has been clustered into twelve object groups.

[0119] Fig.10 The second cluster contour plot 100 shown in illustrates how the quality of the clustering of the dataset has also been improved due to the optimized weighting of the dataset of object data. In particular, the average contour width 101 is equal to 0.51 (ie above a satisfactory value of 0.5).

[0120] The results produced by performing the described iterative method on real data sets demonstrate the feasibility of the system and its ability to generate meaningful groups of similar objects. The resulting groups of objects are well separated from each other, rather than being grouped and / or possibly misclassified in large aggregated fashion. The objects in each group are also dispersed within paired similarity boundaries, thus ensuring that fundamentally different objects are placed in different, well-separated groups.

[0121] In some embodiments, a clustering algorithm is performed on the results of the PCA analysis of the (weighted) object data. In particular, clustering may be performed to cluster the objects using the first two principal components (of the object data) as determined by the PCA analysis. Figures 7 to 10 The clusters shown in have been clustered according to this method. This can further improve the clustering process and further improve the similarity between objects in the same group.

[0122] In the above and other embodiments, the object data includes clinical and pathological features belonging to different categories and having different ranges of variation and statistical distributions. Each such feature j can be referred to as F j A general object i can be called: i =[F i1 ; F i2 ;…;F ij ;…F in ], where n is the total number of clinical or pathological features. The entire dataset of subject data can therefore be: P = [F1; F2; ...; F j ;…F n ]. The goal of the iterative clustering process is to find a dataset of weights w that improves the clustering of objects to the greatest extent, thereby leading to an optimized dataset of object data: P = [w1.F1; w2.F2; ...; w j .F j ;…wn .F n ] = wF. The optimized data set better represents the overall object data, improves statistical similarity and reduces statistical variation and distribution within the data set.

[0123] Initially, the weighted values ​​may be set equal to one, i.e. w' = [1; 1; ... 1], thereby forming the second data set of weighted values ​​obtained in step 31 as previously described. Perturbation of these weighted values ​​is performed, a new data set w" of weighted values ​​is obtained, and thereby the first data set of weighted values ​​is formed. If the new data set of weighted values ​​w" results in an improved weighted data set associated with an improved quality value or 'objective function value', then the perturbation of the data set of weighted values ​​is accepted, and the new weighted data set of object values ​​and the new data set of weighted values ​​replace the previous corresponding data sets.

[0124] At each iteration, the quality of the clustering performed on the weighted object data is evaluated to obtain a quality value. The evaluation may, for example, determine the average contour width and / or the Dunn index as the quality value.

[0125] The iteration of the optimization routine continues until a predefined stopping condition is met. These may include, for example, meeting any one or more of the following: maximum allowed computation or CPU time, maximum number of iterations, maximum number of iterations between two improvements, or minimum average profile width (e.g., at least 0.5). In this way, integration of multiple feature spaces (i.e., features of different statistical properties) into the clustering algorithm is obtained.

[0126] In certain embodiments, one or more of the quantitative values ​​in the data set can include NULL or missing values. If the data set lacks some data (or the data for a particular object are not recorded), this can occur. In order to overcome this problem, any missing value can be replaced by a default value (e.g., zero) or by providing an estimate or mean value. Suitable estimation methods will be well-known to the technician. In other embodiments, the quantitative value set comprising missing or NULL values ​​is abandoned.

[0127] Fig.11 A processor device 110 adapted for clustering similar objects among a plurality of objects is illustrated, the processor device comprising an obtaining unit 111 and a clustering unit 112 .

[0128] The obtaining unit 111 is adapted to obtain a dataset of object data, the dataset comprising a corresponding quantitative value set for each object, each quantitative value being a measurement result of a clinical or pathological feature of the object, and each quantitative value set having the same number of quantitative values.

[0129] The clustering unit 112 is suitable for performing a clustering process by the following operations: performing principal component analysis on a data set of object data to identify at least two principal components, each principal component is associated with a data set of component scores and loads, the number of loads in each data set of loads is equal to the number of quantitative values ​​in the set of quantitative values; generating a first data set of weighted values, the number of weighted values ​​in the first data set is equal to the number of loads in the data set of loads, wherein each weighted value in the first data set of weighted values ​​is based on a corresponding loading associated with one of the first two principal components in the data set of loads; weighting the quantitative values ​​using the first data set of weighted values ​​to obtain a weighted data set of object data; and performing a clustering algorithm on the weighted data set of object data to cluster similar objects.

[0130] The obtaining unit 111 may obtain the dataset of object data, for example from an external source or from the memory device 113. The clustering unit may be adapted to store in the memory device 113 the first dataset of weighted values ​​and the weighted dataset of object data.

[0131] Preferably, the obtaining unit 111 is adapted to obtain a second data set of weighted values, the number of weighted values ​​in the second data set being equal to the number of quantitative values ​​in the data set of object data. The second data set of weighted data may be obtained from the memory device 113 and may, for example, be a data set of weighted values ​​generated during a previous iteration (as previously described).

[0132] The clustering unit 111 may be adapted to generate a first data set of weighted values ​​by modifying each weighted value in the second data set of weighted values ​​based on a corresponding loading associated with one of the first two principal components in the data set of loads, thereby obtaining the first data set of weighted values. The clustering unit 111 may store the first data set of weighted values ​​in the memory device 113, and the first data set of weighted values ​​may be later obtained by the obtaining unit as the second data set of weighted values ​​for a subsequent iteration.

[0133] The clustering unit 111 can be adapted to iteratively perform a clustering process, wherein the clustering process further comprises: calculating a quality value indicating the quality of clustering performed by the clustering algorithm; in response to the quality value being greater than a first predetermined threshold, replacing the weighted values ​​in a second data set of weighted values ​​with the weighted values ​​in a first data set of weighted values; and in response to the quality value being below the first predetermined threshold, rejecting the first data set of weighted values ​​and retaining the weighted values ​​of the second data set of weighted values.

[0134] Thus, the clustering unit 112 may only update the stored data set of weighted values ​​(in the memory device 113) if the quality of the clustering algorithm has improved due to modifications to the data set of weighted values.

[0135] The processing apparatus 110 may be in communication with a display device 114. In particular, the processing apparatus may display the results of a clustering process, principal component analysis, etc. This may allow a user of the processing apparatus 110, such as a clinician, to easily access the stored information.

[0136] Embodiments may utilize a processor device (such as a controller) to perform any of the described methods. The controller can be implemented in a variety of ways using software and / or hardware to perform the various functions required. A processor is an example of a controller that employs one or more microprocessors that can be programmed using software (e.g., microcode) to perform the required functions. However, a controller may be implemented with or without a processor, and may also be implemented as a combination of dedicated hardware that performs some functions and a processor (e.g., one or more programmed microprocessors and associated circuits) that performs other functions.

[0137] Examples of controller components that may be employed in various embodiments of the present disclosure include, but are not limited to, conventional microprocessors, application specific integrated circuits (ASICs), and field programmable gate arrays (FPGAs).

[0138] In various embodiments, a processor or controller may be associated with one or more storage media, such as volatile and non-volatile computer memory, such as RAM, PROM, EPROM, and EEPROM. The storage media may be encoded with one or more programs that perform the desired functions when run on one or more processors and / or controllers. The various storage media may be fixed within a processor or controller, or may be transportable so that one or more programs stored thereon may be loaded into a processor or controller.

[0139] There may thus be a computer program product comprising a computer readable storage medium having computer readable program instructions embodied therewith which, when executed on a processor device, cause the processor device to carry out any of the methods described above.

[0140] Other variations to the disclosed embodiments may be understood and effected by those skilled in the art in practicing the claimed invention by studying the drawings, the description and the appended claims. In the claims, the word "comprising" does not exclude other elements or steps, and the word "a" or "an" does not exclude a plurality. Although certain measures are recited in mutually different dependent claims, this does not indicate that a combination of these measures cannot be used to advantage. Any reference signs in the claims should not be construed as limiting the scope.

Claims

1. A method (1) for clustering similar objects among a plurality of objects, the method comprising: Obtaining a data set (20) of subject data, the data set comprising a corresponding set of quantitative values ​​for each subject, each quantitative value being a measurement of a clinical or pathological characteristic of the subject, and each set of quantitative values ​​having the same number of quantitative values; as well as Perform the clustering process (3), including: performing (4) a principal component analysis on the data set of subject data to identify at least two principal components (PC1, PC2), each principal component being associated with a data set (22A) of component scores (cs1, cs2) and loadings, the number of loadings in each data set of loadings being equal to the number of quantitative values ​​in the data set of subject data; generating (5) a first data set (51) of weighted values, each weighted value being based on a corresponding loading in said data set of loadings associated with one of the first two principal components, the number of weighted values ​​in said first data set being equal to the number of loadings in said data set of loadings; weighting (6) the quantitative values ​​of the data set of object data using the first data set of weighted values ​​to obtain a weighted data set of object data (60); and (7) performing a clustering algorithm on the weighted data set of subject data to cluster similar subjects into subject groups having similar clinical characteristics, wherein the subjects in each subject group have similar diagnoses, predicted subject outcomes, and / or appropriate treatment options.

2. The method according to claim 1, further comprising the step (31) of obtaining a second data set (52) of weighted values, the number of weighted values ​​in the second data set being equal to the number of quantitative values ​​in the data set of object data, and in, The step of generating the first data set of weighted values ​​comprises modifying each weighted value in the second data set of weighted values ​​based on a corresponding loading in the data set of loadings associated with one of the first two principal components to thereby obtain the first data set of weighted values.

3. The method according to claim 2, wherein: Each weighted value in the second data set of the modified weighted values ​​comprises: selecting (32) a data set of loadings associated with one of the first principal component or the second principal component; and Each weighted value in said second data set of weighted values ​​is multiplied (33) by the corresponding loading in said data set of loadings associated with the selected principal component to obtain a modified first data set of weighted values.

4. The method according to claim 3, wherein: Said modifying each value in said second data set of weighted values ​​further comprises dividing (34) each weighted value in said second data set of weighted values ​​by a randomly or pseudo-randomly selected number between 0 and 1.

5. The method according to any one of claims 2 to 4, wherein: Said modifying each value in said second data set of weighted values ​​comprises modifying each value in said second data set of weighted values ​​based on a corresponding loading in said data set of loadings associated with a randomly or pseudo-randomly selected one of said first two principal components.

6. The method according to any one of claims 2 to 5, wherein: The performing of the clustering process includes iteratively performing the clustering process, and wherein the clustering process further includes: calculating (41) a quality value indicative of the quality of said clustering performed by said clustering algorithm; In response to the quality value being greater than a first predetermined threshold, replacing (43) the weighted values ​​in the second data set of weighted values ​​with the weighted values ​​in the first data set of weighted values; and In response to the quality value being below the first predetermined threshold, the first data set of weighted values ​​is rejected (44) and the weighted values ​​of the second data set of weighted values ​​are retained.

7. The method according to claim 6, wherein: The method includes interrupting (45) performing the iterative clustering process in response to any one or more of the following: The quality value is greater than a second predetermined threshold; The number of iterations is greater than the predetermined number of iterations; a length of time that elapses during the iterative clustering process is greater than a predetermined length of time; as well as The number of consecutive rejections of the first data set of weighted values ​​is greater than a predetermined number of rejections.

8. The method according to claim 6 or 7, wherein: The first predetermined value is a quality value of clustering performed by the clustering algorithm based on the data set of object data weighted using the second data set of weighting values. 9 . The method of claim 8 , further comprising, during the iterative clustering process and in response to the quality value being greater than a first predetermined threshold, replacing the first predetermined threshold with the quality value.

10. The method according to any one of claims 8 to 9, further comprising: weighting the quantitative values ​​using the second data set of weighted values ​​to obtain an initial weighted data set of object data; performing a clustering algorithm on the initial weighted data set of object data to cluster similar objects; as well as A quality value indicative of the quality of the clustering performed by the clustering algorithm is calculated to thereby obtain the first predetermined threshold value.

11. The method according to any one of claims 6 to 10, wherein: The calculating of the quality value comprises calculating one or more of the following: Dunn index; contour width and Davies-Bouldin index.

12. A computer program product comprising a computer readable storage medium having computer readable program instructions embodied therewith which, when executed on a processor device, cause the processor device to carry out the method according to any preceding claim.

13. A processor device (110) adapted to cluster similar objects among a plurality of objects, the processor device comprising: an obtaining unit (111) adapted to obtain a data set of object data, the data set comprising a corresponding set of quantitative values ​​for each object, each quantitative value being a measurement result of a clinical or pathological characteristic of the object, and each set of quantitative values ​​having the same number of quantitative values; as well as A clustering unit (112) is adapted to perform a clustering process by: performing a principal component analysis on the data set of object data to identify at least two principal components, each principal component being associated with a data set of component scores and loadings, the number of loadings in each data set of loadings being equal to the number of quantitative values ​​in the set of quantitative values; generating a first data set of weighted values, the number of weighted values ​​in the first data set being equal to the number of loadings in the data set of loadings, wherein each weighted value in the first data set of weighted values ​​is based on a corresponding loading in the data set of loadings associated with one of the first two principal components; weighting the quantitative values ​​using the first data set of weighted values ​​to obtain a weighted data set of object data; and A clustering algorithm is performed on the weighted data set of subject data to cluster similar subjects into subject groups having similar clinical characteristics, wherein subjects in each subject group have similar diagnoses, predicted subject outcomes, and / or appropriate treatment options.

14. A processor device according to claim 13, wherein: The obtaining unit is adapted to obtain a second data set of weighted values, the number of weighted values ​​in the second data set being equal to the number of quantitative values ​​in the data set of object data, and The clustering unit is adapted to generate the first data set of weighted values ​​by modifying each weighted value in the second data set of weighted values ​​based on a corresponding loading associated with one of the first two principal components in the data set of loadings, thereby obtaining the first data set of weighted values.

15. The processor device according to claim 14, wherein: The clustering unit is adapted to iteratively perform the clustering process, and wherein the clustering process further comprises: calculating a quality value indicative of a quality of said clustering performed by said clustering algorithm; In response to the quality value being greater than a first predetermined threshold, replacing the weighted values ​​in the second data set of weighted values ​​with the weighted values ​​in the first data set of weighted values; and In response to the quality value being below the first predetermined threshold, the first data set of weighted values ​​is rejected and the weighted values ​​of the second data set of weighted values ​​are retained.