Home Knowledge Base Automatic Defect Classification (ADC)

Automatic Defect Classification (ADC) uses machine learning to categorize defects detected during wafer inspection — replacing slow manual review with AI-powered classification that identifies defect types (particles, scratches, pattern defects) in seconds, accelerating yield learning and enabling real-time process control.

What Is ADC?

Why ADC Matters

How ADC Works

1. Image Acquisition: SEM or optical inspection captures defect images. 2. Preprocessing: Normalize, enhance contrast, remove noise. 3. Feature Extraction: CNN extracts visual features automatically. 4. Classification: ML model predicts defect type. 5. Confidence Scoring: Probability for each category. 6. Human Review: Low-confidence cases flagged for manual check.

Defect Categories

Particles: Foreign material contamination. Scratches: Mechanical damage, linear features. Pattern Defects: Lithography, etch, or CMP issues. Residues: Incomplete cleaning, polymer buildup. Voids: Missing material in films. Bridging: Unwanted connections between features. Pits: Surface depressions or holes. Stains: Discoloration or chemical residues.

ML Approaches

Convolutional Neural Networks (CNNs):

Transfer Learning:

Few-Shot Learning:

Quick Implementation

# ADC with PyTorch
import torch
import torchvision.models as models
from PIL import Image

# Load pre-trained model
model = models.resnet50(pretrained=True)
model.fc = torch.nn.Linear(2048, num_defect_classes)
model.load_state_dict(torch.load('adc_model.pth'))
model.eval()

# Classify defect
def classify_defect(image_path):
    image = Image.open(image_path)
    image_tensor = transform(image).unsqueeze(0)
    
    with torch.no_grad():
        output = model(image_tensor)
        probabilities = torch.softmax(output, dim=1)
        predicted_class = torch.argmax(probabilities).item()
        confidence = probabilities[0][predicted_class].item()
    
    return {
        'class': defect_classes[predicted_class],
        'confidence': confidence,
        'probabilities': probabilities[0].tolist()
    }

# Process batch of defects
defects = load_defects_from_inspection()
for defect in defects:
    result = classify_defect(defect.image_path)
    defect.classification = result['class']
    defect.confidence = result['confidence']
    
    # Flag low-confidence for manual review
    if result['confidence'] < 0.85:
        defect.needs_manual_review = True

Training Data Requirements

Performance Metrics

Integration

ADC integrates with:

Best Practices

Typical Performance

Advanced Features

ADC is transforming semiconductor metrology — enabling fabs to process massive defect datasets in real-time, accelerating yield learning cycles from weeks to hours and making data-driven process control a reality at advanced nodes.

automatic defect classification (adc)automatic defect classificationadcmetrology

Explore 500+ Semiconductor & AI Topics

From EUV lithography to CUDA optimization — search the full knowledge base or chat with our AI assistant.