Dalam statistika, algoritma ekspektasi-maksimisasi (bahasa Inggris:expectation-maximization algorithmcode: en is deprecated ) atau algoritma EM (bahasa Inggris:EM algorithmcode: en is deprecated ) adalah metode berulang yang dipakai untuk mencari pendekatan nilai kemungkinan maksimum (bahasa Inggris:maximum likelihoodcode: en is deprecated ) dan Maximum a Posteriori (MAP) dari parameter dalam sebuah model statistik, di mana modelnya bergantung pada variabel laten yang tidak diketahui.
Algoritma ekspektasi-maksimasi termasuk algoritma pengklasteran karena berupa basis perhitungan probabilitas.[1] Algoritma ini secara intuitif memiliki dua tahap, yaitu tahap ekspektasi dan tahap maksimisasi. Tahap ekspektasi merupakan tahap yang menentukan perhitungan ekspektasi sehingga diperoleh nilai estimasi parameternya,[2] sedangkan tahap maksimalisasi merupakan tahap yang mengulangi perhitungan parameter sehingga memaksimalkan nilai probabilitas.[1]
Penerapan algoritma ekspektasi-maksimisasi sangatlah luas, salah satunya adalah pembelajaran mesin, dimana algoritma ini dipakai sebagai metode pengelompok data.[3][4][5] Selain itu, algoritma ekspektasi-maksimisasi juga memiliki penerapan lainnya, seperti pengenalan ucapan, dan analisis faktor.