Azure release pipeline provide Approvals and Gates which give you additional control over the start and completion of the deployment pipeline.
There are some tasks you can use in Gates to check with other automated systems until specific conditions are verified before deploying to deployment stages. So you can check if the init steps you want to run before first target is deployed can be achieved with the options provided in Gates.
Otherwise the steps cannot be run outside a stage.
The workaround is to add an additional agent job(you can name it deploy-init job) to the top of your deployment stages. And run the init steps inside the deploy-init job.(Or you can just add some tasks to run the init steps within the deployment stages).

As above screenshot shows, To add an Agent job(Deploy-init) inside Deployment stage, click the plus + to add tasks to run the init steps. (You can drag and drop the agent jobs to change their order).