3.1 Juicio de Nulidad Matrimonial en el Derecho Canónico
3.1.2 Causales de Nulidad en el Código de derecho Canónico
Our observation that the ACF process is similar to case completion at the surface level leads us to apply a technique used in case completion to ACF. Since the ACF process involves an extended dialogue with many users, the amount of information in the system will increase very quickly. As we discussed in Chapter 4, ACF suffers from the same weakness as all memory-based techniques, namely computational expense at query time and a large memory overhead.
While tree structures have been used to index memory-based instances for efficient retrieval (Bentley 1975, Friedman et al. 1977, Wess et al. 1993), such techniques are unsuited to instances where a large proportion of the feature-values are missing. However, Lenz (1999) and Burkhard (1998) suggest that Case Retrieval Nets (CRN) are suitable for problem situations such as case completion where missing case information is usual and where there is no clear distinction between problem description and solution.
We have already described the structure of a CRN in Chapter 3. Briefly, a CRN is composed of nodes called Information Entities (IE). An IE is a basic knowledge item such as an attribute-value pair. A case is composed of a set of IEs. A CRN consists of a network of unique IE nodes connected to each other via similarity arcs. Each case node is connected to its constituting IE nodes via relevance arcs. IE nodes are not duplicated in the Network so several cases may share the same IE node that represents a particular attribute-value pair. Different degrees of similarity and relevance may be expressed by varying arc weights.
A CRN is a memory model that allows for the efficient retrieval of a relatively small number of relevant cases from a huge case base (Lenz et al. 1998). The central idea is to apply a spreading activation process to a net-like case memory in order to retrieve cases similar to a posed query case. Thus, the CRN structure has some similarity to the structures underlying artificial neural nets and associative memory techniques. In contrast to neural networks, however, all the nodes and arcs in that net have precise meaning. Whereas indexing models for instance-based reasoning systems are typically tree structures that allow for a top-down search, a CRN enables a bottom-up process that attempts the re-construction of similar cases (Lenz et al. 1998).
We have implemented our ACF memory structure using a CRN in which the case node represents a user identifier and item-value pairs are represented by information entities. This structure is illustrated in Figure 6.12.
A B C D
M 1 3 3 4
N 2 4 2 1
P 1 - 3 1
Figure 6.12: The architecture of a CRN using the user profiles, M, N and P and a set of ratings (1–5) for items A, B,C, D
Advantages of ACF CRNs:
CRNs are suited towards retrieval situations where there is missing attribute information. Case nodes are connected to IE nodes only on the basis of what attributes are available. Since cases share IEs, the memory required is significantly lower than that used by the flat memory structures typically used for ACF data. For instance, in the MovieLens dataset, an ACF CRN uses 6714 IE nodes to store 100,000 attribute values, and 16,912 IE nodes to store the 1,000,000 attribute value pairs of the largest publicly available MovieLens dataset. Intuitively, the maximum number of IEs required to represent a dataset in a CRN is the product of the number of attributes and the number of different values associated with each attribute. IE nodes in ACF are very simple data structures, themselves being little more than a holder for an attribute name and value, and an activation score.
As we shall see in the next section, CRNs alleviate the query time complexity for neighbour calculation by ensuring that only users who have IE nodes in common are considered, and by distributing the similarity calculation amongst shared IE nodes. Furthermore, the search through the ACF profile space is guaranteed to be complete (Lenz et al. 1998).
Another advantage is that new user profiles and ratings can be added without having to rebuild the memory structure which is necessary for ACF where the user ‘case base’ and the case profiles themselves are constantly growing.
Disadvantages
CRNs are suitable for numeric calculation where discrete values are used. In most ACF systems, a rating system is in place so that attribute values are discrete. For instance, Smart Radio ratings are chosen from 5 discrete values (1–5). The benefits of CRNs are lost when attributes use continuous values. In such a situation, a new IE must be created for each new value, and few cases will share common IEs. Thus the computational advantage of calculating similarity once for many connected cases is lost. Therefore, continuous values need to be discretised before being inserted into the
CRN. This problem arises for implicitly derived ratings. In Smart Radio, we round implicitly derived scores to the nearest 0.5. (i.e. an implicit score of 3.4 is rounded to 3.5).
CRN activation
ACF Neighbour Retrieval using a CRN has three stages:
1. Initial Activation: the target user profile is presented to the CRN and initial activation is determined for the CRN IE nodes that match the target features of the CRN.
2. Similarity Propagation: the second step involves incrementally propagating the activation through the connected IEs using the similarity function. In our ACF implementation the similarity function represents the contribution of an IE to the overall Pearson correlation. We explain this in more detail in the section below.
3. Relevance Propagation: the final step entails collecting the achieved activation in the associated case nodes. This is done using the relevance function which connects each case node to its constituent IE nodes. The relevance function performs the final Pearson calculation using the contributions of the activated IEs.
The result of the retrieval process is a set of cases ranked in order of decreasing activation. The activation constitutes a similarity connection between entities; it can be any measure that can be incrementally computed. In the context of our ACF implementation, the activation consists of a contribution of an IE to a Pearson correlation score between the target case and any cases connected to the IE via relevance arcs.
For complex measures like the Pearson coefficient, activation is an intermediary calculation in which several values are updated in each activated IE node. For instance, the Pearson correlation can be expressed using Equation 6.2. It is clear that the five subsections marked in the equation can be incrementally calculated, after which point a final calculation is carried out in which the square root of the denominator is computed. Using the Pearson metric, each activated IE contributes a partial calculation to the terms marked 1 to 5.
Equation 6.2
The final calculation is carried out by the relevance function which collects these values from each activated IE and performs the final calculation for each case node.
As we can see in Figure 6.12, an IE representing a single feature value pair is stored once irrespective of how often it occurs throughout the user–item matrix. Accordingly, the similarity calculation is only done once between a target IE and a corresponding IE in the CRN memory. This
calculation is then used by each case that is connected to that IE during the relevance propagation stage. We can use the simple CRN structure in Figure 6.12 to illustrate such a scenario. Let us take a sample target profile, T, and apply it to the CRN.
Table 6.2: A target profile for user, T
A B C D
T 2 4 3 1
The first stage involves initialising the activation of IEs corresponding to the target feature values. If a target feature is missing in the CRN it is created on the fly and inserted with the appropriate similarity links. This is illustrated by the IEs shaded in black. Activation is calculated for the target IE. The activation state of each node is shown in Table 6.3.
Figure 6.13: The first stage of activation. The nodes in black illustrate the activation of the target IEs.
In the second stage of activation, activation is calculated between the target IEs and any connected IEs. The activation in these is then set. This is illustrated by the IEs shaded in grey. For clarity each IE node has a connection with one other.
Finally, the relevance function propagates the activation in each IE to connected case nodes and performs a final calculation.
Figure 6.15: The final stage of CRN activation. The relevance function collects the activation in each connected, activated IE.
For the Pearson measure, each IE node has an activation state composed of 5 variables which, during relevance propagation, contribute to the labelled sections of Equation 6.2. Table 6.3 illustrates the activation states of each node after the first two stages of activation. The rows with a black background are nodes activated by the initial target activation (see Figure 6.13). The rows with the grey background show the states of IEs activated by the similarity propagation stage (see Figure 6.14). In this example the X attributes refer to the target attributes and the Y attributes refer to the attributes of the case being tested for similarity.
During activation, the node is passed the value for X (the target attribute), from which it can calculate XY, X2, and update the X variable. These calculations are made once and then passed
on to connected case nodes for final calculation of the Pearson coefficient. We further speed up query-time computation by pre-computing the value for Y2 when the CRN is built. This value will
be static for every correlation calculation. In Table 6.3 the labels marked in red indicate static values that can be pre-computed (Y2) or assigned (Y).
Table 6.3: The activation states of each node after the first two stages of activation
IE Node XY X Y X2 Y2 item_A_1 2 2 1 4 1 item_A_2 4 2 2 4 4 item_B_3 12 2 3 16 9 item_B_4 16 4 4 16 16 item_C_2 6 3 2 9 4 item_C_3 9 3 3 9 9 item_D_1 1 1 1 1 1 item_D_4 4 1 4 1 16
Thus the CRN similarity calculation is extremely efficient. Figure 6.16 illustrates the mean time per prediction using a flat search for the set of nearest neighbours vs. a search using a CRN. The dataset is the 100,000 MovieLens dataset. To start the experiment we removed 90% of the user profiles from the dataset, and using the Leave_One_Out technique made a prediction for each attribute-value in the dataset. The average prediction time is plotted on the Y axis. We then repeatedly replaced 10 % of the data and carried out the experiment at each increase of the dataset. As we can see, the increase in prediction time is linear with the CRN predicting at a significantly faster rate than the flat search.
Mean Time per Prediction: Flat Neighbour Search vs. CRN Neighbour Search 0 20 40 60 80 100 120 9 94 189 283 377 472 566 660 754 849 943
Number of ACF profiles
M e an T im e p e r P red ic ti o n (m il lis e c o nd s ) Flat Search CRN Search
Figure 6.16: The mean time per prediction for a flat neighbour search vs. a CRN-based neighbour search
The improvement in prediction efficiency is due to the speed at which neighbourhoods can be calculated for each user. It has often been recognised in ACF literature that neighbourhood computation is a major bottleneck (Herlocker et al. 1999). Herlocker et al. (2000) suggest sampling user profiles to reduce the cost of this process. We would suggest that our technique offers the benefits of a complete search and increased speed. Furthermore, CRNs can be adapted for parallel processing (Lenz 1999), which is an advantage for systems with huge data repositories.