Lập trình trí tuệ nhân tạo |
Bạn là một người có niềm đam mê với trí tuệ nhân tạo (AI – artificial intelligence) và đang phân vân không biết nên chọn ngôn ngữ lập trình nào cho dự án AI của mình? Vậy thì, trong khuôn khổ bài viết hôm nay, mình xin giới thiệu đến với các bạn tốp 5 ngôn ngữ lập trình hay nhất dành cho phát triển AI.
Python
Python là một trong những ngôn ngữ lập
trình được sử dụng phổ biến nhất trong lĩnh vực trí tuệ nhân tạo nhờ vào
tính đơn giản của nó. Nó có thể được sử dụng một cách trơn tru với các
cấu trúc dữ liệu và các thuật toán AI được sử dụng thường xuyên khác.
Sự lựa chọn Python dành cho các dự án AI
cũng xuất phát từ thực tế là Python có nhiều library hữu ích có thể
được sử dụng trong AI. Ví dụ: Numpy mang đến khả năng tính toán khoa học
(scientific computation), Scypy thì dành cho tính toán tiên tiến
(advanced computing) và Pybrain thì dành cho máy học (machine learning)
trong Python.
Bạn cũng sẽ không gặp phải bất kỳ vấn đề
nào khi tìm hiểu về Python cho các dự án AI vì hiện nay có rất nhiều
nguồn học trực tuyến dành cho bạn.
Java
Java cũng là một lựa chọn tuyệt vời. Nó
là một ngôn ngữ lập trình theo hướng đối tượng chú trọng đến việc cung
cấp các tính năng cấp cao cần thiết trong quá trình thực hiện dự án AI,
nó khả chuyển (portable), và có bộ thu dọn rác (garbage collection) gắn
liền. Cộng đồng Java cũng là một điểm cộng vì khi bạn có bất kỳ thắc mắc
hay vấn đề nào, thì cũng sẽ có nhiều người có thể giúp đỡ bạn.
Java cũng là một lựa chọn tốt khi mà nó
giúp bạn code các thuật toán dễ dàng khi mà AI có rất nhiều thuật toán.
Ngoài ra Java còn có khả năng mở rộng và đây là một tính năng cần phải
có trong các dự án AI.
Lisp
Lisp cũng là một lựa chọn khác dành cho
dự án AI bởi vì các khả năng prototyping (tạo mẫu) tuyệt vời của nó và
sự hỗ trợ của nó đối với symbolic expression (biểu thức ký hiệu). Nó là
một ngôn ngữ lập trình mạnh và được sử dụng trong các dự án AI lớn như
Macsyma, DART, và CYC.
Ngôn ngữ Lisp phần lớn được sử dụng
trong Máy học (Machine learning)/ILP sub-field bởi vì cấu trúc ký hiệu
(symbolic structure) và tính khả dụng của nó.
Prolog
Prolog xếp ngang hàng với Lisp khi nhắc
đến sự hữu ích và tính khả dụng. Theo tài liệu Prolog Programming for
Artificial Intelligence, Prolog là một trong những ngôn ngữ lập trình có
một số cơ chế cơ bản mà sẽ cực kỳ hữu ích trong lập trình AI. Ví dụ: nó
mang đến đối sánh mẫu (pattern matching), quay lui tự động (automatic
backtracking), và các cơ chế cấu trúc dữ liệu dạng cây (tree-based data
structuring mechanisms). Kết hợp những cơ chế này sẽ mang đến cho bạn
một framework linh hoạt trong quá trình làm việc.
Prolog được sử dụng bao quát trong các hệ chuyên gia (expert system) của AI và cũng rất hữu ích khi thực hiện các dự án y tế.
C++
C++ là ngôn ngữ lập trình nhanh nhất
trên thế giới. Khả năng giao tiếp với phần cứng cho phép các nhà phát
triển cải thiện thời gian thực thi chương trình. C + + vô cùng hữu ích
cho các dự án AI có sự nhạy cảm về thời gian (time-sensitive). Ví dụ các
công cụ tìm kiếm có thể sử dụng C + + rộng rãi.
Đối với AI, C + + có thể được sử dụng
cho các kỹ thuật thống kê AI như trong neural network. Các thuật toán
cũng có thể được viết bao quát bằng C ++ để tăng tốc độ thực thi, và AI
trong các trò chơi hầu hết được code bằng C ++ để thực thi nhanh hơn và
thời gian phản hồi cũng nhanh hơn.
Việc lựa chọn ngôn ngữ lập trình cho dự
án AI của bạn phụ thuộc rất nhiều vào sub-field. Do đó trước khi bạn
chọn một ngôn ngữ lập trình nào đó, phải đảm bảo rằng nó có thể sử dụng
bao quát và không cục bộ. Trong số các ngôn ngữ ở trên, thì Python là
lựa chọn hàng đầu cho các dự án AI. Lisp và Prolog cũng được sử dụng bởi
một số nhóm nhất định. Java và C ++ cũng rất hữu ích vì những lợi ích
mà chúng mang lại.
Hiện nay, ngày càng có nhiều startup và các công ty công nghệ lớn bắt đầu chú ý đến AI. Một khảo sát mới đây từ tờ Narrative Science cho thấy 38% doanh nghiệp sẵn sàng sử dụng AI vào năm 2016 và con số này sẽ tăng lên 62% vào năm 2018. Công ty nghiên cứu Foresster Research dự đoán số tiền đầu tư vào AI trong năm 2017 sẽ tăng 300% so với năm 2016. IDC dự đoán thị trường AI sẽ tăng từ 8 tỷ USD trong năm 2016 lên mức 47 tỷ USD trong năm 2020.
Được tạo ra từ năm 1955 như là một chuyên ngành mới của khoa học máy tính, AI ngày nay bao gồm một loạt các công nghệ và công cụ khác nhau, một số vẫn còn trong giai đoạn thử nghiệm, trong khi một số đã đi vào thực tiễn. Dựa trên các phân tích của Forrester, mình xin giới thiệu đến các bạn 10 công nghệ AI “hot” nhất hiện nay:
Tạo ra các văn bản từ dữ liệu máy tính. Hiện nay công nghệ này đang được áp dụng trong dịch vụ khách hàng, tạo báo cáo và tổng hợp thông tin chi tiết về báo cáo kinh doanh. Các nhà cung cấp tiêu biểu: Attivio, Automated Insights, Cambridge Semantics, Digital Reasoning, Lucidworks, Narrative Science, SAS, Yseop.
Chuyển đổi lời nói của con người sang dạng mà các ứng dụng máy tính có thể hiểu được. Hiện tại, công nghệ này đang được sử dụng trong các hệ thống phản hồi tương tác bằng giọng nói và các thiết bị di động. Các nhà cung cấp tiêu biểu: NICE, Nuance Communications, OpenText, Verint Systems
Forrester gọi công nghệ này là: “Người yêu hiện tại của các phương tiện”, từ những chatbot đơn giản cho tới những hệ thống tiên tiến có thể kết nối được với con người. Công nghệ này đang được sử dụng trong dịch vụ khách hàng, hỗ trợ người dùng và quản lý nhà thông minh. Các nhà cung cấp tiêu biểu là: Amazon, Apple, Artificial Solutions, Assist AI, Creative Virtual, Google, IBM, IPsoft, Microsoft, Satisfi.
Cung cấp các thuật toán, APIs, bộ công cụ phát triển và huấn luyện, dữ liệu cũng như các công nghệ điện toán để thiết kế, huấn luyện và triển khai các mô hình vào trong các ứng dụng, quy trình và các loại máy móc khác. Công nghệ này hiện đang được dùng trong các ứng dụng doanh nghiệp, chủ yếu liên quan đến dự đoán hoặc phân loại. Các nhà cung cấp tiêu biểu: Amazon, Fractal Analytics, Google, H2O.ai, Microsoft, SAS, Skytree.
Bộ xử lý đồ họa (GPU – Graphics processing units) và các thiết bị đặc biệt được thiết kế để có thể thực hiện được các công việc của AI một cách hiệu quả nhất. Công nghệ này hiện được sử dụng chủ yếu để tạo nên sự khác biệt cho các ứng dụng deep learning. Các nhà cung cấp tiêu biểu: Alluviate, Cray, Google, IBM, Intel, Nvidia
Công nghệ này giúp gắn các quy tắc và logic vào các hệ thống AI và được sử dụng cho việc thiết lập/huấn luyện ban đầu và duy trì và điều chỉnh liên tục. Khi công nghệ được hoàn thiện, nó sẽ được dùng trong các ứng dụng doanh nghiệp để hỗ trợ hoặc thực hiện việc ra các quyết định một cách tự động. Các nhà cung cấp tiêu biểu: Advanced Systems Concepts, Informatica, Maana, Pegasystems, UiPath.
Là một lĩnh vực đặc biệt trong máy học (machine learning), bao gồm mạng thần kinh nhân tạo cùng với nhiều lớp trừu tượng (abstraction layers). Công nghệ này hiện đang được dùng chủ yếu trong các ứng dụng nhận diện và phân loại hình ảnh từ khối lượng cực kì lớn dữ liệu. Các nhà cung cấp tiêu biểu: Deep Instinct, Ersatz Labs, Fluid AI, MathWorks, Peltarion, Saffron Technology, Sentient Technologies
Cho phép tương tác tự nhiên hơn giữa con người và máy móc, bao gồm cả nhận diện hình ảnh, dấu vân tay, giọng nói và cử chỉ của con người. Công nghệ này hiện đang được sử dụng chủ yếu trong lĩnh vực nghiên cứu thị trường. Các nhà cung cấp tiêu biểu: 3VR, Affectiva, Agnitio, FaceFirst, Sensory, Synqera, Tahzoo
Sử dụng mã hóa và các phương pháp khác để tự động hóa hoạt động của con người nhằm hỗ trợ công việc hiệu quả hơn. Công nghệ này hiện được sử dụng khi con người không thể thực hiện một nhiệm vụ hoặc một quy trình vì cho rằng quá mắc hoặc không hiệu quả. Các nhà cung cấp tiêu biểu: Advanced Systems Concepts, Automation Anywhere, Blue Prism, UiPath, WorkFusion.
Xử lý ngôn ngữ tự nhiên (NLP - Nature Language Process) sử dụng và hỗ trợ phân tích đoạn văn bản bằng cách làm cho dễ dàng việc hiểu ý nghĩa và cấu trúc câu, tính chất truyền cảm, và mục đích thông qua thống kê và các phương pháp máy học. Công nghệ này hiện đang được dùng trong hệ thống phát hiện gian lận và bảo mật cũng như một loạt các trợ lý ảo, và các ứng dụng dùng để khai thác dữ liệu không cấu trúc. Các nhà cung cấp tiêu biểu: Basis Technology, Coveo, Expert System, Indico, Knime, Lexalytics, Linguamatics, Mindbreeze, Sinequa, Stratifyd, Synapsify
Các công nghệ trí tuệ nhân tạo (AI) HOT nhất hiện nay
Hiện nay, ngày càng có nhiều startup và các công ty công nghệ lớn bắt đầu chú ý đến AI. Một khảo sát mới đây từ tờ Narrative Science cho thấy 38% doanh nghiệp sẵn sàng sử dụng AI vào năm 2016 và con số này sẽ tăng lên 62% vào năm 2018. Công ty nghiên cứu Foresster Research dự đoán số tiền đầu tư vào AI trong năm 2017 sẽ tăng 300% so với năm 2016. IDC dự đoán thị trường AI sẽ tăng từ 8 tỷ USD trong năm 2016 lên mức 47 tỷ USD trong năm 2020.
Được tạo ra từ năm 1955 như là một chuyên ngành mới của khoa học máy tính, AI ngày nay bao gồm một loạt các công nghệ và công cụ khác nhau, một số vẫn còn trong giai đoạn thử nghiệm, trong khi một số đã đi vào thực tiễn. Dựa trên các phân tích của Forrester, mình xin giới thiệu đến các bạn 10 công nghệ AI “hot” nhất hiện nay:
1. Sản sinh ngôn ngữ tự nhiên (Natural Language Generation)
Tạo ra các văn bản từ dữ liệu máy tính. Hiện nay công nghệ này đang được áp dụng trong dịch vụ khách hàng, tạo báo cáo và tổng hợp thông tin chi tiết về báo cáo kinh doanh. Các nhà cung cấp tiêu biểu: Attivio, Automated Insights, Cambridge Semantics, Digital Reasoning, Lucidworks, Narrative Science, SAS, Yseop.
2. Nhận diện giọng nói
Chuyển đổi lời nói của con người sang dạng mà các ứng dụng máy tính có thể hiểu được. Hiện tại, công nghệ này đang được sử dụng trong các hệ thống phản hồi tương tác bằng giọng nói và các thiết bị di động. Các nhà cung cấp tiêu biểu: NICE, Nuance Communications, OpenText, Verint Systems
3. Quản trị viên ảo
Forrester gọi công nghệ này là: “Người yêu hiện tại của các phương tiện”, từ những chatbot đơn giản cho tới những hệ thống tiên tiến có thể kết nối được với con người. Công nghệ này đang được sử dụng trong dịch vụ khách hàng, hỗ trợ người dùng và quản lý nhà thông minh. Các nhà cung cấp tiêu biểu là: Amazon, Apple, Artificial Solutions, Assist AI, Creative Virtual, Google, IBM, IPsoft, Microsoft, Satisfi.
4. Nền tảng máy học (Machine Learning Platforms)
Cung cấp các thuật toán, APIs, bộ công cụ phát triển và huấn luyện, dữ liệu cũng như các công nghệ điện toán để thiết kế, huấn luyện và triển khai các mô hình vào trong các ứng dụng, quy trình và các loại máy móc khác. Công nghệ này hiện đang được dùng trong các ứng dụng doanh nghiệp, chủ yếu liên quan đến dự đoán hoặc phân loại. Các nhà cung cấp tiêu biểu: Amazon, Fractal Analytics, Google, H2O.ai, Microsoft, SAS, Skytree.
5. Phần cứng tối ưu hóa AI
Bộ xử lý đồ họa (GPU – Graphics processing units) và các thiết bị đặc biệt được thiết kế để có thể thực hiện được các công việc của AI một cách hiệu quả nhất. Công nghệ này hiện được sử dụng chủ yếu để tạo nên sự khác biệt cho các ứng dụng deep learning. Các nhà cung cấp tiêu biểu: Alluviate, Cray, Google, IBM, Intel, Nvidia
6. Quản lý ra quyết định
Công nghệ này giúp gắn các quy tắc và logic vào các hệ thống AI và được sử dụng cho việc thiết lập/huấn luyện ban đầu và duy trì và điều chỉnh liên tục. Khi công nghệ được hoàn thiện, nó sẽ được dùng trong các ứng dụng doanh nghiệp để hỗ trợ hoặc thực hiện việc ra các quyết định một cách tự động. Các nhà cung cấp tiêu biểu: Advanced Systems Concepts, Informatica, Maana, Pegasystems, UiPath.
7. Nền tảng Deep Learning
Là một lĩnh vực đặc biệt trong máy học (machine learning), bao gồm mạng thần kinh nhân tạo cùng với nhiều lớp trừu tượng (abstraction layers). Công nghệ này hiện đang được dùng chủ yếu trong các ứng dụng nhận diện và phân loại hình ảnh từ khối lượng cực kì lớn dữ liệu. Các nhà cung cấp tiêu biểu: Deep Instinct, Ersatz Labs, Fluid AI, MathWorks, Peltarion, Saffron Technology, Sentient Technologies
8. Sinh trắc học
Cho phép tương tác tự nhiên hơn giữa con người và máy móc, bao gồm cả nhận diện hình ảnh, dấu vân tay, giọng nói và cử chỉ của con người. Công nghệ này hiện đang được sử dụng chủ yếu trong lĩnh vực nghiên cứu thị trường. Các nhà cung cấp tiêu biểu: 3VR, Affectiva, Agnitio, FaceFirst, Sensory, Synqera, Tahzoo
9. Tự động hóa quy trình robot (Robotic Process Automation)
Sử dụng mã hóa và các phương pháp khác để tự động hóa hoạt động của con người nhằm hỗ trợ công việc hiệu quả hơn. Công nghệ này hiện được sử dụng khi con người không thể thực hiện một nhiệm vụ hoặc một quy trình vì cho rằng quá mắc hoặc không hiệu quả. Các nhà cung cấp tiêu biểu: Advanced Systems Concepts, Automation Anywhere, Blue Prism, UiPath, WorkFusion.
10. Phân tích văn bản và xử lý ngôn ngữ tự nhiên
Xử lý ngôn ngữ tự nhiên (NLP - Nature Language Process) sử dụng và hỗ trợ phân tích đoạn văn bản bằng cách làm cho dễ dàng việc hiểu ý nghĩa và cấu trúc câu, tính chất truyền cảm, và mục đích thông qua thống kê và các phương pháp máy học. Công nghệ này hiện đang được dùng trong hệ thống phát hiện gian lận và bảo mật cũng như một loạt các trợ lý ảo, và các ứng dụng dùng để khai thác dữ liệu không cấu trúc. Các nhà cung cấp tiêu biểu: Basis Technology, Coveo, Expert System, Indico, Knime, Lexalytics, Linguamatics, Mindbreeze, Sinequa, Stratifyd, Synapsify
Không có nhận xét nào:
Đăng nhận xét