Strategic Classification With Externalities
Authors: Safwan Hossain, Evi Micha, Yiling Chen, Ariel Procaccia
ICLR 2025 | Venue PDF | Archive PDF | Plain Text | LLM Run Details
| Reproducibility Variable | Result | LLM Response |
|---|---|---|
| Research Type | Experimental | We experimentally validate the possibility of training classifiers to be strategy-aware with respect to k agents misreporting to PNE. We use a 2-class synthetic dataset generated by scikit-learn and use the cvxpylayers library to compute PNE and update gradients (Pedregosa et al., 2011; Agrawal et al., 2019). We use a linear classifier that returns the probability of assigning the positive class. Agent utilities are computed as per Equation (1), and we use the ℓ2 norm square for the cost c(xi, x i) = α||xi x i||2 2 and the convex externality discussed in Section 3: t(xi, x i, xj, x j) = β(||x i xi||2+||x j xj||2)2, with T(xi, x i, X, X ) = β k 1 P t(xi, x i, xj, x j); we normalize by (k 1) to make the β term interpretable since each agent face externality from (k 1) others. During training, we sample a set of k agents from the training set, compute their PNE under the current classifier, use these PNE features to determine the outcome and loss, and then update gradients. We denote this as strategic training, and the corresponding loss curve is in red in figure 2. After each epoch, we run our model on the validation/test dataset, wherein we carry out the same procedure: sample k agents, compute PNE, and then classify. The resulting loss is plotted in blue in Figure 2. We ablate this experiment over different values of k and different strengths of cost and externality. |
| Researcher Affiliation | Academia | 1 Harvard University 2 University of Southern California EMAIL, EMAIL |
| Pseudocode | No | The paper describes the methodology and proofs through mathematical formulations and textual descriptions, but does not contain any structured pseudocode or algorithm blocks. |
| Open Source Code | No | The paper does not contain an explicit statement about releasing source code for the described methodology, nor does it provide a link to a code repository. It mentions using 'scikit-learn' and 'cvxpylayers' libraries, but these are third-party tools, not the authors' own implementation. |
| Open Datasets | Yes | We use a 2-class synthetic dataset generated by scikit-learn |
| Dataset Splits | No | During training, we sample a set of k agents from the training set... After each epoch, we run our model on the validation/test dataset... The text implies the use of training, validation, and test sets, but does not provide specific percentages, counts, or a detailed splitting methodology. |
| Hardware Specification | No | The paper describes the experimental setup in Section 6 'Experiments' but does not specify any hardware details such as GPU/CPU models, memory, or cloud computing resources used. |
| Software Dependencies | No | We use a 2-class synthetic dataset generated by scikit-learn and use the cvxpylayers library to compute PNE and update gradients (Pedregosa et al., 2011; Agrawal et al., 2019). The paper mentions 'scikit-learn' and 'cvxpylayers' but does not specify their version numbers. |
| Experiment Setup | Yes | We use a linear classifier that returns the probability of assigning the positive class. Agent utilities are computed as per Equation (1), and we use the ℓ2 norm square for the cost c(xi, x i) = α||xi x i||2 2 and the convex externality discussed in Section 3: t(xi, x i, xj, x j) = β(||x i xi||2+||x j xj||2)2, with T(xi, x i, X, X ) = β k 1 P t(xi, x i, xj, x j); we normalize by (k 1) to make the β term interpretable since each agent face externality from (k 1) others. During training, we sample a set of k agents from the training set, compute their PNE under the current classifier, use these PNE features to determine the outcome and loss, and then update gradients. We denote this as strategic training... We ablate this experiment over different values of k and different strengths of cost and externality. |