Deep Learning-ийг бие даан сурах нөөцүүдийн багц: Үнэгүй ном, хичээл, хэрэгсэл
Deep Learning-ийг бие даан сурах нөөцүүдийн багц: Үнэгүй ном, хичээл, хэрэгсэл
Сүүлийн жилүүдэд хиймэл оюун ухааны салбарын чухал хэсэг болох Deep Learning нь гайхалтай амжилт олсон. Зургийг таних, байгалийн хэл боловсруулах, хүчжүүлсэн сургалт гэх мэт бүхий л салбарт Deep Learning нь хүчтэй чадвараа харуулж байна. Гэсэн хэдий ч Deep Learning-д шинээр хөл тавих эсвэл гүнзгийрүүлэн суралцахыг хүсч буй хөгжүүлэгчдийн хувьд асар их хэмжээний материал, төвөгтэй ойлголтуудтай тулгараад юунаас эхлэхээ мэдэхгүй байх нь элбэг.
Энэхүү нийтлэл нь X/Twitter дээрх алдартай хэлэлцүүлэгт үндэслэн ном, хичээл, хэрэгсэл зэрэг үнэгүй Deep Learning-ийг бие даан сурах нөөцүүдийг сонгон авч, уншигчдад тодорхой, практик сургалтын замыг санал болгож, Deep Learning-ийн гол ур чадварыг хурдан эзэмшихэд туслах зорилготой юм.
Нэг. Үнэгүй номын нөөц: Онолын үндэс ба практик заавар
Онолын үндэс нь Deep Learning-ийн суурь юм. Математик болон машин сургалтын бат бөх суурийг эзэмших нь Deep Learning-ийг ойлгож, хэрэгжүүлэхэд чухал ач холбогдолтой. Доорх нь үндсэн онолоос эхлээд практик хэрэглээ хүртэлх бүхий л асуудлыг хамарсан хэд хэдэн үнэгүй номыг санал болгож байна.
1. Машин сургалтыг ойлгох (Understanding Machine Learning)
- Холбоос:
https://cs.huji.ac.il/~shais/UnderstandingMachineLearning/understanding-machine-learning-theory-algorithms.pdf - Онцлог: Энэхүү ном нь машин сургалтын онолын үндсийг гүнзгийрүүлэн судалж, ерөнхийлөх онол, PAC сургалт, VC хэмжээс гэх мэт чухал ойлголтуудыг хамардаг. Энэ нь зөвхөн сурах бичиг төдийгүй машин сургалтын онолд сонирхолтой уншигчдад тохиромжтой.
- Санал болгох шалтгаан: Онол ба алгоритмыг хоёуланг нь онцолж, машин сургалтын бат бөх мэдлэгийн системийг бий болгоход тусална.
2. Машин сургалтын математик (Mathematics for Machine Learning)
- Холбоос:
https://mml-book.github.io/book/mml-book.pdf - Онцлог: Энэхүү ном нь машин сургалтад шаардлагатай математикийн мэдлэгийг системтэйгээр танилцуулж, шугаман алгебр, математик анализ, магадлалын онол зэргийг багтаасан болно. Энэ нь математикийн ойлголтыг машин сургалтад хэрэглэхэд онцгой анхаарал хандуулж, уншигчдад ойлгоход нь туслахын тулд олон тооны жишээг ашигладаг.
- Санал болгох шалтгаан: Математикийн суурь мэдлэг султай уншигчдын хувьд энэ нь ховор тохиолдлын сурах бичиг бөгөөд математикийн мэдлэгийн дутагдлыг үр дүнтэй нөхөх боломжтой.
3. ML алгоритмын математик анализ (Mathematical Analysis of ML Algorithms)
- Холбоос:
https://tongzhang-ml.org/lt-book/lt-book.pdf - Онцлог: Төрөл бүрийн машин сургалтын алгоритмын математикийн зарчмуудыг гүнзгийрүүлэн шинжилж, гүдгэр оновчлол, санамсаргүй градиент бууралт зэрэг чухал агуулгыг хамардаг. Энэхүү ном нь математикийн тодорхой суурьтай, алгоритмын зарчмуудыг гүнзгийрүүлэн ойлгохыг хүсдэг уншигчдад тохиромжтой.
- Санал болгох шалтгаан: Математикийн шинжилгээгээр дамжуулан алгоритмын мөн чанарыг илүү гүнзгий ойлгож, алгоритмыг оновчтой болгох, шинэчлэх үндэс суурийг тавьж болно.
4. Deep Learning-д орох нь (Understanding Deep Learning)
- Холбоос:
https://udlbook.github.io/udlbook/ - Онцлог: Энэхүү номыг Deep Learning-ийн салбарын мэргэжилтнүүд бичсэн бөгөөд Deep Learning-ийн үндсэн ойлголт, загвар, алгоритмыг системтэйгээр танилцуулдаг. Энэ нь Convolutional Neural Network (CNN), Recurrent Neural Network (RNN) болон Transformer гэх мэт Deep Learning-ийн нийтлэг загваруудыг хамардаг.
- Санал болгох шалтгаан: Агуулга нь иж бүрэн, ойлгомжтой бөгөөд Deep Learning-д шинээр хөл тавихад тохиромжтой.
5. Машин сургалтын үндэс (Foundations of Machine Learning)
- Холбоос:
https://cs.nyu.edu/~mohri/mlbook/ - Онцлог: Хяналттай сургалт, хяналтгүй сургалт, хүчжүүлсэн сургалт гэх мэт машин сургалтын үндсэн мэдлэгийг хамардаг. Энэхүү ном нь машин сургалтын төрөл бүрийн алгоритмын зарчим, хэрэглээнд анхаарлаа хандуулдаг.
- Санал болгох шалтгаан: Агуулга нь өргөн хүрээтэй бөгөөд машин сургалтын бүрэн мэдлэгийн системийг бий болгоход тохиромжтой.
- Холбоос:
https://algorithmsbook.com - Онцлог: Машины сургалтын алгоритмуудыг тайлбарлахад анхаарлаа хандуулсан бөгөөд үндсэн шугаман регрессээс эхлээд дэвшилтэт гүн сургалтын алгоритмууд хүртэл дэлгэрэнгүй танилцуулга, кодын жишээтэй.
- Зөвлөх шалтгаан: Дадлагад анхаарлаа хандуулдаг, кодоор дамжуулан алгоритмыг сурахад тохиромжтой.
7. Баталгаажуулах сургалт (Reinforcement Learning)
- Холбоос:
https://andrew.cmu.edu/course/10-703/textbook/BartoSutton.pdf - Онцлог: Баталгаажуулах сургалтын салбарын сонгодог сурах бичиг бөгөөд баталгаажуулах сургалтын үндсэн ойлголт, алгоритм, хэрэглээг системтэйгээр танилцуулдаг.
- Зөвлөх шалтгаан: Агуулга нь эрх мэдэлтэй бөгөөд баталгаажуулах сургалтыг судлахад зайлшгүй шаардлагатай ном юм.
Хоёр. Стэнфордын их сургуулийн үнэгүй гүн сургалтын курс: Эхлэлээс ахисан түвшин хүртэл
Стэнфордын их сургууль хиймэл оюун ухааны салбарт нэр хүндтэй бөгөөд тэдний санал болгож буй үнэгүй онлайн курсууд нь гүн сургалтын бүхий л талыг хамардаг. Доорх нь зөвлөж болох зарим курс байна:
- CS221 - Хиймэл оюун ухаан (Artificial Intelligence): Хиймэл оюун ухааны тойм курс бөгөөд гүн сургалтыг судлахад үндэс суурийг тавьдаг.
- CS229 - Машины сургалт (Machine Learning): Сонгодог машины сургалтын курс бөгөөд машины сургалтын төрөл бүрийн алгоритмын зарчим, хэрэглээг хамардаг.
- CS230 - Гүн сургалт (Deep Learning): Гүн сургалтын эхлэлийн курс бөгөөд гүн сургалтын үндсэн ойлголт, загвар, алгоритмыг танилцуулдаг.
- CS234 - Баталгаажуулах сургалт (Reinforcement Learning): Баталгаажуулах сургалтын курс бөгөөд баталгаажуулах сургалтын үндсэн ойлголт, алгоритм, хэрэглээг хамардаг.
- CS231N - Конволюцийн мэдрэлийн сүлжээ ба харааны таних (Convolutional Neural Networks for Visual Recognition): Конволюцийн мэдрэлийн сүлжээ болон компьютерийн харааны салбарт хэрэглэхэд анхаарлаа хандуулдаг.
- CS336 - Тэгээс эхлэн том хэлний загвар (LLM from Scratch): Том хэлний загварыг бүтээн байгуулах, сургах үйл явцыг танилцуулдаг.
Суралцах зөвлөмж:
- Тохиромжтой курс сонгох: Өөрийн үндэс суурь, сонирхолд тулгуурлан тохиромжтой курс сонгох.
- Гэрийн даалгавраа сайтар хийх: Курсын даалгавар нь мэдлэгийг бататгах чухал хэсэг тул сайтар хийх хэрэгтэй.
- Идэвхтэй хэлэлцүүлэгт оролцох: Курсын хэлэлцүүлэгт идэвхтэй оролцож, бусад суралцагчидтай туршлага, сэтгэгдлээ хуваалцах.
Гурав. Хэрэгсэл ба арга техник: Суралцах үр ашгийг дээшлүүлэх
Онолын болон курсын сургалтаас гадна зарим хэрэгсэл, арга техник нь гүн сургалтыг илүү үр дүнтэй сурахад тусална.
1. Google Colab эсвэл Kaggle Kernel ашиглах:
- Google Colab болон Kaggle Kernel нь гүн сургалтын кодыг ажиллуулахад хялбар үнэгүй GPU нөөцийг хангадаг.
- Тэд мөн онлайнаар засварлах, хамтран ажиллах боломжийг дэмждэг бөгөөд бусадтай хамтран суралцахад хялбар болгодог.
Кодын жишээ (TensorFlow ашиглан Google Colab дээр энгийн CNN сургах):
import tensorflow as tf
# Загвар тодорхойлох
model = tf.keras.models.Sequential([
tf.keras.layers.Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)),
tf.keras.layers.MaxPooling2D((2, 2)),
tf.keras.layers.Flatten(),
tf.keras.layers.Dense(10, activation='softmax')
])
# Загвар эмхэтгэх
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
# MNIST өгөгдлийн санг ачаалах
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data()
x_train = x_train.reshape(-1, 28, 28, 1) / 255.0
x_test = x_test.reshape(-1, 28, 28, 1) / 255.0
# Загвар сургах
model.fit(x_train, y_train, epochs=5)
# Загвар үнэлэх
model.evaluate(x_test, y_test, verbose=2)
2. TensorBoard ашиглаж сурах:
- TensorBoard бол TensorFlow-ийн хангадаг дүрслэх хэрэгсэл бөгөөд сургалтын явцыг хянах, загварыг засахад тусалдаг.
- TensorBoard-ээр дамжуулан та загварын алдагдлын функц, нарийвчлал зэрэг үзүүлэлтүүд, мөн загварын бүтэц, жингийн тархалтыг бодит цаг хугацаанд харж болно.
3. Нээлттэй эхийн төсөлд оролцох:
- Нээлттэй эхийн төсөлд оролцох нь гүн сургалтыг судлах үр дүнтэй арга юм.
- Нээлттэй эхийн төсөлд оролцох замаар та бодит инженерийн туршлага олж, гүн сургалтын бодит хэрэглээний сорилт, шийдлийг ойлгож болно.
Дүгнэлт:
Гүн сургалт бол сорилт, боломжоор дүүрэн салбар юм. Онолын мэдлэгийг системтэйгээр судалж, төсөл хэрэгжүүлж, нээлттэй эхийн нийгэмлэгт оролцсоноор та гүн сургалтын гол ур чадварыг эзэмшиж, хиймэл оюун ухааны салбарт амжилт гаргах боломжтой.# Моделийг эмхэтгэх model.compile(optimizer='adam', loss='sparse_categorical_crossentropy', metrics=['accuracy'])
MNIST өгөгдлийн санг ачаалах
(x_train, y_train), (x_test, y_test) = tf.keras.datasets.mnist.load_data() x_train = x_train.reshape(-1, 28, 28, 1).astype('float32') / 255.0 x_test = x_test.reshape(-1, 28, 28, 1).astype('float32') / 255.0
Моделийг сургах
model.fit(x_train, y_train, epochs=2)
Моделийг үнэлэх
loss, accuracy = model.evaluate(x_test, y_test, verbose=0) print('Loss: %.2f' % loss) print('Accuracy: %.2f' % accuracy)
**2. Визуализацийн хэрэгслийг ашиглах:**
* TensorBoard ба Visdom зэрэг визуализацийн хэрэгслүүд нь моделийн бүтэц ба сургалтын явцыг илүү сайн ойлгоход тусална.
* Алдааны функц, идэвхжүүлэлтийн утга зэргийг харуулах замаар моделийн үйлдлийг илүү тодорхой ойлгож болно.
**3. Нээлттэй эхийн төсөлд оролцох:**
* Нээлттэй эхийн төсөлд оролцох нь гүнзгий суралцах ур чадварыг дээшлүүлэх үр дүнтэй арга юм.
* Нээлттэй эхийн кодыг уншиж, өөрчлөх замаар програмчлалын сайн туршлага, дизайны санааг сурч болно.
**4. Тасралтгүй суралцах, дадлага хийх:**
* Гүнзгий суралцах нь хурдацтай хөгжиж буй салбар бөгөөд шинэ мэдлэг, технологийг байнга сурах шаардлагатай.
* Бодит төслүүдээр дамжуулан олж авсан мэдлэгээ бодит асуудлыг шийдвэрлэхэд ашиглах нь гүнзгий суралцахыг жинхэнэ утгаар нь эзэмшихэд тусална.
**5. NLP-ийн Transformer архитектурыг судлах:**
* Jay Alammar’s guide-ийг гүнзгий судлах (тодорхой агуулгыг холбогдох нийтлэлээс хайх шаардлагатай).
* FFN (Feed Forward Network), LayerNorm (Layer Normalization) ба Residuals (үлдэгдэл холболт)-ын ойлголтыг ойлгох.
* Transformer Encoder-Decoder block-ийг эхнээс нь хэрэгжүүлэхийг оролдох.
**6. Хувьцааны арилжаанд хэрэглэх аргыг судлах (зөвхөн лавлагаа болгох, эрсдэлийг өөрөө хариуцна):**
* Хувьцаа сонгоход гүнзгий суралцах аргыг хэрхэн ашиглах талаар ойлгох.
* Анхааруулга: Энэ төрлийн хэрэглээ нь санхүүгийн эрсдэлтэй тул болгоомжтой үнэлж, ажиллах шаардлагатай.
**7. Салбарын мэдээллийг ажиглах:**
* DeepLearningAI зэрэг байгууллагын хуваалцсан мэдээллийг ажиглаж, гүнзгий суралцах салбарын хамгийн сүүлийн үеийн хөгжлийг ойлгох.
## Дөрөв. Суралцах явцад тулгарах бэрхшээлийг даван туулах
Гүнзгий суралцахыг сурах явцад дараах бэрхшээлүүд тулгарч болно:
* **Ойлголт төвөгтэй:** Гүнзгий суралцах нь математик, алгоритмын олон төвөгтэй ойлголтыг агуулдаг.
* **Нөөц хомс:** Тооцоолох нөөц, өгөгдлийн нөөц дутмаг.
* **Удирдамж дутмаг:** Мэргэжлийн удирдамж, дэмжлэг дутмаг.
Эдгээр бэрхшээлийг даван туулахын тулд дараах арга хэмжээг авч болно:
* **Суралцах зорилгыг задлах:** Төвөгтэй суралцах зорилгыг жижиг, удирдаж болохуйц зорилгод хуваах.
* **Үнэгүй нөөцийг хайх:** Энэхүү нийтлэлд санал болгосон үнэгүй ном, хичээл, хэрэгслийг ашиглах.
* **Суралцах нийгэмлэгт нэгдэх:** Гүнзгий суралцах нийгэмлэгт нэгдэж, бусад суралцагчидтай туршлагаа хуваалцаж, тусламж хүсэх.
DeepLearningAI X/Twitter дээр хэлсэнчлэн: “Every AI expert once Googled simple questions. Every beginner felt lost. If you’re learning and trying, you belong in the AI community.” Аливаа AI мэргэжилтэн анх энгийн асуултыг Google-ээр хайж байсан. Анхлан суралцагч бүр төөрөлдөж байсан. Хэрэв та суралцаж, оролдож байгаа бол та AI нийгэмлэгт харьяалагдана. Санаж яваарай, AI-ийн мэргэжилтэн бүр анхлан суралцагч байсан бөгөөд төөрөлдөж байсан. Хэрэв та суралцаж, дадлага хийсээр байвал бэрхшээлийг даван туулж, гүнзгий суралцах инженер болж чадна.Дүгнэж хэлэхэд, энэхүү нийтлэл нь ном, хичээл, хэрэгсэл зэрэг гүнзгий сургалтын үнэ төлбөргүй нөөцийг багтаасан болно. Эдгээр нөөц нь танд гүнзгий сургалтанд илүү сайн суралцаж, хиймэл оюун ухааны салбарт амжилт гаргахад тусална гэж найдаж байна. Суралцах нь тасралтгүй үргэлжлэх процесс бөгөөд тасралтгүй хүчин чармайлт, дадлага шаардлагатай гэдгийг санаарай. Амжилт хүсье!





