یادگیری ماشین و یادگیری ژرف – Telegram
یادگیری ماشین و یادگیری ژرف
549 subscribers
78 photos
10 videos
115 files
47 links
این کانال با هدف ارائه تکنیک های هوش مصنوعی شامل یادگیری ماشین، داده کاوی، اتاماتای سلولی، پردازش تصویر، شبکه های عصبی و یادگیری ژرف و بیگ دیتا برای محققین و دانشجویان گرامی ایجاد شده است.


@AIPHD95
Download Telegram
مهمترین ابزارها و زبان های برنامه نویسی برای بادگیری عمیق:
🔴تورچ (TORCH)
🔵تنسورفلو و کراس(Tensorflow)
⚫️ کافی (Caffe)
🌿🌿🌿🌿🌿🌿
🌎ابزار Caffe2 فریمورکی اپن‌سورس از فیسبوک برای Deep Learning در پلتفرم موبایل
—----------------------------------------------------------------------------------------------
ابزار Caffe2 لایبرری یادگیری ژرف (Deep Learning) اپن‌سورس فیسبوک است؛ بر خلاف لایبرری قبلی فیسبوک تحت عنوان PyTorchh، این لایبرری به منظور افزودن قابلیت یادگیری ژرف به اپلیکیشن‌های موبایلی ساخته شده است.
🍇🍇🍇🍇🍇🍇🍇🍇🍇🍇
🌍 امروزه آزمایشگاه‌های متعددی در سرتاسر دنیا در تلاشند تا فریمورک‌های کارا و سریعی را ایجاد نمایند تا بتوانند مدل‌های یادگیری ژرف را برای همگان ملموس‌تر کنند. چه در حال حاضر و چه در آینده، لایبرری‌های کارآمد، لایبرری‌هایی هستند که هم‌زمان قادر به رفع نیاز‌های متعددی باشند که به‌نظر می‌رسد Caffe2 یکی از آن‌ها است.
☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️
🌏ابزار Caffe2 یک فریمورک ماژولار یادگیری ژرف است که توسط شرکت فیسبوک و به‌منظور استفاده در Mobile Computing رایانش موبایلی به بازار عرضه شده است. فیسبوک و NVIDIA دست‌دردست هم داده‌اند تا پتانسیل GPUهای NVIDIA را به شکوفایی کامل برسانند. همچنین این شرکت لایبرری‌های مخصوصی را برای CPUهای ARM ،Raspberry Pi و انواع دیوایس‌های loT طراحی نموده است.
🎄🎄🎄🎄🎄🎄🎄🎄🎄🎄
☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️
🔵 اگر دنبال یادگیری شبکه عصبی کانولوشن هستید، سایت زیر مقالات و مطالب خیلی مفیدی داره که از ابتدا می توانید یادگیری را شروع کنید.
https://adeshpande3.github.io/adeshpande3.github.io/A-Beginner's-Guide-To-Understanding-Convolutional-Neural-Networks/



https://adeshpande3.github.io/adeshpande3.github.io/A-Beginner's-Guide-To-Understanding-Convolutional-Neural-Networks-Part-2/




👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿
☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️☘️
🔵 نه مقاله ای که برای یادگیری ژرف بدون نظارت حتما باید مطالعه کنید

https://adeshpande3.github.io/adeshpande3.github.io/The-9-Deep-Learning-Papers-You-Need-To-Know-About.html



👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿
🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿
🔵معرفی چهل و پنج ابزار یادگیری ژرف
1. Theano – CPU/GPU symbolic expression compiler in python (from MILA lab at University of Montreal)
2. Torch – provides a Matlab-like environment for state-of-the-art machine learning algorithms in lua (from Ronan Collobert, Clement Farabet and Koray Kavukcuoglu)
3. Pylearn2 – Pylearn2 is a library designed to make machine learning research easy.
4. Blocks – A Theano framework for training neural networks
5. Tensorflow – TensorFlow is an open source software library for numerical computation using data flow graphs.
6. MXNet – MXNet is a deep learning framework designed for both efficiency and flexibility.
7. Caffe -Caffe is a deep learning framework made with expression, speed, and modularity in mind.Caffe is a deep learning framework made with expression, speed, and modularity in mind.
8. Lasagne – Lasagne is a lightweight library to build and train neural networks in Theano.
9. Keras– A theano based deep learning library.
10. Deep Learning Tutorials – examples of how to do Deep Learning with Theano (from LISA lab at University of Montreal)
11. Chainer – A GPU based Neural Network Framework
12. Matlab Deep Learning – Matlab Deep Learning Tools
13. CNTK – Computational Network Toolkit – is a unified deep-learning toolkit by Microsoft Research.
14. MatConvNet – A MATLAB toolbox implementing Convolutional Neural Networks (CNNs) for computer vision applications. It is simple, efficient, and can run and learn state-of-the-art CNNs.
15. DeepLearnToolbox – A Matlab toolbox for Deep Learning (from Rasmus Berg Palm)
16. BigDL. A distributed open-source Apache Spark deep learning library designed for efficient scale-out to multiple nodes. CPU-optimized via MKL. Scala and Python support. (Developed and supported by Intel Corp). https://software.intel.com/bigdl. https://github.com/intel-analytics/BigDL
17. Cuda-Convnet – A fast C++/CUDA implementation of convolutional (or more generally, feed-forward) neural networks. It can model arbitrary layer connectivity and network depth. Any directed acyclic graph of layers will do. Training is done using the back-propagation algorithm.
18. Deep Belief Networks. Matlab code for learning Deep Belief Networks (from Ruslan Salakhutdinov).
19. RNNLM– Tomas Mikolov’s Recurrent Neural Network based Language models Toolkit.
20. RNNLIB-RNNLIB is a recurrent neural network library for sequence learning problems. Applicable to most types of spatiotemporal data, it has proven particularly effective for speech and handwriting recognition.
21. matrbm. Simplified version of Ruslan Salakhutdinov’s code, by Andrej Karpathy (Matlab).
22. deeplearning4j– Deeplearning4J is an Apache 2.0-licensed, open-source, distributed neural net library written in Java and Scala.
23. Estimating Partition Functions of RBM’s. Matlab code for estimating partition functions of Restricted Boltzmann Machines using Annealed Importance Sampling (from Ruslan Salakhutdinov).
24. Learning Deep Boltzmann Machines Matlab code for training and fine-tuning Deep Boltzmann Machines (from Ruslan Salakhutdinov).
25. The LUSH programming language and development environment, which is used @ NYU for deep convolutional networks
26. Eblearn.lsh is a LUSH-based machine learning library for doing Energy-Based Learning. It includes code for “Predictive Sparse Decomposition” and other sparse auto-encoder methods for unsupervised learning. Koray Kavukcuoglu provides Eblearn code for several deep learning papers on this page.
27. deepmat– Deepmat, Matlab based deep learning algorithms.
28. MShadow – MShadow is a lightweight CPU/GPU Matrix/Tensor Template Library in C++/CUDA. The goal of mshadow is to support efficient, device invariant and simple tensor library for machine learning project that aims for both simplicity and performance. Supports CPU/GPU/Multi-GPU and distributed system.
29. CXXNET – CXXNET is fast, concise, distributed deep learning framework based on MShadow. It is a lightweight and easy extensible C++/CUDA neural network toolkit with friendly Python/Matlab interface for training and prediction.
30. Nengo-Nengo is a graphical and noscripting based software package for simulating large-scale neural systems.
31. Eblearn is a C++ machine learning library with a BSD license for energy-based learning, convolutional networks, vision/recognition applications, etc. EBLearn is primarily maintained by Pierre Sermanet at NYU.
32. cudamat is a GPU-based matrix library for Python. Example code for training Neural Networks and Restricted Boltzmann Machines is included.
33. Gnumpy is a Python module that interfaces in a way almost identical to numpy, but does its computations on your computer’s GPU. It runs on top of cudamat.
34. The CUV Library (github link) is a C++ framework with python bindings for easy use of Nvidia CUDA functions on matrices. It contains an RBM implementation, as well as annealed importance sampling code and code to calculate the partition function exactly (from AIS lab at University of Bonn).
35. 3-way factored RBM and mcRBM is python code calling CUDAMat to train models of natural images (from Marc’Aurelio Ranzato).
36. Matlab code for training conditional RBMs/DBNs and factored conditional RBMs (from Graham Taylor).
37. mPoT is python code using CUDAMat and gnumpy to train models of natural images (from Marc’Aurelio Ranzato).
38. neuralnetworks is a java based gpu library for deep learning algorithms.
39. ConvNet is a matlab based convolutional neural network toolbox.
40. Elektronn is a deep learning toolkit that makes powerful neural networks accessible to scientists outside the machine learning community.
41. OpenNN is an open source class library written in C++ programming language which implements neural networks, a main area of deep learning research.
42. NeuralDesigner is an innovative deep learning tool for predictive analytics.
43. Theano Generalized Hebbian Learning.
44. Apache Singa is an open source deep learning library that provides a flexible architecture for scalable distributed training. It is extensible to run over a wide range of hardware, and has a focus on health-care applications.
45. Lightnet is a lightweight, versatile and purely Matlab-based deep learning framework. The aim of the design is to provide an easy-to-understand, easy-to-use and efficient computational platform for deep learning research.

👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿👆🏿
🔵یادگیری ژرف نیازمند داده های زیادی برای آموزش است. این یکی از دلایل اصلی موفقیت یادگیری ژرف است. زمانی که داده های موجود برای آموزش شبکه کم باشد الگوریتم به خوبی آموزش نمی بیند. بنابراین سه راه حل برای مواجه با تعداد داده های کم وجود دارد:
1- استفاده از روش های غیر ژرف
2- جمع آوری داده که برخی موارد شاید سخت یا غیر ممکن باشد
3- استفاده از روش هایی برای تولید داده با استفاده از داده های موجود
🌿🌿🌿🌿🌿🌿🌿🌿🌿🌿
در زیر تعداد مجموعه داده در کاربردهای مختلف که در مقالات با استفاده از یادگیری ژرف به جواب های خوبی رسیده اند خدمت شما معرفی می گردد. بهتر است در کارهای تحقیقاتی خود از این داده های استاندارد استفاده شود.
👎👎👎👎👎👎👎👎👎👎
🔵Music Datasets

Piano-midi.de: classical piano pieces (http://www.piano-midi.de/)
Nottingham : over 1000 folk tunes (http://abc.sourceforge.net/NMD/)
MuseData: electronic library of classical music scores (http://musedata.stanford.edu/)
JSB Chorales: set of four-part harmonized chorales (http://www.jsbchorales.net/index.shtml)
FMA: A Dataset For Music Analysis (https://github.com/mdeff/fma)
👎👎👎👎👎👎👎👎👎👎👎
https://news.1rj.ru/str/MachineLearningDeep
🔵Natural Images

MNIST: handwritten digits (http://yann.lecun.com/exdb/mnist/)
NIST: similar to MNIST, but larger
Perturbed NIST: a dataset developed in Yoshua’s class (NIST with tons of deformations)
CIFAR10 / CIFAR100: 32×32 natural image dataset with 10/100 categories ( http://www.cs.utoronto.ca/~kriz/cifar.html)
Caltech 101: pictures of objects belonging to 101 categories (http://www.vision.caltech.edu/Image_Datasets/Caltech101/)
Caltech 256: pictures of objects belonging to 256 categories (http://www.vision.caltech.edu/Image_Datasets/Caltech256/)
Caltech Silhouettes: 28×28 binary images contains silhouettes of the Caltech 101 dataset
STL-10 dataset is an image recognition dataset for developing unsupervised feature learning, deep learning, self-taught learning algorithms. It is inspired by the CIFAR-10 dataset but with some modifications. http://www.stanford.edu/~acoates//stl10/
The Street View House Numbers (SVHN) Dataset – http://ufldl.stanford.edu/housenumbers/
NORB: binocular images of toy figurines under various illumination and pose (http://www.cs.nyu.edu/~ylclab/data/norb-v1.0/)
Imagenet: image database organized according to the WordNethierarchy (http://www.image-net.org/)
Pascal VOC: various object recognition challenges (http://pascallin.ecs.soton.ac.uk/challenges/VOC/)
Labelme: A large dataset of annotated images, http://labelme.csail.mit.edu/Release3.0/browserTools/php/dataset.php
COIL 20: different objects imaged at every angle in a 360 rotation(http://www.cs.columbia.edu/CAVE/software/softlib/coil-20.php)
COIL100: different objects imaged at every angle in a 360 rotation (http://www1.cs.columbia.edu/CAVE/software/softlib/coil-100.php)

👎👎👎👎👎👎👎👎👎👎👎
https://news.1rj.ru/str/MachineLearningDeep
🔴Artificial Datasets

Arcade Universe – An artificial dataset generator with images containing arcade games sprites such as tetris pentomino/tetromino objects. This generator is based on the O. Breleux’s bugland dataset generator.
A collection of datasets inspired by the ideas from BabyAISchool:
BabyAIShapesDatasets : distinguishing between 3 simple shapes
BabyAIImageAndQuestionDatasets : a question-image-answer dataset
Datasets generated for the purpose of an empirical evaluation of deep architectures (DeepVsShallowComparisonICML2007):
MnistVariations : introducing controlled variations in MNIST
RectanglesData : discriminating between wide and tall rectangles
ConvexNonConvex : discriminating between convex and nonconvex shapes
BackgroundCorrelation : controlling the degree of correlation in noisy MNIST backgrounds

👎👎👎👎👎👎👎👎👎👎👎
https://news.1rj.ru/str/MachineLearningDeep
🔴Faces

Labelled Faces in the Wild: 13,000 images of faces collected from the web, labelled with the name of the person pictured (http://vis-www.cs.umass.edu/lfw/)
Toronto Face Dataset
Olivetti: a few images of several different people (http://www.cs.nyu.edu/~roweis/data.html)
Multi-Pie: The CMU Multi-PIE Face Database (http://www.multipie.org/)
Face-in-Action (http://www.flintbox.com/public/project/5486/)
JACFEE: Japanese and Caucasian Facial Expressions of Emotion (http://www.humintell.com/jacfee/)
FERET: The Facial Recognition Technology Database (http://www.itl.nist.gov/iad/humanid/feret/feret_master.html)
mmifacedb: MMI Facial Expression Database (http://www.mmifacedb.com/)
IndianFaceDatabase: http://vis-www.cs.umass.edu/~vidit/IndianFaceDatabase/)
(e.g. The Yale Face Database (http://vision.ucsd.edu/content/yale-face-database) and The Yale Face Database B (http://vision.ucsd.edu/~leekc/ExtYaleDatabase/ExtYaleB.html)).

👎👎👎👎👎👎👎👎👎👎👎
https://news.1rj.ru/str/MachineLearningDeep
⚫️Text

20 newsgroups: classification task, mapping word occurences to newsgroup ID (http://qwone.com/~jason/20Newsgroups/)
Reuters (RCV*) Corpuses: text/topic prediction (http://about.reuters.com/researchandstandards/corpus/)
Penn Treebank : used for next word prediction or next character prediction (http://www.cis.upenn.edu/~treebank/)
Broadcast News: large text dataset, classically used for next word prediction (http://www.ldc.upenn.edu/Catalog/CatalogEntry.jsp?catalogId=LDC97S44)
Wikipedia Dataset
Multidomain sentiment analysis dataset: http://www.cs.jhu.edu/~mdredze/datasets/sentiment/

👎👎👎👎👎👎👎👎👎👎👎
https://news.1rj.ru/str/MachineLearningDeep
🔵Speech

TIMIT Speech Corpus: phoneme classification (http://www.ldc.upenn.edu/Catalog/CatalogEntry.jsp?catalogId=LDC93S1)
Aurora : Timit with noise and additional information

🔴Recommendation Systems

MovieLens: Two datasets available from http://www.grouplens.org. The first dataset has 100,000 ratings for 1682 movies by 943 users, subdivided into five disjoint subsets. The second dataset has about 1 million ratings for 3900 movies by 6040 users.
Jester: This dataset contains 4.1 million continuous ratings (-10.00 to +10.00) of 100 jokes from 73,421 users.
Netflix Prize: Netflix released an anonymised version of their movie rating dataset; it consists of 100 million ratings, done by 480,000 users who have rated between 1 and all of the 17,770 movies.
Book-Crossing dataset: This dataset is from the Book-Crossing community, and contains 278,858 users providing 1,149,780 ratings about 271,379 books.
Misc

🔴“Musk” dataset

CMU Motion Capture Database: (http://mocap.cs.cmu.edu/)
Brodatz dataset: texture modeling (http://www.ux.uis.no/~tranden/brodatz.html)
Million Song dataset: http://labrosa.ee.columbia.edu/millionsong/
Merck Molecular Activity Challenge – http://www.kaggle.com/c/MerckActivity/data

👎👎👎👎👎👎👎👎👎👎👎
https://news.1rj.ru/str/MachineLearningDeep
✳️جدول محاسبه امتیاز مصاحبه دکتری این جدول معمولا ثابته پس اگر قصد شرکت در آزمون دکتری را دارید با تقویت ایتم های جدول فوق به سمت موفقیت گام بردارید.
🔴نیازمندی های سخت افزاری سوال میکنن روز به روز افزایش پیدا میکند
🌑اتفاقی که در شبکه های یادگیری عمیق رخ میدهد چیزی جز یکسری محاسبات ریاضی و بطور خاص ماتریسی در مقیاس زیاد نیست. به همین دلیل استفاده عملی از یک شبکه عصبی عمیق اگر با پردازند ه های معمولی انجام شود تقریبا غیر ممکن خواهد بود. به همین دلیل هم شما در تمامی کتابخونه ها و چارچوب های معتبر مشاهده میکنید که پردازش ها تحت کارتهای گرافیک انجام می شود. البته همه این کتابخونه ها پیاده سازی مبتنی بر CPU رو دارند که معمولا برای آشنایی و اجرای دموها و اشکال زدایی ها مورد استفاده قرار می گیرد.
🌎اوائل شروع یادگیری عمیق اجرای پردازش ها محدود به استفاده از کارتهای گرافیک بود. اما طی یکسال اخیر فعالیتهایی در جهت استفاده از سیستم های توزیع شده هم صورت گرفته که در کفی میشه به SparkCaffe و در جاوا به DeepLearning4J و احتمالا معروف تر از همه Tensorflow اشاره کرد. ذکر این نکته ضروریست که یک کارت گرافیک با قیمت متوسط مثل GTX960 یا حتی GTX1060 از یک سرور با پردازنده xeon هم به مراتب قوی تر است.
🌕در حال حاضر شرکت Nvidia برنده بی چون و چرای این حوزه است. تمامی کتابخونه ها و چارچوبها بدون استثنا از کارتهای انویدیا پشتیبانی میکنند و مبتنی بر Cuda و cudnn هستند. پشتیبانی از کارتهای AMD/Intel و متنفرقه یا مبتنی بر OpenCL یا وجود نداره و یا بشدت ضعیف هست بعنوان مثال AMD برنچی از کفی رو به OpenCL پورت کرد اما خیلی زود هم آن را کنار گذاشت و پشتیبانی از آن را قطع کردند. هرچند در حال حاضر یک برنچ مبتنی بر OpenCL در کفی وجود دارد . کسانی که کارت گرافیک AMD و یا Intel دارن میتوانند از آن استفاده کنند اما از لحاظ سرعت و بروز رسانی قابل قیاس با ورژن اصلی و مبتنی بر Cuda/cudnn نیست.