Thứ Ba, 10 tháng 10, 2017

Machine Learning cho mọi người - 1 Giới thiệu



Machine Learning cho mọi người
(Dành cho những người mới tìm hiểu về Trí tuệ nhân tạo/Machine Learning – Bài viết giải thích một cách đơn giản bằng toán, code, và các ví dụ từ thế giới thực)

Nội dung:
1.                  Tại sao Machine Learning lại có chuyện để nói? – Bức tranh lớn về trí tuệ nhân tạo và machine learning – quá khứ, hiện tại, và tương lai.
2.                  Học có giám sát (Supervised Learning).
I - Học tập với từ khóa trả lời. Giới thiệu các hàm hồi quy tuyến tính, hàm lỗi, overfitting, và phương pháp xuống đồi theo hướng vector đạo hàm (gradient descent)
II – Hai phương pháp phân loại: Hồi qui logistic và SVM.
III- Học không biến: k láng giềng gần nhất, cây quyết định, rừng ngẫu nhiên. Giới thiệu các mô hình kiểm chứng chéo, điều chỉnh siêu tham số (hyperparameter tuning) và tập biến chung.
3.                  Học không giám sát (Unsupervised Learning). Gồm: k – trung bình, cấu trúc phân cấp. Giảm chiều dữ liệu: phân tích thành phần chính (PCA), bình phương tối thiểu tuyến tính (SVD).
4.                  Mạng neuron và Học sâu (Deep Learning). Tại sao, ở đâu và làm cách nào deep learning hoạt động. Lấy cảm hứng từ bộ não. Các mạng neuron xoắn (CNN), mạng nơ ron tái phát (RNN). Các ứng dụng thế giới thực.
5.                  Học tăng cường (Reinforcement Learning). Thăm dò và khai thác. Qui trình ra quyết định Markov. Mô hình Q, học theo policy, mô hình học tăng cường sâu. Bài toán học theo giá trị.
6.                  Phụ lục: Các nguồn Machine Learning tốt nhất hiện nay. Danh sách các nguồn để bạn tạo chương trình machine learning của riêng mình.

Ai nên đọc bài viết này?
-                      Dân kỹ thuật muốn học thật nhanh machine learning
-                      Những ai không phải dân kỹ thuật nhưng muốn học vỡ lòng về machine learning và quyết chí tìm hiểu những khái niệm kỹ thuật
-                      Bất kỳ ai tò mò với việc máy móc tư duy như thế nào

Cuốn tài liệu này ai cũng có thể download miễn phí trên internet theo 2 cách như sau:
·         Bài viết gốc bằng tiếng Anh trên Medium: https://medium.com/machine-learning-for-humans/why-machine-learning-matters-6164faf1df12
·         hoặc file pdf trên dropbox:
·         bản dịch tiếng Việt tại blog này

Các khái niệm cơ bản về xác suất, thống kê, lập trình, đại số tuyến tính, và tích phân sẽ được nói đến, nhưng không cần phải có kiến thức về chúng từ trước mới hiểu được bài viết này.

Nếu bạn quan tâm hơn tới những tài nguyên, khóa học, sách vở nào cần đọc, dự án nào cần để mắt đến… thì hãy đọc thẳng phần Phụ lục: Các nguồn Machine Learning tốt nhất hiện nay.






Phần 1: Tại sao Machine Learning lại có chuyện để nói?



Trí tuệ nhân tạo (Artificial Intelligence – AI) sẽ định hình tương lai của chúng ta mạnh mẽ hơn bất kỳ phát minh nào khác trong thế kỷ này. Bất kỳ ai không hiểu nó sẽ nhanh chóng thấy mình bị bỏ lại phía sau, tỉnh giấc trong một thế giới toàn những công nghệ ngày càng kỳ ảo.

Tốc độ phát triển của nó thật đáng kinh ngạc. Sau những mùa đông AI và các giai đoạn đưa hy vọng đi lạc lối suốt hơn 4 thập kỷ qua, những tiến bộ nhanh chóng trong lưu trữ dữ liệu và sức mạnh xử lý của máy tính đã và đang dần dần thay đổi trò chơi này trong những năm gần đây.

Vào năm 2015, Google đã đào tạo một thực thể giao tiếp không chỉ có thể tương tác đáng tin cậy với con người trên vai trò nhân viên hỗ trợ kỹ thuật mà còn thảo luận được về đạo đức, thể hiện quan điểm và trả lời những câu hỏi chung chung dựa trên thực tế.



Cùng năm đó, DeepMind đã phát triển một thực thể vượt qua khả năng của con người trong các tựa game 49 Atari – vốn chỉ nhận pixel và điểm số trò chơi làm đầu vào. Ngay sau đó, năm 2016, DeepMind đã vứt bỏ thành tựu này bằng cách cho ra đời một phương pháp chơi game đỉnh cao mới có tên là A3C.

Trong khi đó, AlphaGo đánh bại một trong những người chơi cờ vây giỏi nhất với trò Go – một thành tựu cực kỳ đáng kinh ngạc trong trò chơi vốn dĩ luôn bị thống trị bởi con người suốt 2 thập kỷ qua sau khi máy móc lần đầu tiên chinh phục lĩnh vực chơi cờ. Nhiều bậc thầy cũng không thể hiểu được làm thế nào một cỗ máy có thể nắm bắt được toàn bộ sắc thái và sự phức tạp của trò chơi chiến thuật Trung Hoa cổ đại với 10.170 khả năng đi trên bàn cờ này (trong vũ trụ cũng chỉ có 1.080 nguyên tố).


Kỳ thủ cờ vây Lee Sedol đang xem lại trận đấu với AlphaGo sau khi bị đánh bại. Bức ảnh trên The Atlantic.

Vào tháng 3 năm 2017, OpenAI đã tạo ra các thực thể phát minh ra ngôn ngữ riêng của chúng để cộng tác và đạt mục tiêu của chúng một cách hiệu quả hơn. Ngay sau đó, Facebook cũng thông báo đào tạo thành công các thực thể của mình để thương lượng và thậm chí nói dối được.

Chỉ vài ngày trước (khi bài hướng dẫn này ra đời), vào ngày 11/08/2017, OpenAI đã chạm tới cột mốc không thể tin nổi khác khi đánh bại các cao thủ chuyên nghiệp hàng đầu thế giới trong những trận đấu 1-1 của trò game online nhiều người chơi Dota 2.


Xem trận đấu bản đầy đủ trong cuộc thi đấu quốc tế 2017 giữa Dendi (con người) với OpenAI (một con bot) trên YouTube

Nhiều công nghệ dùng hằng ngày của chúng ta đã được tăng cường sức mạnh bằng trí tuệ nhân tạo. Hãy trỏ camera của bạn vào thực đơn này trong chuyến đi lần tới đến Đài Loan và các danh mục lựa chọn trong nhà hàng sẽ xuất hiện thần kỳ bằng tiếng Anh thông qua ứng dụng Google Translate.


Google Translate đang phủ các đoạn dịch tiếng Anh lên thực đơn đồ uống theo thời gian thực bằng cách sử dụng mạng neuron xoắn.

Ngày nay AI được dùng để thiết kế các kế hoạch điều trị dựa trên triệu chứng cho bệnh nhân ung thư, phân tích kết quả tức thời từ các bài kiểm tra y tế tới đưa kết quả cho một chuyên gia phù hợp, và thực hiện nghiên cứu khoa học để tìm ra thuốc mới.

Chuyện gì xảy ra nếu một nhà khoa học có thể nhớ mọi bài báo từng đọc và đọc mọi bài báo từng được viết trong lĩnh vực y học, dược, sinh học, và hóa học…
… VÀ tạo ra những khoảnh khắc eureka từ kiến thức này – hãy tưởng tượng qui mô và tốc độ tuyệt vời của các khám phá có thể được tạo ra mà xem.
BenevolentAI làm điều này 100 lần mỗi ngày.” – Lời tuyên bố gây ấn tượng mạnh của BenevolentAI ở Luân Đôn (trên trang About Us, tháng 8 năm 2017).

Những người thực thi pháp luật đang sử dụng nhận dạng hình ảnh và xử lý ngôn ngữ tự nhiên để tìm dấu vết trong các cảnh quay cơ thể. Tàu du hành sao Hỏa Curiosity thậm chí còn dùng AI để tự động lựa chọn các mẫu đất đá có giá trị thí nghiệm với độ chính xác cao.

Trong đời sống hằng ngày, ngày càng có nhiều máy móc chiếm giữ những vai trò mà con người có truyền thống nắm giữ. Quả thực, đừng ngạc nhiên nếu xuất hiện một con bot cung cấp dịch vụ chăm sóc nhà cửa phòng ốc thay cho con người khi bạn yêu cầu lễ tân khách sạn gửi cho một ít kem đánh răng.

Trong bài viết này, chúng ta sẽ khám phá những khái niệm về machine learning cốt lõi phía sau những công nghệ này. Cuối cùng, bạn có thể mô tả chúng làm việc thế nào ở mức khái niệm và được trang bị các công cụ để bắt đầu tự xây dựng các ứng dụng tương tự cho riêng mình.

Cây cú pháp trừu tượng: Trí tuệ nhân tạo và Machine Learning

Một lời khuyên nhỏ: việc nhìn nhận tri thức dưới dạng cây cú pháp trừu tượng rất quan trọng – nó đảm bảo giúp bạn hiểu các nguyên tắc căn bản, ví dụ thân cây và các cành lớn, trước khi bạn đi vào các cái lá/chi tiết hoặc chẳng có gì để mà treo lên đó.” – Elon Musk, từ Reddit AMA.


Machine learning là một trong nhiều lĩnh vực con của trí tuệ nhân tạo, liên quan đến cách máy tính học từ kinh nghiệm để cải thiện cách suy nghĩ, lập kế hoạch, quyết định, … của nó.

Trí tuệ nhân tạo là việc nghiên cứu các thực thể nhận biết được thế giới xung quanh chúng, tạo ra các kế hoạch, và ra các quyết định để đạt được mục đích của chúng. Việc hình thành nên lĩnh vực trí tuệ nhân tạo còn kéo theo nhiều lý thuyết toán học, logic, triết học, xác suất thống kê, ngôn ngữ học, thần kinh học, và các lý thuyết ra quyết định. Nhiều lĩnh vực mới cũng ra đời dưới cái ô AI, chẳng hạn như thị giác máy tính (computer vision), robot, machine learning, xử lý ngôn ngữ tự nhiên…

Machine learning là một lĩnh vực con của trí tuệ nhân tạo. Mục tiêu của nó là cho phép các máy tính tự học. Thuật toán học tập cho một cỗ máy cho phép nó xác định các mẫu trong dữ liệu quan sát được, xây dựng nên các mô hình để giải thích thế giới, và tiên đoán mọi thứ mà không cần những qui tắc và mô hình được lập trình trước cụ thể nào.

Hiệu ứng AI: Cái gì mới thực sự đáng gọi là “trí tuệ nhân tạo”?
Tiêu chuẩn chính xác đối với công nghệ thỏa mãn cái gọi là “AI” hơi mập mờ một chút, và những lời giải thích cho nó cứ thay đổi theo thời gian. Cái mác AI có khuynh hướng mô tả những cỗ máy làm những tác vụ truyền thống với vai trò là con người. Thật thú vị làm sao, một khi các máy tính biết phải làm một trong những tác vụ này thế nào thì con người sẽ có khuynh hướng bảo đó không thực sự là “trí tuệ”. Cái này được biết đến với tên gọi “Hiệu ứng AI”.
Ví dụ, khi Deep Blue của IBM đánh bại nhà vô địch cờ vua thế giới Garry Kasparov năm 1997, người ta chê bai rằng nó đã sử dụng những phương pháp “ép buộc thô thiển” và điều đó hoàn toàn không phải là “trí tuệ” thực sự. Pamela McCorduck viết: “Có một thời kỳ trong lịch sử của lĩnh vực trí tuệ nhân tạo, khi mỗi lần ai đó khám phá ra cách làm máy tính thực hiện được một việc gì đó – làm kiểm kê hoàn hảo, giải được những bài toán đơn giản nhưng tương đối bất thường – sẽ có giọng điệu phê phán vang lên rằng “đó không phải là cách để tư duy”. (McCorduck, 2004).
Có lẽ khi nào xuất hiện câu je ne sais quoi (tôi không biết) thì người ta mới thực sự chấp nhận cái đó là “trí tuệ nhân tạo”.
“AI là bất kỳ thứ gì chưa từng được làm.” – Douglas Hofstadter
Vậy một bàn tính thực hiện phép toán có giống AI không? Có lẽ phải cần chút ít giải thích. Còn một chiếc xe tự lái? Ngày nay thì đúng. Trong tương lai có lẽ không. Doanh nghiệp startup mới và rất tức thời của bạn làm về chatbot tự động thực hiện các flow chart thì sao? Chắc chắn rồi… tại sao lại không chứ.

AI hùng mạnh sẽ thay đổi thế giới của chúng ta vĩnh viễn; để hiểu bằng cách nào, nghiên cứu machine learning là cách tốt nhất để bắt đầu.

Các công nghệ thảo luận ở trên là những ví dụ về trí tuệ nhân tạo hẹp (Artificial Narrow Intelligence – ANI), chúng chỉ có thể thực hiện hiệu quả một hoặc vài tác vụ trong phạm vi hẹp.

Trong lúc đó, chúng ta vẫn tiếp tục tạo ra những tiến bộ căn bản hướng về trí tuệ nhân tạo tổng quát cấp độ con người (Artificial General Intelligence – AGI), còn gọi là AI mạnh. Định nghĩa về AGI là một kiểu trí tuệ nhân tạo có thể thực hiện thành công bất kỳ tác vụ đòi hỏi trí tuệ mà con người có thể làm được, gồm có học tập, lập kế hoạch, và ra quyết định trong điều kiện không chắc chắn, giao tiếp bằng ngôn ngữ tự nhiên, pha trò, thao túng con người, giao dịch chứng khoán,… hay tự lập trình lại chính nó.

Và cái cuối cùng kia là một cuộc ăn thua lớn. Nếu chúng ta tạo ra một AI có thể tự cải thiện chính mình, nó có thể phá vỡ chu trình tự cải thiện bản thân một cách lặp đi lặp lại để tạo ra sự bùng nổ trí tuệ trong một khoảng thời gian chúng ta không đoán được nào đó, có thể nhiều thập kỷ hoặc có thể chỉ mất một ngày.

Hãy để một cỗ máy siêu thông minh được định nghĩa là cỗ máy có thể vượt xa tất cả các hoạt động trí tuệ của bất kỳ người nào, dù thông minh đến đâu. Vì thiết kế máy móc là một trong các hoạt động trí tuệ kiểu đó, cỗ máy siêu thông minh có thể thiết kế ra những cỗ máy tốt hơn; sau đó không nghi ngờ gì nữa, sẽ có một “sự bùng nổ trí tuệ”, và trí tuệ con người sẽ bị bỏ lại rất xa phía sau. Thế là cỗ máy siêu thông minh đầu tiên sẽ là phát minh cuối cùng con người tạo ra được, do đó cỗ máy đó phải đủ ngoan ngoãn để nói cho chúng ta hãy luôn giữ nó trong vòng kiểm soát.” – I.J. Good, 1965.

Bạn có lẽ từng nghe có điểm kỳ dị. Thuật ngữ này vay mượn từ điểm kỳ di trong luật hấp dẫn xảy ra ở tâm hố đen, điểm một chiều có độ đặc vô cùng mà các luật vật lý chúng ta biết đều bắt đầu bị phá vỡ tại đó.



Chúng ta có thị giác bằng không với những gì xảy ra trong chân trời sự kiện của hố đen vì không ánh sáng nào có thể thoát ra khỏi đó. Tương tự, sau khi chúng ta mở khóa cho khả năng của AI để nó tự cải thiện theo cách hồi qui, chúng ta không thể tiên đoán được những gì sẽ xảy ra, giống như một con chuột thiết kế ra một con người – thực thể này có thể gây rắc rối cho thế giới của chúng. Liệu việc này có giúp chúng có thêm pho mát hơn không, như chúng dự định ban đầu? (Hình ảnh từ WIRED)

Báo cáo gần đây của Viện Tương Lai Nhân Loại đã khảo sát một nhóm các nhà nghiên cứu AI về khung thời gian cho AGI, và thấy rằng “các nhà nghiên cứu tin rằng có 50% cơ hội để AI hoàn thành xuất sắc hơn con người trong mọi tác vụ trong vòng 45 năm nữa.” (Grace et al, 2017). Chúng tôi đã đích thân nói chuyện với một số người có chuyên môn về AI một cách thành thạo và thận trọng có tiên đoán dài hơn (giới hạn trên là “không bao giờ”), và cả những người đưa ra khoảng thời gian ngắn đến mức báo động – chỉ khoảng vài năm.


Bức ảnh Điểm kỳ dị đang ở gần của Kurzweil, xuất bản năm 2005. Giờ là năm 2017, chỉ còn vài tấm áp phích có thể giữ lại được trên tường.

Sự ra đời của siêu trí tuệ nhân tạo (Artificiel Superintelligence – ASI) lớn hơn cấp độ con người nhiều lần có thể sẽ là điều tốt nhất hoặc tệ nhất xảy ra với giống loài của chúng ta. Nó kéo theo thách thức vô tận do phải xác định những gì AI muốn theo cách thân thiện với con người.

Trong lúc không thể nói được những gì sẽ xảy ra trong tương lai, một điều chắc chắn là: 2017 là thời điểm tốt để bắt đầu tìm hiểu xem máy móc tư duy thế nào. Đi sâu vào những khái niệm trừu tượng của triết lý ghế bành và định hướng lộ trình cùng các chiến lược của chúng ta một cách thông minh bằng sự tôn trọng với AI, chúng ta sẽ phải hiểu chi tiết máy móc nhìn nhận thế giới thế nào – chúng muốn gì, các định kiến tiềm tàng và các chế độ thất bại của chúng, những mưu kế thuộc về tính cách của chúng – cũng giống như chúng ta nghiên cứu tâm lý học và thần kinh học để hiểu con người học hỏi, quyết định, hành động và cảm thấy thế nào.

Sẽ có nhiều câu hỏi phức tạp, đánh cược cao về AI đòi hỏi chúng ta thật thận trọng chú ý trong vài năm tới.
Làm sao chúng ta có thể chống lại xu thế phát triển của AI trước những thành kiến có hệ thống trong các bộ dữ liệu hiện có? Chúng ta nên làm gì trong những bất đồng cơ bản giữa các nhà công nghệ hùng mạnh nhất thế giới về những rủi ro cùng lợi ích tiềm ẩn của trí tuệ nhân tạo? Cách tiếp cận công nghệ nào hứa hẹn nhất để dạy các hệ thống AI biết cách cư xử? Điều gì sẽ xảy ra với ý thức về mục đích của con người trong thế giới không còn việc làm?”

Machine learning là cốt lõi trong hành trình của chúng ta hướng tới trí tuệ nhân tạo tổng hợp (AGI), và tới thời điểm thích hợp, nó sẽ làm thay đổi mọi ngành công nghiệp và có tác động cực kỳ to lớn tới đời sống hằng ngày của con người. Đó là lý do tại sao chúng tôi tin việc hiểu biết về machine learning rất có giá trị, ít nhất là ở mức khái niệm – và chúng tôi thiết kế bài hướng dẫn này để mọi người bắt đầu một cách tốt nhất.

Đọc bài hướng dẫn này thế nào?
Bạn không cần đọc từ đầu đến cuối mới thu được giá trị từ bài viết này. Có 3 gợi ý về cách đọc, phụ thuộc vào mối quan tâm của bạn và việc bạn có bao nhiêu thời gian:
1.      Hướng tiếp cận hình chữ T. Đọc từ đầu đến cuối. Tóm tắt mỗi phần theo cách của bạn (dùng kỹ thuật Feynman); cách này khuyến khích việc đọc một cách chủ động và nhớ lâu. Đi sâu hơn vào nhưng phần liên quan nhiều nhất tới sở thích hoặc công việc của bạn. Chúng tôi có đề cập tới những tài nguyên để tìm hiểu ở cuối mỗi phần.
2.      Hướng tiếp cận tập trung. Nhảy thẳng tới phần bạn tò mò nhất và tập trung năng lượng tư duy của bạn vào đó.
3.      Hướng tiếp cận 80/20. Đọc lướt toàn bộ trong một lần, ghi chú lại những khái niệm mức độ cao cần quan tâm, sau đó đọc lại nó vào buổi tối.

Về các tác giả


“OK, chúng ta phải làm xong phần gradient descent khi uống xong cốc bia này.” – Tại The Boozy Cow ở Edinburgh

Vishal gần đây nhất đang dẫn dắt sự phát triển lớn mạnh tại Upstart, một nền tảng cho vay dùng machine learning để định giá tín dụng, tự động hóa quá trình cho vay, và thu hút người dùng. Anh dành nhiều thời gian cho các startup, áp dụng khoa học nhận dạng, triết lý đạo đức và luân lý cho trí tuệ nhân tạo. (Liên hệ: vishal.maini@gmail.com)

Samer đang học thạc sĩ ngành Khoa học và Kỹ thuật máy tính tại UCSD và đồng sáng lập Conigo Labs. Trước khi tốt nghiệp đại học, anh đã lập nên TableScribe, một công cụ kinh doanh thông minh cho SMB, và dành 2 năm tư vấn cho các công ty trong Fortune 100 tại McKinsey. Samer trước đây nghiên cứu Khoa học Máy tính và Đạo đức, Chính trị, Kinh tế tại Yale. (Liên hệ: samrsabri@gmail.com)

Hầu hết bài hướng dẫn được viết trong hành trình 10 ngày tới Vương quốc Anh, trong sương mù điên đảo của tàu hỏa, máy bay, café, quán rượu và bất cứ nơi nào nữa mà chúng tôi có thể tìm thấy một chỗ khô ráo để ngồi.

Mục đích của chúng tôi là củng cố sự hiểu biết của chính mình về trí tuệ nhân tạo, machine learning và cách các phương thức phối hợp với nhau – hy vọng tạo ra một cái gì đó giá trị để chia sẻ trong hành trình.

Và bây giờ, không cần náo nhiệt hơn nữa, hãy bắt đầu đi vào thế giới của machine learning với Phần 2: Học có giám sát!

Vishal Maini
Samer Sabri

Không có nhận xét nào:

Đăng nhận xét

Chuẩn bị cho một khóa thiền Vipassana 10 ngày như thế nào?

Vì liên tục có nhiều bạn hỏi về các khóa thiền Vipassana mà mình thi thoảng tham gia, để không phải giải thích lại nhiều lần, mình viết các ...