fbpx

Өнөөгийн машин сургалтын алгоритмууд нь том хэмжээний өгөгдөлд суурилан загварчлагдаж, янз бүрийн хэрэглээний талбарт өргөн ашиглагдаж байна. Гэсэн хэдий ч бодит амьдрал дээр өгөгдөл ихэвчлэн тэнцвэргүй (imbalanced) байдаг нь загварын гүйцэтгэлийг муутгаж, цөөн тооны (minority) ангиллын өгөгдлийг үл тоомсорлох хандлагыг бий болгодог. Энэхүү нийтлэлд бид өгөгдлийн тэнцвэржилтийн хэрэгцээ, ач холбогдлыг тайлбарлаж, түгээмэл хэрэглэгддэг аргачлал болох SMOTE-ийг дэлгэрэнгүй авч үзнэ.

Өгөгдлийн тэнцвэргүй байдал гэж юу вэ?

Өгөгдлийн тэнцвэргүй байдал (class imbalance) нь машин сургалтын болон статистик загварчлалд тулгардаг нийтлэг асуудлуудын нэг юм. Энэ нь ангилал хийх буюу classification даалгаварт, тухайн өгөгдөлд багтаж буй анги бүрийн жишээний тоо ихээхэн ялгаатай байгаагаар илэрдэг. Тухайлбал, хоёр ангит ангиллын асуудалд нэг ангид хамаарах өгөгдөл нийт өгөгдлийн 90–99% байхад, нөгөө ангид ердөө 1–10% байж болно. Энэхүү хэт тэнцвэргүй байдал нь загварын сургалт, үнэлгээ, хэрэглээний үр дүнд сөргөөр нөлөөлнө.

Жишээ 1: Эрүүл мэндийн өгөгдөл

Хорт хавдрын оношлогооны даалгаварт 95% нь эрүүл хүмүүсийн өгөгдөл, 5% нь өвчтэй хүмүүсийн өгөгдөл байж болно. Ийм нөхцөлд загвар 95% нарийвчлал (accuracy) үзүүлж болох ч энэ нь буруу сэтгэл ханамж төрүүлж, өвчтэй хүмүүсийг оношлоход олон алдаа гаргах магадлал өндөр.

Жишээ 2: Залилах илрүүлэлт (Fraud Detection)

Санхүүгийн салбарт залилах гүйлгээнүүд нь нийт гүйлгээний 0.1–1% орчим л эзэлдэг. Хэрэв загвар зүгээр л “бүгд зүй ёсны гүйлгээ” гэж таамагладаг бол өндөр нарийвчлалтай мэт харагдавч жинхэнэ залилах гүйлгээг илрүүлж чадахгүй.

Өгөгдлийн тэнцвэргүй байдлын төрлүүд

ТөрөлТайлбар
Binary imbalanceХоёр ангит өгөгдөлд анги хоорондын жишээний ялгаа их байх
Multiclass imbalanceОлон ангит өгөгдөлд зарим анги хэт цөөн жишээтэй байх
Within-class imbalanceНэг ангид доторх жишээнүүдийн дэд бүлгүүдийн хуваарилалт жигд бус байх

Сөрөг үр дагавар

  • Буруу нарийвчлалд тулгуурласан дүгнэлт: Accuracy зэрэг ерөнхий үзүүлэлтүүд бодит гүйцэтгэлийг илтгэхгүй.
  • Minority ангийг үл тоомсорлох: Жишээ нь, өвчтэй хүнийг “эрүүл” гэж оношлох нь асар ноцтой үр дагавартай.
  • Bias буюу ялгаварлан гадуурхалт: Зарим ангийн өгөгдөл багасах тусам загвар түүнийг таних чадваргүй болдог.
  • Underfitting/Overfitting эрсдэл: Minority class-ийн өгөгдлийг хангалттай суралцахгүй, эсвэл давтах үед хэт мэдрэг болох магадлалтай.

Тэнцвэргүй өгөгдөлтэй ажиллахад хүндрэлтэй үзүүлэлтүүд

  • Recall (True Positive Rate): Minority ангид анхаарлаа хандуулах хэрэгтэй.
  • Precision-Recall curve: ROC curve-аас илүү бодит дүгнэлт өгч чадна.
  • F1-score: Precision ба Recall-ийн тэнцвэртэй нийлбэрийг харуулна.

Өгөгдлийн тэнцвэржилтийн зорилго

  • Minority ангиллыг илүү төлөөлөхүйц болгох буюу ихэсгэх
  • Загварын гүйцэтгэлийг сайжруулах (Recall, F1-score гэх мэт хэмжигдэхүүнээр)
  • Загварын ерөнхийлөлтийг нэмэгдүүлэх

Тэнцвэржүүлэх аргачлалууд

АргачлалТайлбар
UndersamplingMajority class-ийг багасгах замаар тэнцвэржүүлэлт хийх
OversamplingMinority class-ийг нэмэгдүүлэх (давтах эсвэл synthetic өгөгдөл үүсгэх)
Hybrid methodsХоёуланг хослуулах
Algorithm-level methodsLoss function болон decision threshold өөрчлөх

SMOTE аргачлал

SMOTE гэж юу вэ?

Synthetic Minority Over-sampling Technique (SMOTE) нь 2002 онд Chawla et al. нарын боловсруулсан oversampling арга бөгөөд minority class-д synthetic (хиймэл) жишээ үүсгэх замаар өгөгдлийг тэнцвэржүүлдэг.

Ажиллах зарчим

  1. Minor class-ийн өгөгдлөөс k-nearest neighbors ашиглан хөршүүдийг тодорхойлно.
  2. Санамсаргүй хөршийг сонгоно.
  3. Сонгосон өгөгдөл болон хөршийн хоорондын шугамын дагуу interpolation хийж шинэ synthetic өгөгдөл үүсгэнэ.

Зүүн талын зурагт Class 0 (цэнхэр) болон Class 1 (шар) хоёрын хуваарилалт маш тэнцвэргүй байна.

Баруун талд SMOTE хэрэгжүүлсний дараа Class 1 synthetic өгөгдлөөр нөхөгдөж, хоёр ангилал илүү тэнцвэртэй болсон байна. Synthetic буюу хиймэл өгөгдлийг үүсгэснээрээ бид илүү

SMOTE-ийн давуу болон сул тал

Давуу талСул тал
Давтагдалгүй synthetic өгөгдөл үүсгэдэгNoisy өгөгдлийг synthetic хэлбэрт оруулах эрсдэлтэй
Загварын гүйцэтгэлийг сайжруулдагHigh-dimensional өгөгдөлд үр дүн муутай байж болзошгүй
Өгөгдлийн төлөөллийг бодитой хадгалдагOutlier буюу хэт ялгаатай өгөгдөлтэй ажиллахад эмзэг

Synthetic өгөгдлийн давуу тал нь хиймэл өгөгдлийг ашиглан тодорхой орчинг дуурайлган турших, эсвэл түгээмэл бус тохиолдлууд, дуу чимээтэй (noisy) өгөгдөл дээр туршилт хийх боломжтой. Энэ нь загвар тестлэх, алгоритм оношлох үйл ажиллагааг хялбаршуулдаг. Мөн эрүүл мэнд, санхүү зэрэг хэрэглэгчийн эмзэг өгөгдөл дээр ажилдаг салбаруудад хиймэл өгөгдөл ашигласнаар бодит мэдээллийг задруулахгүйгээр өгөгдлийн орчинг дуурайлган бий болгож болно.

Дүгнэлт

Өгөгдлийн тэнцвэргүй байдал нь машин сургалтын гүйцэтгэлд сөргөөр нөлөөлдөг тул тохирох тэнцвэржүүлэх аргачлалыг ашиглах нь чухал. SMOTE бол хамгийн түгээмэл хэрэглэгддэг oversampling арга бөгөөд өгөгдлийн төлөөллийг synthetic хэлбэрээр тэнцвэржүүлэх боломжийг олгодог. Дараагийн дугаарт бид SMOTE-ийн сайжруулсан хувилбарууд (Borderline-SMOTE, SMOTETomek гэх мэт)-ыг авч үзнэ.

Leave a Reply