Search this site
Embedded Files
Lê Phong Phú
  • About Me!
  • AI Expert Roadmap
    • PyTorch
      • PyTorch Fundamentals
        • 1. Introduction to PyTorch
        • 2. Introduction to Computer Vision with PyTorch
        • 3. Introduction to Natural Language Processing with PyTorch
        • 4. Introduction to Audio Classification with PyTorch
      • Intermediate DL with Pytorch
        • 1_TrainingRobustNN
        • 2_Image&CNN
        • 3_Sequences&RNN
        • 4_Multi-Input&Multi-Output
    • Machine Learning
      • 01_ML_General
      • 02_ML_Supervised Learning
      • 03_ML_Unsupervised Learning
    • Mamba
      • 00_Sequence Modelling, S4 and Mamba
    • Transformers (CV&NLP)
      • NLNet
      • 01_Pure Transformer
        • ViT
        • Segformer
      • 02_Hybrid Transformer
        • DETR
        • Deformable DETR
        • DINO (Detection)
      • 99_Unfilter
        • LG-Transformer
        • Image GPT
        • Points as Queries
        • VST
        • MAXViT
        • ViTMAE-Detect
        • MAGNETO
        • AIT
        • MTV
        • PiT
        • Swin
        • PVTv2
        • PVT
        • FAVOR+
        • T2T-ViT
        • CaiT
        • CCT
        • DeiT
        • SSA
        • SA3D
    • [NLP] Natural Language Processing
      • 01_[LLMs] Large Language Models
      • [MoEs] Mixture of Experts
      • LLM Techniques
      • Attention is All You Need
      • Positional Encoding
      • Tokenization
      • MICLe
    • [CV] Computer Vision
      • MLP-based Classification
        • MLP-Mixer
        • FNet
        • EANet
      • 01_[SL] Supervised Learning
        • 01_Classification
          • Convolution Variants
          • 1x1 Convolution
          • EfficientNetV2
          • ConvNeXtV2
        • 02_Detection
          • ConvMixer
          • SOLO
          • YOLOX
          • YOLOR
          • AugFPN
          • BoT_Cls
          • BoF_OD
          • YOLOv3
          • YOLOv4
          • YOLOv5
          • YOLOv6
          • YOLOv7
          • YOLOv8
          • YOLOv9
          • YOLO-NAS
          • TPH-YOLOv5
          • TPH-YOLOv5++
          • ViTDET
        • 03_Segmentation
          • Object Instance Survey 2022
          • 01_Instance Segmentation
          • 02_Semantic Segmentation
          • 03_Panoptic Segmentation
          • 04_3D Segmentation
          • 05_Unsupervised Segmentation
          • BMask RCNN
          • ISTR
          • Transfuse
        • 04_[IS] Interactive Segmentation
          • Interactive Segmentation Techniques
          • 02_3D Interactive Segmentation
          • 03_Video Object Segmentation
          • SAM
          • HA_SAM
          • CFR-ICL
          • MST
          • ECONet
          • SimpleClick
          • FocusCut
          • f-BRS
          • iSegformer
        • 05_Object Tracking
          • 00_ObjectTracking
          • Sort
          • DeepSort
          • FairMOT
          • ByteTrack
          • StrongSORT
          • Tracktor
          • JDE
          • CenterTrack
          • PermaTrack
          • TransTrack
          • TrackFormer
          • BoT-SORT
        • 06_Face Recognition
        • 07_Image Stitching
        • 08_Image Restoration
        • 06_Refinement
          • BPR
        • 10_Scene Understanding
          • CPNet
        • 11_Human Pose Estimation
          • 3D Human Pose
          • Human Pose
        • 12_[SR] Super Resolution
          • Bicubic++
        • 13_VideoPropagation
        • 14_Image Mating
        • 15_Knowledge Distillation
        • 16_Others
      • 02_[UL] Unsupervised Learning
        • 00_Unsupervised Learning
        • 02_Deep Clustering
          • 00_K_Clusters Decision
          • Deep Cluster
          • Cluster Fit
          • DEC
          • Improving Relational Regularized Autoencoders with Spherical Sliced Fused G
          • Taxanomy
          • DeepDPM
          • BCL
          • VaDE
          • t-SNE
          • Tree-SNE
        • 04_Diffusional Models
      • 03_[SSL] Self-Supervised Learning
        • 00_Self-Supervised Learning
        • 01_Contrastive Learning
          • CPC
          • DIM
          • CMC
          • AMDIM
          • SimCLR
          • MoCo
          • MoCov2
          • YADIM
          • VICReg
          • CSL
          • Towards Domain-Agnostic Contrastive Learning
          • Non-Parametric Instance Discrimination
          • Video Contrastive Learning with Global Context
          • SupCon
          • Barlow Twin
        • 02_Predictive Tasks
        • 03_Bootstrapping
          • BYOL
        • 04_Regularization
        • 05_Masked Image Models
          • Patch Localization
          • MAE
          • SimMIM
          • DINO
        • 06_Pretext Tasks
          • PIRL
        • 07_Clustering-based
          • SwAV
      • 04_Semi-Supervised Learning
        • Fully-/Semi-/Weakly-/ Learning
        • 01_Self-training
          • Pseudo-label
          • Noisy Student
        • 02_Consistency Regularization
          • Temporal Ensembling
          • Mean Teacher
          • VAT
          • UDA
        • 03_Hybrid Methods
          • MixUp
          • MixMatch
          • ReMixMatch
          • FixMatch
          • FixMatch (unmerge)
      • 05_Multi-learning Paradigm
        • 00_Multi-learning
        • 01_Multitask
        • Gradient Surgery
        • EtE Multi-task Learning with Attention
        • MTL for Dense Predictions
        • MTL using Uncertainty
        • Which Task learned together
        • GradNorm
        • OM-Net
        • 06_Multi-task Learning
      • 06_Generative Models
        • 00_Generative Models
        • 01_Autoencoders
          • AE vs Others
          • Sparse AE
          • Denoising AE
          • Contractive AE
          • Variational AE
          • DELG
        • 02_GAN
      • Graph Convolutional Networks
        • 00_Graph Convolutional Networks
      • Neural Radiance Fields (NeRFs)
      • Deep Belief Networks
    • Multimodal Models
    • Bag of Freebies - BOF
      • 01_Augmentation
        • Mosaic
        • Cut Out
        • Mix Up
      • 02_Loss Functions
        • 01_Classification Loss
        • 02_Segmentation Loss
        • 03_Object Detection Loss
        • 04_Self-Supervised Loss
        • 05_Interactive Segmentation Loss
      • 03_Optimizer
      • 04_Normalization
        • 00_Normalization
      • 05_Regularization
      • 06_Label Assignment
        • 00_Label Assignment
        • OTA
        • SimOTA
      • 07_Auxiliary Head
    • Bag of Specials - BoS
      • Feature Pyramid
        • RCNet
      • Receptive Field
      • Attention
        • 00_Attention Modules
        • SENet
        • CBAM
        • DANet
        • SDANet
        • AttaNet
        • HaloNets
        • GCNet
        • DeepSquare
        • LBAM
        • External-Attention
        • PCT
        • Residual Attention
        • DCANet
        • GANet
        • Triplet Attention
        • Lambda Networks
        • ACTION
        • VAN
        • SegNeXt
      • Local-/Global- Features
        • Unifying Nonlocal Blocks for Neural Networks
        • Local Features
        • Global Features
      • Activation Functions
        • SiLU dSiLU
      • Post-Processing
        • Soft-NMS
        • NMW
        • WBF
      • Sliding Window
      • Graph Networks
      • Feature Fusion/Integration
      • Data-Centric
    • Others
      • Selected Top-Conference Papers
        • AAAI2021_Papers
        • CVPR2021_Papers
        • ECCV2020_Papers
        • ICCV2021_Papers
        • ICLM2022_Papers
      • Cheat Sheets
        • Pandas
      • Conference Schedule
  • Data Science
    • 03_DS_Discrete Distribution
    • Data Scientist Professional
      • 3. Statistical Experimentation Theory
      • 4. Statistical Experimentation in Python
      • 5. Model development in Python
      • 7. Data Management in SQL
    • Data...
    • ETL
    • Airflow
  • Cloud Computing
    • Azure Data Fundamental
    • Amazon Web Services
      • AWS - Cloud 101
      • AWS - Machine Learning Foundation (Lab)
        • 1. Introduction to MLF
        • 2. AI and ML
        • 3. ML Pipeline
        • 4. ML Tools and Services
        • 5. Wrapping it Up
      • AWS - Cloud Practitioner Essentials
      • AWS - GenAI
    • Google Cloud
    • IBM Watson
  • Big Data
    • PySpark
      • Introduction to PySpark
        • 1. Getting to know PySpark
        • 2. Manipulating Data
        • 3. Getting Started with ML Pipelines
        • 4. Model Tuning and Selection
      • Big Data Fundamentals with PySpark
        • 1. Introduction to BigData Analysis with Spark
        • 2. Programming in PySpark RDD’s
        • 3. PySpark SQL & DataFrames
        • 4. Machine Learning with PySpark MLlib
  • English
    • Reading
    • Listening
    • Speaking
      • Speaking_Part1
        • 1_Speaking Part 1
        • 2_Speaking Part 1
        • 3_Speaking Part 1
        • 4_Speaking Part 1
        • 5_Speaking Part 1
        • 6_Speaking Part 1
        • 7_Speaking Part 1
        • 8_Speaking Part 1
        • 9_Speaking Part 1
        • 10_Speaking Part 1
        • 11_Speaking Part 1
        • 12_Speaking Part 1
        • 13_Speaking Part 1
        • 14_Speaking Part 1
        • 15_Speaking Part 1
        • 16_Speaking Part 1
        • 17_Speaking Part 1
        • 18_Speaking Part 1
        • 19_Speaking Part 1
        • 20_Speaking Part 1
        • 21_Speaking Part 1
        • 22_Speaking Part 1
        • 23_Speaking Part 1
      • Speaking_Part2
        • 1_Speaking Part 2
        • 2_Speaking Part 2
        • 3_Speaking Part 2
        • 4_Speaking Part 2
        • 5_Speaking Part 2
        • 6_Speaking Part 2
        • 7_Speaking Part 2
        • 8_Speaking Part 2
        • 9_Speaking Part 2
        • 10_Speaking Part 2
        • 11_Speaking Part 2
        • 12_Speaking Part 2
        • 13_Speaking Part 2
        • 14_Speaking Part 2
        • 15_Speaking Part 2
        • 16_Speaking Part 2
        • 17_Speaking Part 2
        • 18_Speaking Part 2
        • 19_Speaking Part 2
        • 20_Speaking Part 2
        • People
        • Places
          • Visited House
        • Events
        • Activities
          • Interesting Job
        • Things
      • Speaking_Part3
        • Advertisements
        • Outdoor Activities
        • Navigation and Exploration
        • Fast Food
        • Air Pollution
        • Free Time
        • Interesting Movie
        • Gifts
        • Independence in Children
        • Noisy
        • Complain
        • T-shirts
        • Value of Money
        • Restaurant
        • Global
        • Relaxation
        • Special Places
      • Mixed-Test
        • 01_Mix_Language
    • Writing
      • Writing_Task1
        • Paraphrase
        • Overview Sentence
        • Grammar
        • Charts
          • Line - Average Montly Temperatures
          • Line - Fuels
          • Line - Birth Rate
          • Line - River Water
          • Line - U.S Energy
          • Line - Areas of Crime
          • Line - Renewable Energy
          • Line - Oversea Visitors
          • Chart - People ate in the UK
          • Chart - Music Event Attendance
          • Chart - Wind Energy
          • Chart - Children Attend Sports in Australia
          • Chart - Weekly Hours in Australia
          • Chart - Films released vs Tickets sold
          • Chart - Average Retirement Age
        • Process
        • Maps
          • Library Ground
        • Table
        • Multiple Graphs
          • Life Expectancy
      • Writing_Task2
        • Opinion Essay
          • Higher Salary
          • Goal of Schools
          • Local History
          • Retirement Age
          • Happy Society
          • Food Necessary
          • Pay for more Art
          • Eradicate Poverty
          • Team Activities
          • Wild Animals and Birds
        • Discussion Essay
          • Sports
          • Make Money
          • Crime punished
          • Equipment for Student
          • Keep a Gun
        • Advantages and Disadvantages Essay
          • Live Away
          • Transform to Farms
        • Problem-Solution Essay
          • Extreme Sports
          • Spend Time Away From Families
      • Complex Sentence
      • If, Wish, Hope
    • Synonym Common Mistakes
    • Phrasal Verbs
    • TOEIC 990
  • Interview
    • Deep Learning Questions
      • C1_Mathematical Foundation
      • C2_Fundamentals of ML
      • C3_Fundamentals of DL
      • C4_Classic Network
      • C5_CNN
      • C6_RNN
      • C7_Target Detection
      • C8_Image Segmentation
      • C9_Reinforcement Learning
      • C10_Migration Learning
      • C13_Optimization Algorithm
      • C14_Super Parameter Adjustment
      • C15_Hetorogeneous Computing
    • Data Science Questions
  • Courses (Uni and Mooc)
    • AI Open Courses
    • DS Certificates
    • IBM Gen AI Engineering Professional Certificate
      • 10. Generative AI and LLMs: Architecture and Data Preparation
      • 11. Gen AI Foundational Models for NLP & Language Understanding
      • 12. Gen AI Language Modeling with Transformers
        • Module 1 - Fundamental Concepts of Transformer Architecture
        • Module 2 - Advanced Concepts of Transformer Architecture
      • 13. Generative AI Engineering and Fine-Tuning Transformers
      • 14. Generative AI Advanced Fine-Tuning for LLMs
      • 15. Fundamentals of AI Agents using RAG and Langchain
        • Module 1 - RAG Framework
        • Module 2 - Prompt Engineering and LangChain
      • 16. Project: Generative AI Applications with RAG and LangChain
    • Data Science Foundations: Data Structures and Algorithms Specialization
    • Flask - AI Applications
      • 1. Packaging Concepts
      • 2. Web App Deployment
      • 3. Creating AI Application
        • Sentiment Analysis
        • Emotion Detector
      • Deploy Deep Learning Models using Flask
    • Docker, Kubernetes & OpenShift
      • 1. Containers and Containerization
      • 2. Kubernetes Basics
      • 3. Managing Applications with Kubernetes
      • 4. The Kubernetes Ecosystem
      • 5. Final Assignments
    • Data Structures
      • 1. Introduction to DS&A
    • Algorithms
      • QE - Algorithms
      • Sorting Algorithms
        • Binary Search
        • Insertion Sort
        • Merge Sort
        • Quick sort
        • Heap sort
      • Divide and Conquer
      • Greedy Algorithm
      • Dynamic Programming
    • Operating System
      • QE - Operating System
      • 00_Operating System
    • CS231n Deep Learning for Computer Vision
      • 13. Self-Supervised Learning
    • CS480 Introduction to Machine Learning
      • 19. Attention and Transformer Networks
    • CS330 Multi-task and Meta Learning
      • 1. What is Multi-task Learning
    • Processing the Environment
      • Attention
    • Open VINO
    • Metaverse
      • 00_Metaverse
      • Spark AR
  • Research Projects
    • PPE Detection
      • Few-shot Data Sampling
    • Multiple Object Tracking
      • In-place Augmentation
    • Deep Clustering
      • Metrics
    • Defect Detection
      • 01_Defect_Improvement
      • Dataset: MVTec
      • Mixed supervision for surface-defect detection:
      • Practical Defect Detection
      • (Survey) Fabric Defect Detection
      • (Summary) Fabric Defect Detection
    • Medical Images
      • 01_Lung_Improvement
      • SANet
      • AnaXNet
      • 3D_EtoE Lung Cancer Screening
      • Semantics-enriched Representation
      • Attend And Compare
      • Recent Works
      • Kaggle_Medical Images
  • AI Engineer
  • Financial Invesment
    • 01_TPTrading
    • 02_BCTC
    • 03_Demand Side Platform (DSP)
    • 04_Business Models
    • Trading
      • 01_Technical Analysis
      • 02_Mentality
      • 03_Support and Resistance
  • Books
    • AI Books
    • Books
      • Persuasion IQ
      • Communication Skills
      • 48 Hours a Day
      • Maslow's Pyramid
      • MBTI
      • Tư Duy Ngược
    • Audio Books
  • Project Management
    • PM Methods
      • Agile
      • Scrum
      • Kanban
    • Foundations of PM
      • Module 1
      • Module 2
      • Module 3
      • Module 4
    • Project Initiation: Starting a Successul Projet
      • Module 1
      • Module 2
      • Module 3
      • Module 4
    • Project Planning: Putting It All Together
      • Module 1
    • Project Execution: Running the Project
    • Agile Project Management
    • Capstone: Applying Project Management in the Real World
  • Administrator
Lê Phong Phú
  • About Me!
  • AI Expert Roadmap
    • PyTorch
      • PyTorch Fundamentals
        • 1. Introduction to PyTorch
        • 2. Introduction to Computer Vision with PyTorch
        • 3. Introduction to Natural Language Processing with PyTorch
        • 4. Introduction to Audio Classification with PyTorch
      • Intermediate DL with Pytorch
        • 1_TrainingRobustNN
        • 2_Image&CNN
        • 3_Sequences&RNN
        • 4_Multi-Input&Multi-Output
    • Machine Learning
      • 01_ML_General
      • 02_ML_Supervised Learning
      • 03_ML_Unsupervised Learning
    • Mamba
      • 00_Sequence Modelling, S4 and Mamba
    • Transformers (CV&NLP)
      • NLNet
      • 01_Pure Transformer
        • ViT
        • Segformer
      • 02_Hybrid Transformer
        • DETR
        • Deformable DETR
        • DINO (Detection)
      • 99_Unfilter
        • LG-Transformer
        • Image GPT
        • Points as Queries
        • VST
        • MAXViT
        • ViTMAE-Detect
        • MAGNETO
        • AIT
        • MTV
        • PiT
        • Swin
        • PVTv2
        • PVT
        • FAVOR+
        • T2T-ViT
        • CaiT
        • CCT
        • DeiT
        • SSA
        • SA3D
    • [NLP] Natural Language Processing
      • 01_[LLMs] Large Language Models
      • [MoEs] Mixture of Experts
      • LLM Techniques
      • Attention is All You Need
      • Positional Encoding
      • Tokenization
      • MICLe
    • [CV] Computer Vision
      • MLP-based Classification
        • MLP-Mixer
        • FNet
        • EANet
      • 01_[SL] Supervised Learning
        • 01_Classification
          • Convolution Variants
          • 1x1 Convolution
          • EfficientNetV2
          • ConvNeXtV2
        • 02_Detection
          • ConvMixer
          • SOLO
          • YOLOX
          • YOLOR
          • AugFPN
          • BoT_Cls
          • BoF_OD
          • YOLOv3
          • YOLOv4
          • YOLOv5
          • YOLOv6
          • YOLOv7
          • YOLOv8
          • YOLOv9
          • YOLO-NAS
          • TPH-YOLOv5
          • TPH-YOLOv5++
          • ViTDET
        • 03_Segmentation
          • Object Instance Survey 2022
          • 01_Instance Segmentation
          • 02_Semantic Segmentation
          • 03_Panoptic Segmentation
          • 04_3D Segmentation
          • 05_Unsupervised Segmentation
          • BMask RCNN
          • ISTR
          • Transfuse
        • 04_[IS] Interactive Segmentation
          • Interactive Segmentation Techniques
          • 02_3D Interactive Segmentation
          • 03_Video Object Segmentation
          • SAM
          • HA_SAM
          • CFR-ICL
          • MST
          • ECONet
          • SimpleClick
          • FocusCut
          • f-BRS
          • iSegformer
        • 05_Object Tracking
          • 00_ObjectTracking
          • Sort
          • DeepSort
          • FairMOT
          • ByteTrack
          • StrongSORT
          • Tracktor
          • JDE
          • CenterTrack
          • PermaTrack
          • TransTrack
          • TrackFormer
          • BoT-SORT
        • 06_Face Recognition
        • 07_Image Stitching
        • 08_Image Restoration
        • 06_Refinement
          • BPR
        • 10_Scene Understanding
          • CPNet
        • 11_Human Pose Estimation
          • 3D Human Pose
          • Human Pose
        • 12_[SR] Super Resolution
          • Bicubic++
        • 13_VideoPropagation
        • 14_Image Mating
        • 15_Knowledge Distillation
        • 16_Others
      • 02_[UL] Unsupervised Learning
        • 00_Unsupervised Learning
        • 02_Deep Clustering
          • 00_K_Clusters Decision
          • Deep Cluster
          • Cluster Fit
          • DEC
          • Improving Relational Regularized Autoencoders with Spherical Sliced Fused G
          • Taxanomy
          • DeepDPM
          • BCL
          • VaDE
          • t-SNE
          • Tree-SNE
        • 04_Diffusional Models
      • 03_[SSL] Self-Supervised Learning
        • 00_Self-Supervised Learning
        • 01_Contrastive Learning
          • CPC
          • DIM
          • CMC
          • AMDIM
          • SimCLR
          • MoCo
          • MoCov2
          • YADIM
          • VICReg
          • CSL
          • Towards Domain-Agnostic Contrastive Learning
          • Non-Parametric Instance Discrimination
          • Video Contrastive Learning with Global Context
          • SupCon
          • Barlow Twin
        • 02_Predictive Tasks
        • 03_Bootstrapping
          • BYOL
        • 04_Regularization
        • 05_Masked Image Models
          • Patch Localization
          • MAE
          • SimMIM
          • DINO
        • 06_Pretext Tasks
          • PIRL
        • 07_Clustering-based
          • SwAV
      • 04_Semi-Supervised Learning
        • Fully-/Semi-/Weakly-/ Learning
        • 01_Self-training
          • Pseudo-label
          • Noisy Student
        • 02_Consistency Regularization
          • Temporal Ensembling
          • Mean Teacher
          • VAT
          • UDA
        • 03_Hybrid Methods
          • MixUp
          • MixMatch
          • ReMixMatch
          • FixMatch
          • FixMatch (unmerge)
      • 05_Multi-learning Paradigm
        • 00_Multi-learning
        • 01_Multitask
        • Gradient Surgery
        • EtE Multi-task Learning with Attention
        • MTL for Dense Predictions
        • MTL using Uncertainty
        • Which Task learned together
        • GradNorm
        • OM-Net
        • 06_Multi-task Learning
      • 06_Generative Models
        • 00_Generative Models
        • 01_Autoencoders
          • AE vs Others
          • Sparse AE
          • Denoising AE
          • Contractive AE
          • Variational AE
          • DELG
        • 02_GAN
      • Graph Convolutional Networks
        • 00_Graph Convolutional Networks
      • Neural Radiance Fields (NeRFs)
      • Deep Belief Networks
    • Multimodal Models
    • Bag of Freebies - BOF
      • 01_Augmentation
        • Mosaic
        • Cut Out
        • Mix Up
      • 02_Loss Functions
        • 01_Classification Loss
        • 02_Segmentation Loss
        • 03_Object Detection Loss
        • 04_Self-Supervised Loss
        • 05_Interactive Segmentation Loss
      • 03_Optimizer
      • 04_Normalization
        • 00_Normalization
      • 05_Regularization
      • 06_Label Assignment
        • 00_Label Assignment
        • OTA
        • SimOTA
      • 07_Auxiliary Head
    • Bag of Specials - BoS
      • Feature Pyramid
        • RCNet
      • Receptive Field
      • Attention
        • 00_Attention Modules
        • SENet
        • CBAM
        • DANet
        • SDANet
        • AttaNet
        • HaloNets
        • GCNet
        • DeepSquare
        • LBAM
        • External-Attention
        • PCT
        • Residual Attention
        • DCANet
        • GANet
        • Triplet Attention
        • Lambda Networks
        • ACTION
        • VAN
        • SegNeXt
      • Local-/Global- Features
        • Unifying Nonlocal Blocks for Neural Networks
        • Local Features
        • Global Features
      • Activation Functions
        • SiLU dSiLU
      • Post-Processing
        • Soft-NMS
        • NMW
        • WBF
      • Sliding Window
      • Graph Networks
      • Feature Fusion/Integration
      • Data-Centric
    • Others
      • Selected Top-Conference Papers
        • AAAI2021_Papers
        • CVPR2021_Papers
        • ECCV2020_Papers
        • ICCV2021_Papers
        • ICLM2022_Papers
      • Cheat Sheets
        • Pandas
      • Conference Schedule
  • Data Science
    • 03_DS_Discrete Distribution
    • Data Scientist Professional
      • 3. Statistical Experimentation Theory
      • 4. Statistical Experimentation in Python
      • 5. Model development in Python
      • 7. Data Management in SQL
    • Data...
    • ETL
    • Airflow
  • Cloud Computing
    • Azure Data Fundamental
    • Amazon Web Services
      • AWS - Cloud 101
      • AWS - Machine Learning Foundation (Lab)
        • 1. Introduction to MLF
        • 2. AI and ML
        • 3. ML Pipeline
        • 4. ML Tools and Services
        • 5. Wrapping it Up
      • AWS - Cloud Practitioner Essentials
      • AWS - GenAI
    • Google Cloud
    • IBM Watson
  • Big Data
    • PySpark
      • Introduction to PySpark
        • 1. Getting to know PySpark
        • 2. Manipulating Data
        • 3. Getting Started with ML Pipelines
        • 4. Model Tuning and Selection
      • Big Data Fundamentals with PySpark
        • 1. Introduction to BigData Analysis with Spark
        • 2. Programming in PySpark RDD’s
        • 3. PySpark SQL & DataFrames
        • 4. Machine Learning with PySpark MLlib
  • English
    • Reading
    • Listening
    • Speaking
      • Speaking_Part1
        • 1_Speaking Part 1
        • 2_Speaking Part 1
        • 3_Speaking Part 1
        • 4_Speaking Part 1
        • 5_Speaking Part 1
        • 6_Speaking Part 1
        • 7_Speaking Part 1
        • 8_Speaking Part 1
        • 9_Speaking Part 1
        • 10_Speaking Part 1
        • 11_Speaking Part 1
        • 12_Speaking Part 1
        • 13_Speaking Part 1
        • 14_Speaking Part 1
        • 15_Speaking Part 1
        • 16_Speaking Part 1
        • 17_Speaking Part 1
        • 18_Speaking Part 1
        • 19_Speaking Part 1
        • 20_Speaking Part 1
        • 21_Speaking Part 1
        • 22_Speaking Part 1
        • 23_Speaking Part 1
      • Speaking_Part2
        • 1_Speaking Part 2
        • 2_Speaking Part 2
        • 3_Speaking Part 2
        • 4_Speaking Part 2
        • 5_Speaking Part 2
        • 6_Speaking Part 2
        • 7_Speaking Part 2
        • 8_Speaking Part 2
        • 9_Speaking Part 2
        • 10_Speaking Part 2
        • 11_Speaking Part 2
        • 12_Speaking Part 2
        • 13_Speaking Part 2
        • 14_Speaking Part 2
        • 15_Speaking Part 2
        • 16_Speaking Part 2
        • 17_Speaking Part 2
        • 18_Speaking Part 2
        • 19_Speaking Part 2
        • 20_Speaking Part 2
        • People
        • Places
          • Visited House
        • Events
        • Activities
          • Interesting Job
        • Things
      • Speaking_Part3
        • Advertisements
        • Outdoor Activities
        • Navigation and Exploration
        • Fast Food
        • Air Pollution
        • Free Time
        • Interesting Movie
        • Gifts
        • Independence in Children
        • Noisy
        • Complain
        • T-shirts
        • Value of Money
        • Restaurant
        • Global
        • Relaxation
        • Special Places
      • Mixed-Test
        • 01_Mix_Language
    • Writing
      • Writing_Task1
        • Paraphrase
        • Overview Sentence
        • Grammar
        • Charts
          • Line - Average Montly Temperatures
          • Line - Fuels
          • Line - Birth Rate
          • Line - River Water
          • Line - U.S Energy
          • Line - Areas of Crime
          • Line - Renewable Energy
          • Line - Oversea Visitors
          • Chart - People ate in the UK
          • Chart - Music Event Attendance
          • Chart - Wind Energy
          • Chart - Children Attend Sports in Australia
          • Chart - Weekly Hours in Australia
          • Chart - Films released vs Tickets sold
          • Chart - Average Retirement Age
        • Process
        • Maps
          • Library Ground
        • Table
        • Multiple Graphs
          • Life Expectancy
      • Writing_Task2
        • Opinion Essay
          • Higher Salary
          • Goal of Schools
          • Local History
          • Retirement Age
          • Happy Society
          • Food Necessary
          • Pay for more Art
          • Eradicate Poverty
          • Team Activities
          • Wild Animals and Birds
        • Discussion Essay
          • Sports
          • Make Money
          • Crime punished
          • Equipment for Student
          • Keep a Gun
        • Advantages and Disadvantages Essay
          • Live Away
          • Transform to Farms
        • Problem-Solution Essay
          • Extreme Sports
          • Spend Time Away From Families
      • Complex Sentence
      • If, Wish, Hope
    • Synonym Common Mistakes
    • Phrasal Verbs
    • TOEIC 990
  • Interview
    • Deep Learning Questions
      • C1_Mathematical Foundation
      • C2_Fundamentals of ML
      • C3_Fundamentals of DL
      • C4_Classic Network
      • C5_CNN
      • C6_RNN
      • C7_Target Detection
      • C8_Image Segmentation
      • C9_Reinforcement Learning
      • C10_Migration Learning
      • C13_Optimization Algorithm
      • C14_Super Parameter Adjustment
      • C15_Hetorogeneous Computing
    • Data Science Questions
  • Courses (Uni and Mooc)
    • AI Open Courses
    • DS Certificates
    • IBM Gen AI Engineering Professional Certificate
      • 10. Generative AI and LLMs: Architecture and Data Preparation
      • 11. Gen AI Foundational Models for NLP & Language Understanding
      • 12. Gen AI Language Modeling with Transformers
        • Module 1 - Fundamental Concepts of Transformer Architecture
        • Module 2 - Advanced Concepts of Transformer Architecture
      • 13. Generative AI Engineering and Fine-Tuning Transformers
      • 14. Generative AI Advanced Fine-Tuning for LLMs
      • 15. Fundamentals of AI Agents using RAG and Langchain
        • Module 1 - RAG Framework
        • Module 2 - Prompt Engineering and LangChain
      • 16. Project: Generative AI Applications with RAG and LangChain
    • Data Science Foundations: Data Structures and Algorithms Specialization
    • Flask - AI Applications
      • 1. Packaging Concepts
      • 2. Web App Deployment
      • 3. Creating AI Application
        • Sentiment Analysis
        • Emotion Detector
      • Deploy Deep Learning Models using Flask
    • Docker, Kubernetes & OpenShift
      • 1. Containers and Containerization
      • 2. Kubernetes Basics
      • 3. Managing Applications with Kubernetes
      • 4. The Kubernetes Ecosystem
      • 5. Final Assignments
    • Data Structures
      • 1. Introduction to DS&A
    • Algorithms
      • QE - Algorithms
      • Sorting Algorithms
        • Binary Search
        • Insertion Sort
        • Merge Sort
        • Quick sort
        • Heap sort
      • Divide and Conquer
      • Greedy Algorithm
      • Dynamic Programming
    • Operating System
      • QE - Operating System
      • 00_Operating System
    • CS231n Deep Learning for Computer Vision
      • 13. Self-Supervised Learning
    • CS480 Introduction to Machine Learning
      • 19. Attention and Transformer Networks
    • CS330 Multi-task and Meta Learning
      • 1. What is Multi-task Learning
    • Processing the Environment
      • Attention
    • Open VINO
    • Metaverse
      • 00_Metaverse
      • Spark AR
  • Research Projects
    • PPE Detection
      • Few-shot Data Sampling
    • Multiple Object Tracking
      • In-place Augmentation
    • Deep Clustering
      • Metrics
    • Defect Detection
      • 01_Defect_Improvement
      • Dataset: MVTec
      • Mixed supervision for surface-defect detection:
      • Practical Defect Detection
      • (Survey) Fabric Defect Detection
      • (Summary) Fabric Defect Detection
    • Medical Images
      • 01_Lung_Improvement
      • SANet
      • AnaXNet
      • 3D_EtoE Lung Cancer Screening
      • Semantics-enriched Representation
      • Attend And Compare
      • Recent Works
      • Kaggle_Medical Images
  • AI Engineer
  • Financial Invesment
    • 01_TPTrading
    • 02_BCTC
    • 03_Demand Side Platform (DSP)
    • 04_Business Models
    • Trading
      • 01_Technical Analysis
      • 02_Mentality
      • 03_Support and Resistance
  • Books
    • AI Books
    • Books
      • Persuasion IQ
      • Communication Skills
      • 48 Hours a Day
      • Maslow's Pyramid
      • MBTI
      • Tư Duy Ngược
    • Audio Books
  • Project Management
    • PM Methods
      • Agile
      • Scrum
      • Kanban
    • Foundations of PM
      • Module 1
      • Module 2
      • Module 3
      • Module 4
    • Project Initiation: Starting a Successul Projet
      • Module 1
      • Module 2
      • Module 3
      • Module 4
    • Project Planning: Putting It All Together
      • Module 1
    • Project Execution: Running the Project
    • Agile Project Management
    • Capstone: Applying Project Management in the Real World
  • Administrator
  • More
    • About Me!
    • AI Expert Roadmap
      • PyTorch
        • PyTorch Fundamentals
          • 1. Introduction to PyTorch
          • 2. Introduction to Computer Vision with PyTorch
          • 3. Introduction to Natural Language Processing with PyTorch
          • 4. Introduction to Audio Classification with PyTorch
        • Intermediate DL with Pytorch
          • 1_TrainingRobustNN
          • 2_Image&CNN
          • 3_Sequences&RNN
          • 4_Multi-Input&Multi-Output
      • Machine Learning
        • 01_ML_General
        • 02_ML_Supervised Learning
        • 03_ML_Unsupervised Learning
      • Mamba
        • 00_Sequence Modelling, S4 and Mamba
      • Transformers (CV&NLP)
        • NLNet
        • 01_Pure Transformer
          • ViT
          • Segformer
        • 02_Hybrid Transformer
          • DETR
          • Deformable DETR
          • DINO (Detection)
        • 99_Unfilter
          • LG-Transformer
          • Image GPT
          • Points as Queries
          • VST
          • MAXViT
          • ViTMAE-Detect
          • MAGNETO
          • AIT
          • MTV
          • PiT
          • Swin
          • PVTv2
          • PVT
          • FAVOR+
          • T2T-ViT
          • CaiT
          • CCT
          • DeiT
          • SSA
          • SA3D
      • [NLP] Natural Language Processing
        • 01_[LLMs] Large Language Models
        • [MoEs] Mixture of Experts
        • LLM Techniques
        • Attention is All You Need
        • Positional Encoding
        • Tokenization
        • MICLe
      • [CV] Computer Vision
        • MLP-based Classification
          • MLP-Mixer
          • FNet
          • EANet
        • 01_[SL] Supervised Learning
          • 01_Classification
            • Convolution Variants
            • 1x1 Convolution
            • EfficientNetV2
            • ConvNeXtV2
          • 02_Detection
            • ConvMixer
            • SOLO
            • YOLOX
            • YOLOR
            • AugFPN
            • BoT_Cls
            • BoF_OD
            • YOLOv3
            • YOLOv4
            • YOLOv5
            • YOLOv6
            • YOLOv7
            • YOLOv8
            • YOLOv9
            • YOLO-NAS
            • TPH-YOLOv5
            • TPH-YOLOv5++
            • ViTDET
          • 03_Segmentation
            • Object Instance Survey 2022
            • 01_Instance Segmentation
            • 02_Semantic Segmentation
            • 03_Panoptic Segmentation
            • 04_3D Segmentation
            • 05_Unsupervised Segmentation
            • BMask RCNN
            • ISTR
            • Transfuse
          • 04_[IS] Interactive Segmentation
            • Interactive Segmentation Techniques
            • 02_3D Interactive Segmentation
            • 03_Video Object Segmentation
            • SAM
            • HA_SAM
            • CFR-ICL
            • MST
            • ECONet
            • SimpleClick
            • FocusCut
            • f-BRS
            • iSegformer
          • 05_Object Tracking
            • 00_ObjectTracking
            • Sort
            • DeepSort
            • FairMOT
            • ByteTrack
            • StrongSORT
            • Tracktor
            • JDE
            • CenterTrack
            • PermaTrack
            • TransTrack
            • TrackFormer
            • BoT-SORT
          • 06_Face Recognition
          • 07_Image Stitching
          • 08_Image Restoration
          • 06_Refinement
            • BPR
          • 10_Scene Understanding
            • CPNet
          • 11_Human Pose Estimation
            • 3D Human Pose
            • Human Pose
          • 12_[SR] Super Resolution
            • Bicubic++
          • 13_VideoPropagation
          • 14_Image Mating
          • 15_Knowledge Distillation
          • 16_Others
        • 02_[UL] Unsupervised Learning
          • 00_Unsupervised Learning
          • 02_Deep Clustering
            • 00_K_Clusters Decision
            • Deep Cluster
            • Cluster Fit
            • DEC
            • Improving Relational Regularized Autoencoders with Spherical Sliced Fused G
            • Taxanomy
            • DeepDPM
            • BCL
            • VaDE
            • t-SNE
            • Tree-SNE
          • 04_Diffusional Models
        • 03_[SSL] Self-Supervised Learning
          • 00_Self-Supervised Learning
          • 01_Contrastive Learning
            • CPC
            • DIM
            • CMC
            • AMDIM
            • SimCLR
            • MoCo
            • MoCov2
            • YADIM
            • VICReg
            • CSL
            • Towards Domain-Agnostic Contrastive Learning
            • Non-Parametric Instance Discrimination
            • Video Contrastive Learning with Global Context
            • SupCon
            • Barlow Twin
          • 02_Predictive Tasks
          • 03_Bootstrapping
            • BYOL
          • 04_Regularization
          • 05_Masked Image Models
            • Patch Localization
            • MAE
            • SimMIM
            • DINO
          • 06_Pretext Tasks
            • PIRL
          • 07_Clustering-based
            • SwAV
        • 04_Semi-Supervised Learning
          • Fully-/Semi-/Weakly-/ Learning
          • 01_Self-training
            • Pseudo-label
            • Noisy Student
          • 02_Consistency Regularization
            • Temporal Ensembling
            • Mean Teacher
            • VAT
            • UDA
          • 03_Hybrid Methods
            • MixUp
            • MixMatch
            • ReMixMatch
            • FixMatch
            • FixMatch (unmerge)
        • 05_Multi-learning Paradigm
          • 00_Multi-learning
          • 01_Multitask
          • Gradient Surgery
          • EtE Multi-task Learning with Attention
          • MTL for Dense Predictions
          • MTL using Uncertainty
          • Which Task learned together
          • GradNorm
          • OM-Net
          • 06_Multi-task Learning
        • 06_Generative Models
          • 00_Generative Models
          • 01_Autoencoders
            • AE vs Others
            • Sparse AE
            • Denoising AE
            • Contractive AE
            • Variational AE
            • DELG
          • 02_GAN
        • Graph Convolutional Networks
          • 00_Graph Convolutional Networks
        • Neural Radiance Fields (NeRFs)
        • Deep Belief Networks
      • Multimodal Models
      • Bag of Freebies - BOF
        • 01_Augmentation
          • Mosaic
          • Cut Out
          • Mix Up
        • 02_Loss Functions
          • 01_Classification Loss
          • 02_Segmentation Loss
          • 03_Object Detection Loss
          • 04_Self-Supervised Loss
          • 05_Interactive Segmentation Loss
        • 03_Optimizer
        • 04_Normalization
          • 00_Normalization
        • 05_Regularization
        • 06_Label Assignment
          • 00_Label Assignment
          • OTA
          • SimOTA
        • 07_Auxiliary Head
      • Bag of Specials - BoS
        • Feature Pyramid
          • RCNet
        • Receptive Field
        • Attention
          • 00_Attention Modules
          • SENet
          • CBAM
          • DANet
          • SDANet
          • AttaNet
          • HaloNets
          • GCNet
          • DeepSquare
          • LBAM
          • External-Attention
          • PCT
          • Residual Attention
          • DCANet
          • GANet
          • Triplet Attention
          • Lambda Networks
          • ACTION
          • VAN
          • SegNeXt
        • Local-/Global- Features
          • Unifying Nonlocal Blocks for Neural Networks
          • Local Features
          • Global Features
        • Activation Functions
          • SiLU dSiLU
        • Post-Processing
          • Soft-NMS
          • NMW
          • WBF
        • Sliding Window
        • Graph Networks
        • Feature Fusion/Integration
        • Data-Centric
      • Others
        • Selected Top-Conference Papers
          • AAAI2021_Papers
          • CVPR2021_Papers
          • ECCV2020_Papers
          • ICCV2021_Papers
          • ICLM2022_Papers
        • Cheat Sheets
          • Pandas
        • Conference Schedule
    • Data Science
      • 03_DS_Discrete Distribution
      • Data Scientist Professional
        • 3. Statistical Experimentation Theory
        • 4. Statistical Experimentation in Python
        • 5. Model development in Python
        • 7. Data Management in SQL
      • Data...
      • ETL
      • Airflow
    • Cloud Computing
      • Azure Data Fundamental
      • Amazon Web Services
        • AWS - Cloud 101
        • AWS - Machine Learning Foundation (Lab)
          • 1. Introduction to MLF
          • 2. AI and ML
          • 3. ML Pipeline
          • 4. ML Tools and Services
          • 5. Wrapping it Up
        • AWS - Cloud Practitioner Essentials
        • AWS - GenAI
      • Google Cloud
      • IBM Watson
    • Big Data
      • PySpark
        • Introduction to PySpark
          • 1. Getting to know PySpark
          • 2. Manipulating Data
          • 3. Getting Started with ML Pipelines
          • 4. Model Tuning and Selection
        • Big Data Fundamentals with PySpark
          • 1. Introduction to BigData Analysis with Spark
          • 2. Programming in PySpark RDD’s
          • 3. PySpark SQL & DataFrames
          • 4. Machine Learning with PySpark MLlib
    • English
      • Reading
      • Listening
      • Speaking
        • Speaking_Part1
          • 1_Speaking Part 1
          • 2_Speaking Part 1
          • 3_Speaking Part 1
          • 4_Speaking Part 1
          • 5_Speaking Part 1
          • 6_Speaking Part 1
          • 7_Speaking Part 1
          • 8_Speaking Part 1
          • 9_Speaking Part 1
          • 10_Speaking Part 1
          • 11_Speaking Part 1
          • 12_Speaking Part 1
          • 13_Speaking Part 1
          • 14_Speaking Part 1
          • 15_Speaking Part 1
          • 16_Speaking Part 1
          • 17_Speaking Part 1
          • 18_Speaking Part 1
          • 19_Speaking Part 1
          • 20_Speaking Part 1
          • 21_Speaking Part 1
          • 22_Speaking Part 1
          • 23_Speaking Part 1
        • Speaking_Part2
          • 1_Speaking Part 2
          • 2_Speaking Part 2
          • 3_Speaking Part 2
          • 4_Speaking Part 2
          • 5_Speaking Part 2
          • 6_Speaking Part 2
          • 7_Speaking Part 2
          • 8_Speaking Part 2
          • 9_Speaking Part 2
          • 10_Speaking Part 2
          • 11_Speaking Part 2
          • 12_Speaking Part 2
          • 13_Speaking Part 2
          • 14_Speaking Part 2
          • 15_Speaking Part 2
          • 16_Speaking Part 2
          • 17_Speaking Part 2
          • 18_Speaking Part 2
          • 19_Speaking Part 2
          • 20_Speaking Part 2
          • People
          • Places
            • Visited House
          • Events
          • Activities
            • Interesting Job
          • Things
        • Speaking_Part3
          • Advertisements
          • Outdoor Activities
          • Navigation and Exploration
          • Fast Food
          • Air Pollution
          • Free Time
          • Interesting Movie
          • Gifts
          • Independence in Children
          • Noisy
          • Complain
          • T-shirts
          • Value of Money
          • Restaurant
          • Global
          • Relaxation
          • Special Places
        • Mixed-Test
          • 01_Mix_Language
      • Writing
        • Writing_Task1
          • Paraphrase
          • Overview Sentence
          • Grammar
          • Charts
            • Line - Average Montly Temperatures
            • Line - Fuels
            • Line - Birth Rate
            • Line - River Water
            • Line - U.S Energy
            • Line - Areas of Crime
            • Line - Renewable Energy
            • Line - Oversea Visitors
            • Chart - People ate in the UK
            • Chart - Music Event Attendance
            • Chart - Wind Energy
            • Chart - Children Attend Sports in Australia
            • Chart - Weekly Hours in Australia
            • Chart - Films released vs Tickets sold
            • Chart - Average Retirement Age
          • Process
          • Maps
            • Library Ground
          • Table
          • Multiple Graphs
            • Life Expectancy
        • Writing_Task2
          • Opinion Essay
            • Higher Salary
            • Goal of Schools
            • Local History
            • Retirement Age
            • Happy Society
            • Food Necessary
            • Pay for more Art
            • Eradicate Poverty
            • Team Activities
            • Wild Animals and Birds
          • Discussion Essay
            • Sports
            • Make Money
            • Crime punished
            • Equipment for Student
            • Keep a Gun
          • Advantages and Disadvantages Essay
            • Live Away
            • Transform to Farms
          • Problem-Solution Essay
            • Extreme Sports
            • Spend Time Away From Families
        • Complex Sentence
        • If, Wish, Hope
      • Synonym Common Mistakes
      • Phrasal Verbs
      • TOEIC 990
    • Interview
      • Deep Learning Questions
        • C1_Mathematical Foundation
        • C2_Fundamentals of ML
        • C3_Fundamentals of DL
        • C4_Classic Network
        • C5_CNN
        • C6_RNN
        • C7_Target Detection
        • C8_Image Segmentation
        • C9_Reinforcement Learning
        • C10_Migration Learning
        • C13_Optimization Algorithm
        • C14_Super Parameter Adjustment
        • C15_Hetorogeneous Computing
      • Data Science Questions
    • Courses (Uni and Mooc)
      • AI Open Courses
      • DS Certificates
      • IBM Gen AI Engineering Professional Certificate
        • 10. Generative AI and LLMs: Architecture and Data Preparation
        • 11. Gen AI Foundational Models for NLP & Language Understanding
        • 12. Gen AI Language Modeling with Transformers
          • Module 1 - Fundamental Concepts of Transformer Architecture
          • Module 2 - Advanced Concepts of Transformer Architecture
        • 13. Generative AI Engineering and Fine-Tuning Transformers
        • 14. Generative AI Advanced Fine-Tuning for LLMs
        • 15. Fundamentals of AI Agents using RAG and Langchain
          • Module 1 - RAG Framework
          • Module 2 - Prompt Engineering and LangChain
        • 16. Project: Generative AI Applications with RAG and LangChain
      • Data Science Foundations: Data Structures and Algorithms Specialization
      • Flask - AI Applications
        • 1. Packaging Concepts
        • 2. Web App Deployment
        • 3. Creating AI Application
          • Sentiment Analysis
          • Emotion Detector
        • Deploy Deep Learning Models using Flask
      • Docker, Kubernetes & OpenShift
        • 1. Containers and Containerization
        • 2. Kubernetes Basics
        • 3. Managing Applications with Kubernetes
        • 4. The Kubernetes Ecosystem
        • 5. Final Assignments
      • Data Structures
        • 1. Introduction to DS&A
      • Algorithms
        • QE - Algorithms
        • Sorting Algorithms
          • Binary Search
          • Insertion Sort
          • Merge Sort
          • Quick sort
          • Heap sort
        • Divide and Conquer
        • Greedy Algorithm
        • Dynamic Programming
      • Operating System
        • QE - Operating System
        • 00_Operating System
      • CS231n Deep Learning for Computer Vision
        • 13. Self-Supervised Learning
      • CS480 Introduction to Machine Learning
        • 19. Attention and Transformer Networks
      • CS330 Multi-task and Meta Learning
        • 1. What is Multi-task Learning
      • Processing the Environment
        • Attention
      • Open VINO
      • Metaverse
        • 00_Metaverse
        • Spark AR
    • Research Projects
      • PPE Detection
        • Few-shot Data Sampling
      • Multiple Object Tracking
        • In-place Augmentation
      • Deep Clustering
        • Metrics
      • Defect Detection
        • 01_Defect_Improvement
        • Dataset: MVTec
        • Mixed supervision for surface-defect detection:
        • Practical Defect Detection
        • (Survey) Fabric Defect Detection
        • (Summary) Fabric Defect Detection
      • Medical Images
        • 01_Lung_Improvement
        • SANet
        • AnaXNet
        • 3D_EtoE Lung Cancer Screening
        • Semantics-enriched Representation
        • Attend And Compare
        • Recent Works
        • Kaggle_Medical Images
    • AI Engineer
    • Financial Invesment
      • 01_TPTrading
      • 02_BCTC
      • 03_Demand Side Platform (DSP)
      • 04_Business Models
      • Trading
        • 01_Technical Analysis
        • 02_Mentality
        • 03_Support and Resistance
    • Books
      • AI Books
      • Books
        • Persuasion IQ
        • Communication Skills
        • 48 Hours a Day
        • Maslow's Pyramid
        • MBTI
        • Tư Duy Ngược
      • Audio Books
    • Project Management
      • PM Methods
        • Agile
        • Scrum
        • Kanban
      • Foundations of PM
        • Module 1
        • Module 2
        • Module 3
        • Module 4
      • Project Initiation: Starting a Successul Projet
        • Module 1
        • Module 2
        • Module 3
        • Module 4
      • Project Planning: Putting It All Together
        • Module 1
      • Project Execution: Running the Project
      • Agile Project Management
      • Capstone: Applying Project Management in the Real World
    • Administrator

Practice Project - Sentiment Analysis

Watson AI

Page: https://www.coursera.org/learn/python-project-for-ai-application-development/ungradedWidget/gIbdT/practice-project-overview

Code: https://author.skills.network/courses/2509/labs/7258 

Guidelines

  • In the practice project, you will be introduced to embeddable Watson AI libraries. Then, you will create a web app integrated with Watson AI libraries to perform sentiment analysis on the provided text. 

  • After developing the app, you will deploy the said application over the web using Flask framework. All activities that get you to deploy a functional AI-based web apps are broken down into tasks as listed below:

    1. Task 1: Clone the project repository

    2. Task 2: Create a sentiment analysis application using Watson NLP library

    3. Task 3: Format the output of the application

    4. Task 4: Package the application

    5. Task 5: Run Unit tests on your application

    6. Task 6: Deploy as web application using Flask

    7. Task 7: Incorporate error handling

    8. Task 8: Run static code analysis

Methods

Embeddable Watson AI libraries

  • In this project, you'll be using embeddable libraries to create an AI powered Python application.

  • Embeddable Watson AI libraries include the NLP library, the text-to-speech library and the speech-to-text library. These libraries can be embedded and distributed as part of your application. For your convenience, these libraries have been pre-installed on Skills Network Labs Cloud IDE for use in this project.

    1. The NLP library includes functions for sentiment analysis, emotion detection, text classification, language detection, etc. among others. 

    2. The speech-to-text library contains functions that perform the transcription service and generates written text from spoken audio. 

    3. The text-to-speech library generates natural sounding audio from written text. 

    4. All available functions, in each of these libraries, calls pretrained AI models that are all available on the Cloud IDE servers, available to all users for free.

Files

  • Download Link

Task 1: Clone the project repository

git clone https://github.com/ibm-developer-skills-network/zzrjt-practice-project-emb-ai.git practice_project

cd practice_project

Task 2: Create a sentiment analysis application using Watson NLP library

  1. NLP sentiment analysis is the practice of using computers to recognize sentiment or emotion expressed in a text. Through NLP, sentiment analysis categorizes words as positive, negative or neutral.

  2. Sentiment analysis is often performed on textual data to help businesses monitor brand and product sentiment in customer feedback, and understanding customer needs. It helps attain the attitude and mood of the wider public which can then help gather insightful information about the context.

  3. For creating the sentiment analysis application, we'll be making use of the Watson Embedded AI Libraries. Since the functions of these libraries are already deployed on the Cloud IDE server, there is no need of importing these libraries to our code. Instead, we need to send a POST request to the relevant model with the required text and the model will send the appropriate response.

import requests

def <function_name>(<input_args>):

    url = '<relevant_url>'

    headers = {<header_dictionary>}

    myobj = {<input_dictionary_to_the_function>}

    response = requests.post(url, json = myobj, headers=header)

    return response.text

  1. For this project, you'll be using the BERT based Sentiment Analysis function of the Watson NLP Library. For accessing this funciton, the URL, the headers and the input json format is as follows.

URL: 'https://sn-watson-sentiment-bert.labs.skills.network/v1/watson.runtime.nlp.v1/NlpService/SentimentPredict'

Headers: {"grpc-metadata-mm-model-id": "sentiment_aggregated-bert-workflow_lang_multi_stock"}

Input json: { "raw_document": { "text": text_to_analyse } }

  • In this task, you need to create a file named sentiment_analysis.py in practice_project folder. In this file, write the function for running sentiment analysis using the Watson NLP BERT Seniment Analysis function, as discussed above. 

  • Let us call this function sentiment_analyzer. Assume that that text to be analysed is passed to the function as an argument and is stored in the variable text_to_analyse.

import requests


def sentiment_analyzer(text_to_analyse):

    url = 'https://sn-watson-sentiment-bert.labs.skills.network/v1/watson.runtime.nlp.v1/NlpService/SentimentPredict'

    myobj = { "raw_document": { "text": text_to_analyse } }

    header = {"grpc-metadata-mm-model-id": "sentiment_aggregated-bert-workflow_lang_multi_stock"}

    response = requests.post(url, json = myobj, headers=header)

    return response.text

  • To test:

python3.11

from sentiment_analysis import sentiment_analyzer

response = sentiment_analyzer("I love this new technology")

print(response)

Task 3: Format the output of the application

  • The output of the application created is in the form of a dictionary, but has been formatted as a text. 

  • To access relevant pieces of information from this output, we need to first convert this text into a dictionary. 

  • Since dictionaries are the default formatting system for JSON files, we make use of the in-built Python library json.

import requests

import json

def sentiment_analyzer(text_to_analyse):

   url = 'https://sn-watson-sentiment-bert.labs.skills.network/v1/watson.runtime.nlp.v1/NlpService/SentimentPredict'

   myobj = { "raw_document": { "text": text_to_analyse } }

   header = {"grpc-metadata-mm-model-id": "sentiment_aggregated-bert-workflow_lang_multi_stock"}

   response = requests.post(url, json = myobj, headers=header)

   formatted_response = json.loads(response.text)

   label = formatted_response['documentSentiment']['label']

   score = formatted_response['documentSentiment']['score']

   return {'label': label, 'score': score}

Task 4: Package the application

  • Let's keep the name of the package as SentimentAnalysis. The steps involved in packaging are:

    1. Create a folder in the working directory, with the name as the package name.

    2. Put (or move) the application code, also called module, in the package folder.

    3. Create the __init__.py file, referencing the module.

    4. The final folder structure should look as shown in the image below.

mkdir SentimentAnalysis

mv ./sentiment_analysis.py ./SentimentAnalysis

from . import sentiment_analysis

  • To test, run Python:

from SentimentAnalysis.sentiment_analysis import sentiment_analyzer

sentiment_analyzer("This is fun.")

Task 5: Run Unit tests on your application 

  • For running unit tests, we need to create a new file that calls the required application function from the package and tests its for a known text and output pair.

  • For this, complete the following steps.

    1. Create a new file in practice_project folder, called test_sentiment_analysis.py.

    2. In this file, import the sentiment_analyzer function from the SentimentAnalysis package. Also import the unittest library.

from SentimentAnalysis.sentiment_analysis import sentiment_analyzer

import unittest

    1. Create the unit test class. Let's call it TestSentimentAnalyzer. Define test_sentiment_analyzer as the function to run the unit tests.

class TestSentimentAnalyzer(unittest.TestCase):

    def test_sentiment_analyzer(self):

    1. Define 3 unit tests in the said function and check for the validity of the following statement - label pairs.

      • “I love working with Python”: “SENT_POSITIVE”

      • “I hate working with Pyhton”: “SENT_NEGATIVE”

      • “I am neutral on Python”: “SENT_NEUTRAL”

class TestSentimentAnalyzer(unittest.TestCase):

    def test_sentiment_analyzer(self):

        result_1 = sentiment_analyzer('I love working with Python')

        self.assertEqual(result_1['label'], 'SENT_POSITIVE')

        result_2 = sentiment_analyzer('I hate working with Python')

        self.assertEqual(result_2['label'], 'SENT_NEGATIVE')

        result_3 = sentiment_analyzer('I am neutral on Python')

        self.assertEqual(result_3['label'], 'SENT_NEUTRAL')

    1. Add the following line at the end of the file.

unittest.main()

Task 6: Deploy as web application using Flask

  • To ease the process of deployment, you have been provided with 3 files which are going to be used for this task.

    1. index.html in templates folder: Code for the web interface

    2. mywebscript.js in static folder: This javascript file executes a GET request and takes the text provided by the user as input. 

    3. server.py in the practice_project folder.

''' Executing this function initiates the application of sentiment

    analysis to be executed over the Flask channel and deployed on

    localhost:5000.

'''

# Import Flask, render_template, request from the flask pramework package : TODO

# Import the sentiment_analyzer function from the package created: TODO


from flask import Flask, render_template, request

from SentimentAnalysis.sentiment_analysis import sentiment_analyzer


#Initiate the flask app : TODO

app = Flask("Sentiment Analyzer")


@app.route("/sentimentAnalyzer")

def sent_analyzer():

    ''' This code receives the text from the HTML interface and 

        runs sentiment analysis over it using sentiment_analysis()

        function. The output returned shows the label and its confidence 

        score for the provided text.

    '''

    # TODO

    text_to_analyze = request.args.get('textToAnalyze')

    response = sentiment_analyzer(text_to_analyze)

    label = response['label']

    score = response['score']

    return "The given text has been identified as {} with a score of {}.".format(label.split('_')[1], score)

 


@app.route("/")

def render_index_page():

    ''' This function initiates the rendering of the main application

        page over the Flask channel

    '''

    #TODO

    return render_template('index.html')


if __name__ == "__main__":

    ''' This functions executes the flask app and deploys it on localhost:5000

    '''

    #TODO

    app.run(host = "0.0.0.0", port = 4996)

Task 7: Incorporate Error handling

  • To incorporate error handling, we need to identify the different forms of error codes that may be received in response to the GET query initiated by the sent_analyzer function in server.py.

  • In the case of invalid entries, the system responds with 500 error code, indicating that there is something wrong at the server end.

  • Invalid entry could be anything that the model is not able to interpret. However, in the situation of this error, this application output doesn't get updated.

  • To fix this bug in our application, we need to study the response received from the Watson AI library function, when the server generates 500 error. To test this, we need to retrace the steps taken in Task 2, and test the Watson AI library with an invalid string input.

  • Open a python shell in the terminal and run the following commands to check the required output.

import requests

url = "https://sn-watson-sentiment-bert.labs.skills.network/v1/watson.runtime.nlp.v1/NlpService/SentimentPredict"

headers = {"grpc-metadata-mm-model-id": "sentiment_aggregated-bert-workflow_lang_multi_stock"}

myobj = { "raw_document": { "text": "as987da-6s2d aweadsa" } }

response = requests.post(url, json = myobj, headers=headers)

print(response.status_code)


myobj = { "raw_document": { "text": "Testing this application for error handling" } }

response = requests.post(url, json = myobj, headers=headers)

print(response.status_code)

Task 8: Run static code analysis

  • Finally, in Task 8, we check the quality of your coding skills as per the PEP8 guidelines by running static code analysis.

  • Normally, this is done at the time of packaging and unit testing the application. However, we have kept this step at the of this project since the codes are updated in all tasks before this. 

  • Once your files for this project are now ready, let us test them for adherence to the PEP8 guidelines.

  • The first step in this process is to install the PyLint library using the terminal.

python3.11 -m pip install pylint

  • Next, use pylint to run static code analyse server.py.

  • On terminal bash execute the following command.

pylint server.py

  • If all aspects of PEP8 guide have been incorporated in your code, then the score generated should be 10/10. In case it isn't follow the instructions given by the modify to correct the code appropriately.

Key Takeaways

References


About Me:

  • Phone: +84 946 937 937 (Phu)

  • Email: [email protected]  or  [email protected] 

  • Facebook: https://www.facebook.com/phu210.vn/

  • Page: https://www.lephongphu.works/home-page 

"I have gathered information from various sources on the internet, and it is now available for your perusal.

Thank you so much for coming here!"

Google Sites
Report abuse
Page details
Page updated
Google Sites
Report abuse