Bài viết sẽ cho các bạn biết ý nghĩa của các thuật ngữ Artificial Intelligence (trí tuệ nhân tạo – AI), Machine Learning (máy học) và Neural Networks (mạng thần kinh) trong các ứng dụng.
Gần đây, cả Google và Microsoft đều rất tích cực trong việc bổ sung neural networks cho các ứng dụng dịch ngôn ngữ của họ. Google còn cho biết rằng họ đang sử dụng machine learning cho việc gợi ý list nhạc cho người dùng. Todoist thì tuyên bố rằng họ đang sử dụng AI để gợi ý khi nào bạn cần hoàn thành một nhiệm vụ. Any.do thì phát biểu rằng bot của họ với sự hỗ trợ của AI có thể làm một số việc cho bạn.
Tất cả những tuyên bố này vừa được đưa ra gần đây thôi. Một vài trong số chúng chỉ là những mánh khóe quảng cáo nhưng đôi khi những thay đổi này lại rất hữu ích. AI, machine learning và neural networks là những thuật ngữ mô tả việc máy tính có thể làm những nhiệm vụ phức tạp hơn và học hỏi từ môi trường của chúng. Trong thực tế, ba thuật ngữ này có ý nghĩa rất khác nhau.
Neural Networks phân tích dữ liệu phức tạp bằng cách mô phỏng não người
Mạng thần kinh nhân tạo (ANN hoặc gọi tắt là Neural Networks) đề cập tới một mô hình học tập đặc biệt mô phỏng cách các khớp thần kinh làm việc trong não người. Điện toán truyền thống sử dụng một loạt xác nhận logic để thực hiện một nhiệm vụ. Neural networks lại sử dụng một mạng lưới các nút (hoạt động như tế bào thần kinh) và các cạnh (hoạt động như các khớp thần kinh) để xử lý dữ liệu. Dữ liệu input sẽ chạy qua toàn bộ hệ thống và một loạt kết quả output được tạo ra.
Sau đó output sẽ được so sánh với các dữ liệu mà hệ thống đã được học trước đó. Ví dụ, nếu bạn muốn huấn luyện máy tính nhận biết hình ảnh của một chú chó bạn sẽ phải nhập vào hệ thống hàng triệu bức ảnh chụp những chú chó để đâu là hình ảnh trông giống một chú chó. Sau đó, chúng ta sẽ phải xác nhận những bức ảnh nào thực sự là một chú chó. Tiếp theo, hệ thống sẽ ưu tiên kết quả này trên toàn bộ neural networks để có thể tìm được kết quả đúng. Qua thời gian và hàng triệu lần lặp lại, cuối cùng mạng sẽ cải thiện tính chính xác của các kết quả mà nó đưa ra.
Để hiểu rõ hơn về cách neural networks làm việc bạn có thể thử game Quick, Draw! của Google. Trong game này, Google huấn luyện mạng của họ nhận biết những hình vẽ. Nó so sánh hình vẽ của bạn với những ví dụ được vẽ bởi những người khác. Mạng sẽ đoán các hình vẽ và sau đó được đảo tạo để nhận biết những hình vẽ trong tương lai dựa trên những gì trông giống như thế mà nó đã thấy trước đó. Ngay cả khi kỹ năng vẽ của bạn không được tốt thì mạng của Google vẫn nhận biết khá tốt những hình vẽ cơ bản như tàu ngầm, nhà máy và con vịt.
Neural networks không phải là giải pháp phù hợp cho tất cả mọi thứ nhưng nó đặc biệt nổi trội khi bạn cần xử lý các dữ liệu phức tạp. Google và Microsoft đã chính xác khi sử dụng neural networks cho các ứng dụng dịch bởi dịch ngôn ngữ là một công việc rất khó khăn. Măc dù hiện tại vẫn còn có lỗi nhưng với khả năng học tập từ những bản dịch chính xác, neural networks có thể giúp hệ thống đưa ra những kết quả tốt hơn theo thời gian.
Điều tương tự đã diễn ra với công nghệ phiên âm giọng nói. Sau khi Google áp dụng neural networks vào Google Voice tỷ lệ phiên âm lỗi đã giảm tới 49%. Mặc dù không thể mang lại kết quả ngay lập tức và không hoàn hảo nhưng neural networks có thể phân tích các dữ liệu phức tạp rất tốt và từ đó mang lại cho bạn những tính năng tự nhiên hơn trong các ứng dụng.
Các bạn có thể xem video giải thích neural networks của kênh YouTube DeepLearning.TV ở phía trên để có thêm thông tin, nhớ bật phụ đề tiếng Việt nếu bạn không tự tin vào khả năng tiếng Anh của mình.
Machine Learning dạy máy tính để cải thiện khả năng
Machine Learning là một thuật ngữ rộng bao gồm bất cứ điều gì mà trong đó bạn dạy máy tính để cải thiện một nhiệm vụ mà nó đang thực hiện. Cụ thể hơn, machine learning đề cập tới bất kỳ hệ thống mà hiệu suất của máy tính khi thực hiện một nhiệm vụ sẽ trở nên tốt hơn sau khi hoàn thành nhiệm vụ đó nhiều lần. Neural networks là một ví dụ về machine learning nhưng đó không phải là cách học hỏi duy nhất của máy tính.
Ví dụ, một trong những phương pháp học tập khác của máy tính là Reinforcement Learning. Trong phương pháp này, máy tính sẽ thực hiện một nhiệm vụ và sau đó kết quả của nó sẽ được chấm điểm. Video giải thích cách máy tính học chơi cờ vua của Android Authority ở trên là một ví dụ. Máy tính sẽ được chơi một trận cờ vua và kết thúc nó có thể thắng hoặc thua. Nếu nó thắng, các nước đi của nó trong trận đấu đó sẽ được gắn nhãn thắng. Sau khi chơi hàng triệu trận, hệ thống có thể xác định được những nước đi nào có nhiều khả năng giúp nó giành chiến thắng dựa trên kết quả của các trận trước đó.
Trong khi neural networks rất tốt với những công việc như nhận dạng khuôn mẫu trong hình ảnh, các dạng khác của machine learning lại hữu ích trong những nhiệm vụ khác như xác định loại nhạc mà bạn yêu thích. Ví dụ, Google cho biết ứng dụng âm nhạc của họ sẽ tìm cho bạn những bản nhạc mà bạn muốn nghe. Nó thực hiện điều này bằng cách chọn list nhạc dựa trên thói quen nghe nhạc trong quá khứ của bạn. Nếu bạn bỏ qua list nhạc mà nó gợi ý, nó sẽ gắn nhãn thất bại cho list nhạc đó. Tuy nhiên, nếu bạn chọn một trong nhưng gợi ý, hệ thống sẽ gắn nhãn thành công cho gợi ý đó và củng cố quá trình hình thành gợi ý này để có thể đưa ra thêm nhiều gợi ý tốt như vậy trong tương lai.
Trong trường hợp này, bạn sẽ không thể hưởng lợi từ ML nếu bạn không sử dụng tính năng này thường xuyên. Lần đầu bạn mở ứng dụng âm nhạc của Google, tất cả các gợi ý bạn thấy đều chả liên quan gì tới gu âm nhạc của bạn. Về mặt lý thuyết, bạn càng dùng ứng dụng này nhiều thì các gợi ý càng tốt hơn trước.
Nhưng dẫu sao thì machine learning cũng không hoàn hảo, bạn vẫn sẽ nhận được những gợi ý không phù hợp. Tuy nhiên, chắc chắn bạn sẽ nhận được những gợi ý không phù hợp nếu chỉ sử dụng ứng dụng này 6 tháng một lần. Nếu bạn không sử dụng ứng dụng thường xuyên để giúp hệ thống gợi ý bài hát học tập thì nó sẽ chẳng khá hơn mấy so với hệ thống gợi ý bài hát thông thường. Là một từ thông dụng, machine learning mơ hồ hơn so với neural networks nhưng nó vẫn mang ngụ ý rằng phần mềm bạn đang dùng sẽ sử dụng thông tin phản hồi của bạn để cải thiện hiệu suất của nó.
Artificial Intelligence dùng để chỉ bất cứ thứ gì đó thông minh
Nếu như neural networks là một dạng của machine learning thì machine learning lại là một dạng của AI. Tuy nhiên, danh mục những gì được coi là AI lại rất khó xác định. Hiện tại chúng ta đã đạt những thành tựu đáng kể trong công nghệ AI. Ví dụ, nhận dạng ký tự quang học đã từng được coi là quá phức tạp với máy tính nhưng nay một ứng dụng trên điện thoại có thể quét tài liệu và biến chúng thành văn bản. Có vẻ như hơi coi nhẹ AI nếu dùng thuật ngữ này để mô tả những tính năng cơ bản hiện tại.
Tuy nhiên, do AI thực sự có hai loại khác nhau nên những tính năng cơ bản cũng sẽ được coi là AI. AI mức thấp hoặc hẹp dùng để mô tả bất kỳ hệ thống nào được thiết kế cho một hoặc một loạt nhiệm vụ nhỏ. Ví dụ, trợ lý Google Assistant và Siri được thiết kế để làm một loạt nhiệm vụ khá nhỏ nhặt như nhận lệnh giọng nói và trả lại kết quả hoặc mở ứng dụng.
Ngược lại, AI mức cao, hay còn gọi là trí tuệ nhân tạo nói chung hoặc “Full AI”, dùng để chỉ một hệ thống có khả năng thực hiện bất cứ điều gì con người có thể làm. Đương nhiên, hệ thống này không hoặc ít nhất là chưa xuất hiện. Còn rất lâu nữa chúng ta mới có thể chế tạo được một hệ thống AI giống như trợ lý Jarvis của Iron Man.
Do hầu như bất cứ AI nào bạn sử dụng hiện tại đều bị coi là AI mức thấp nên cụm từ AI trong mô tả ứng dụng thực sự chỉ mang ý nghĩa nó là một ứng dụng thông minh. Bạn có thể nghe thấy nhiều tuyên bố, quảng cáo nhưng thực sự AI hiện tại không thể so sánh với trí thông minh của con người.
Các nghiên cứu thực tiễn trong lĩnh vực AI rất hữu ích và có lẽ bạn đã ứng dụng nó vào cuộc sống hàng ngày mà không hề hay biết. Bạn trực tiếp hoặc gián tiếp được tận hưởng lợi ích từ các nghiên cứu AI mỗi lần điện thoại của bạn tự động nhớ nơi bạn dừng chân, tự nhận dạng những khuôn mặt trong các bức ảnh, gợi ý những thứ bạn có thể quan tâm hoặc tự động nhóm tất cả các bức ảnh vào thư mục du lịch….
Tới một thời điểm nào đó, AI thực sự sẽ giúp các ứng dụng trở nên thông minh hơn, đúng như mong đợi của bạn. Tuy nhiên, machine learning và neural networks là những cách duy nhất để cải thiện một số tính năng nhất định.
Dẫu vậy, machine learning và neural networks không hề giống nhau. Không nên cho rằng một ứng dụng có công nghệ machine learning sẽ tốt hơn bởi còn tùy vào cách sử dụng của người dùng. Ví dụ, khi một công ty phát triển hệ thống neural networks mạnh mẽ có thể giải quyết một số nhiệm vụ phức tạp giúp bạn, cuộc sống của bạn sẽ dễ dàng hơn. Nhưng khi công ty khác tích hợp machine learning vào một ứng dụng vốn đã có tính năng đề xuất thông minh thì bạn lại chẳng quan tâm bởi bạn cho rằng hai tính năng đề xuất này chẳng khác gì nhau.
Machine learning và neural networks là những công nghệ cực kỳ thú vị. Tuy nhiên, bạn chẳng cần bận tâm nhiều làm gì khi thấy những thuật ngữ này trong phần mô tả của một ứng dụng. Hãy cứ làm như bạn đã từng, đánh giá ứng dụng dựa trên sự hữu ích của chúng đối với bạn.
(theo Life Hacker)
FPT Aptech – Hệ Thống Đào Tạo Lập Trình Viên Quốc Tế
FPT Aptech trực thuộc Tổ chức Giáo dục FPT có hơn 25 năm kinh nghiệm đào tạo lập trình viên quốc tế tại Việt Nam, và luôn là sự lựa chọn ưu tiên của các sinh viên và nhà tuyển dụng. |