Phân tích cú pháp

quá trình phân tích chuỗi kí hiệu bằng ngôn ngữ tự nhiên hoặc ngôn ngữ máy tính tuân theo các quy tắc của ngữ pháp chính thức
(Đổi hướng từ Parsing)

Phân tích cú pháp (tiếng Anh: parsing, syntax analysis, hoặc syntactic analysis) là một quá trình phân tích một chuỗi các biểu tượng, sử dụng trong ngôn ngữ tự nhiên, ngôn ngữ máy tính và các cấu trúc dữ liệu, tuân theo các quy tắc của ngữ pháp hình thức (formal grammar). Thuật ngữ parsing đến từ từ Latin pars (orationis), nghĩa là từ loại.[1]

Thuật ngữ này có đôi chút khác biệt trong các chuyên ngành ngôn ngữ họckhoa học máy tính. Phân tích cú pháp một câu truyền thống thông thường được thực thi dưới dạng một phương pháp hiểu ý nghĩa chính xác của một câu hoặc từ, đôi khi với sự trợ giúp của các thiết kế chẳng hạn như các biểu đồ câu. Theo đó, tầm quan trọng của các bộ phận ngữ pháp như chủ ngữvị ngữ được nhấn mạnh.

Thuật ngữ cũng được dùng trong ngôn ngữ học tâm lý khi mô tả sự hiểu biết ngôn ngữ. Trong bối cảnh đó, phân tích cú pháp là cách con người phân tích một câu hay cụm từ (trong tiếng nói hay văn bản) "xét theo các nhân tố cấu thành ngữ pháp, xác định các thành phần của lời nói, các quan hệ cú pháp,..."[1] Thuật ngữ này đặc biệt phổ biến khi thảo luận về những tín hiệu ngôn ngữ nào giúp người nói diễn dịch câu đường đi trong vườn (garden-path sentence, câu lập lờ).

Với khoa học máy tính, thuật ngữ được dùng để phân tích ngôn ngữ máy tính, nhắc đến cách phân tích cú pháp của mã đầu vào thành các phần thành phần của nó nhằm tạo điều kiện thuận lợi cho việc viết trình biên dịchtrình thông dịch. Thuật ngữ cũng dùng cho việc mô tả sự tách biệt hay phân chia.

Ví dụ

sửa

Sử dụng thư viện spaCy để phân tích cú pháp của câu "Apple is looking at buying U.K. startup for $1 billion" bằng ngôn ngữ Python.

import spacy

nlp = spacy.load("en_core_web_sm")
doc = nlp("Apple is looking at buying U.K. startup for $1 billion")

for token in doc:
    print(token.text, token.lemma_, token.pos_, token.tag_, token.dep_,
            token.shape_, token.is_alpha, token.is_stop)

Xem thêm

sửa

Tham khảo

sửa
  1. ^ a b “Parse”. dictionary.reference.com. Truy cập ngày 27 tháng 11 năm 2010.

Đọc thêm

sửa

Liên kết ngoài

sửa