Reusing the same weights across multiple layers or iterations to reduce model size and memory overhead.