Information-theoretic analysis of generalization capability of learning algorithms