Model Pipeline - Action recognition basics
This pipeline learns to recognize human actions from video clips. It processes video frames, extracts important features, trains a model to understand actions, and then predicts the action in new videos.
Jump into concepts and practice - no test required
This pipeline learns to recognize human actions from video clips. It processes video frames, extracts important features, trains a model to understand actions, and then predicts the action in new videos.
Loss
1.2 |*
0.9 | *
0.7 | *
0.5 | *
0.4 | *
+---------
1 2 3 4 5 Epochs
| Epoch | Loss ↓ | Accuracy ↑ | Observation |
|---|---|---|---|
| 1 | 1.2 | 0.40 | Model starts learning, accuracy is low |
| 2 | 0.9 | 0.55 | Loss decreases, accuracy improves |
| 3 | 0.7 | 0.68 | Model captures action features better |
| 4 | 0.5 | 0.78 | Good improvement, model generalizes well |
| 5 | 0.4 | 0.83 | Training converges with high accuracy |
features = []
for frame in video_frames:
feat = extract_features(frame)
features.append(feat)
print(len(features))
If video_frames contains 10 frames, what will be the output?video_frames, which has 10 frames.features has length 10.for video, label in dataset:
features = extract_features(video)
prediction = model.predict(features)
loss = loss_function(prediction, label)
optimizer.zero_grad()
loss.backward()
optimizer.step()
The training loss does not decrease after many epochs. What is a likely error?