How to change flyspell keybinding in Emacs

I use Ctrl - Alt - i to move the cursor to up window, actually I use ijkl to move cursor to different window in four directions.

 
(global-set-key "\C-\M-i" 'windmove-up)
(global-set-key "\C-\M-k" 'windmove-down)
(global-set-key "\C-\M-j" 'windmove-left)
(global-set-key "\C-\M-l" 'windmove-right)
 

When I enabled flyspell-mode, the Ctrl - Alt - i is overwritten. It was used to correct misspelled words, but I never use it.

Here is a quick way to change the keybindings. Execute M-x ielm and open ELISP console, and remove the current hook

 
(remove-hook 'flyspell-mode-hook (first flyspell-mode-hook))
 

And then update the hook with our global keybinding:

 
(add-hook 'flyspell-mode-hook
  (lambda ()
   (define-key flyspell-mode-map  "\C-\M-i" 'windmove-up)
  )
)
 

You don't have to restart Emacs to make the keybinding changes to take effect. After the execution of ELISP code, your global keybinding already restored.