デコーダは全く翻訳されていない空の初期仮説から探索を始める.そして,ある仮説において1つのフレーズを選択し,翻訳モデルのフレーズ対を用いて,新しい仮説を作り,そのステップを繰り返す.このとき,翻訳候補の確率を計算し,その翻訳候補のスコアとする.1つのフレーズの選択では,原言語の文で未選択の単語列から語の部分文の文末側に加えていく.仮説は優先順位つきキューで管理し,原言語の文の全ての単語を選択したら探索は終了する.
しかし,文が長くなると,用いるフレーズ対の組み合わせは膨大な数になる.そのため,全ての翻訳候補を探索し,最適な出力文を決定することは困難である.そこで,現在,計算量を減らす手法として,ビームサーチ法とマルチスタック法を組み合わせた手法が一般的に用いられている.
代表的なデコーダにmoses[7]がある.mosesはいくつかのパラメータを設定することができる.