Bài báo · arXiv 1505.04597
U-Net: Mạng nơ-ron tích chập cho phân đoạn ảnh y sinh
U-Net: Convolutional Networks for Biomedical Image Segmentation
Tóm tắt trong ba dòng
- 🎯 Huấn luyện đầu-cuối các mạng phân đoạn y sinh cấp pixel với độ chính xác cao chỉ từ các tập dữ liệu gán nhãn rất nhỏ.
- 🔧 Kiến trúc tích chập hình chữ U đối xứng kết hợp nhánh co lại để học ngữ cảnh, nhánh mở rộng kèm skip connection để định vị chính xác, tích chập valid không đệm, tăng cường biến dạng đàn hồi và bản đồ trọng số phân tách biên.
- 📈 Vượt trội hơn các phương pháp cửa sổ trượt trên thử thách phân đoạn ISBI EM (lỗi biến dạng 0,000353) và chiến thắng thử thách ISBI Cell Tracking 2015 với IOU đạt 0,9203 trên PhC-U373 và 0,7756 trên DIC-HeLa.
Tóm tắt
Phần lớn ý kiến đều đồng thuận rằng việc huấn luyện thành công các mạng học sâu đòi hỏi hàng nghìn mẫu huấn luyện có gán nhãn. Trong bài báo này, chúng tôi trình bày một kiến trúc mạng và chiến lược huấn luyện dựa vào việc sử dụng mạnh mẽ kỹ thuật tăng cường dữ liệu nhằm khai thác hiệu quả hơn các mẫu gán nhãn sẵn có. Kiến trúc mạng gồm một nhánh co lại để nắm bắt ngữ cảnh và một nhánh mở rộng đối xứng cho phép định vị chính xác. Chúng tôi chứng minh rằng một mạng như vậy có thể được huấn luyện đầu-cuối từ rất ít hình ảnh và vượt trội hơn phương pháp tốt nhất trước đó (mạng tích chập cửa sổ trượt) tại thử thách ISBI về phân đoạn cấu trúc nơ-ron trong các chuỗi ảnh kính hiển vi điện tử. Sử dụng cùng một mạng được huấn luyện trên hình ảnh kính hiển vi ánh sáng truyền qua (độ tương phản pha và DIC), chúng tôi đã chiến thắng thử thách theo dõi tế bào ISBI 2015 ở các hạng mục này với khoảng cách biệt lớn. Hơn nữa, mạng hoạt động rất nhanh. Việc phân đoạn một hình ảnh 512x512 chỉ mất chưa đầy một giây trên một GPU hiện đại. Bản triển khai đầy đủ (dựa trên Caffe) và các mạng đã huấn luyện được cung cấp tại http://lmb.informatik.uni-freiburg.de/people/ronneber/u-net .
Tóm tắt gốc (tiếng Anh)
There is large consent that successful training of deep networks requires many thousand annotated training samples. In this paper, we present a network and training strategy that relies on the strong use of data augmentation to use the available annotated samples more efficiently. The architecture consists of a contracting path to capture context and a symmetric expanding path that enables precise localization. We show that such a network can be trained end-to-end from very few images and outperforms the prior best method (a sliding-window convolutional network) on the ISBI challenge for segmentation of neuronal structures in electron microscopic stacks. Using the same network trained on transmitted light microscopy images (phase contrast and DIC) we won the ISBI cell tracking challenge 2015 in these categories by a large margin. Moreover, the network is fast. Segmentation of a 512x512 image takes less than a second on a recent GPU. The full implementation (based on Caffe) and the trained networks are available at http://lmb.informatik.uni-freiburg.de/people/ronneber/u-net .
Hướng dẫn đọc
Vấn đề và động lực
Phân đoạn ảnh y sinh yêu cầu phân loại dày đặc ở cấp độ pixel (định vị) thay vì phân loại ở cấp độ toàn bộ hình ảnh. Lĩnh vực này bị chi phối bởi hai thách thức cơ bản:
- Dữ liệu huấn luyện có gán nhãn rất khan hiếm, thường chỉ bao gồm vài chục hình ảnh thay vì hàng nghìn hay hàng triệu ảnh.
- Các phương pháp học sâu trước đây, chẳng hạn như mạng tích chập cửa sổ trượt dựa trên mẩu ảnh (patch-based) (ví dụ: Cireşan et al.), gặp phải sự dư thừa lớn, suy luận chậm và sự đánh đổi cố hữu giữa ngữ cảnh mẩu ảnh và độ chính xác định vị.
Các tác giả đã tìm kiếm một mạng tích chập hoàn toàn (fully convolutional network) huấn luyện đầu-cuối có thể đồng thời nắm bắt ngữ cảnh toàn cục và chi tiết cục bộ tinh xảo, xử lý liền mạch các hình ảnh lớn tùy ý và huấn luyện thành công từ dữ liệu cực kỳ hạn chế.
Ý tưởng cốt lõi
- Kiến trúc chữ U đối xứng: Mở rộng các mạng tích chập hoàn toàn bằng cách kết hợp nhánh encoder co lại (giảm mẫu) với một nhánh decoder mở rộng (tăng mẫu) có năng lực biểu diễn tương đương, được trang bị nhiều kênh đặc trưng để truyền ngữ cảnh lên trên.
- Kết nối tắt (Skip Connections): Các bản đồ đặc trưng độ phân giải cao từ nhánh co lại được sao chép và nối với các bản đồ đặc trưng đã được tăng mẫu ở nhánh mở rộng (sau khi cắt xén), cung cấp các chi tiết định vị không gian chính xác đã bị mất trong quá trình pooling.
- Chiến lược ngói xếp chồng với tích chập Valid (Overlap-Tile Strategy): Mạng sử dụng các phép tích chập không đệm (unpadded). Các vùng biên được dự đoán liền mạch bằng cách chia ngói và ngoại suy ngữ cảnh bị thiếu thông qua lấy đối xứng qua gương, vượt qua giới hạn bộ nhớ GPU trên các ảnh lớn.
- Tăng cường biến dạng đàn hồi (Elastic Deformation Augmentation): Các biến dạng đàn hồi mượt mà và thực tế được tạo ra thông qua các lưới ngẫu nhiên thô giúp mạng học tính bất biến với biến dạng, làm giảm đáng kể số lượng mẫu huấn luyện cần thiết.
- Đánh trọng số mất mát biên phân tách (Separation Border Loss Weighting): Một bản đồ trọng số tính toán trước theo từng pixel sẽ phạt nặng các lỗi ở các đường biên nền nằm giữa các tế bào chạm nhau thuộc cùng một lớp, cho phép phân tách cá thể rõ ràng.
Phương pháp
Cấu trúc mạng
Mạng có 23 lớp tích chập được tổ chức thành hai nhánh:
- Nhánh co lại (Contracting Path): Các khối lặp lại gồm hai phép tích chập không đệm (mỗi phép theo sau bởi một ReLU) và một phép max pooling với bước trượt stride 2. Số lượng kênh đặc trưng tăng gấp đôi sau mỗi bước pooling.
- Nhánh mở rộng (Expansive Path): Các khối lặp lại gồm một phép tăng mẫu theo sau bởi một tích chập ("up-convolution") làm giảm một nửa số kênh đặc trưng, ghép nối với bản đồ đặc trưng đã cắt tương ứng từ nhánh co lại, và hai tích chập kèm theo ReLU.
- Lớp cuối cùng: Một tích chập ánh xạ các biểu diễn đặc trưng 64 kênh trực tiếp tới điểm số lớp mong muốn.
Hàm mất mát và Trọng số biên
Mạng được huấn luyện với hàm mất mát softmax cross-entropy theo từng pixel: trong đó biểu thị giá trị kích hoạt cho kênh đặc trưng tại pixel , là nhãn lớp chân thực, và là bản đồ trọng số mất mát theo không gian.
Để cân bằng tần suất các lớp và phân tách các đối tượng chạm nhau, được định nghĩa là: trong đó cân bằng tần suất lớp, là khoảng cách đến biên của tế bào gần nhất, là khoảng cách đến biên của tế bào gần thứ hai, các tác giả chọn và pixel.
Tối ưu hóa
- Huấn luyện bằng SGD trong Caffe với kích thước batch bằng 1 (một ngói ảnh lớn duy nhất) và xung lượng (momentum) cao ().
- Trọng số được khởi tạo từ phân phối Gaussian với độ lệch chuẩn , trong đó là số lượng nút đi vào trên mỗi nơ-ron.
Kết quả
- Thử thách ISBI EM Segmentation (Cấu trúc nơ-ron):
- Đạt thứ hạng cao nhất với lỗi biến dạng (warping error) là , Rand error là , và lỗi pixel là (trung bình trên 7 phiên bản xoay, không có hậu xử lý bổ sung).
- Vượt trội hơn phương pháp tốt nhất trước đó của Cireşan et al. (lỗi biến dạng , Rand error ).
- Thử thách ISBI Cell Tracking Challenge 2015:
- PhC-U373 (Độ tương phản pha): Đạt Intersection over Union (IOU) trung bình là , so với của thuật toán đứng thứ hai.
- DIC-HeLa (Độ tương phản giao thoa vi sai): Đạt IOU trung bình là , so với của thuật toán đứng thứ hai.
- Hiệu quả: Phân đoạn một hình ảnh mất chưa đầy một giây trên GPU hiện đại, với tổng thời gian huấn luyện mất khoảng 10 giờ trên GPU NVIDIA Titan (6 GB).
Hạn chế và các câu hỏi mở
- Tích chập không đệm và cắt xén: Do các phép tích chập ở chế độ valid (không đệm), ngói đầu ra nhỏ hơn ngói đầu vào, đòi hỏi phải lựa chọn cẩn thận kích thước ngói đầu vào chia hết cho qua tất cả các bước pooling và cần lấy đối xứng tại viền ảnh.
- Phân tách cá thể qua trọng số kinh nghiệm: Việc phân tách các cá thể chạm nhau dựa vào bản đồ trọng số hình thái học được thiết kế thủ công thay vì các nhánh nhận diện hay embedding cá thể đầu-cuối.
- Thiết kế dành riêng cho 2D: Bài báo tập trung vào các lát cắt 2D, để ngỏ việc điều chỉnh cho các tập dữ liệu thể tích 3D y sinh cho các nghiên cứu tiếp theo.
Thuật ngữ chính
- contracting path
- Nhánh encoder của U-Net liên tục áp dụng các phép tích chập 3x3 không đệm và max pooling để nắm bắt ngữ cảnh và trích xuất các biểu diễn đặc trưng cấp cao.
- expansive path
- Nhánh decoder đối xứng của U-Net thực hiện tăng mẫu các bản đồ đặc trưng, giảm kích thước kênh và tái cấu trúc các phân đoạn không gian chính xác.
- up-convolution
- Phép tích chập 2x2 được áp dụng sau khi tăng mẫu giúp giảm một nửa số lượng kênh đặc trưng trước khi ghép nối.
- overlap-tile strategy
- Một phương pháp suy luận và huấn luyện chia các ảnh lớn tùy ý thành các ngói xếp chồng, lấy đối xứng qua gương các vùng biên để cung cấp ngữ cảnh cần thiết cho các phép tích chập không đệm.
- elastic deformations
- Kỹ thuật tăng cường dữ liệu tạo ra các vector dịch chuyển mượt mà trên lưới thô thông qua nội suy bicubic nhằm mô phỏng các biến đổi tự nhiên của mô sinh học.
- weight map
- Hàm trọng số mất mát biến thiên theo không gian kết hợp cân bằng tần suất lớp và mức phạt hàm mũ dựa trên khoảng cách tới hai tế bào gần nhất để tách các đối tượng chạm nhau.
- warping error
- Một số đo đánh giá phân đoạn được dùng trong thử thách ISBI EM nhằm đánh giá tính đúng đắn về mặt topo, chẳng hạn như màng nơ-ron không bị đứt đoạn.
- fully convolutional network
- Một mạng nơ-ron được cấu thành hoàn toàn từ các phép toán tích chập và pooling mà không có các lớp kết nối đầy đủ (fully connected), cho phép dự đoán dày đặc trên các kích thước đầu vào linh hoạt.
Câu hỏi thường gặp
Tại sao U-Net lại cắt xén các bản đồ đặc trưng trước khi ghép nối trong skip connection?
Bởi vì U-Net sử dụng các phép tích chập valid (không đệm), mỗi tích chập làm giảm kích thước bản đồ đặc trưng do mất các pixel biên. Việc cắt xén bản đồ đặc trưng ở nhánh co lại đảm bảo kích thước không gian của nó khớp với bản đồ đặc trưng đã tăng mẫu để thực hiện ghép nối.
U-Net xử lý các đường biên của ảnh lớn như thế nào trong quá trình suy luận?
U-Net áp dụng chiến lược ngói xếp chồng (overlap-tile strategy): để dự đoán vùng hợp lệ bên trong của một ngói, các pixel ngữ cảnh xung quanh được đưa vào làm đầu vào, và bất kỳ dữ liệu nào còn thiếu ngoài ranh giới hình ảnh sẽ được ngoại suy bằng cách lấy đối xứng gương.
Làm thế nào U-Net có thể phân tách các tế bào chạm vào nhau?
Mạng sử dụng một bản đồ trọng số được tính toán trước trong hàm mất mát nhằm cộng thêm một mức phạt hàm mũ lớn cho các pixel nền nằm giữa ranh giới tế bào gần nhất và gần thứ hai, buộc mạng phải duy trì các đường biên phân tách mỏng.
Tại sao kích thước batch lại được đặt bằng 1 trong quá trình huấn luyện?
Các tác giả ưu tiên các ngói ảnh lớn hơn là kích thước batch lớn nhằm tối đa hóa ngữ cảnh trong giới hạn bộ nhớ GPU sẵn có (6 GB NVIDIA Titan), đồng thời bù đắp cho kích thước batch một ngói bằng cách sử dụng xung lượng SGD cao ở mức 0.99.
Phần giải thích trên trang này do AI viết dựa trên bài báo và có thể có sai sót. Hãy đọc bài báo gốc để biết chi tiết.