in src/dataset.ts [190:207]
export function classifyXORData(numSamples: number, noise: number):
Example2D[] {
function getXORLabel(p: Point) { return p.x * p.y >= 0 ? 1 : -1; }
let points: Example2D[] = [];
for (let i = 0; i < numSamples; i++) {
let x = randUniform(-5, 5);
let padding = 0.3;
x += x > 0 ? padding : -padding; // Padding.
let y = randUniform(-5, 5);
y += y > 0 ? padding : -padding;
let noiseX = randUniform(-5, 5) * noise;
let noiseY = randUniform(-5, 5) * noise;
let label = getXORLabel({x: x + noiseX, y: y + noiseY});
points.push({x, y, label});
}
return points;
}