learning_framework icon indicating copy to clipboard operation
learning_framework copied to clipboard

Learning Python A.I Framework

현재 리뉴얼 중입니다!

Learning Python A.I Framework

  • 본 Repository 는 지극히 개인적인 공부용이라 모든 코드들이 불친절하고 가독성이 좋지 않습니다.
  • 대부분 Network만 구성해볼뿐 학습을 해보진 않습니다. (물론 추후에 학습도 해볼 예정)

Framework list

  • PyTorch: 2.2
  • TensorFlow: 2.16
  • ~~MXNet: 1.9~~ -> 폐기
  • JAX: 0.4.26
  • MLX: 0.9.1
Additional information

PyTorch

  • 배포 : Facebook
  • 공식 홈페이지 : https://pytorch.org
  • 주 사용 프레임워크

TensorFlow

  • 배포 : Google
  • 공식 홈페이지 : https://www.tensorflow.org
  • 서브 프레임워크
  • ~~Low level(tf.nn),~~ High level(tf.keras), model subclassing API 로 작성하려함.

~~MXNet~~

  • ~~배포 : Apache~~
  • ~~공식 홈페이지 : https://mxnet.apache.org~~
  • ~~그냥...써보려고 함....~~
  • ~~Gluon, Module 로 작성하려함.~~
  • ~~매우...진행이 느릴 것으로 예상.~~
  • 프로젝트 중단

JAX

  • 배포 : Google
  • 공식 홈페이지 : https://github.com/google/jax
  • 그냥....써보려고....
  • Transformer가 jax 기반이길래...

MLX

  • 배포 : Apple
  • 공식 홈페이지 : https://github.com/ml-explore/mlx
  • 맥북에서 공부하기 위한...방법!

Requirement

# 공통 설치 패키지
pip install numpy matplotlib scikit-learn Pillow opencv-python tqdm

# 필요에 따라 원하는 Deep Learning 프레임워크 설치

Example List

01 Basic Usage

Contents
  1. Linear Regression
    tf.keras, tf.nn, PyTorch, MXNet Gluon, JAX

  2. Logistic Regression
    tf.keras, tf.nn, PyTorch, MXNet Gluon

02 Intermediate

Contents
  1. Multi Layer Network
    tf.keras, tf.nn, PyTorch, MXNet Gluon

  2. Simple Convolutional Neural Network
    tf.keras, tf.nn, PyTorch, MXNet Gluon

03 Advance

Advance Convolutional Neural Network

Contents
  1. VGGNet (https://arxiv.org/abs/1409.1556)
    tf.keras, PyTorch, MXNet Gluon

  2. GoogLeNet (https://arxiv.org/abs/1409.4842)
    tf.keras, PyTorch, MXNet Gluon

  3. ResNet (https://arxiv.org/abs/1512.03385)
    tf.keras, PyTorch, MXNet Gluon

  4. Inception V2 (https://arxiv.org/abs/1512.00567)
    tf.keras, PyTorch, MXNet Gluon

  5. Inception V3 (https://arxiv.org/abs/1512.00567)
    tf.keras, PyTorch, MXNet Gluon

  6. DenseNet (https://arxiv.org/abs/1608.06993)
    tf.keras, PyTorch, MXNet Gluon

  7. Xception (https://arxiv.org/abs/1610.02357)
    tf.keras, PyTorch, MXNet Gluon

  8. MobileNet V1 (https://arxiv.org/abs/1704.04861)
    tf.keras, PyTorch, MXNet Gluon

  9. MobileNet V2 (https://arxiv.org/abs/1801.04381)
    tf.keras, PyTorch, MXNet Gluon

  10. MobileNet V3 (https://arxiv.org/abs/1905.02244)
    tf.keras, PyTorch

  11. SqueezeNet (https://arxiv.org/abs/1602.07360)
    tf.keras, PyTorch

  12. SENet (https://arxiv.org/abs/1709.01507)
    tf.keras, PyTorch

Segmentation

Contents
  1. DeconvNet (http://cvlab.postech.ac.kr/research/deconvnet/)
    PyTorch

  2. U-Net (https://arxiv.org/abs/1505.04597)
    tf.keras, PyTorch

Generative Adversarial Network

Contents
  1. Vanilla GAN
    tf.keras, PyTorch

  2. LSGAN
    tf.keras, PyTorch

  3. DCGAN
    tf.keras,
    PyTorch

  4. CGAN
    tf.keras,
    PyTorch

04 Extra

Data Loading

Contents

PyTorch

[TensorFlow] ( Not Yet )

Transfer Learning ( Not Yet )

Contents

Super Resolution

Contents
  1. SRCNN
    TensorFlow, PyTorch

  2. VDSR
    TensorFlow, PyTorch

  3. EDSR
    TensorFlow, PyTorch

  4. SubPixel
    TensorFlow, PyTorch

Image Translation

Contents
  1. Neural Style Transfer
    PyTorch

  2. Pix2Pix

  3. CycleGAN

Attention Module

Contents
  1. BAM

  2. CBAM

  3. Transformer