Почему порты в режиме INPUT сами по себе меняют сигнал?

Поменяй на INPUT_PULLUP и попробуй. От наводок избавишься.