1 điểm bởi GN⁺ 2025-03-24 | Chưa có bình luận nào. | Chia sẻ qua WhatsApp
  • Scallop là một ngôn ngữ khai báo để đưa suy luận ký hiệu dựa trên quy tắc logic vào các ứng dụng AI, dựa trên Datalog, ngôn ngữ truy vấn cơ sở dữ liệu quan hệ
  • Bộ giải hỗ trợ suy luận rời rạc, xác suất và khả vi, cho phép chọn cách suy luận phù hợp với yêu cầu của ứng dụng
  • Thông qua binding Python, có thể đưa mô-đun suy luận logic vào trong chương trình và tích hợp với pipeline machine learning PyTorch hiện có
  • Đây là cách kết hợp thành phần logic theo quy tắc với các thành phần thần kinh do CNN hoặc Transformer tạo ra trong các tác vụ thị giác và NLP
  • Cung cấp các ví dụ end-to-end về học đồng thời thành phần thần kinh và quy tắc như suy luận thị giác CLEVR, phân biệt tính liên thông Pathfinder và đánh giá biểu thức chữ viết tay

Các thành phần cốt lõi của Scallop

  • Language

    • Scallop là một ngôn ngữ khai báo để xử lý suy luận ký hiệu trong các ứng dụng AI
    • Nền tảng của nó là Datalog, ngôn ngữ truy vấn dựa trên quy tắc logic cho cơ sở dữ liệu quan hệ
  • Solver

    • Scallop là một bộ giải Datalog có thể mở rộng
    • Hỗ trợ các chế độ suy luận rời rạc, suy luận xác suấtsuy luận khả vi
    • Mỗi chế độ suy luận có thể được cấu hình phù hợp với các yêu cầu khác nhau của ứng dụng AI
  • Framework

    • Cung cấp binding để sử dụng mô-đun suy luận logic trong chương trình Python
    • Có thể tích hợp sâu với pipeline machine learning PyTorch hiện có

Ứng dụng ví dụ

  • CLEVR là một tác vụ suy luận thị giác trả lời các câu hỏi như “có bao nhiêu vật thể màu xanh?” về các vật thể 3D đơn giản trong ảnh
    • Thành phần thần kinh tạo ra scene graph của hình ảnh và programmatic query biểu diễn câu hỏi
    • Thành phần suy luận dùng các quy tắc logic để chỉ định các phép toán chọn, so sánh và đếm đối tượng theo các thuộc tính được chỉ định
    • Scallop tích hợp các thành phần này vào một framework chung và cho phép huấn luyện end-to-end
  • Pathfinder là một tác vụ suy luận tính liên thông tầm xa để xác định xem hai điểm trong ảnh đen trắng có được nối với nhau bằng các nét đứt hay không
    • Có thể xây dựng bằng một kiến trúc thần kinh đơn giản để phát hiện điểm và nét gạch, cùng vài dòng quy tắc logic Scallop
    • Các quy tắc được đưa ra dùng dash(x, y) làm đường đi, rồi đệ quy nối path(x, z), dash(z, y) để xác định is_connected()
    • Cấu hình này cho hiệu năng cao hơn các Transformer hiện đại
  • Đánh giá biểu thức chữ viết tay là tác vụ nhận dạng chuỗi ký hiệu viết tay gồm các chữ số từ 0 đến 9 và các phép toán số học đơn giản, rồi tính giá trị biểu thức
    • Ví dụ nhận đầu vào 1 + 3 / 5 và tính ra kết quả 1.6
    • Với Scallop, có thể tạo một trình phân tích cú pháp ngữ pháp phi ngữ cảnh hoàn chỉnh có khả năng phân tích đầu vào xác suất
    • Bộ phân tích cú pháp và bộ đánh giá có thể được viết chỉ với 5 dòng mã Scallop
    • Chương trình này có thể được huấn luyện theo cách end-to-end cùng với mô hình thần kinh nhận dạng từng ký hiệu riêng lẻ, và sau khi huấn luyện sẽ tìm biểu thức có xác suất cao nhất rồi trả về kết quả đánh giá

Chưa có bình luận nào.

Chưa có bình luận nào.