Deep learning
딥 러닝(Deep learning)은 여러 비선형 변환기법의 조합을 통해 높은 수준의 추상화(abstractions, 다량의 데이터나 복잡한 자료들 속에서 핵심적인 내용 또는 기능을 요약하는 작업)를 시도하는 기계학습(machine learning) 알고리즘의 집합 으로 정의 되며, 큰틀에서 사람의 사고방식을 컴퓨터에게 가르치는 기계학습의 한 분야라고 이야기 할 수 있다.
Categories
- [추천] DeepLearning:Papers - 이미지로 논문, 소스 코드 등 소개.
- Generative Pre-trained Transformer#Store - GPTs 스토어의 분야별 추천 모델 모음
- Artificial intelligence#Projects - AI 관련 온라인 도구들 추천 모음
- Data annotation (라벨링)
- Model Training - 모델 훈련과 관련된 인사이트 모음.
- Machine Learning Platforms
- MLOps (Machine Learning Pipeline)
- Super Resolution
- Object Detection
- Noise reduction
- Image restoration
- Deepfake
- MONAI
- OpenAI
- Action Recognition
- Video Action Recognition - 비디오에서 인간의 행동을 인식합니다.
- Human Activity Recognition
- Skeleton Based Action Recognition
- Imagen - 구글의 text-to-image diffusion model
- DALL-E
- Stable Diffusion - DALL-E 와 비슷한 Text-To-Image 오픈소스
- DreamFusion - Text-to-3D using 2D Diffusion
- Make-A-Video - Text-to-Video Generation without Text-Video Data
- Imagen Video - 구글, 텍스트-to-비디오 AI
- Text2Video-Zero - 제로샷 비디오 생성 모델
- GEN2 - Runway, 비디오 생성형 AI "Gen-2" 공개
- Self-supervised Geometric Correspondence for Category-level 6D Object Pose Estimation in the Wild
- nerf2nerf - Pairwise Registration of Neural Radiance Fields
- Market1501 baseline
- Monodepth2
- Simple Pose
- https://paperswithcode.com/sota/music-transcription-on-musicnet
- MusicNet - https://homes.cs.washington.edu/~thickstn/musicnet.html
- Residual Shuffle-Exchange Networks: Official TensorFlow Implementation
- Omnizart - 음악 전체를 필사(Transcribe)해주는 오픈소스
- StemRoller - 노래에서 보컬과 악기를 분리해주는 무료 앱 오픈소스
- Demucs - Facebook의 Demucs Music Source Separation (AI로 음원 분리)
- Spleeter - 노래에서 보컬/드럼/베이스/피아노를 분리 추출해주는 오픈소스
- LLaMA - Meta가 공개한 65b 파라미터 LLM
- ChatLLaMA - LLaMa 기반 ChatGPT의 오픈소스 구현체
- Microsoft Kosmos-1
Audio/Music
수학적 배경
멀티 모달
Computer Vision Libraries
- OpenCV
- GluonCV
- Dlib
- Cog - 머신러닝을 위한 컨테이너 도구
- Brain.js - Javascript로 작성된 GPU 가속 뉴럴 네트워크
- mmcv (mmdetection)
Format
- Lance - ML 워크플로우에 최적화된 최신 Columnar 데이터 포맷
Tools
- What-If Tool - 최소한의 코딩으로 훈련 된 기계 학습 모델의 동작을 시각적으로 조사합니다.
- Gradio - 3분 만에 Python으로 기계 학습 모델용 UI 만들기
- UpTrain - ML 모델을 관찰하기 위한 오픈 소스 도구
- Tsai - 시계열 및 시퀀스를 위한 오픈소스 딥러닝 라이브러리
- Netron - 신경망, 딥러닝 및 머신러닝 모델을 위한 시각화 도구.
- Preswald - AI 데이터 앱을 위한 오픈소스 프레임워크
Deep neural network
심층 신경망(Deep Neural Network, DNN)은 입력 계층(input layer)과 출력 계층(output layer) 사이에 복수개의 은닉 계층(hidden layer)들로 이뤄진 인공신경망(Artificial Neural Network, ANN)이다. 심층 신경망은 일반적인 인공신경망과 마찬가지로 복잡한 비선형 관계(non-linear relationship)들을 모델링할 수 있다. 예를 들어, 사물 식별 모델을 위한 심층 신경망 구조에서는 각 객체가 이미지 기본 요소들의 계층적 구성으로 표현될 수 있다. 이때, 추가 계층들은 점진적으로 모여진 하위 계층들의 특징들을 규합시킬 수 있다. 심층 신경망의 이러한 특징은, 비슷하게 수행된 인공신경망에 비해 더 적은 수의 유닛(unit, node)들 만으로도 복잡한 데이터를 모델링할 수 있게 해준다.
딥모델 적용분야 비교
- | Deep hyper network | ||
감독/무감독 | 감독/무감독 | <span style="color:red;">감독 | 감독/무감독 |
변별/생성 모델 | 생성 | <span style="color:red;">변별 | 생성 |
예측/모듈이해 | 예측++/<span style="color:red;">모듈- | <span style="color:red;">예측+++/모듈+ | 예측+/<span style="color:red;">모듈+++ |
추론 가능성 | 추론++ | 추론- | <span style="color:red;">추론++++ |
연결성 | Full/Compact | Partial/Convolved | Partial/Sparse |
깊이 | 깊이+++ | <span style="color:red;">깊이++++ | 깊이++ |
배치/온라인 학습 | 배치 | 배치 | <span style="color:red;">온라인 |
DeepStream SDK 참조:
애플리케이션 | 모델 | 추적기 | 추론 분해능 | 정밀도 |
사람 감지 | PeopleNet-ResNet34 (버전 2.5) | 추적기 없음 | 960x544 | INT8 |
사람 감지 | PeopleNet-ResNet34 (버전 2.5) | NvDCF | 960x544 | INT8 |
차량 번호판 인식 | TrafficCamNet | NvDCF | 960x544 | INT8 |
3D 신체 포즈 추정 | PeopleNet-ResNet34 BodyPose3D | NvDCF | 960x544 | INT8 |
액션 인식 | ActionRecognitionNet (3DConv) | 추적기 없음 | 224x224x3x32 | FP16 |
Hardware (GPU) select
하드웨어 선택에 대한 참고사항은 이 곳을 참조.
- A Full Hardware Guide to Deep Learning
- Which GPU(s) to Get for Deep Learning: My Experience and Advice for Using GPUs in Deep Learning
- [추천] 딥러닝을 위해 어떤 GPU를 골라야 할까? | GeekNews
딥러닝을 위해 어떤 GPU를 골라야 할까?
- GPU는 어떻게 동작하는가 ?
- 딥러닝 처리속도를 위해 가장 중요한 GPU스펙
- 텐서 코어
- 메모리 대역폭
- L2 캐시 / 공유 메모리 / L1 캐시 / 레지스터
- 현재것을 스킵하고 차세대를 구매한다면? GPU의 미래
- PCIe 4.0 / PCIe 5.0이 필요한가 ?
- 8x/16x PCIe 레인이 필요한가 ?
- RTX 4090 / 3090이 3개의 PCIe 슬롯을 차지한다면 어떻게 4개를 꼽을수 있을까 ?
- 4개의 RTX 4090 / 3090 를 어떻게 냉각할까 ?
- 서로 다른 GPU 타입들 여러개를 사용가능한가 ?
- NVLink는 뭐고, 유용한가 ?
- 추천하는 가장 싼 GPU만큼도 돈이 없다면 뭘 추천할 것인가 ?
- GPU의 탄소배출량은 얼마인가? 환경을 해치지 않고 GPU를 사용하려면 ?
- 두대의 머신을 병렬화 하려면 뭐가 필요한가?
- 멀티 GPU 셋업을 위해서 인텔 CPU가 필요한가 ?
- 냉각하는데 케이스 디자인이 상관있나 ?
- AMD GPU + ROCm 이 NVIDIA GPUs + CUDA를 따라 잡을수 있을까 ?
- 어떨때 클라우드 또는 전용 데스크탑/서버를 사용하는 것이 좋은가
7 Steps for becoming Deep Learning Expert
딥러닝 전문가가 되기 위한 7단계
- Level 1
- The first step is to understand Machine learning, the best resource for which is Andrew Ngs (Ex-Google, Stanford, Baidu), an online course at coursera34. Going through the lectures are enough to understand the basics, but assignments take your understanding to another level.
- Level 2
- Next step is to develop intuition for Neural Networks. So go forth, write your first Neural Network and play with it.
- Level 3
- Understanding Neural networks are important, but simple Neural Networks not sufficient to solve the most interesting problems. A variation - Convolution Neural Networks work really well for visual tasks. Standord lecture notes and slides on the same are here: CS231n Convolutional Neural Networks for Visual Recognition (notes), and CS231n: Convolutional Neural Networks for Visual Recognition (lecture slides). Also here and here are two great videos on CNNs.
- Level 4
- Next step is to get following for running your first CNN on your own PC.
- Level 5
- Digit provides few algorithms such as - LeNet for character recognition and GoogLeNet for image classification algorithms. You need to download dataset for Lenet and dataset for Googlenet to run these algorithms. You may modify the algorithms and try other fun visual image recognition tasks, like we did here.
- Level 6
- For various Natural Language Processing (NLP) tasks, RNNs (Recurrent Neural Networks) are really the best. The best place to learn about RNNs is the Stanford lecture videos here. You can download Tensorflow and use it for building RNNs.
- Level 7
- Now go ahead and choose a Deep Learning problem ranging from facial detection to speech recognition to a self-driving car, and solve it.
머신러닝 연구자들을 위한 제언
이 글은 머신러닝 연구를 막 시작한 학생들과 풋내기 연구자들을 대상으로, 연구를 하면서 발생하는 여러 가지 실수들을 방지하는 데에 도움을 주고자 작성되었습니다. 이 글이 다른 많은 머신러닝 튜토리얼과 다른 점은, 이 글에서 소개하는 내용은 학계에서 머신러닝 연구를 하는 사람들을 주 독자로 한다는 점입니다. 즉, 연구 내용을 논문으로 출판하기 위해 실험 결과를 엄격하게 평가하고 정당하게 비교해야하는 사람들을 대상으로 합니다.
- 모델을 만들기 전에 해야할 일
- 데이터를 살펴보세요
- 모든 데이터를 보지 마세요
- 충분히 많은 데이터를 확보하세요
- 도메인 전문가들과 소통하세요
- 많은 사전 조사를 하세요
- 모델이 배포되는 상황을 고려하세요
- 테스트 데이터의 정보가 유출되지 않게 하세요
- 다양한 모델을 사용해보세요
- 부적절한 모델 사용하지 않기
- 하이퍼파라미터를 최적화하세요
- 적절한 테스트 데이터를 사용하세요
- 검증 데이터를 사용하세요
- 모델을 여러 번 평가하세요
- 불균형한 데이터에는 정확도를 사용하지 마세요
- 더 큰 숫자가 더 좋은 모델을 의미하지 않습니다
- 커뮤니티 벤치마크를 신뢰하지 마세요
- 결과를 투명하게 공개하세요
- 여러가지 방법으로 성능을 측정하세요
- 데이터를 넘어선 일반화를 하지 마세요
Deep Learning Trends
2015년
세계에서 가장 영향력있는 머신러닝 학회를 꼽으라면 그 중 하나로 NIPS (Neural Information Processing Systems)를 꼽을 수 있을텐데요, 최근 NIPS에선 아주 많은 논문들이 딥러닝과 관련하여 출판되고 있습니다. 이 글은 한 참석자가 NIPS2015에서 느낀 딥러닝에 대한 10가지 트렌드를 밝힌 글을 (대충) 번역한 글입니다.
- 뉴럴넷의 구조가 점점 복잡해지고 고도화되고있다.
- 쩌는 작업들은 대부분 LSTM을 포함하고 있었다.
- 주목(attention) 모델이 나타났다.
- Neural Turing Machine은 여전히 흥미롭지만 아직 실제 작업엔 잘 쓰이지 않았다.
- 비전과 자연어처리는 더이상 다른 분야가 아니다.
- 변수형태의(symbolic) 미분은 더욱 중요해졌다.
- 놀라운 결과는 뉴럴넷 모델 압축과 함께 일어난다.
- 딥러닝과 강화학습의 결합은 계속된다.
- 만약에 batch normalization을 하지 않고있다면, 꼭 해야한다.
- 뉴럴넷 연구는 상품화가 매우 긴밀히 연결되어 진행된다.
2018년
On the Developer News Center, we cover everything from AI, robotics, autonomous vehicles, to high-performance computing. This year we highlighted over 300 stories that show how NVIDIA technology can help developers do their life’s work. Here are the most popular stories of the year.
- AI Algorithm Can Read Your Mind
- NVIDIA Invents AI Interactive Graphics
- Transforming Standard Video Into Slow Motion with AI
- AI Can Fix Your Grainy Photos (Noise reduction)
- New AI Imaging Technique Reconstructs Photos (Image restoration)
2019년
- Photo Wake-Up - 3D Character Animation from a Single Photo
- Generating Images from Long Text (GILT)
- 딥러닝의 30가지 적용 사례
- HOYA012'S RESEARCH BLOG - CVPR 2019 overview
- HOYA012'S RESEARCH BLOG - ICLR 2019 image recognition paper list guide
2020년
- Projects from Microsoft AI labs
- Microsoft Math, Celebs Like Me, Pix2Story, Snip Insights, Machine Reading, Style Transfer, Sketch2Code, Gen Studio
2021년
2022년
- Deep Learning Is Hitting a Wall - 딥러닝은 한계에 직면했다
- 글에서 설명하는 한계들은 : GPT-3는 문장을 이해하지 못하고 그저 자연스럽게 이어가는 데에 초점에 맞춰져있음. 테슬라의 자율 주행 모델은 STOP 표지판을 든 사람을 구분하지 못함. 눈에 파묻힌 버스를 제설차로 분류함. 이 원인은 딥러닝이 생각하는 게 아니라 암기한 다음 분류하는 것이기 때문.
- 그렇기에 치명적이지 않고 이미 결정된 분야에 대해서, 다음 결과를 예측할 수 있는 분야에서는 딥 러닝이 탁월한 효과를 보이지만. 그러지 못하는 영역에서는 문제가 많음. 글쓴이는 NetHack을 예로 듬. 해당 게임을 플레이해서 클리어하는 AI를 고전적인 AI와 딥러닝 AI. 두 가지로 테스트를 했고. 고전적인 AI가 더 탁월한 성능을 보였음.
- 고전적인 AI, 심볼 AI는 의미를 이해하고 진행할 수 있었음. 그렇기에 새로운 패턴이 등장해도 빠르게 대응함. 하지만 딥러닝은 기존 것에서 빈 것들을 분류하는데에는 유용하지만. 자동 생성되는 던전을 잘 해치우지는 못했음. 왜냐면 그게 무슨 의미를 가지는지는 알 수 없기 때문에.
- 글쓴이가 대안으로 제시한 건 하이브리드 AI. (참고 : AI의 과거를 통해 AI의 미래를 본다 - MIT Technology Review) 고전 AI의 심볼 분석과 정의가능한 규칙들로 딥러닝 AI의 한계를 극복하는 것임. 이렇게 하면 내부 동작 원인을 통제할 수 있을 것이고 부분적인 관계와 전체적인 관계를 좀 더 정확하게 다룰 수 있음.
- 이런 AI는 단지 글쓴이의 주장 속에만 있는게 아니라 알파고와 AlphaFold2도 하이브리드 AI. 다른 기업들도 그런 방향으로 가고 있음.
- State of Competitive Machine Learning 2022 | GeekNews
- [원문] The State of Competitive Machine Learning | ML Contests
- 도구는 Python, PyData, Pytorch 및 Gradient-boosted Decision Tree(GBDT) 로 수렴
- 주로 사용하는 Python 패키지
- PyData : Numpy, Pandas, SciPy, Scikit Learn
- Deep Learning: PyTorch
- GBDT : LightGBM, XGBoost, CatBoost
- Hyperparameter Optimisation : Optuna
- Experiment Tracking : W&B
- Visualiation : matplotlib, seaborn
- NLP Toolkit : Tranformers
- Computer Vision Toolkit : Albumentations, OpenCV, pillow, scikit-image, timm
2023년
회사에서 (2024-02-06) 지금까지 트랜드 및 진행 방향 등 리뷰받은 내용
ERTI
- 딥 러닝 이후 AI 알고리즘 트렌드-ETRI-2018.12.31.pdf
-
AI_Algorithm_Trends_After_Deep_Learning_-_ETRI-2018.12.31.pdf
NVIDIA DEVELOPER - Top 5 AI Stories of the Week
- NVIDIA DEVELOPER CENTER - Search Results for: AI Stories of the Week
- NVIDIA’s Top 5 AI Stories of the Week: 4/22
- AI Model Can Recommend the Optimal Workout
- AI Helps Improve the Shopping Experience
- OpenAI Releases MuseNet: AI Algorithm That Can Generate Music
- AI Research Could Help Improve Alexa’s Speech Recognition Model by 15%
- AI Can Interpret and Translate American Sign Language Sentences
- Oak Ridge National Laboratory Installs Two NVIDIA DGX-2 Systems
- New App Uses AI to Enable Users to Explore Sneakers In AR
- Video Series: Mixed-Precision Training Techniques Using Tensor Cores for Deep Learning
- AI Researchers Pave the Way For Translating Brain Waves Into Speech
- NVIDIA GPUs Help Developers’ Score $1 Million Prize For Improving Zillow’s Zestimate
Deep Learning for Visual SLAM
Deep Learning for RANSAC
3D Deep learning
- YouTube - 3D 딥러닝 동향 (발표자료: 3D 딥러닝 동향)
Image
Deep learning frameworks
- 딥러닝 프레임워크 조사와 몇가지 홍보
- SlideShare - 딥러닝프레임워크비교
- [추천] Deep Learning Frameworks Speed Comparison
- [추천] Awesome Machine Learning - A curated list of awesome Machine Learning frameworks, libraries and software
- [추천] Object detection: speed and accuracy comparison (Faster R-CNN, R-FCN, SSD, FPN, RetinaNet and YOLOv3)
- Deep Learning Libraries by Language
Compare
가장 큰 차이는 static (computational)graph이냐 dynamic (computational)graph이냐에 있다.
TF의 경우 static grpah를 구축한다. 매 iteration 단계에서 기존에 구축된 정적인 동일한 computational graph에 sess.run방식으로 동작(FP)시킨다.
PyTorch의 경우 dynamic graph를 사용한다. 주된 차이는 매 iteration을 통해 수행되는 FP에서 새로운 computational graph를 생성하는 것에 있다.
최종적인 코드로는 유사하지만 각각의 장단이 있다.
Static Graph
- Graph 최적화
- static graph는 일단 graph를 구축하면, 동일한 그래프를 반복적으로 다시 사용하게 되므로 framework에서 그래프에 대한 최적화를 진행할 수 있는 장점이 있다.
- 가령, 코드 순서를 변경하거나 layer를 동시에 처리하는 등의 방식으로 효율적인 계산을 유도할 수 있다.
- 물론 초기에 이러한 최적화 과정때문에 느려질 수 있으나 반복적인 iteration이 진행될수록 효율성이 극대화 된다.
- 이론적인 예를 들면, conv -> relu -> conv -> relu ... 식의 그래프를 그래프 최적화 알고리즘을 통해 conv + relu -> conv +relu -> 와 같은 식의 처리가 가능해진다고 한다.
- Serialize
- 그래프를 구축만하면, 전체 그래프 구조가 메모리에 적재된다. 이로인해, 그래프 자료구조를 disk로 serialize할 수 있다. 이를 통해 전체 구조를 file형태로 저장이 가능해진다.
- 결국 이로인해 original code에 대한 액세스 없이 해당 파일만을 이용하여 구동할 수 있게 된다.
- 직렬화의 장점은 Python에서 작성한 코드를 c++언어의 코드위에서 동작시킬때 더욱 큰 효과가 발휘된다. 기존 파이썬 코드에 대한 액세스없이 network를 불러올 수 있게 되므로 c++환경에서 쉽게 :해당 네트워크를 import 할 수 있게 되는 것이다. (이와 반대로 dynamic graph는 매번 original code에 액세스가 필요함)
Dynamic Graph
대부분의 장점은 코드가 깔끔해지고 쉬워지는데서 시작된다. 대표적으로 조건 분기에서 나타난다.
분기를 할때 단순하게 numpy코드와 동일하게 python에서 지원하는 조건문을 사용할 수 있다. 이러한 동작이 가능한 이유는 매번 새로운 그래프를 만들게 되므로, 두 경로중 하나를 택해서 진행될 수 있고 이에 대한 back prop에 대한 처리를 자동적으로 수행할 수 있기 때문이다. 이와 달리 TF와 같은 static graph에서는 조건분기가 tensorflow graph내에 명시적으로 graph 생성코드내에 포함되어야 한다. 또한, 이러한 코드는 별도의 문법 (tf.cond)를 사용해야하고 코드가 복잡해진다.
조건문과 비슷하게 재귀적인 loop에서도 이러한 장점이 발휘된다. 연산과정에서 dynamic하게 발생하는 사이즈 문제가 해소된다. TF는 이를 처리하기 위해 별도의 문법이 또 존재하게 된다. 이러한 문제들로 인해 TF에서도 최근 Dynamic Graph의 기능을 제공하기위해 TF Fold라는 기능을 제공한다. 하지만, low level에선 TF 특성상 static graph이고 high level 단에서 dynamic graph화한 것이어서 여전히 한계가 있다. 따라서 dynamic한 동작을 제어하는 함수적인 프로그래밍을 할때, TF가 매우 불리할 수 밖에 없다.
Dynamic Graph가 정말 중요한 실질적인 예는 Recurrent Network에 있다.
Music Generation
As deep learning is gaining in popularity, creative applications are gaining traction as well. Looking at music generation through deep learning, new algorithms and songs are popping up on a weekly basis. In this post we will go over six major players in the field, and point out some difficult challenges these systems still face. GitHub links are provided for those who are interested in the technical details (or if you’re looking to generate some music of your own).
- Magenta
- DeepJazz
- BachBot
- FlowMachines
- WaveNet
- GRUV
- MuseNet
- MusicLM - 텍스트에서 음악을 생성하는 AI
- Riffusion - 음악을 생성하도록 파인튜닝된 Stable Diffusion
Reinforcement Learning
- Universe: https://blog.openai.com/universe/
- OpenAI Gym: https://github.com/openai/gym
Cheat Sheets
- [추천] Cheat Sheets for AI, Neural Networks, Machine Learning, Deep Learning & Big Data
- [추천] Github - Deep Learning Interview Topics
Table of Machine learning
Documentation
Bayesian probability
- Bayesian Reasoning and Machine Learning
- http://web4.cs.ucl.ac.uk/staff/D.Barber/pmwiki/pmwiki.php?n=Brml.Online
- http://web4.cs.ucl.ac.uk/staff/D.Barber/textbook/020217.pdf
-
020217_-_Bayesian_Reasoning_and_Machine_Learning.pdf
Deep learning
- ImageNet Classification with Deep Convolutional Neural Networks (AlexNet)
- http://www.cs.toronto.edu/~fritz/absps/imagenet.pdf
- http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf
-
ImageNet_Classification_with_Deep_Convolutional_Neural_Networks.pdf - [한글 번역] 깊은 컨볼루셔널 신경망을 이용한 이미지네트(ImageNet) 분류
-
ImageNet_Classification_with_Deep_Convolutional_Neural_Networks_-_ko.pdf
- Going deeper with convolutions (GoogleNet)
- http://arxiv.org/pdf/1409.4842v1.pdf
-
Going_deeper_with_convolutions.pdf - 번역: GoogleNet
- 특집원고 딥하이퍼넷 모델 (Deep Hypernetwork models) (서울대학교/장병탁)
-
Deep_Hypernetwork_models_201508.pdf
- [Mocrosoft] Deep Residual Learning for Image Recognition (Winner ILSVRC2015)
-
Deep_Residual_Learning_for_Image_Recognition(Winner_ILSVRC2015)_Microsoft.pdf
- [Microsoft] Fast R-CNN, Towards Real-Time Object Detection with Region Proposal Networks (Winner ILSVR2015)
-
Fast_R-CNN,Towards_Real-Time_Object_Detection_with_Region_Proposal_Networks(Winner_ILSVR2015)_Microsoft.pdf
- Learning Deconvolution Network for Semantic Segmentation
- http://cvlab.postech.ac.kr/research/deconvnet/
- Deep EXpectation of apparent age from a single image
- https://data.vision.ee.ethz.ch/cvl/rrothe/imdb-wiki/
- Inside-Outside Net: Detecting Objects in Context with Skip Pooling and Recurrent Neural Networks.
-
Inside_outside_net_detecting_objects_in_context_with_skip_pooling_and_recurrent_neural_networks_2015.pdf - Small Object 탐지방법에 관한 논문.
- 조대협의 블로그 - 수학포기자를 위한 딥러닝과 텐서플로우의 이해
- http://bcho.tistory.com/1208
-
Machine_learning_ebooks_-_Machine_learning_for_those_who_abandon_math.pdf
- Densely Connected Convolutional Networks (DenseNets)
- Deep learning CVPR2017 최고 논문상
- Deep Learning Interviews book: Hundreds of fully solved job interview questions from a wide range of key topics in AI.
- 딥러닝 인터뷰 북
- 머신러닝을 배우는 석/박사 과정 및 구직자들을 위한 실전 질문과 솔루션 모음
- 인쇄본 구입도 가능하지만, 전체 PDF는 무료로 공개
Tutorials
- 딥러닝 제대로 시작하기 (지은이 오카타니 타카유키/옮긴이 심효섭)
-
Deep_Learning_-Takayuki_Okatani-2015-_sample.pdf
- 머신러닝 입문 가이드 - IDG Deep Dive
- http://www.itworld.co.kr/techlibrary/97428
-
IDG_DeepDive_Machine_learning-20160113.pdf
- 딥러닝의 이해 (미발간; 2016-08-22 ver)
-
Understanding_deep_learning_0822.pdf
- Fundamental of Reinforcement Learning
- https://www.gitbook.com/book/dnddnjs/rl/details
-
Fundamental_of_Reinforcement_Learning.pdf - 모두의연구소 - 강화 학습의 기본
- Deep Learning Papers Reading Roadmap (딥러닝 논문 로드맵)
- https://github.com/songrotek/Deep-Learning-Papers-Reading-Roadmap/blob/master/README.md
-
Deep_Learning_Papers_Reading_Roadmap.md.zip
- [추천] Machine Learning-based Web Exception Detection (금융보안원 프로젝트 관련 참조사이트!)
- https://cloudfocus.aliyun.com/Machine-Learning-based-Web-Exception-Detection-89782?spm=a2c1b.a2c1b4.a2c1b4.16.ZSQoEd
-
Machine_Learning-based_Web_Exception_Detection_-Insights_and_Trends-_Alibaba_Cloud_Focus.pdf
- 머신러닝 기초 1~57편 (잡동사니 탐구 - 참스터디 ePaiai : 네이버 블로그)
- http://sams.epaiai.com/220498694383
- Microsoft, ML for Beginners 강의 공개
- MS Azure Clouds Advocates 팀이 만든 12주, 24강짜리 커리큘럼
- Scikit-learn을 이용한 클래식 머신러닝 강의 (딥러닝은 별도 AI 강의로 나올 예정)
- https://github.com/microsoft/ML-For-Beginners
Compress model
- Deep Compression and EIE - Deep Neural Network Model Compression and Efficient Inference Engine
-
Deep_compression_and_EIE_PPT.pdf
- Learning bothWeights and Connections for Efficient Neural Networks
-
Learning_both_weights_and_connections_for_efficient_neural_networks_2015.pdf
Convolutional neural network
- Reveal.js를 사용한 CNN 프레젠테이션 (Presentation).
- Author - 나
-
Reveal-ml.tar.gz
- Gradient-Based Learning Applied to Document Recognition
- http://yann.lecun.com/exdb/publis/pdf/lecun-01a.pdf
-
Gradient-Based_Learning_Applied_to_Document_Recognition.pdf
- Visualizing and Understanding Convolutional Neural Networks
- http://arxiv.org/abs/1311.2901
-
1311.2901v3.pdf
- Compressing CNN for Mobile Device (Samsung) - CNN 모델 압축의 필요성 etc ...
- [http://mlcenter.postech.ac.kr/files/attach/workshop_fall_2015/삼성전자_김용덕_박사.pdf](http://mlcenter.postech.ac.kr/files/attach/workshop_fall_2015/삼성전자_김용덕_박사.pdf)
-
Samsung_-_Compressing_CNN_for_Mobile_Device.pdf
- Using Filter Banks in Convolutional Neural Networks for Texture Classification
- https://arxiv.org/abs/1601.02919
Deep belief network
- The Applications of Deep Learning on Traffic Identification
-
Us-15-Wang-The-Applications-Of-Deep-Learning-On-Traffic-Identification-wp.pdf - https://www.blackhat.com/docs/us-15/materials/us-15-Wang-The-Applications-Of-Deep-Learning-On-Traffic-Identification-wp.pdf
Deconvolution neural network
- Learning Deconvolution Network for Semantic Segmentation
- http://cvlab.postech.ac.kr/research/deconvnet/
- https://arxiv.org/abs/1505.04366
-
1505.04366.pdf
Segmentation
- Learning to Segment (Facebook Research)
- https://research.fb.com/learning-to-segment/
- DeepMask+SharpMask as well as MultiPathNet.
- Recurrent Instance Segmentation
- https://arxiv.org/abs/1511.08250
-
1511.08250.pdf - Slideshare - Single Shot MultiBox Detector와 Recurrent Instance Segmentation
- vid2vid
- https://github.com/NVIDIA/vid2vid
- Pytorch implementation for high-resolution (e.g., 2048x1024) photorealistic video-to-video translation.
- It can be used for turning semantic label maps into photo-realistic videos, synthesizing people talking from edge maps, or generating human motions from poses.
Fire Detection
Fire Detection#Deep learning based에 정리한다.
Background subtraction
Background subtraction#Deep learning based에 정리한다.
LSTM
Long short-term memory에 정리한다.
Learning
- Siamese Neural Networks for One-Shot Image Recognition
- https://jayhey.github.io/deep%20learning/2018/02/06/saimese_network/
- 딥러닝에서 네트워크를 학습시킬 때, 매우 많은 트레이닝 데이터가 필요합니다. 이러한 단점을 극복하여 한 레이블 당 하나의 이미지만 있어도 분류할 수 있게 학습시키는게 one-shot learning입니다.
NVIDIA AI Developer Newsletter
- [추천] AI Can Transform Anyone Into a Professional Dancer
- https://news.developer.nvidia.com/ai-can-transform-anyone-into-a-professional-dancer/
- https://arxiv.org/abs/1808.07371
- Transforming Standard Video Into Slow Motion with AI
- https://news.developer.nvidia.com/transforming-standard-video-into-slow-motion-with-ai/
- NVIDIA SPLATNet Research Paper Wins a Major CVPR 2018 Award
- https://news.developer.nvidia.com/nvidia-splatnet-research-paper-wins-a-major-cvpr-2018-award/
- AI Learns to Play Dota 2 with Human Precision
- https://news.developer.nvidia.com/ai-learns-to-play-dota-2-with-human-precision/
- [추천] This AI Can Automatically Remove the Background from a Photo
- https://news.developer.nvidia.com/this-ai-can-automatically-remove-the-background-from-a-photo/
- NVDLA Deep Learning Inference Compiler is Now Open Source
- https://devblogs.nvidia.com/nvdla/
Nature
- Deep learning of aftershock patterns following large earthquakes
- https://www.reddit.com/r/MachineLearning/comments/9bo9i9/r_deep_learning_of_aftershock_patterns_following/
- https://www.nature.com/articles/s41586-018-0438-y
- https://drive.google.com/file/d/1DSqLgFZLuNJXNi2dyyP_ToIGHj94raWX/view
Cancer
- Deep Neural Networks Improve Radiologists’ Performance in Breast Cancer Screening
- https://medium.com/@jasonphang/deep-neural-networks-improve-radiologists-performance-in-breast-cancer-screening-565eb2bd3c9f
Text Generation
Favorite site
Machine learning
- Wikipedia (en) 기계학습에 대한 설명
- 기계 학습 (Machine Learning) - OpenCV 기계 학습 알고리즘 5
- UNIVERSITY OF OXFORD: COMPUTER SCIENCE: Machine Learning: 2014-2015 Course materials (옥스포트 대학 머신러닝 교재및 비디오)
- 기계 학습의 역사 1
- 기계 학습의 역사 2
- 파라미터 조정과 학습
- Team AI Korea : We do Artificial Intelligence
- [추천] Mad for Simplicity - Enginius/Machine Learning (머신러닝 관련 컨텐츠 다수 보유, 깔끔하게 잘 정리했음)
- [추천] HUB-AI - AI STUDY (AI관련 스터디 자료 다수 보유)
- 수학을 포기한 직업 프로그래머가 머신러닝 학습을 시작하기위한 학습법 소개
- 머신러닝을 위한 기초 수학 살펴보기 by mingrammer
- [추천] Browse state-of-the-art
E-book
- [추천] 로보틱스와 머신 러닝/인공지능 무료 교재 추천 15권
- The Element of Statistical Learning: Data Mining, Inference, and Prediction – T. Hastie, R. Tibshirani, J. Friedman (2009)
- Introduction to Machine Learning – A. Shashua (2008)
- Deep Learning – An MIT Press book in preparation - Y. Bengio (2015)
- Learning Deep Architectures for AI – Y. Bengio (2009)
- Gaussian Process for Machine Learning – C. Rasmussen, C. Williams
- Reinforcement Learning – C. Weber, M. Elshaw, N. Mayer (2008)
- Reinforcement Learning: An Introduction – R. Sutton, A. Barto (1998)
- Bayesian Reasoning and Machine Learning – D. Barber (2014)
데이터 분석
Artificial neural network
- Wikipedia (en) 인공신경망에 대한 설명
- 신경망 - Data Mining 6
- 인공신경망(Artificial neural network)의 Sigmoid Function 7
- [추천] 신경망 이론 : 오창석 8 (몇 가지 활성화 함수 (Activation function)에 대한 풀이 존재)
- MLWiki (주로 Deep Learning를 포함한 뉴럴 네트워크를 설명할 것이다)
- Study/Artificial Intelligence: 인공 신경망(Artificial Neural Network)
- A Neural Network in 11 lines of Python (Part 1) (Python코드로 직접 Neural Network를 작성한다)
Convolutional neural network
- Wikipedia (en) CNN에 대한 설명
- LeNet-5, convolutional neural networks
- TensorFlow - (5) MNIST - CNN
- [추천] VGG Convolutional Neural Networks Practical 9 (순차적으로 CNN을 풀어가는 예제)
- Convolutional Neural Networks (Convolutional, Max-Pooling, Fully-Connected의 공식과 Backpropagation)
- SlideShare: Backpropagation in Convolutional Neural Network
- 손고리즘ML : Middle Learning = Shallow + Deep Machine Learning
Segmentation
Deep learning
- Wikipedia (en) 딥러닝에 대한 설명
- 입문자를 위한 딥러닝 튜토리얼
- 딥 러닝을 이용한 한국어 의존 구문 분석
- 딥 러닝 (Deep Learning) , 한번 살펴보고 가실께요
- Welcome to Deep Learning
Deep learning libraries
- Wikipedia (en) Comparison of deep learning software
- Deep Learning Comp Sheet: Deeplearning4j vs. Torch vs. Theano vs. Caffe vs. TensorFlow
- 어떤 Deep Learning Library를 선택해야하나요?
- [추천] Evaluation of Deep Learning Toolkits
Andrew Ng
Machine Learning Exercises In Python
- Part 1 - Simple Linear Regression 22
- Part 2 - Multivariate Linear Regression 23
- Part 3 - Logistic Regression 24
- Part 4 - Multivariate Logistic Regression 25
- Part 5 - Neural Networks 26
- Part 6 - Support Vector Machines 27
- Part 7 - K-Means Clustering & PCA 28
- Part 8 - Anomaly Detection & Recommendation 29
Guides
- Deeplearning4j #2 예제 MNIST
- Classifying MNIST digits using Logistic Regression
- 심화 학습 (Deep Learning)
- 삼성소프트웨어멤버십: 인공신경망 Neural Network #1 (C++ 코드로 간단한 Neuron구현)30
- 삼성소프트웨어멤버십: 인공신경망 Neural Network #2 (C++ 코드로 간단한 Feedforward neural network구현) 31
- Number plate recognition with Tensorflow (자동차 번호판 인식)
- [추천] GPU: how much faster than CPU? 32 (잘 알려진 딥러닝 모델 구조들에 대해서, GPU와 CPU에서의 forward time을 비교)
Tutorials
- WikiDocs - Deep Learning 이론과 실습 (개정중)
- [추천] WikiDocs - Machine Learning 강의노트
- [추천] Gihub - 1ambda - Data Analysis 33
- UFLDL Tutorial (Unsupervised Feature Learning and Deep Learning)
- opentutorials - 머신러닝
- [추천] GitBook - leonardoaraujosantos > Artificial Inteligence 34
- [추천] '머신러닝_김성훈교수님' 카테고리의 다른 글
- [추천] 170915 Tensorflow 세미나 딥러닝 이론에서 실습까지 - POSTECH 35
- 강화 학습(Reinforcement Learning)을 이해하는 데 필요한 선수 지식을 정리한 페이지
- [추천] Neural Networks : Zero to Hero - 신경망 개발을 밑바닥 부터 코딩 | GeekNews
- Tesla의 AI 총괄이었던 Andrej Karpathy가 만드는 신경망 개발 코스
- 역전파(backpropagation)의 기본부터 시작해서 최신 GPT같은 딥신경망까지 개발
- 언어모델은 딥러닝을 배우기에 좋음. 나중에 컴퓨터 비전 같은 곳으로 확장해 가더라도 대부분의 학습내용이 즉시 적용 가능
- [원문] Neural Networks: Zero To Hero
- [원문] aie-book/resources.md at main · chiphuyen/aie-book
- Chip Huyen이 "AI Engineering" 책을 쓰면서 참고했던 1200개 이상의 링크와 1000개 이상의 AI Github Repo중에서 가장 도움 되는 것들만을 추린 것
Data pool
- Fueling the Gold Rush: The Greatest Public Datasets for AI 36 (AI를 위한 데이터 셋 모음!)
Service
- Aifiddle - Design, Train & Share AI Models from your browser (딥러닝 모델을 브라우저에서 손쉽게 조립할 수 있다)
- PlayGround - Tinker With a Neural Network Right Here in Your Browser. Don’t Worry, You Can’t Break It. We Promise (모델의 레이어 사이 데이터 전달 그래프가 비쥬어블하게 출력됨)
- DeepL Translate: The world's most accurate translator
- 검색엔진 Kagi가 제공하는 "웹상의 모든 것에 대한 요약 생성" 도구
- Universal Summarizer - 모든 것을 요약해드립니다 | GeekNews
기안서에 사용하기 좋은 샘플 이미지
- [https://www.google.com/imgres?imgurl=https%3A%2F%2Fd3i71xaburhd42.cloudfront.net%2F791a9a8d8fe3110985211b3256b67c0e979fdf8a%2F2-Figure1-1.png&imgrefurl=https%3A%2F%2Fwww.semanticscholar.org%2Fpaper%2FImage-Sequences-Based-Traffic-Incident-Detection-Zou-Shi%2F791a9a8d8fe3110985211b3256b67c0e979fdf8a%2Ffigure%2F0&tbnid=U1aALMVaNKcjhM&vet=10CBAQxiAoAWoXChMImOranIz17gIVAAAAAB0AAAAAECg..i&docid=jy0zapjJfnlb9M&w=564&h=426&itg=1&q=Person%20Tracking%20&client=firefox-b-d&ved=0CBAQxiAoAWoXChMImOranIz17gIVAAAAAB0AAAAAECg#imgrc=zFEtt7J5NRRniM&imgdii=IsNk3wEGRScDPM 구글 이미지 검색] - 교차로에서 자동차 객체 탐지 샘플들
Online demo
References
-
Artificial_Intelligence_6-Deep_Learning.pdf ↩
-
The_Best_GPUs_for_Deep_Learning_in_2023_-_An_In-depth_Analysis.pdf ↩
-
Stanford-machine_learning-andrew_ng-lectures.tar.gz ↩
-
Machine_Learning_-_OpenCV_ML_algorithms.pdf ↩
-
S1_nn.pdf ↩
-
Sigmoid_Function_of_Artificial_Neural_Network.pdf ↩
-
Aistudy.co.kr_-_theory_oh.pdf ↩
-
VGG_Convolutional_Neural_Networks_Practical.pdf ↩
-
ConvNets_24_April.pdf ↩
-
Forward_and_Backward_Propagation_of_the_Convolutional_Layer.pdf ↩
-
The_easiest_way_to_understand_CNN_backpropagation.pdf ↩
-
A_Look_at_Image_Segmentation_using_CNNs_–_Mohit_Jain.pdf ↩
-
Artificial_Intelligence_6-Deep_Learning.pdf ↩
-
The_Devil_is_always_in_the_Details_-_Must_Know_Tips_and_Tricks_in_DNNs.pdf ↩
-
Openresearch.ai-190921.zip ↩
-
Stanford-machine_learning-andrew_ng-lectures.tar.gz ↩
-
SanghyukChun.github.io-006e2ae.tar.gz ↩
-
1ambda.github.io-19962c5.tar.gz ↩
-
Machine_Learning_Exercises_In_Python_-_Part_1.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_2.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_3.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_4.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_5.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_6.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_7.pdf ↩
-
Machine_Learning_Exercises_In_Python_-_Part_8.pdf ↩
-
Samsung_software_membership_-_Neural_network_01.pdf ↩
-
Samsung_software_membership_-_Neural_network_02.pdf ↩
-
GPU_-how_much_faster_than_CPU-_NeoBrain.pdf ↩
-
1ambda.github.io-master-5c58cab.zip ↩
-
Gitbook_-leonardoaraujosantos-_artificial-inteligence.pdf ↩
-
170915_Tensorflow_Seminar_From_Deep_Learning_Theory_to_Practice_-_POSTECH.pdf ↩
-
Fueling_the_Gold_Rush_-The_Greatest_Public_Datasets_for_AI-Startup_Grind-_Medium.pdf ↩