Trí tuệ nhân tạo sẽ thay đổi việc phát triển phần mềm như thế nào?

82

Vì sao bạn nên đọc báo cáo này?

Trí tuệ nhân tạo (AI) đã trở lại và nhận được sự quan tâm của ngành công nghệ nhiều hơn bao giờ hết. Trí tuệ nhân tạo có ảnh hưởng quan trọng trong thiết kế và tạo ra phần mềm. Những chuyên gia phát triển và phân phối ứng dụng (AD&D) cần hiểu rõ những lợi ích tiềm ẩn mà AI sẽ mang lại, không chỉ trong cách họ xây dựng phần mềm mà còn đối với bản chất của chính những ứng dụng. Cùng với đó, những chuyên gia AD&D này không nên phớt lờ những thách thức và rủi ro do mà AI mang tới. Đây là bản báo cáo đầu tiên trong chuỗi báo cáo kiểm nghiệm ảnh hưởng của AI trong phát triển phần mềm và phân định rõ ràng đâu là lời đồn thổi và đâu là thực tế.

Những điểm chính

AI sẽ cải thiện, thúc đẩy, phá vỡ chu kỳ phát triển phần mềm

Sự kết hợp của các công nghệ trí tuệ nhân tạo như học máy, học sâu, xử lý ngôn ngữ tự nhiên, và quy tắc nghiệp vụ (business rule) sẽ ảnh hưởng tới mọi bước trong chu kỳ phát triển phần mềm, giúp các nhà phát triển xây dựng phần mềm tốt hơn, nhanh hơn. Trí tuệ nhân tạo sẽ phá vỡ cách các nhà phát triển tạo các ứng dụng cũng như bản chất của những ứng dụng mà họ phát triển.

AI sẽ cho phép các nhà phát triển tạo nên những ứng dụng biết cách học tập như con người

Học máy và học sâu là những công nghệ trí tuệ nhân tạo cốt yếu mà các nhà phát triển cần làm quen khi xây dựng những ứng dụng có thể tự học. Họ sẽ tập trung ít hơn vào việc sử dụng các quy tắc viết mã để khiến ứng dụng trở nên thông minh hơn, thay vào đó tập trung vào những thuật toán hoặc cấu hình để chúng tự học. Các nhà phát triển sẽ tích hợp các thuật toán, biên soạn và sử dụng những bộ dữ liệu lớn để đào tạo và kiểm thử những ứng dụng này.

Sẵn sàng cho những thách thức và rủi ro

Những hệ thống dựa trên nền tảng trí tuệ nhân tạo mới sẽ song hành cùng những phần mềm được lập trình truyền thống trong thời gian dài sắp tới. Việc tích hợp mới và cũ – thậm chí những thứ mới với nhau – sẽ chẳng dễ dàng gì. Những kỳ vọng viển vông về các công nghệ AI sẽ củng cố thêm các hoài nghi.

Hãy lập kế hoạch cho việc tích hợp kĩ năng, tìm đúng những loại vấn đề để xử lý và đặt những kỳ vọng thực tế để tránh viễn tưởng khoa học không thể đạt được.

Các nhà phát triển: Hãy coi chừng những gì sắp bị phá vỡ bởi trí tuệ nhân tạo

Trong hàng thập kỷ, các nhà khoa học máy tính đã liên tục cố gắng sử dụng những kỹ thuật lập trình trí tuệ nhân tạo và thuật toán để chuyển giao kiến thức, quy tắc nghiệp vụ và chính sách cùng quá trình ra quyết định ở trình độ con người vào máy tính. Mặc dù ảo diệu hơn lập trình truyền thống, những kỹ thuật về AI đang được sử dụng rộng rãi để cải thiện nền tảng kiến thức của hệ thống một cách thủ công – điều này từng luôn luôn bị giới hạn. Kiến thức nguồn hạn chế đã chứng minh rằng sự thay thế cho chuyên môn con người này là khá nghèo nàn; các hệ thống trí tuệ nhân tạo chỉ tốt ngang “trí thông minh” được lập trình bởi người kỹ sư.

Cách tiếp cận trí tuệ nhân tạo mới hướng tới việc tạo dựng những hệ thống có thể tự học, trở thành những chuyên gia có khả năng mô hình hóa và rút ra quy luật từ nguồn dữ liệu được cung cấp.  Những hệ thống như vậy xử lý công việc phức tạp với độ chính xác ngày một tăng, thích nghi với những thứ chưa được biết đến và mở rộng khả năng dựa trên lập trình ban đầu. Các kĩ thuật xử lý ngôn ngữ tự nhiên (NLP) truyền thống, suy luận dựa trên nguyên lý và biểu diễn tri thức giờ đây được tăng cường với học máy – đặc biệt là học máy sâu – dần dần củng cố cho AI. Kết quả bước đầu đầy hứa hẹn: những ứng dụng kinh doanh mới đang nổi lên trên nhiều lĩnh vực khác nhau. Giỏ hàng những món hàng trí tuệ nhân tạo được mở rộng sẽ thay đổi công việc của các nhà phát triển – vì vậy những chuyên gia AD&D cần biết cách nắm bắt lợi thế.

AI khiến các nhà phát triển thông minh hơn

Bối cảnh công nghệ trí tuệ nhân tạo hàm chứa nhiều công nghệ cũ (yếu) và công nghệ mới (mạnh) (xem hình 1). Học máy sâu và các mạng lưới thần kinh là nền tảng để trí tuệ nhân tạo trở nên mạnh hơn, việc ứng dụng và kết nối chúng với những công nghệ trí tuệ nhân tạo yếu đã có như biểu diễn tri thức, xử lý ngôn ngữ tự nhiên, các cơ chế suy luận, tầm nhìn và các công nghệ tiếng nói sẽ củng cố trí tuệ nhân tạo. Các nhà phát triển trước hết phải hiểu những công nghệ này là gì và với chúng, họ có thể làm gì khác biệt hơn và tốt hơn trong cả chu kỳ phát triển phần mềm (SDLC) và những loại ứng dụng mới. Chúng tôi đã khảo sát và nói chuyện với 30 doanh nghiệp hoạt động tích cực trong ngành nhằm khám phá những ý tưởng mà họ có được từ những phòng thử nghiệm nghiên cứu, sản phẩm và dịch vụ mới cũng như những thử nghiệm của họ với khách hàng. Hãy tưởng tượng một chút rằng trí tuệ nhân tạo sẽ cho phép các nhà phát triển:

  • Nhanh chóng biến một ý tưởng thành đoạn mã. Việc biến ý tưởng kinh doanh thành đoạn mã hoạt động vẫn còn là khúc mắc chính gây ra nhiều vấn đề, kể cả khi Agile, DevOps, và những phương pháp thực hành định nghĩa yêu cầu mới nhất đã cải thiện quá trình. Nếu một nhóm nhà phát triển có thể chỉ viết ra ý tưởng theo ngôn ngữ tự nhiên và hệ thống hiểu yêu cầu rồi biến nó thành đoạn mã mà máy có thể thực hiện được thì sao? Trong khi đó vẫn còn là ảo tưởng khoa học, việc các hệ thống xử lý ngôn ngữ tự nhiên và chuyên gia gợi ý những thay đổi khả dĩ và nơi cần áp dụng những thay đổi ấy trong dự án là rất hợp lý. Trí tuệ nhân tạo sẽ làm tăng những mô hình yêu cầu và tình huống kiểm thử với việc nhận dạng giọng nói tinh vi hơn, cho phép tạo mã tốt hơn.
  • User story và thời gian thực hiện được ước lượng chính xác hơn. Việc ước tính chính xác thời gian phát triển mã từ các yêu cầu là khó khăn, thậm chí bất khả. Để tiến gần hơn với ước tính đáng tin cậy, các chuyên gia cần một bối cảnh phổ biến với cùng một đội sử dụng công nghệ đã biết trước. Nhưng một giải pháp dựa trên học máy dự đoán và quy tắc nghiệp vụ sẽ cho phép người chỉ đạo dự án lấy một lượng dữ liệu khổng lồ thu thập qua thời gian từ nhiều dự án – chẳng hạn như các phần mô tả user story, ước tính của nhóm mang tính lịch sử và thực tế lịch sử – rồi dùng những mối tương quan và thống kê để đưa ra những ước tính chính xác hơn về nỗ lực và lộ trình.
  • Xác định các lỗi sản xuất và đưa ra biện pháp khắc phục nhanh chóng, chắc chắn. Các nhóm DevOps dành lượng thời gian rất lớn để cố gắng tìm xem lỗi xảy ra ở đâu, vì sao và ai có thể nhanh chóng khắc phục chúng. Trí tuệ nhân tạo có thể giúp họ sử dụng dữ liệu về người viết mã và những kỹ năng họ có để tìm kiếm một cách thông minh những hồ sơ tương tự về những người từng làm trong các dự án tương tự và đang rảnh rỗi. Tương tự, một nhóm có thể sử dụng dữ liệu được tạo ra trong suốt những chu kỳ dự án khác để dự đoán lỗi sai có thể có trong dự án hiện tại khi mở ra và từng bước tránh các vấn đề.
  • Ra quyết định tự động về những phần cần dựng (build) và kiểm thử tiếp theo. Mã triển khai những yêu cầu không đúng hoặc không được sử dụng sẽ gây ra nhiều kiểm thử hồi quy không cần thiết. Điều đó dẫn đến lãng phí thời gian trong kiểm thử thủ công và tự động hóa quá trình dựng tính năng mà không ai dùng tới, cũng như lãng phí thời gian và tiền bạc của nhóm vận hành. Một giải pháp dựa trên học máy với những quy tắc nghiệp vụ có thể cho phép dữ liệu sản xuất chỉ ra ứng dụng được sử dụng như thế nào và phân tích chỉ số cảm xúc quanh ứng dụng đó. Trí tuệ dữ liệu (Data intelligence) có thể giúp các nhà phát triển và người kiểm thử ưu tiên dành nhiều nỗ lực hơn cho rủi ro kinh doanh. Trí tuệ nhân tạo không những làm nổi bật những vùng có rủi ro cao mà còn tự động hóa các bài kiểm thử đúng nhằm thực hiện trong quá trình phân phối liên tục tự động.
Học sâu khiến các trí tuệ nhân tạo khác mạnh hơn.

Trí tuệ nhân tạo khiến các ứng dụng thông minh hơn

Một thế hệ ứng dụng mới có thể nói, nghe, cảm nhận, suy luận, nghĩ, hành động và thực hành sắp ập tới điện thoại và máy tính của chúng ta. Danh sách các nhà cung cấp đẩy mạnh sản phẩm, giải pháp và công nghệ trí tuệ nhân tạo cho phép những ứng dụng mới này đang ra tăng nhanh chóng. Các giải pháp được đưa ra dưới dạng các khả năng nhúng, giải pháp điểm, nền tảng, và dịch vụ học sâu (mạng thần kinh) (xem Hình 2). Trí tuệ nhân tạo sẽ cho phép các nhà phát triển xây dựng ứng dụng cung cấp:

  • Tương tác trực tiếp với con người. Chúng ta đã tạo ra những cách không tự nhiên để con người có thể tương tác với máy tính. Các nhà phát triển dành thời gian dựng ứng dụng với windows, biểu mẫu nhập dữ liệu, trình đơn kéo xuống, đồ họa, bảng tin và nhiều hình ảnh nhân tạo để khiến con người có thể tương tác với chúng “dễ dàng và hiệu quả”. Trí tuệ Nhân tạo sẽ mang đến những lựa chọn mới và tốt hơn, cho phép ứng dụng có thể nhìn thấy người dùng, viết cho họ bằng ngôn ngữ tự nhiên, nghe và hiểu những gì họ nói, trả lời họ bằng giọng nói. Những bot (ứng dụng phần mềm chạy các tác vụ tự động hóa) như Siri và Alexa là những biểu hiện sớm của điều này (xem chú thích 1)
  • Tương tác con người trình độ cao. Viết mã cho những chính sách và quy tắc nghiệp vụ sử dụng ngôn ngữ lập trình truyền thống như JavaScript, Ruby, Python, và C# là công việc khó và tốn kém. Trí tuệ Nhân tạo yếu đưa ra lựa chọn tạo mẫu những chính sách và quy tắc nghiệp vụ để xây dựng những hệ thống chuyên gia tập trung vào một miền công việc hoặc một phạm vi vấn đề, hỗ trợ những người mới trong các công việc hằng ngày hoặc giúp các nhà quản lý đưa ra những quyết định kinh doanh sáng suốt hơn. Trong khi còn hạn chế, chúng hiệu quả cho những vấn đề hạn hẹp, đơn giản. Suy luận theo quy luật, được củng cố bởi dữ liệu và học máy, sẽ phát triển hơn nữa những dịch vụ trên, mở ra nhiều cơ hội hơn cho các nhà tư vấn chuyên gia.
  • Tận dụng năng lực “rõ ràng” của con người. CI&T, một cơ quan công nghệ và đối tác dịch vụ của Google đang thử nghiệm khách hàng nhằm phát triển những ứng dụng kinh doanh tập trung, thông minh có thể tận dụng các công nghệ trí tuệ nhân tạo. Ví dụ, cơ quan này cho thấy công nghệ nhận dạng thị giác đã giúp một công ty khai khoáng Brazil tìm kiếm tự động kho hàng, đơn giản hóa quá trình bằng việc đọc mã định danh của xe lửa thay vì trang bị lượng lớn xe ô tô gắn thẻ RFID. Nhận dạng ký tự quang học sử dụng ngày càng nhiều học máy và mạng thần kinh, mang đến nhiều cơ hội sử dụng tầm nhìn máy chính xác hơn nhiều. CI&T cung cấp công nghệ Google Cloud Vision API giúp các nhà phát triển xây dựng những loại ứng dụng mới.
  • Phần mềm tự học. Trong khi trí tuệ nhân tạo truyền thống (yếu) “có hiệu quả”, nó bị giới hạn bởi các nhà phát triển vẫn phải lập trình gần như toàn bộ mọi thứ. Phần mềm học tự chủ để đưa ra những quy luật và chính sách mới từ lượng lớn bộ dữ liệu sẽ cho phép các nhà phát triển không phải viết mã những quy tắc và chính sách. Trí tuệ nhân tạo yếu, sử dụng lập trình nhiều hơn là học, không bao giờ đủ khả năng để bao quát toàn bộ các trường hợp phức tạp và phương pháp giải quyết dựa trên kinh nghiệm cần thiết để vận hành trong bối cảnh kinh doanh thực tế. Học sâu cùng với dữ liệu lớn, thông qua các mạng thần kinh, là công nghệ AI hứa hẹn nhất sẽ phá vỡ cách các nhà phát triển xây dựng ứng dụng. Câu hỏi sớm đặt ra là: Những ứng dụng sẽ ra sao khi việc học sâu không giám sát được lựa chọn nhiều hơn?
    Các sản phẩm và dịch vụ đa dạng dựa trên nền tảng Trí tuệ Nhân tạo đã hiện hữu.

Trí tuệ nhân tạo có ảnh hưởng mạnh mẽ tới phát triển phần mềm

Forrester hy vọng AI ảnh hưởng đến việc phát triển phần mềm theo nhiều hướng – nhưng đồng thời cũng ảnh hưởng tới cách các nhà phát triển và đối tác kinh doanh của họ nghĩ về những ứng dụng và giải pháp mới mà họ có tiềm năng xây dựng với Trí tuệ nhân tạo. Trước hết, trí tuệ nhân tạo sẽ tăng độ thành thạo của nhóm AD&D thông qua việc chuyển đổi chu kỳ phát triển phần mềm bằng các cải thiện những thực tiễn sẵn có và phát triển công cụ đồng thời bổ sung những thứ hoàn toàn mới. Và trí tuệ nhân tạo sẽ không chỉ cải thiện những ứng dụng mà ta đã biết ngày nay mà còn cho phép các nhà phát triển cung cấp những trải nghiệm phần mềm cho tương lai.

Trí tuệ nhân tạo sẽ gia tăng sẽ thành thạo của các nhóm AD&D

Cũng giống như bất kỳ lĩnh vực hoặc quá trình kinh doanh nào khác, phát triển, kiểm thử và phân phối phần mềm sẽ được lợi từ trí tuệ nhân tạo, khiến các nhà phát triển và các nhóm phát triển thông minh hơn nhiều khi lập kế hoạch, dựng, kiểm thử và triển khai phần mềm. Gần đây chúng tôi đã nói chuyện với 25 nhóm AD&D và nhận thấy rằng họ nghĩ trí tuệ nhân tạo có thể thúc đẩy quá trình phát triển và phân phối phần mềm theo nhiều cách và những giai đoạn chín muồi nhất để cải thiện với trí tuệ nhân tạo trong thời gian tới là lập kế hoạch, phát triển, đặc biệt là kiểm thử (xem Hình 3 và Hình 4). Các nhà phát triển sẽ thay đổi những quy trình của họ và chính bản chất ứng dụng bằng cách (xem Hình 5):

  • Cải thiện tổng thể Chu kỳ phát triển phần mềm. Việc phát triển phần mềm ngày nay còn nhiều điều kém hiệu quả và lãng phí. Agile và DevOps kết hợp với quản lý luồng giá trị xóa bỏ những lãng phí và tập trung vào giá trị kinh doanh. Đồng thời, các kiến trúc ứng dụng với sự phụ thuộc lẫn nhau thấp và vi dịch vụ sẽ chỉ tăng số lượng các phần động để quản lý (xem chú thích 2). Sự phức tạp sẽ vượt ra ngoài khả năng quản lý và phiên dịch của con người. Agent, bot và các năng lực nhúng trí tuệ nhân tạo trong các công cụ sẽ trở thành đối tác chính cho các nhóm phát triển để tiếp cận vấn đề này.
  • Những người tham gia khảo sát của chúng tôi kỳ vọng trí tuệ nhân tạo – đặc biệt là học máy, học sâu và dự đoán – sẽ ảnh hưởng tới tổng thể chu kỳ. Họ thấy trí tuệ nhân tạotối ưu hóa quá trình theo bốn cách. Thứ nhất, trí tuệ nhân tạo sẽ tổng hợp lượng dữ liệu khổng lồ để dự đoán hoặc ngăn chặn những thất bại trong quá trình chuyển giao dự án. Nó cũng sẽ cho ra những lộ trình phân phối chương trình và dự án chính xác hơn, đặc biệt là cho những dự án được phát triển theo cách truyền thống. Trí tuệ nhân tạo sẽ sử dụng những agent thông minh để phân phối những cập nhật trạng thái dự án theo ngôn ngữ tự nhiên. Cuối cùng, nó sẽ cho phép thực hiện những cải tiến phức tạp hơn như tự động chẩn đoán vấn đề với các thực tiễn phát triển phần mềm.
  • Đẩy nhanh quá trình phân phối bằng cách áp dụng trí tuệ nhân tạo vào những bước cụ thể trong Chu kỳ phát triển phần mềm. Việc sử dụng trí tuệ nhân tạo chuyên sâu hơn sẽ gắn nhiều khả năng thông minh hơn vào các bước cụ thể trong chu kỳ nhằm tạo ra sự tự động hóa chưa từng thấy và chất lượng với tốc độ cao. Tự động hóa và những kiến thức sâu tổng hợp từ phân tích dữ liệu đẩy nhanh mọi công việc mang đến lợi ích cho tất cả các bước trong chu kỳ phát triển phần mềm, nhưng những giai đoạn hình thành ý tưởng, lập kế hoạch, kiểm thử và triển khai (bao gồm cả DevOps) sẽ nhận được nhiều lợi ích tức thì hơn. Những người tham gia khảo sát của chúng tôi đang ưu tiên những giai đoạn này và kiểm thử được họ cho là sẽ thu được lợi ích lớn sớm nhất.
  • Trí tuệ nhân tạo có thể cải thiện kiểm thử theo nhiều cách. Nó có thể gợi ý một chiến lược tốt hơn, thiết kế kiểm thử tự động, dự đoán chất lượng đầu ra dựa trên loại và phạm vi kiểm thử, tăng phạm vi trong khi giảm thiết kế và thực hiện kiểm thử và tự động kiểm tra giao diện người dùng trực quan để cải thiện khả năng phát hiện sự cố thông qua nhận dạng đối tượng tốt hơn. Cuối cùng nhưng không kém quan trọng, trí tuệ nhân tạo có thể giảm thời gian sửa lỗi trong sản xuất bằng việc hỗ trợ phân tích nguyên nhân gốc rễ (xem Hình 6).
  • Phá bỏ chu kỳ phát triển phần mềm dành cho việc tạo những ứng dụng không được ứng dụng nữa. Kể từ khi phần mềm được phát minh, các nhà phát triển đã lập trình chi tiết theo từng phút những gì ứng dụng cần phải làm. Thậm chí trí tuệ nhân tạo yếu cũng đi theo hướng tiếp cận này, mặc dù cách này phần nào dễ dàng hơn trong những phong cách lập trình khác nhau (xem chú thích 3). Điều đó không còn tiếp diễn lâu nữa. Mã và các thuật toán sẽ không thao tác và chuyển đổi dữ liệu như trong quá khứ; dữ liệu (lớn) sẽ biến đổi hành vi của ứng dụng thành suy nghĩ và học tập tự động. Việc học máy nói chung và học sâu nói riêng được sử dụng phổ biến hơn sẽ vĩnh viễn phá vỡ chu kỳ phát triển phần mềm.
  • Trong khi một số nhà phát triển sẽ chọn lựa loại mạng thần kinh hoặc thuật toán khác để sử dụng, hầu hết thay vào đó sẽ đào tạo mạng thần kinh (tinh chỉnh mô hình) và kiểm thử chúng. Các nhà phát triển trước hết sẽ tạo và thu thập dữ liệu lớn cần thiết, gắn thẻ và huấn luyện theo cách “giám sát” bởi sẽ mất một thời gian dài trước khi quá trình huấn luyện “không giám sát” diễn ra. Sau đó họ sẽ phân ra thành dữ liệu huấn luyện và dữ liệu kiểm thử. Đây sẽ là những công việc mới cho nhóm phân phối. Các nhà phân tích dữ liệu sẽ hợp tác chặt chẽ hơn với các nhà phát triển, trong khi đó một vài nhà phát triển sẽ xây dựng và cải thiện các thuật toán học sâu. Việc sử dụng học sâu tập trung cao và tùy biến đã thực sự diễn ra nhưng còn rất nhiều việc phải làm trước khi sự phá vỡ trở nên rõ rệt và phổ biến. (xem chú thích 4)
Trí tuệ nhân tạo sẽ cải thiện chu kỳ phát triển phần mềm, bắt đầu từ kiểm thử.
Việc cải thiện phát triển phần mềm đem lại các lợi ích kinh doanh trực tiếp.
Trí tuệ nhân tạo sẽ thay đổi cách các nhà phát triển xây dựng ứng dụng.
Chi tiết cải thiện của trí tuệ nhân tạo trong kiểm thử phần mềm.

Các công ty ám ảnh bởi khách hàng cung cấp những trải nghiệm chiến thắng, phục vụ và giữ chân khách hàng. Trí tuệ nhân tạo sẽ dần dần có thể mang đến những loại ứng dụng chưa từng có cho những khách hàng này. Các doanh nghiệp sẽ cần trí tưởng tượng và kinh nghiệm để phát triển những ứng dụng cho phép trí tuệ nhân tạo hoạt động; họ cũng cần thích nghi với một thế giới mới nơi các nhà phát triển không còn tạo ra ứng dụng cho một đầu ra cụ thể mà có thể xây dựng phần mềm cho phép xử lý hàng loạt đầu ra và các bước tiếp theo. Thận trọng là ưu tiên ngày nay; nhiều người trả lời trong Khảo sát trực tuyến về Tình trạng trí tuệ nhân tạo toàn cầu Quý 2/2016 không nhìn ra được một trường hợp kinh doanh cụ thể để đầu tư cho trí tuệ nhân tạo (42%) và không rõ về việc doanh nghiệp của họ có thể sử dụng trí tuệ nhân tạo ra sao (39%) (xem chú thích 5). Trí tuệ nhân tạo rõ ràng yêu cầu hướng tiếp cận kiểm thử-và-học, phù hợp với cách hầu hết các công ty đang giải quyết sự gián đoạn kỹ thuật số. Năm mươi sáu phần trăm người triển khai sớm mong đợi AI giúp tự động hóa các quy trình kinh doanh thủ công lặp đi lặp lại. (xem chú thích 6). Các doanh nghiệp cần áp dụng trí tuệ nhân tạo vào các bước nhỏ bằng việc để bộ phận kinh doanh, các nhà khoa học dữ liệu và các nhà phát triển thử nghiệm sớm và theo phương pháp Agile (xem Hình 7). Hy vọng những thử nghiệm như vậy sẽ giải quyết ba giai đoạn chồng chéo: Trí tuệ nhân tạo giúp các nhà phát triển tạo ra những ứng dụng tốt – và không chỉ dừng lại ở ứng dụng

  • Khiến những ứng dụng hiện có giao tiếp nhiều hơn trong hiện tại và linh hoạt trong tương lai. Các nhà phát triển bổ sung một số tính năng thú vị cho các ứng dụng kinh doanh với phạm vi giới hạn và trong một miền giới hạn như ngôn ngữ lặp lại hoặc lệnh xác định để cải thiện tính gắn kết của khách hàng (xem chú thích 7)
  • Cải thiện suy luận, ra quyết định, lời nói và hiểu. Một sự kết hợp thông minh của năng lực suy luận, bản thể luận và dữ liệu tăng cường bởi các thuật toán học máy sẽ mang đến cho các ứng dụng khả năng suy luận và giảm bớt thông tin trùng nhau.
  • Phát triển các ứng dụng mà không còn là ứng dụng nữa. Bot và các agent thông minh sẽ nhanh chóng chiếm sân khấu chính trong quá trình phát triển; các nhà phát triển sẽ không lập trình chúng mà sẽ dạy chúng nhiều hơn.
Trí tuệ nhân tạo sẽ cho phép các nhà phát triển xây dựng nhiều loại ứng dụng mới – thứ không chỉ là những ứng dụng.

Các chuyên gia AD&D phải đối mặt với các nguy cơ, thách thức và chi phí

Trí tuệ nhân tạo đã trải qua một lịch sử thăng trầm. Những sản phẩm cường điệu của truyền thông cùng với các tác phẩm khoa học viễn tưởng đã khiến các doanh nghiệp lo lắng khi cân nhắc đầu tư vào AI. Nhưng chắc chắn trí tuệ nhân tạo sẽ chưa thể đạt tới khả năng thay thế trí tuệ con người trong thời đại của chúng ta. Thay vào đó, các nghiên cứu và ngành công nghệ thông tin nên tập trung giám sát sự phát triển của trí tuệ nhân tạo trong quá trình thực hiện mục tiêu phát triển một công nghệ có thể giúp đỡ và hỗ trợ con người chứ không phải thay thế và “chiếm quyền” của loài người. Những thử thách và rủi ro chính mà các doanh nghiệp gặp phải bao gồm:

  • Kỳ vọng quá mức. Trí tuệ nhân tạo có thể hỗ trợ cho các trung tâm liên hệ khách hàng qua các phần mềm chạy tác vụ tự động hóa (bot), xử lý ngôn ngữ tự nhiên và các tư vấn chiến lược gắn kết khách hàng dựa trên trí tuệ nhân tạo. Các công ty dịch vụ tài chính đang thử nghiệm các dự án sử dụng trí tuệ nhân tạo để mở rộng qua mô và nâng cao chất lượng dịch vụ tại các trung tâm liên hệ của mình. Chúng ta đã có công nghệ Trí tuệ Nhân tạo nhưng nó chưa hoàn hảo. Ví dụ như công nghệ chuyển biên giọng nói đã tương đối hoàn thiện – Baidu đang dẫn đầu trong công nghệ hiểu biết tiếng nói chính xác, với tỉ lệ lỗi dưới 5% – nhưng khả năng hiểu được ý nghĩa, tiếng lóng, phương ngữ hay khẩu âm thì chưa. Hãy chú ý tới những hạn chế ấy và tìm ra đúng loại vấn đề để giải quyết trong một phạm vi rõ ràng, nhất định. Đặt ra những kỳ vọng thực tế để tránh thất vọng.
  • Đánh giá thấp chi phí tích hợp. Bất kỳ một công ty nào muốn ứng dụng trí tuệ nhân tạo đều sẽ gặp phải những thách thức về kiến trúc và tích hợp để có thể sử dụng trí tuệ nhân tạo trên nền tảng phần mềm hiện có. Hãy xác định rõ ngay từ đầu rằng: Tích hợp sẽ không dễ dàng hơn, không giảm bớt hay rẻ đi chút nào. Sẽ cần thiết kế, phát triển và duy trì mã kết nối để liên kết các nền tảng các phần mềm chạy tác vụ tự động hóa hay các thuật toán học máy và học sâu với các hệ thống hiện có. (xem ghi chú 8) Dữ liệu từ một thuật toán này sang thuật toán khác cần được lập trình và quản lý. Sẽ có giải pháp cho những vấn đề mới này tuy nhiên trong những ngày đầu, các kĩ năng tích hợp đã qua rèn luyện là yếu tố cần thiết trong tích hợp trí tuệ nhân tạo.
  • Thiếu dữ liệu lớn hay sức mạnh điện toán. Những tình huống đơn giản thường đã có sẵn các thuật toán học sâu tương ứng; chúng ta huấn luyện chúng trên các bộ xử lý đồ họa của máy tính (GPU) rồi chạy chúng trên các thiết bị di động. Nhưng huấn luyện các thuật toán học sâu lớn và nhiều lớp, đặc biệt cho những vấn đề phức tạp, sẽ cần đến những bộ dữ liệu lớn và năng lực điện toán đáng kể. Các giám đốc công nghệ sẽ cần đảm bảo đầu tư ngày càng nhiều dữ liệu vào hơn nữa. Andrew Ng, giáo sư tại Stanford và Giám đốc nghiên cứu khoa học tại Baidu, cho biết ông để các nhà nghiên cứu dùng đến siêu máy tính cho việc huấn luyện các mạng thần kinh. Google cũng làm như vậy, Liệu công ty bạn có sẵn sàng đầu tư chừng đó tiền vào phần cứng hoặc để chạy những dự án như vậy trên dịch vụ đám mây của một bên thứ ba không?
  • Các chế độ kiểm thử trí tuệ nhân tạo không ổn định. Mặc dù trí tuệ nhân tạo sẽ giúp cải thiện quá trình kiểm thử các ứng dụng hiện có nhưng chính việc kiểm thử trí tuệ nhân tạo cũng là một thách thức. Làm sao để biết được liệu một ứng dụng trí tuệ nhân tạo có đang đưa ra đề xuất đúng đắn hay không? Làm sao để biết được liệu mạng thần kinh đang học đúng thứ cần học hay khi nào nó đã học được? (xem ghi chú 9) Một vài nhà cung cấp đang phát triển các phần điều chỉnh có khả năng thể hiện cách một hệ thống suy luận đạt tới những kết luận chính xác, nhưng một mạng thần kinh thường hoạt động như một chiếc hộp đen; ngay cả các nhà phát triển ra nó cũng không chắc chắn về cách nó cho ra một kết luận, Các nhà phát triển trí tuệ nhân tạo sẽ cần ưu tiên cho phát triển những phương pháp và công nghệ kiểm thử mới để giải quyết những vấn đề nói trên. Và trước khi những thách thức ấy được giải quyết thì các công ty sẽ vẫn còn phải kiềm chế ứng dụng trí tuệ nhân tạo để giảm tối đa các nguy cơ.

Đề xuất

Vẫn sẽ cần các nhà phát triển phần mềm dựa trên trí tuệ nhân tạo

Dù ngày càng nhiều chuyên gia AD&D và các nơi phát triển phần mềm sẽ ứng dụng trí tuệ nhân tạo trong những năm tới, họ vẫn sẽ phải viết mã và tích hợp kiểu truyền thống nhiều. Tích hợp nói riêng sẽ là một kỹ năng cần thiết ngay cả nếu trí tuệ nhân tạo có làm thay đổi chu kỳ phát triển phần mềm. Sẽ cần đến nhiều kĩ năng mới và những lựa chọn công nghệ mạnh mẽ để xây dựng các ứng dụng dựa trên trí tuệ nhân tạo và để dùng trí tuệ nhân tạo trong việc phát triển các quy trình. Các nhóm phát triển muốn đi đầu làn sóng trí tuệ nhân tạo sẽ cần:

  • Kết hợp các kĩ năng của các nhà khoa học dữ liệu với các kĩ năng của công nghệ trí tuệ nhân tạo. Các hệ thống trí tuệ nhân tạo cần tới dữ liệu siêu lớn chứ không chỉ là dữ liệu lớn để trở nên có ích và chính xác hơn, có thể đảm nhận những công việc quan trọng hơn. Các tổ chức cần có chiến lược về dữ liệu nhằm thu thập nhiều dữ liệu kinh doanh hơn để cung cấp cho các hệ thống trí tuệ nhân tạo. Một vài nhà phát triển chọn lọc sẽ cần có nền tảng toán học tốt để hiểu được sự khác biệt giữa các thuật toán, giúp rút ngắn thời gian huấn luyện và giúp chúng tìm ra lời giải cho vấn đề nhanh hơn. Sự kết hợp giữa hai vai trò này trong các nhóm phát triển sẽ chính là chìa khóa.
  • Sử dụng dữ liệu và hiểu biết chuyên sâu trong quá trình phát triển. Bạn sẽ cần đến dữ liệu như nền tảng để đưa ra các quyết định dựa trên các hiểu biết chuyên sâu theo một hệ thống phân phối xuyên suốt, dựa trên các dữ liệu về lịch sử, hiện tại và tương lai để đưa ra những phân tích dự báo và phân tích đề xuất qua học máy. Dựa vào khả năng này, các nhà phát triển sẽ có một công cụ để điều tra và chẩn đoán những bản thất bại, xác định các điểm lỗi và cung cấp các đánh giá nâng cao về nguyên nhân gốc rễ của vấn đề. Các tác vụ lặp lại trong kiểm thử sẽ được tự động hóa hoàn toàn, con người chỉ cần can thiệp trong những trường hợp ngoại lệ.
  • Kết hợp trí tuệ nhân tạo yếu và trí tuệ nhân tạo mạnh. Sản phẩm trí tuệ nhân tạo tốt nhất là khi kết hợp được các công nghệ yếu và mạnh với nhau. Các mạng thần kinh có thể đẩy nhanh quá trình giám tuyển dữ liệu cung cấp cho hệ thống suy luận hay cải thiện hiệu quả nhận dạng giọng nói và kí tự theo ngôn ngữ tự nhiên. Trí tuệ nhân tạo yếu giúp cải thiện, giải quyết và tự động hóa các tác vụ dễ và lặp lại; trí tuệ nhân tạo mạnh tạo ra khác biệt khi giải quyết các vấn đề khó hơn ở quy mô lớn. Trí tuệ nhân tạo ngày càng mạnh mẽ hơn nhưng vẫn còn nhiều việc phải làm. Sức mạnh của trí tuệ nhân tạo phụ thuộc vào tốc độ mà học sâu có thể nâng cấp và hỗ trợ trí tuệ nhân tạo yếu. Hãy tìm kiếm các nhà cung cấp và các nền tảng có thể hỗ trợ cho trí tuệ nhân tạo yếu bằng các mạng thần kinh.

Tài liệu bổ sung

Phương pháp khảo sát

Khảo sát trực tuyến về Tình trạng trí tuệ nhân tạo toàn cầu Quý 2/2016 do Forrester thực hiện vào Tháng 5 và Tháng 6 năm 2016. Có 612 người đã trả lời khảo sát này trên khắp thế giới. Để đảm bảo chất lượng, chúng tôi sàng lọc người trả lời để chắc chắn họ đáp ứng được những tiêu chuẩn nhất định về trách nhiệm công việc và quy mô của tổ chức họ đang làm việc. Khảo sát định nghĩa trí tuệ nhân tạo là “một hệ thống tự học có thể tương tác tự nhiên với con người, hiểu môi trường, giải quyết được vấn đề và thực hiện các tác vụ thường yêu cầu trí tuệ, khả năng và phẩm chất của con người mà không cần đến các hướng dẫn hay quy tắc.”

Ghi chú

  1. Nghiên cứu tại Google: Nhiều công ty đang đặt cược vào các các phần mềm chạy tác vụ tự động hóa, các phần mềm trò chuyện được xây dựng để mô phỏng các cuộc hội thoại của con người và giúp khách hàng hoàn thành các tác vụ. Nhưng trong khi các các phần mềm chạy tác vụ tự động hóa và các công nghệ nền tảng của các ứng dụng này đang phát triển nhanh chóng thì trải nghiệm khách hàng nhận được từ các ứng dụng này lại thường kém hoặc không ổn định. Xem bản báo cáo ” Bots Aren’t Ready To Be Bankers ” của Forrester.
  2. Các kiến trúc nhiều dịch vụ nhỏ đang xuất hiện ngày càng nhiều trong các nỗ lực của các doanh nghiệp nhằm đạt được kiến trúc phần mềm tốt hơn, đặc biệt ở các doanh nghiệp hoạt động với quy mô lớn như eBay, Google, Netflix và Walmart. “Tốt hơn” ở đây nghĩa là phân phối phần mềm nhanh hơn, khả năng phục hồi và mở rộng cao hơn, khả năng bảo trì giải pháp tốt hơn, hoặc tất cả những điều trên. Câu hỏi dành cho các chuyên gia AD&D là các kiến trúc nhiều dịch vụ nhỏ này sẽ giúp cải thiện kiến trúc phần mềm ở đâu và như thế nào. Xem bản báo cáo ” Microservices Have An Important Role In The Future Of Solution Architecture ” của Forrester.
  3. Các công cụ thiết lập quy tắc kinh doanh cho phép đưa ra các quy tắc như câu lệnh khai báo “nếu X, thì Y, không thì Z”, hoặc theo ngôn ngữ lập trình logic hoặc lập trình hàm LISP.
  4. Đến năm 2021, trí tuệ nhân tạo trong các tác nhân thông minh sẽ phát triển đáng kể so với công nghệ học máy và xử lý ngôn ngữ tự nhiên đơn giản hiện nay. Những ứng dụng mới xuất hiện sẽ có cơ chế tự học nâng cao và những tình huống phức tạp hơn. Trong khi các tác nhân cơ bản sẽ được ứng dụng nhiều thì thế hệ trí tuệ nhân tạo tiếp theo sẽ chỉ được đưa vào các tác nhân thông minh vào năm 2020 hoặc sau đó. Xem bản báo cáo ” The Top Emerging Technologies To Watch: 2017 To 2021 ” của Forrester.
  5. Nguồn: Khảo sát trực tuyến về Tình trạng trí tuệ nhân tạo toàn cầu Quý 2/2016 của Forrrester.
  6. Nguồn: Khảo sát trực tuyến về Tình trạng trí tuệ nhân tạo toàn cầu Quý 2/2016 của Forrrester.
  7. Các hệ thống nhận thống đang dần len lỏi vào các hoạt động thương mại, bắt đầu từ những ứng dụng gắn kết khách hàng cao cấp trong các dịch vụ tài chính, chăm sóc sức khỏe và bán lẻ. Chúng sẽ sớm trở nên phổ biến trong các hoàn cảnh chính thống và trong mạng lưới vạn vật kết nối qua Internet trong vòng năm năm. Xem bản báo cáo ” Cognitive Engagement: A New Force Of Creative Destruction ” của Forrester.
  8. Nguồn: D. Sculley, Gary Holt, Daniel Golovin, Eugene Davydov, Todd Phillips, Dietmar Ebner, Vinay Chaudhary, và Michael Young, “Học máy: Thẻ tín dụng lãi suất cao của nợ kỹ thuật,” Nghiên cứu tại Google, 2014 (http://research.google.com/pubs/pub43146.html).
  9. Có hai giai đoạn riêng biệt trong quy trình xây dựng một ứng dụng dựa vào mạng thần kinh. Giai đoạn đầu tiên là huấn luyện. Trong giai đoạn này các nhà phát triển xác định một tập con của dữ liệu lớn và sử dụng nó cho mục đích đào tạo. Khi thuật toán bắt đầu cho kết quả mong đợi, các nhà phát triển sẽ tiến hành giai đoạn thứ hai, đó là giai đoạn kiểm thử. Bài kiểm thử sử dụng một bộ dữ liệu lớn riêng để thử nghiệm. Tuy nhiên, đối với các hệ thống AI phức tạp hơn sử dụng nhiều thành phần hoặc nhiều mạng thần kinh, sẽ khó kiểm tra việc đưa ra tư vấn thông qua suy luận hơn; trong một số trường hợp, không ai biết phải kiểm tra bằng cách nào. Chúng ta có thể cải thiện hiệu quả kiểm thử bằng cách sử các mạng thần kinh giải mã (deconvolutional), một phương pháp mới cho phép các nhà phát triển hình dung những gì mạng thần kinh đang học ở mỗi lớp thần kinh và các tính năng nó đang sử dụng.

Nguồn: Reprints.forrester.com

Tin liên quan:
  • 7
    Shares