Khởi đầu NLP với Python

1. Những ngôn ngữ thường sử dụng trong NLP
    Trên blog của Hal Daume III(1 học giả cực kì nổi tiếng về lĩnh vực NLP sử dụng máy học(Machine Learning)) đã tiến hành 1 cuộc điều tra với câu hỏi như sau : "Khi thực hiện những project lớn về NLP, các bạn sử dụng ngôn ngữ lập trình nào?" (Language of Choice). Kết quả tổng quát cho thấy, 3 ngôn ngữ chính được sử dụng là Python, Java và C/C++.
    Kết quả này cũng không có gì bất ngờ, khi 3 ngôn ngữ này cũng là 3 ngôn ngữ chính được sử dụng tại Google. 

2. Tại sao lại là Python?

  Python là 1 ngôn ngữ lập trình đơn giản, nhưng mạnh mẽ và được trang bị những tính năng rất thích hợp cho việc xử lý dữ liệu dạng ngôn ngữ học. Bạn có thể download và cài đặt python một cách hoàn toàn miễn phí tại http://www.python.org/ . 

  Để dẫn chứng cho sự hiệu quả của Python, hãy giải bài tập sau đây : xử lý file.txt và biểu thị tất cả những từ có đuôi là “ing”.

  Các bạn hãy giải bài tập này bằng ngôn ngữ thường dùng của bạn, và so sánh với lời giải bằng Python sau :

>>> for line in open(“file.txt”):

…     for word in line.split():

…         if word.endswith(‘ing’):

…                        print word

  Nhìn vào lời giải trên, bạn có thể hiểu sức mạnh và tính hiệu quả của Python trong xử lý ngôn ngữ và văn bản.

   Python là 1 ngôn ngữ hướng đối tượng, và cũng đồng thời là 1 ngôn ngữ động, nó được trang bị những thư viện tiêu chuẩn khổng lồ : từ web, xử lý số học, đến cả lập trình đồ hoạ. Python được sử dụng rộng rãi trong sản xuất, khoa học, hay giáo dục và ngày càng trở nên phổ biến và hoàn thiện.

  Nhắc đến Python không thể không nhắc đến NLTK.

  NLTK là 1 bộ công cụ dành riêng cho NLP và được tích hợp vào Python. Nó đang ngày càng hoàn thiện và tích hợp các công cụ mới bởi hàng nghìn lập trình viên và cộng tác viên trên khắp thế giới. NLTK bao gồm những thư viện hàm, các công cụ phân tích, các corpus, wordnet, … giúp đơn giản hoá, tiết kiệm thời gian và công sức cho các lập trình viên. Bạn có thể tìm hiểu thêm về NLTK và download miễn phí tại http://www.nltk.org/ .

   Về NLTK, tôi sẽ có nhiều bài viết khác để giới thiệu ưu điểm và sức mạnh của công cụ này. Nhưng có 1 khẳng định : Python + NLTK là bộ công cụ hữu hiệu và mạnh mẽ nhất dành cho NLP

   
Comments