Ngôn ngữ lập trình tự nhiên | Ai cũng có thể là Coder

Lập trình bằng “Ngôn ngữ tự nhiên” sẽ sớm xuất hiện

Lap-trinh-bang-Ngon-ngu-‘tu-nhien’-se-som-xuat-hien
Lập trình bằng Ngôn ngữ ‘tự nhiên’ sắp có

Ngôn ngữ lập trình tự nhiên: có thể hiểu là kiểu ngôn ngữ lập trình trong đó các mã lệnh (code) được tạo ra bằng cách giao tiếp với máy tính dưới dạng ngôn ngữ cuộc sống hàng ngày. 

Vào ngày 5 tháng 5 năm nay, IBM đã công bố dự án CodeNet, tuy nhiên dự án này hầu như không được các phương tiện truyền thông hoặc giới học thuật/IT chú ý đến.

Thông tin chính thức cho biết, CodeNet là một thành phần bổ sung cho bộ dữ liệu ImageNet bao gồm tập hợp các hình ảnh kèm các mô tả đặc tính của các hình ảnh này. ImageNet hiện là “lõi” của deep learning computer vision.

Mục đích của CodeNet là để lập trình Trí tuệ nhân tạo (AI) dựa trên lõi ImageNet. CodeNet chứa một tập hợp dữ liệu gồm hơn 14 triệu dòng lệnh (code samples) của 50 ngôn ngữ lập trình khác nhau và có khả năng giải quyết khoảng 4.000 vấn đề thường gặp trong lập trình. Tập hợp dữ liệu này cũng chứa các dữ liệu bổ sung, chẳng hạn như xác định dung lượng bộ nhớ cần thiết để chạy các phần mềm và ghi lại kết quả đầu ra của các mã lệnh đang chạy.

Xem thêm: Khóa học lập trình Python | Best Free Python Course Download

IBM cho rằng CodeNet sẽ rất hữu ích trong việc phát hiện các mã lệnh lập trình lỗi thời, có thể gây ra các sự cố như cuộc khủng hoảng Y2K hơn 20 năm trước vì thiếu tính kế thừa.

Tuy nhiên, nhiều nhà nghiên cứu bảo mật cho rằng CodeNet – và các dự án tương tự – là cơ sở của việc hình thành Natural Language Coding (NLC) – Ngôn ngữ lập trình tự nhiên.

Trong những năm gần đây, các công ty như OpenAI và Google đang nhanh chóng cải tiến công nghệ Xử lý ngôn ngữ tự nhiên (NLP). Đây là các chương trình dựa trên máy học được thiết kế để hiểu và bắt chước ngôn ngữ tự nhiên của con người tốt hơn và có thể thông dịch giữa các ngôn ngữ với nhau.

Và để tạo ra các chương trình xử lý ngôn ngữ như thế thì hệ thống máy học cần phải truy cập vào một tập dữ liệu đủ lớn với các văn bản được viết bằng các ngôn ngữ con người hay dùng để giao tiếp. Ngôn ngữ lập trình tự nhiên (viết tắt là NLC) cũng áp dụng nguyên lý tương tự.

Lập trình là một kỹ năng khó học và một lập trình viên có kinh nghiệm sẽ cần phải thông thạo nhiều ngôn ngữ lập trình.

NLC được phát triển dựa trên các công nghệ Xử lý ngôn ngữ tự nhiên (NLP) cùng với một cơ sở dữ liệu rộng lớn như CodeNet, cho phép bất kỳ ai sử dụng tiếng Anh, tiếng Pháp hoặc tiếng Trung hoặc bất kỳ ngôn ngữ tự nhiên nào khác cũng có thể lập trình một cách đơn giản.

Bạn có thể tưởng tượng, vào một ngày nào đó trong tương lai gần, bạn chỉ cần nói, “Ê, máy tính, tôi muốn tạo một hình nền màu đỏ với hình ảnh chiếc máy bay trên đó, đặt logo công ty ở giữa và nút liên hệ ngay bên dưới” và máy tính sẽ tự động thực hiện để cho ra kết quả như ý bạn muốn.

Trên con đường tiến tới một ngôn Ngữ lập trình tự nhiên (NLC) hoàn thiện, không chỉ có một mình IBM. GPT-3, mô hình NLP rất nổi tiếng của OpenAI, đã từng bước được sử dụng để lập trình một trang web hoặc ứng dụng chỉ bằng cách mô tả những gì mà người dùng cần đạt được. Ngay sau thông báo trên của IBM, Microsoft tuyên bố đã hợp tác với OpenAI để cấp phép độc quyền cho việc sử dụng GPT-3.

(ChiasePremium – Nếu bạn nào đang sử dụng các công cụ viết bài tự động tạo nội dung tự động chắc không lạ gì GPT-3, 100% các công cụ viết bài tự động hiện nay như Rytr, Nichesss, CopySmith,… đều đang sử dụng GPT-3. Kết quả văn bản đầu ra tốt/xấu phụ thuộc khá nhiều vào tay nghề “khai thác mỏ” dữ liệu của lập trình viên. Hiện tại đang sắp có GPT-4).

Xem thêm: Nền tảng nào để học lập trình cơ bản? So sánh 3 tài khoản Pluralsight vs Treehouse vs Codecademy.

Hệ quả của việc phát triển ngôn ngữ lập trình tự nhiên NLC

Ket-qua-cua-viec-phat-trien-ngon-ngu-lap-trinh-tu-nhien-NLC
Ngôn ngữ lập trình tự nhiên NLC có thể hỗ trợ các nhà khoa học rút ngắn thời gian nghiên cứu.

Mặc dù NLC vẫn chưa hoàn toàn khả thi, nhưng một tương lai mà bất kỳ ai cũng có thể dễ dàng lập trình đang dần trở nên hiện thực.

Ngoài ra, bạn có thể nhìn thấy một kết quả tích cực khác, chẳng hạn, hiện nay các ngành học như vật lý tính toán và xã hội học thống kê ngày càng dựa vào các chương trình máy tính để xử lý dữ liệu. Việc giảm kỹ năng cần thiết (giảm thời gian học một ngôn ngữ lập trình thành thạo) để tạo ra các chương trình xử lý dữ liệu theo yêu cầu nghiên cứu sẽ giúp các các nhà nghiên cứu nhanh chóng tìm ra những khám phá mới, tri thức mới.

Tuy nhiên, để phát triển và hoàn thiện AI NLC cần rất nhiều tiền và vì thế, lĩnh vực này rất có khả năng bị độc quyền bởi các tập đoàn lớn như Microsoft, Google hay IBM.

(Nguồn: https://thenextweb.com)

Đặt Câu hỏi hoặc để lại Bình luận - Yêu cầu của bạn

Share via
Copy link