Men topgan eng yaxshi 150 ta mashina o'rganish, NLP va Python qo'llanmalar

Ommaviy talabga ko'ra, men ushbu maqolani so'nggi 12 oyning eng so'nggi darsliklari bilan to'ldirdim. Bu erda tekshiring

O'limidan bir necha soat o'tgach Eynshteynning stoli. Manba: HAYoT jurnali

Mashinasozlikning 1959 yildagi boy tarixi bor bo'lsa-da, maydon misli ko'rilmagan darajada rivojlanmoqda. So'nggi maqolada men nima uchun keng sun'iy intellekt maydoni rivojlanib borayotgani va ehtimol bir muncha vaqtga erishishi haqida gaplashdim. MLni o'rganishni istaganlar, buni boshlash juda qiyin bo'lishi mumkin.

Men nomzodlik dissertatsiyasini boshlashga tayyorgarlik ko'rayotganimda Kuzda dastur, men mashinalarni o'rganish va NLP-ning barcha jihatlari bo'yicha yaxshi manbalar uchun Internetni aylanib chiqdim. Odatda, men qiziqarli darslik yoki videoni topaman va bu yana uchta yoki to'rtta darslik yoki videoga olib keladi va men buni bilishdan oldin menda 20 ta yangi materialni ko'rib chiqish kerak. (Boshqa tomondan, Tab Bundler tartibli bo'lishda yordam berdi.)

ML bilan bog'liq 25 dan ortiq "firibgarlik varaqalari" ni topgandan so'ng, men hamma yaxshi narsalarga bog'langan post yaratdim.

Shunga o'xshash kashfiyot jarayonini boshidan kechirayotgan boshqalarga yordam berish uchun men hozirgacha topgan eng yaxshi darsliklarning ro'yxatini to'pladim. Bu Internetdagi ML bilan bog'liq bo'lgan har bir darslikning to'liq ro'yxati bo'lishi mumkin emas - bu mutlaqo takrorlanadigan va takrorlanadigan bo'lishi mumkin. Bundan tashqari, u erda bir nechta o'rta darajadagi tarkib mavjud. Mening maqsadim mashinalarni o'rganish va NLP sohasidagi muhim subtopikalardan topilgan eng yaxshi darsliklarga bog'lash edi.

Qo'llanma orqali men qisqacha tushunchani o'rgatmoqchi bo'lgan kirish tarkibini nazarda tutmoqdaman. Men kengroq qamrovli kitoblar bo'limlari va ilmiy maqolalarni, umuman olganda, tushunchalarni o'qitish uchun yaxshi ish bermaydigan bo'limlardan qochdim. Nega shunchaki kitob sotib olmaysiz? Qo'llanmalar foydali bir mavzuni o'rganmoqchi bo'lganingizda yoki har xil nuqtai nazarga ega bo'lishni istaganingizda foydali bo'ladi.

Men ushbu xabarni to'rt qismga ajratdim: Machine Learning, NLP, Python va Math. Men har bir bo'limda mavzularni saralab olganman, lekin materialning ko'pligi sababli har qanday mavzuni o'z ichiga ololmayman.

Kelgusidagi postlar uchun, men o'sib borayotgan manbalar to'plamini tuzayotganimda, men shunga o'xshash kitoblar ro'yxatini, onlayn videolar va kod repolarini tuzishim mumkin.

Agar yaxshi darsliklar bo'lsa, men yo'qolganimni bilsangiz, iltimos, menga xabar bering! Men har bir mavzuni besh yoki oltita darslik bilan cheklashga harakat qilaman, chunki bundan tashqari takrorlash mumkin emas. Har bir havola boshqa havolalardan har xil materiallarga ega bo'lishi yoki har xil ma'lumotlarga ega bo'lishi kerak (masalan, kod va slaydlar uzun shaklga nisbatan) yoki boshqa nuqtai nazardan.

Mashinani o'rganish

Mashinada o'rganish qiziqarli! (o'rta.com/@ageitgey)

Mashinalarni o'qitish halokati kursi: I qism, II qism, III qism (Berkeleyda mashinada o'qitish)

Mashinalarni o'qitish nazariyasi va uning qo'llanilishiga kirish: misollar bilan ko'rgazmali qo'llanma (toptal.com)

Mashinasozlik uchun yumshoq qo'llanma (monkeylearn.com)

Qaysi mashinani o'rganish algoritmidan foydalanishim kerak? (sas.com)

Faollashtirish va yo'qotish funktsiyalari

Sigmasimon neyronlar (neyron tarmoqlari vaeplearning.com)

Neyron tarmog'ida aktivatsiya funktsiyasining ahamiyati qanday? (quora.com)

Afzalliklari va nosog'lom tarmoqlari bilan faollashtirish funktsiyalarining keng ro'yxati (stats.stackexchange.com)

Faollashtirish funktsiyalari va uning turlari - Qaysi biri yaxshiroq? (o'rta.com)

Logarifmik yo'qotish haqida ma'lumot berish (exegetic.biz)

Yo'qotish funktsiyalari (Stenford CS231n)

L1 va L2 yo'qotish funktsiyasi (rishy.github.io)

Kesishgan entropiya funktsiyasi (neuralnetworksdeeplearning.com)

Xiralik

Neyron tarmoqlarda biasning o'rni (stackoverflow.com)

Neyron tarmoqlaridagi bias tugunlari (makeyourownneuralnetwork.blogspot.com)

Sun'iy neyron tarmog'ida xayolparastlik nima? (quora.com)

Perceptron

Qabul qiluvchilar (neyron tarmoqlari vaeplearning.com)

Idrok (tabiatofcode.com)

Bir qavatli neyron tarmoqlari (Percepttrons) (dcu.ie)

Perceptrons-dan chuqur tarmoqlarga (toptal.com)

Regresiya

Chiziqli regressiya tahliliga kirish (duke.edu)

Chiziqli regressiya (ufldl.stanford.edu)

Chiziqli regressiya (readthedocs.io)

Logistik regressiya (readthedocs.io)

Mashinalarni o'qitish uchun oddiy chiziqli regressiya qo'llanmasi (machinelearningmastery.com)

Mashinalarni o'rganish uchun logistik regressiya bo'yicha qo'llanma (machinelearningmastery.com)

Softmax regressi (ufldl.stanford.edu)

Gradientning kelib chiqishi

Gradient tushish bilan o'rganish (neuralnetworksdeeplearning.com)

Gradientning kelib chiqishi (iamtrask.github.io)

Gradient tushish algoritmini qanday tushunish mumkin (kdnuggets.com)

Gradientning tushishini optimallashtirish algoritmlari haqida umumiy ma'lumot (sebastianruder.com)

Optimallashtirish: Stokastik gradiyentning kelib chiqishi (Stanford CS231n)

Umumiy ta'lim

Umumiy ta'lim algoritmlari (Stenford CS229)

Naif Bayes tasniflagichining amaliy izohi (monkeylearn.com)

Vektorli mashinalarni qo'llab-quvvatlash

Vector Machines (SVM) haqida ma'lumot (monkeylearn.com)

Vector Machines (Stanford CS229)

Chiziqli tasnif: Vector Machine, Softmax (Stanford 231n)

Backpropagatsiya

Ha, siz backpropni tushunishingiz kerak (o'rta.com/@karpathy)

Neyron tarmoqlari uchun orqa tarafdagi tarqalish algoritmi uchun vizual tushuntirish bera olasizmi? (github.com/rasbt)

Orqa tomonni tashkillashtirish algoritmi qanday ishlaydi (neuralnetworksdeeplearning.com)

Vaqt o'tishi bilan ortda qoladigan ortga ko'tarilish va yo'qolib borayotgan gradyanlar (wildml.com)

Vaqt o'tishi bilan backpropagatsiya uchun muloyim kirish (machinelearningmastery.com)

Backpropagation, sezgi (Stenford CS231n)

Chuqur o'rganish

Qisqa ma'noda chuqur o'rganish (nikhilbuduma.com)

Chuqur o'rganish bo'yicha qo'llanma (Quoc V. Le)

Chuqur o'rganish nima? (machinelearningmastery.com)

Sun'iy intellekt, mashinasozlik va chuqur o'rganish o'rtasidagi farq nima? (nvidia.com)

Optimallashtirish va o'lchovlarni kamaytirish

Ma'lumot o'lchamlarini kamaytirishning ettita usuli (knime.org)

Asosiy tarkibiy qismlarni tahlil qilish (Stenford CS229)

Dropout: Asab tarmoqlarini yaxshilashning oddiy usuli (Hinton @ NIPS 2012)

Qanday qilib o'zingizning chuqur neyron tarmog'ingizni o'rgatishingiz mumkin (rishy.github.io)

Uzoq muddatli muddatli xotira (LSTM)

Mutaxassislar tomonidan uzoq muddatli xotira tarmoqlariga muloyimlik bilan kirish (machinelearningmastery.com)

LSTM tarmoqlarini tushunish (colah.github.io)

LSTMlarni o'rganish (echen.me)

Python-da har kim LSTM-RNN kodlashni o'rganishi mumkin (iamtrask.github.io)

Konvolyutsion neyron tarmoqlari (CNN)

Konvulsion tarmoqlar (neuralnetworksandepepningning.com) bilan tanishtirish

Chuqur o'rganish va konvolyutsion neyron tarmoqlari (o'rta.com/@ageitgey)

Conv tarmoqlari: Modulli istiqbol (colah.github.io)

Tushunishni tushunish (colah.github.io)

Takrorlanadigan asab tarmoqlari (RNN)

Takrorlanuvchi neyron tarmoqlari bo'yicha qo'llanma (wildml.com)

E'tibor va kengayadigan takroriy neyron tarmoqlari (distill.pub)

Takrorlanuvchi nerv tarmoqlarining asossiz samaradorligi (karpathy.github.io)

Takrorlanuvchi asab tarmoqlariga chuqur sho'ng'ish (nikhilbuduma.com)

Armaturani o'rganish

Boshlang'ich ta'limni mustahkamlash va uni amalga oshirish bo'yicha oddiy qo'llanma (analyticsvidhya.com)

Qayta tikishni o'rganish bo'yicha qo'llanma (mst.edu)

O'rganishni kuchaytirishni o'rganish (wildml.com)

Qayta mustahkamlashni chuqur o'rganish: Pikseldan pong (karpathy.github.io)

Dushmanaro Tarmoqlar (GAN)

Dushmanlarning umumiy tarmog'i nima? (nvidia.com)

8-bitli Pixel Art-ni yaratish uchun generativ dushmanlik tarmoqlarini suiste'mol qilish (o'rta.com/@ageitgey)

Generative Adversarial Tarmoqlarga kirish (kod TensorFlow-da) (aylien.com)

Yangi boshlanuvchilar uchun umumiy dushmanlik tarmoqlari (oreilly.com)

Ko'p vazifali o'rganish

Chuqur neyron tarmoqlarida ko'p vazifali o'rganish haqida umumiy ma'lumot (sebastianruder.com)

NLP

Tabiiy tillarga ishlov berish uchun neyron tarmoqlari bo'yicha qo'llanma (Yoav Goldberg)

Tabiiy tillarni qayta ishlash bo'yicha aniq qo'llanma (monkeylearn.com)

Tabiiy tillarni qayta ishlashga kirish (algorithmia.com)

Tabiiy tillarni qayta ishlash bo'yicha qo'llanma (vikparuchuri.com)

Scratch-dan tabiiy tilga ishlov berish (deyarli) (arxiv.org)

Chuqur o'rganish va NLP

Deep Learning NLP-ga qo'llaniladi (arxiv.org)

NLP uchun chuqur o'rganish (sehrsiz) (Richard Soker)

NLP uchun konvolyutsion neyron tarmoqlarini tushunish (wildml.com)

Chuqur o'rganish, NLP va vakolatxonalar (colah.github.io)

O'rnatish, kodlash, qatnashish, bashorat qilish: zamonaviy NLP modellarini chuqur o'rganishning yangi formulasi (тарк.ai)

Torchadan foydalanib, chuqur neyron tarmoqlari bilan tabiiy tilni tushunish (nvidia.com)

Pytorch bilan NLP uchun chuqur o'rganish (pytorich.org)

So'z Vektorlari

So'zlar sumkasi Popkorn sumkalariga to'g'ri keladi (kaggle.com)

So'z birikmalariga I qism, II qism, III qism (sebastianruder.com)

So'z vektorlarining ajoyib kuchi (acolyer.org)

word2vec parametrlarni o'rganish bo'yicha tushuntirish (arxiv.org)

Word2Vec qo'llanmasi - Skip-Gram modeli, salbiy namunalar (mccormickml.com)

Kodlovchi-dekoder

Chuqur o'rganishda va NLP-da diqqat va xotira (wildml.com)

Tegishli modellarning ketma-ketligi (tensorflow.org)

Neyron tarmoqlari orqali ketma-ketlikni o'rganish (NIPS 2014)

Mashinada o'rganish qiziqarli 5-qism: Tilni chuqur o'rganish va sehrlarning sehrlari bilan tarjima qilish (o'rta.com/@ageitgey)

Tasodifiy butun sonlarni aks ettirish tartibini LSTM kodlovchi-dekoderidan qanday foydalanish (machinelearningmastery.com)

tf-seq2seq (google.github.io)

Python

Python yordamida mashinani o'rganishni 7 bosqichi (kdnuggets.com)

Mashina o'rganish daftariga misol (nbviewer.jupyter.org)

Misollar

Python-dagi Scratch-dan Pertstron algoritmini qanday amalga oshirish kerak (machinelearningmastery.com)

Python-da Scratch-dan neyron tarmog'ini amalga oshirish (wildml.com)

Python-ning 11 qatoridagi neyron tarmog'i (iamtrask.github.io)

Python-dan foydalanib, o'zingizning yaqin qo'shningizning algoritmini amalga oshirish (kdnuggets.com)

Python-da uzoq muddatli qisqa muddatli xotira tarmog'i bilan xotirani namoyish qilish (machinelearningmastery.com)

Uzoq muddatli qisqa muddatli xotirali takroriy neyron tarmoqlarga ega bo'lgan tasodifiy sonlarni qanday chiqarishni qanday o'rganish mumkin (machinelearningmastery.com)

Seq2seq takroriy neyron tarmoqlari yordamida raqamlarni qo'shishni qanday o'rganish mumkin (machinelearningmastery.com)

Skrip va noaniq

Scipy Ma'ruza qaydlari (scipy-lectures.org)

Python Numpy Tutorial (Stenford CS231n)

Numpy and Scipy (UCSB CHE210D) bilan tanishtirish

Olimlar uchun Python-dagi halokatli kurs (nbviewer.jupyter.org)

skikit-o'rganish

PyCon-ni o'rganish bo'yicha qo'llanma indeksi (nbviewer.jupyter.org)

scikit-learn tasniflash algoritmlari (github.com/mmmayo13)

scikit-learn darslari (scikit-learn.org)

Qisqartirilgan skikit-o'rganish darsliklari (github.com/mmmayo13)

Tensor oqimi

Tensorflow bo'yicha qo'llanmalar (tensorflow.org)

TensorFlow-ga kirish - CPU va GPU (o'rta.com/@erikhallstrm)

TensorFlow: astar (metaflow.fr)

Tensorflow-dagi RNN (wildml.com)

TensorFlow-da matnni tasniflash uchun CNN dasturini amalga oshirish (wildml.com)

TensorFlow yordamida matnni saralashni qanday ishlatish kerak (surmenok.com)

PyTorch

PyTorch darsliklari (pytorch.org)

PyTorch-ga yumshoq kirish (gaurav.im)

Qo'llanma: PyTorch-da chuqur o'rganish (iamtrask.github.io)

PyTorch misollari (github.com/jcjohnson)

PyTorch qo'llanmasi (github.com/MorvanZhou)

PyTorch-ni chuqur o'rganish bo'yicha tadqiqotchilar uchun qo'llanma (github.com/yunjey)

Matematik

Mashinani o'rganish uchun matematika (ucsc.edu)

Mashinasozlik uchun matematik (UMIACS CMSC422)

Chiziqli algebra

Chiziqli algebra uchun intuitiv qo'llanma (betterexplained.com)

Matritsalarni ko'paytirish uchun dasturchining intuitivligi (betterexplained.com)

Xoch mahsulotni tushunish (betterexplained.com)

Nuqta mahsulotini tushunish (betterexplained.com)

Mexanikani o'rganish uchun chiziqli algebra (Buffalo shahri CSE574)

Chuqur o'rganish uchun chiziqli algebra varaqasi (o'rta.com)

Chiziqli algebrani ko'rib chiqish va ma'lumotnoma (Stenford CS229)

Ehtimollik

Bayes teoremasini nisbatlar bilan tushunish (betterexplained.com)

Ehtimollar nazariyasini sharhlash (Stenford CS229)

Mashinasozlik uchun ehtimollik nazariyasi sharhi (Stenford CS229)

Ehtimollar nazariyasi (Buffalo shahri CSE574)

Mashinalarni o'rganish uchun ehtimollik nazariyasi (Toronto sh., CSC411)

Hisoblash

Derivativlarni qanday tushunish mumkin: Mantiqiy qoida, eksponentlar va logarifmlar (betterexplained.com)

Hujjatlarni qanday tushunish mumkin: Mahsulot, quvvat va zanjir qoidalari (betterexplained.com)

Vektorli hisoblash: Gradientni tushunish (betterexplained.com)

Differentsial hisoblash (Stenford CS224n)

Hisob-kitoblarga umumiy nuqtai (readthedocs.io)