Self-Improved Learning for Scalable Neural Combinatorial Optimization