Interrupt IN endpoints are intended for data that may arrive at any time, which is why they use polling. The endpoint descriptor can increase the max latency between polls, but the host may poll more often if it wishes.
It does waste bandwidth if there is seldom any data to send; think of a mouse; hours can go by between mouse movements.