90 minutes · 100 marks · 7 questions · 27 subparts.
This is an original self-study practice paper, not an official examination specification. Its question count, topic weighting, calculator practice instructions and marking suggestions do not forecast official requirements.
Answer all questions on separate paper before opening solutions. Show essential calculations, conditions and proofs. Use exact values where practicable; state rounding when using decimals. Consistently paired sign choices for eigenvectors or singular vectors are acceptable. Use the definitions, normalization factors and tie rules stated in each question; never assume an inverse exists without justification.
For this practice use a Casio fx-50FH II; one double-sided A4 reference sheet may be used. These are practice instructions, not a statement of current official exam permission. Write the mathematical setup before using scalar arithmetic. Ordinary REG output does not replace weighted, multivariable or regularized derivations; no CAS or full matrix functionality is assumed.
These are self-assessment marking suggestions, not an official rubric. Award equivalent correct reasoning. Preserve method credit when one arithmetic slip propagates. The solutions distinguish the objective, assumptions, computations and checks; a matching final number alone is insufficient.
| Q | marks | min |
|---|---|---|
| 1 | 16 | 14 |
| 2 | 18 | 16 |
| 3 | 17 | 15 |
| 4 | 16 | 14 |
| 5 | 14 | 13 |
| 6 | 13 | 12 |
| 7 | 6 | 6 |
| Total | 100 | 90 |
Q1. Robust loss and validation (16)
(a) [4]
Identify the optimization problem first. The four observations are fixed numbers; is the one parameter to choose, with the same shared by every prediction. Each residual is a scalar, and adds the four prediction costs. The quadratic branch differentiates to . On the positive tail, equals ; on the negative tail it equals , giving derivatives 1 and −1. The appearance of an absolute value does not make this loss nondifferentiable at zero: the quadratic branch applies near zero. Convexity means the graph lies below each chord, not that it is strictly convex everywhere; its linear tails illustrate the distinction.
The argument is the residual , not a coefficient penalty. Define and differentiate each branch:
At r=1 both one-sided derivatives equal 1; at r=−1 both equal−1. Thus both joining points are differentiable, without choosing a side. The derivative is nondecreasing, so is convex. Composing a convex function with affine preserves convexity, and summing the four terms makes F convex.
Marking: Derivative branches 2; both joining points 1; convexity and transfer to F 1.
(b) [6]
Why try first? Three observations are zero and only one is eight. Looking near the majority puts three residuals in the easily differentiated quadratic branch. This is a candidate interval, not an assumption that the answer must be there: check membership and global optimality afterwards. Term by term, the chain rule gives , hence from the zeros; the last observation contributes . At the candidate, the three small residuals each exert a slope contribution of magnitude , balancing the outlier's saturated contribution of 1. For OLS, the contribution keeps growing linearly with residual size, so a large outlier pulls the mean much farther.
Differentiating the residual contributes a factor−1. Using the oddness of ,
On , and . Hence gives , which lies in the assumed interval. Convexity makes a zero derivative globally sufficient. Uniqueness also needs explanation: for a below 0 the derivative is negative; on [0,1] it increases strictly through zero once; above 1 monotonicity and make it positive.
The two estimates optimize different objectives. Direct checks show:
Replacing 8 by 80 leaves throughout [0,1], so the same derivative and uniqueness argument give again. The OLS constant instead becomes 20. More generally an outlier value B keeps this Huber solution whenever , i.e. . This is bounded influence from the saturated residual derivative, not a claim that the loss ignores the outlier or minimizes RSS.
Marking: Correct derivative and applicable interval 2; solution and unique global optimality 2; OLS answer 1; unchanged value at 80 with reason 1.
(c) [3]
Separate the two layers of differentiation. For , the outer derivative is and the inner derivative is ; multiply them to obtain the first derivative below. For the tail limits, divide numerator and denominator by : . The two limits therefore have opposite signs, not both 1. “Bounded” describes the slope, not the loss value: the loss itself still increases with .
By comparison, is unbounded. A large residual therefore has a bounded slope contribution under pseudo-Huber, rather than an arbitrarily large one under squared loss. Pseudo-Huber is smooth without the piecewise join, but its minimizer need not coincide exactly with the Huber minimizer.
Marking: Derivative 1; tail limits and squared-loss comparison 1; large-residual interpretation 1.
(d) [3]
Separate fitting a transformation from applying it. If a training fold supplies mean and nonzero standard deviation , a validation observation must become . Do not refit using the validation mean or use the full-data mean beforehand. The validation fold is meant to mimic unseen future data. Separately, taking the smallest CV value across losses selects the candidate that looks best on these validation observations, potentially selecting random good luck too. That is why a final independent test set is still needed.
First, whole-dataset scaling lets each validation fold affect training preprocessing even without using its labels. Second, the minimum CV score has been used for selecting a loss, so it is a selected validation result, not independent test error. Reserve an independent test set first. On the development data, run five-fold CV with preprocessing and fitting learned only inside each training fold. Apply those fixed transformations to that fold’s validation data. Select loss and hyperparameters, refit the entire pipeline on all development data, then evaluate once on the untouched test set. Renaming a selection dataset “test” changes none of these facts.
Marking: Preprocessing leakage 1; selection bias/validation versus independent test 1; corrected order 1.
Q2. Greedy fitting, refitting, and nested models (18)
(a) [2]
Which objects are being correlated? The matrix is ; each column is a direction available for the prediction. The vectors are the observations and their unexplained part; contains coefficients. Initially , so . Selection uses because either sign of a direction can improve the fit. To derive the increment, expand , differentiate in , and set to zero. This gives ; only the unit column lengths remove the denominator here.
The first two absolute correlations tie; select by the smaller-index rule. Unit norms justify the stated increment . For general non-unit columns, the one-dimensional least-squares increment would divide by .
Marking: Norms and correlations 1; tie handling 1.
(b) [5]
Keep one accounting identity in every round: prediction plus residual equals . The first prediction is ; subtract it from to obtain the new residual. The second round adds rather than replacing the prediction by that vector. Thus the final prediction is . Coordinatewise subtraction gives and for the first two residuals. RSS is the sum of the three squared residuals, not their sum and not MSE, which would divide by three.
The first increment is 2. Recompute correlations against the new residual before choosing again:
Now select with increment . The first coefficient remains 2; MP does not jointly refit it.
Marking: First step 1; second correlations/choice 1; increment/final coefficients 1; residual 1; RSS 1.
(c) [5]
What extra step does OMP perform? After selecting two columns it lets both coefficients change, so the unknown is and is . Differentiating the objective gives , which rearranges into the normal equations. Their right-hand side is not the previous residual's correlations: correlations select a column, whereas the original is the refitting target. Subtracting the two equations gives ; substitute back to obtain their common value. Reducing the old coefficient from 2 to 5/4 is not a backward step: the new column also explains the first coordinate.
The first OMP step matches MP, and the second choice is again . The active matrix and normal equations are:
The target is still the original y in ; we do not freeze the old coefficient. The determinant gives uniqueness. Subtracting equations gives , then , so both equal 5/4.
Check the first two predicted entries: and . They reproduce the corresponding observations.
Marking: Active set and correct normal equations 2; both coefficients 1; residual 1; RSS 1.
(d) [3]
Orthogonal means inner product zero, not merely “different directions.” After a one-dimensional least-squares update, ; this concerns the currently selected column only. Moving along another nonorthogonal direction changes the old inner product to , here . OMP's normal equations instead make all active-direction inner products zero together. This compares fits on the same active columns; it does not establish superiority on all future samples or all sparse supports.
MP leaves the residual orthogonal to the most recently updated column but not to the earlier one. Since , updating along the second column changes the first coordinate and destroys the previous orthogonality. OMP reoptimizes every active coefficient, so the residual is orthogonal to both active columns and its RSS here is smaller. This example does not prove that OMP always finds a globally optimal sparse support.
Marking: MP inner products 1; OMP orthogonality 1; nonorthogonal columns and joint refit explanation 1.
(e) [3]
The proof is not “larger models are usually better”; the old answer remains allowed. The sets contain allowable prediction vectors. After expansion one can still choose the old prediction, so the new minimum cannot be larger. If added directions are orthogonal to the old residual, the old prediction may remain optimal, allowing equality. In the counterexample below the second model predicts only . Differentiating gives , hence . Its MAE is , explicitly showing why the RSS conclusion cannot be transferred to another metric.
Let be an optimal first-model prediction. Since , it is feasible in the second optimization:
This is non-increase, not strict decrease, and says nothing about test error. MAE is not the optimized objective, so it has no such guarantee. For an explicit counterexample take , , and . Least-squares predictions are 0 and , respectively:
Thus RSS falls while MAE rises. The numerical counterexample supports understanding; it is not an additional requirement beyond a correct explanation.
Marking: Feasible-set proof 2; correct explanation of no MAE guarantee 1.
Q3. Kernel PCA and its normalization (17)
(a) [5]
Separate the three spaces first. Each input is scalar, but maps it into a two-dimensional vector. Stacking three samples in rows makes both . The mean is , and , with of size . For example, the first row is . The matrix compares samples, not features: , so .
Why center on both sides? Left multiplication by subtracts the feature mean from each sample in . Thus . Entrywise, ; adding the grand mean corrects the double subtraction. Here row means are and the grand mean is , so and .
Construct the feature matrix before centering. The original scalar inputs have mean 0, but the nonlinear squared feature has mean 2/3:
Subtract the same mean row from every observation. Since , double-centering the Gram matrix equals taking the Gram matrix of centered features:
The three row sums are , , and , all zero. Thus . A nonzero row sum often reveals that only row means were removed, rather than completing double centering.
Marking: Feature mean and centered matrix 2; K 1; centered K 1; zero-row-sum check 1.
(b) [4]
The candidate vectors have a reason. Centering already gives , so the constant vector is a zero-eigenvalue direction. Samples one and three are symmetric around zero, suggesting the antisymmetric vector . Multiplication gives . Next choose a vector perpendicular both to the constant vector and to this antisymmetric one: its endpoints must agree and its entries sum to zero, so take . Its product is . Divide by the respective lengths to obtain unit vectors. Normalizing changes vector length, not the eigenvalue.
Use three mutually orthogonal unit vectors and verify each matrix-vector product:
They form an orthonormal basis of , so no eigenvalue is missing: the spectrum is . The leading eigenvalue is distinct, leaving only a sign ambiguity. Choose and because the third coordinate is positive. Check the trace: .
Marking: Three eigenvalues 2; unit leading eigenvector 1; verification and sign 1.
(c) [4]
Check dimensions before normalization. The three entries of weight samples; they are not an axis in the two-dimensional feature space. Since is , the vector has the right dimension for a feature direction. Its first coordinate is , and its second is . Correct dimension does not mean unit length, so use .
The score is the inner product of centered feature row with : one scalar per sample, stacked into . Here keeps only the first feature, giving . In a general kernel method the features may not be explicitly available, but still computes the same training scores. The length proof below also explains the requirement .
q is a unit vector in observation-index space; w is a direction in feature space. Their dimensions differ. For a positive eigenvalue,
Without division by , the direction has length , scores gain a factor , and their variance doubles. This violates the unit-direction constraint, not just a notation convention. Zero eigenvalues cannot appear in this denominator.
Marking: Unit-length proof 2; w and scores 1; consequence of missing normalization 1.
(d) [4]
Keep three quantities distinct. The kernel eigenvalue 2 is the sum of squared scores; sample variance divides it by ; explained proportion divides retained variance by total variance. Directly, the score mean is zero, giving variance . The feature covariance cross-entry is , and its second diagonal entry is .
Why add the mean back? The vector reconstructs a displacement from the mean, not the original feature. The full reconstruction is . Here it retains the first coordinate exactly and replaces every second coordinate by 2/3, losing only the second feature's deviations. Reconstruction takes place in feature space and need not equal for any real input: is not of the form . The question does not request this inverse mapping.
The specified sample-covariance divisor is n−1=2, not 3:
Reconstruct centered features with the score times the direction, then add the mean back:
Check the error against the discarded kernel eigenvalue , or . Covariance normalization changes eigenvalue magnitudes but not the explained-variance ratio; total squared error is 2/3, not 1/3.
Marking: Sample variance 1; ratio 1; reconstruction and error 2.
Q4. Learned distances and random projections (16)
(a) [4]
Factorization turns a quadratic form into a squared length. The matrix is , , and we may choose a matrix mapping a planar vector to one scalar. The four entries of are , recovering . Positive semidefiniteness requires a nonnegative quadratic form for every ; positive definiteness requires strict positivity for every nonzero . This strictness determines whether distinct points are separated by the distance. Since , the nonzero vector maps to zero, so the rank is one rather than two.
This proves positive semidefiniteness for every h, not by checking individual entries. The second row is twice the first and the first is nonzero, so rank(M)=1. Solving gives the null space below. Its nonzero vectors show that M is not positive definite.
Marking: L1; semidefinite proof 1; rank 1; null space 1.
(b) [3]
Transform the coordinates before measuring distance. By definition, . The distinct planar points and both map to 2 on the line, giving distance zero: the rank-deficient map collapses a direction. Adding requires and adds times Euclidean squared length in every original direction. The final is a squared distance; the distance itself is .
Distinct u and v have zero distance, so this is a pseudometric, not a metric on the entire plane. The failing property is separation, not symmetry or nonnegativity. Adding restores strict positivity in every nonzero direction:
Since lies in the original null space,
Previously collapsed directions regain positive length; the positive-definite quadratic form defines a genuine metric.
Marking: Three distances 1; pseudometric with reason 1;5τ and positive-definite reason 1.
(c) [3]
The matrix is random; this vector is fixed. Fix , draw , and obtain . Expectation refers to repeated matrix draws. Expanding one squared coordinate gives
Independence and zero means give , whereas . Thus each output coordinate receives, on average, of the original squared length; summing coordinates restores the original squared length. This proves an expectation of the squared norm only. One cannot move a square root through expectation and conclude .
Write the ℓth projected coordinate as . Zero means give ; independence eliminates cross terms. With entry variance 1/k,
Entry variance 1 would instead give . An expectation identity alone does not bound the error of every draw; part(d) adds a concentration assumption.
Marking: Coordinate mean/variance 1; independence removing cross terms 1; sum over rows 1.
(d) [6]
Moving from one pair to all pairs costs a pair count. For a fixed pair set . The supplied single-direction bound controls . Failure of any pair defeats the simultaneous requirement, so the bad event is a union, not an intersection. All pairs use the same ; their success probabilities cannot simply be multiplied as though independent.
For and , the intermediate logarithmic inequality is , hence . Check the sign when rearranging, then divide by the positive number . Dimension is integer, so round upward to meet the threshold. The guarantee concerns squared distances. For ordinary distances the factors become and ; do not copy squared-distance factors without explanation.
There are at most index pairs. A duplicate-point difference is zero and never fails, so keeping all pairs is still a valid upper bound. Let each bad event mean relative squared-distance error above ε. The union bound needs no independence between these events:
Require this to be at most δ, take natural logarithms, and rearrange. Since k is an integer, a sufficient condition is:
Then, with probability at least , the same random matrix simultaneously gives
This is a sufficient bound, not the necessary minimum dimension. Even if it exceeds d, that alone does not prove all dimensionality reduction impossible. Two quantifiers matter: probability at least still permits failed draws, and the point set must be fixed before drawing R. If , every linear map has a nonzero , giving for . Therefore one such map cannot preserve all distances of the entire ambient space.
Marking: Pair count and union bound 2; sufficient dimension 2; possible failed draws 1; whole-space null-space contradiction 1.
Q5. One complete Gaussian EM iteration (14)
(a) [4]
What does the E-step ask? Each is a one-dimensional observation. Each of the two components has a weight , mean , and variance ; the unobserved quantity is the component that generated each observation. The responsibility is the conditional probability of component after observing , not the Gaussian density itself. Bayes' formula gives
Rows of index observations and columns index components. A row shares one denominator: that observation's total mixture density. Every parameter here is old; do not update a mean after computing just one row. The old means are −2 and 2, so distances are zero to the matching mean and four to the other mean. Equal old variances let the common factor cancel, but the unequal priors cannot cancel. In row two the denominator is , giving first responsibility .
Let the old common variance be and the density prefactor be . Being 4 away from a component mean multiplies its density by
The density rows are therefore and . Multiply by the unequal old priors before normalizing. At x=−2 the unnormalized values are ; at x=2 they are . Thus
Each row sums to 1. The first observation lies exactly at the first mean but has responsibility only 1/2: the second component’s larger prior cancels its smaller density. Nearest-mean hard assignment would miss this distinction.
Marking: Exponential density ratio 1; using priors 1; each responsibility row 1.
(b) [6]
Why does the M-step use two different denominators? The E-step distributes one observation's unit probability across a row; the M-step collects each component's share down a column. Thus is an effective component sample size. The weight divides by the total count , whereas the mean and variance divide by that component's own . Normalizing the first column gives observation weights ; the second gives . This also explains why both new means remain within .
Compute the second variance directly too. Around the new mean , the deviations are and . The weighted squared sum is ; divide by to obtain . Do not divide by two or retain the old center 2.
The second-moment shortcut follows by expanding . At the new mean, , so division by leaves the weighted second moment minus . Equal old variances are an initialization, not a constraint that the two updated variances must remain equal.
Keep all responsibilities fixed during this M-step. Column sums give effective sample counts, which need not be integers but sum to 2:
Divide each responsibility-weighted sum of observations by its own effective count:
Both observations have squared value 4, so each normalized weighted second moment is 4. Subtract the new mean squared to obtain the variance:
This is a shortcut for, not a change to, the variance definition:
For component 1 the deviations are . Their weighted squared sum is ; division by 7/10 gives 160/49. Three consistency checks recover total probability, the observed mean, and the observed second moment:
Marking: Effective counts and weights 2; two means 2; two variances 2. Preserve method credit after an isolated arithmetic error.
(c) [2]
Turn “maximize likelihood” into a derivative test. Write . Then . Here and the denominator is positive: the derivative is positive for and negative above it, so the stationary point is indeed a maximum. If , these updates cannot simply divide by it. If , a zero-variance boundary degeneracy may arise, so the positive-variance conclusion needs conditions. Neither problem occurs here because both columns have positive responsibilities and the two observations differ.
The M-step maximizes a weighted log likelihood with responsibilities fixed. For a positive variance parameter v, its relevant terms are:
Thus the denominator is , not an unbiased-sample correction . Here , so mechanically dividing by could even yield a negative variance. The mean is also optimized in this M-step, so deviations are around the new mean, not the old−2 or 2.
Marking: Maximum-likelihood denominator 1; new mean and reason 1.
(d) [2]
Sum over components before taking each observation's logarithm. An observation can come from either component, so its density is the weighted sum of component densities. Independence makes the joint density of two observations a product of two mixture densities; taking its logarithm produces the sum below. Do not interchange the logarithm and the component sum. The E-step uses the old posterior to make an auxiliary lower bound touch the observed log-likelihood at the old parameters. The M-step raises this fixed-responsibility bound, so the new observed log-likelihood cannot be lower. This is soft EM's improvement mechanism, not a guarantee of finding the best clustering in one update. Recompute responsibilities using all new parameters only in the next round.
The inequality holds when the E- and M-steps are executed correctly and the updates are defined. It concerns the observed mixture log likelihood, not a maximum component density. It guarantees neither a unique global optimum nor correct labels nor identical outcomes from different initializations. Swapping component labels preserves the mixture density; unconstrained Gaussian mixtures can also have singular behavior as variances approach zero. Update all specified parameters rather than only one component.
Marking: Correct objective and monotonicity 1; at least one valid limitation 1.
Q6. Mean-shift and a density hierarchy (13)
(a) [4]
There are two kinds of positions: a moving query and fixed observations. Only moves; the reference set stays unchanged. The flat kernel tests , without assigning larger weights to nearer points. From 4 the five distances are 4,3,2,0,4, so select only 2 and 4 and average to . From 3 select 1,2,4 and average to . A smaller movement alone does not prove convergence: check the next neighborhood and average again.
The flat kernel gives equal weights to original observations within the closed radius 2. Therefore each update is their arithmetic mean:
At position 3, observation 1 is exactly at the radius 2 boundary and must be included. At 7/3 the distances to 0,1,2,4,8 are , confirming the same selected neighborhood and the fixed point . Do not replace the reference observation 4 by the moved position 3: the reference sample stays fixed.
Marking: Three neighborhoods and updates 3; explicit fixed-point check 1.
(b) [4]
This subpart uses a new four-point dataset, not part (a)'s five points. Here ; subscripts are indices, not data values. A core distance is the smallest radius around the point covering three observations, including itself. From , distances are 0 to itself, 1 to 0, 3 to 4, and 4 to 5; the third entry is therefore 3. Each edge then takes . For example, edge (1,4) gives , and edge (2,3) gives .
Include self-distance zero before selecting the third distance:
For example, the ordinary distance for(1,2) is 1, but mutual reachability is . This encodes the density requirements at both endpoints. It is the maximum of three quantities, not their sum; do not exclude self and then retain the same neighbor index.
Marking: Four core distances 2; six edge weights 2.
(c) [3]
A spanning tree must be connected and cycle-free. A tree on four vertices has exactly three edges, but simply taking the three smallest edges may form a cycle among three vertices and leave the fourth disconnected. Kruskal checks whether each candidate edge's endpoints are already in the same connected component; if so, skip it. After (2,3), the components are . After (1,2), they are . Edge (1,3) now stays inside one component, whereas (2,4) joins two components and is accepted.
Sort by weight, then by the specified lexicographic tie rule:
Select(2,3), then(1,2). Skip(1,3), which closes a cycle with the first two edges. Select(2,4); all four vertices are now connected:
In original values these edges join(1,4),(0,1),(1,5). Without a tie rule, other equal-weight MSTs could be valid, but this question supplies a rule and must follow it.
Marking: Ordering and cycle skip 1; selected edges 1; total weight 1.
(d) [2]
Thresholding removes graph edges; it is not grouping adjacent values by ordinary gaps. Retention depends on mutual-reachability weight being at most 3. Although 0 and 1 are only one unit apart, their edge weight is 4 and the edge is removed. Isolated vertices are also connected components, so include both singletons. A connected component is a graph object at this threshold; a final cluster or noise label depends on later algorithmic rules. These names are not interchangeable.
Only edge(2,3) survives the weight-at-most 3 cut. The components are:
This is one threshold slice of a density hierarchy. HDBSCAN still needs hierarchy condensation based on parameters such as minimum cluster size and a final stability-based selection. Those choices are not given. The singletons cannot be declared final clusters or noise solely from this slice.
Marking: Components 1; incomplete condensation/stability/final selection 1.
Q7. Soft regions and median centers (6)
(a) [3]
A boundary is where two sites are equally close. Between 0 and 10, gives . After inserting 3, its boundary with 0 is , and with 10 is . Retain the old regions from before insertion when taking overlaps with the new interval; using the updated old regions would leave disjoint interiors. By definition, , giving and . Both denominators are the same new-interval length.
The old sites 0 and 10 have midpoint 5. The new site 3 has boundaries at its midpoints with 0 and 10:
The weights are nonnegative and sum to 1. Shared endpoints have length zero and do not affect the answer. Although old regions are unbounded, the new interval and its overlaps are finite; no infinite-length ratio is involved. These are overlap weights, not ratios of distances to sites.
Marking: Old boundary and new interval 1; two overlaps 1; normalized weights 1.
(b) [3]
Identify the distance and the allowed centers first. The objective is a sum of absolute distances, not squared distances. A continuous center may be any real , whereas a medoid must be one of . First find all continuous minimizers, then intersect with the allowed observations. For , and , so left and right changes cancel as moves. Equality in the two paired lower bounds requires and respectively; their intersection gives the full answer. Squared distances would change both objective and derivative. The mean 5.5 happens to lie in this median interval, but that coincidence does not make the two rules generally identical.
For every c in[2,9], expand the signs to get the same value:
To prove global optimality and find all optimizers, pair endpoints and apply the triangle inequality:
Their sum is at least 18. Both equalities hold exactly when c belongs to[2,9]. Thus all unrestricted one-median centers form[2,9]; restricting to observed points gives exactly the two one-medoids 2 and 9. For an even sample, the midpoint of the middle observations is one minimizer, not the only one.
The L1 objective separates by coordinate, so coordinatewise medians minimize it. Euclidean lengths couple coordinates through square roots; their total is minimized by a geometric median, not generally coordinatewise medians. For points(0,0),(2,0),(0,2), the coordinatewise median is(0,0) with total Euclidean distance 4. At(1/2,1/2), the total is , disproving that rule for Euclidean distance. The lower-bound proof and this counterexample clarify the result; they are not extra required proof tasks.
Marking: All continuous centers 1; all medoids 1; distinguish L1 from Euclidean 1.
After correction: Q1—check chain rules and loss versus penalty; Q2—tabulate residual, selection, coefficients and prediction, retaining the original y for OMP; Q3—check zero row sums and distinguish kernel eigenvalues from feature-space variance; Q4—state the fixed point set, random draw, all-pairs event and failure probability; Q5—separate row responsibility normalization from column effective counts; Q6—check fixed reference points, closed boundaries and self-inclusion; Q7—state the distance and allowed center set before invoking a median rule.