You cannot "cancel" or "reverse" bitcoin transactions once sent.
They will either confirm... or if they remain unconfirmed for a long time (could be as long as 14 days depending on how any given node is configured), the transaction will drop from the mempool and be like it never existed.
Your only option at this point, is to attempt a "double spend". This can be technically quite difficult... as you will need to create a transaction that spends the same inputs, but sends them to a different address with a MUCH larger fee (to try and get a miner to confirm it first) NOTE: your wallet probably won't let you do this... you'll need to do it manually.
The real trouble comes with attempting to broadcast this new transaction... most nodes will reject it as a double spend attempt, so you need to find nodes that currently don't have your transaction and broadcast via that node... or contact a miner directly and see if they would be willing to add your transaction directly to a block (most likely for a fee
)