Dưới đây là cách mà thuật toán được tạo ra
Khi phần mềm và thuật toán trở thành một phần ngày càng lan rộ trong cuộc sống của chúng ta, có sự quan tâm và lo ngại gia tăng về cách chúng ảnh hưởng đến xã hội, kinh tế và chính trị.
Tuy nhiên, hầu hết các nghiên cứu xã hội về thuật toán nhìn nhận chúng như những hộp đen tối tăm hoạt động tự động. Cách tiếp cận cô lập này với thuật toán, tách chúng khỏi yếu tố con người dẫn đến sự hiểu lầm và kết luận sai lầm.
Hiến pháp của Thuật toán, một cuốn sách của Florian Jaton, Nghiên cứu viên sau tiến sĩ tại STS Lab, Đại học Lausanne, đưa ra ánh sáng về mặt con người của thuật toán bằng cách khám phá chúng từ bên trong thay vì nghiên cứu chúng từ xa. Thay vì làm việc ngược lại từ một thuật toán hoạt động và cố gắng hiểu làm thế nào nó ra đời, Jaton bắt đầu từ các thực thể có vẻ không liên quan, như con người, mong muốn, tài liệu, sự tò mò, và sau đó nghiên cứu cách mọi thứ này kết hợp và tương tác để tạo ra những gì chúng ta gọi là thuật toán.
Bằng cách kết hợp dân dụ và thực hành thực tế từ cơ sở, lập trình và công thức, Jaton khám phá tất cả những chi tiết và thực hành nhỏ nhưng quan trọng có liên quan đến việc tạo ra thuật toán. Và trong hành trình của mình, anh ta cho chúng ta thấy cách chúng ta và thuật toán của chúng ta ảnh hưởng lẫn nhau. Theo đúng như vậy, nghiên cứu của anh về hiến pháp của thuật toán có thể giúp khám phá những hướng mới để đồng hành phần mềm của chúng ta với giá trị của chúng ta.
“Khi tôi bắt đầu quan tâm đến chủ đề thuật toán vào năm 2013, đã có một lượng lớn và phổ quát là khá phê phán, về tác động xã hội của thuật toán,” Jaton nói. “Những công trình quan trọng này nghiên cứu các cách mà thuật toán ảnh hưởng đến cuộc sống của chúng ta, đồng thời nhấn mạnh tính mù mờ của thuật toán.”
Trong khi những nghiên cứu này quan trọng và đã giúp chú ý đến ảnh hưởng của thuật toán ở các cấp độ khác nhau, Jaton nghĩ rằng sự phê phán hệ thống về sức mạnh của thuật toán có thể gây nguy hiểm.
“Tôi đặc biệt lo lắng rằng thuật toán chủ yếu được xem xét là các thực thể trừu tượng và đang nổi lơ lửng được tạo ra từ mã code xa xôi và toán học mơ hồ,” Jaton nói. “Làm thế nào để đối phó với những thực thể trừu tượng, nổi lơ lửng và mơ hồ? Việc mô tả một cách phê phán của thuật toán không tạo nên sự dày vò thực tế cho chúng, theo ý kiến của tôi, làm cho việc đối kháng tập thể cần thiết trở nên khó khăn.”
Vấn đề, Jaton phát hiện ra khi xem xét cẩn thận hơn, là thuật toán được nghiên cứu từ bên ngoài, từ văn phòng của các nhà xã hội học phê phán quan sát chúng thông qua tài khoản chính thức, chẳng hạn như báo cáo, phần mềm và các bài báo học. Phương pháp này loại bỏ “kết cấu mong manh đã góp phần vào việc hình thành từng bước,” ông viết.
“Đây là nơi mà đào tạo của tôi trong Khoa học và Công nghệ (STS) hữu ích, vì một trong những giả định cơ bản của lĩnh vực con của khoa học xã hội này là coi thiết bị kỹ thuật - khoa học như sản phẩm của các thực hành có địa điểm và có thể chịu trách nhiệm,” Jaton nói.
“Một phương thuốc có thể giúp làm thay đổi cuộc trò chuyện phê phán về thuật toán là tập trung vào đổi mới drastique phương pháp, ưa trọng vào nhân chủng học khoa học như được xác định, ví dụ như các công trình nhân chủng học in situ của Bruno Latour, Michael Lynch và Lucy Suchman, thay vì phân tích tài liệu xa (vẫn quan trọng).”
Để viết Hiến pháp của Thuật toán, Jaton đã dành hai năm rưỡi làm việc như một phần của một nhóm các nhà nghiên cứu đang làm việc trên một thuật toán thị giác máy tính. Khi anh tham gia và ghi chép các cuộc thảo luận, nỗ lực thu thập dữ liệu, phiên lập trình, thực hành sửa lỗi mã và làm rõ các lý thuyết, anh nhận ra rằng nhiều công việc quan trọng trong quá trình tạo ra thuật toán bị coi thường khi chúng được nghiên cứu trong các môi trường xã hội.
Trong cuốn sách của ông, ông viết, “Sự ẩn hiện của các thực hành dưới cơ sở phát triển của thuật toán thực sự không còn được coi là tích cực nữa: vì chúng là đối tượng của các cuộc tranh cãi lặp đi lặp lại, điều này chắc chắn quan trọng, hoặc ít nhất là thú vị, là ghi chép các quy trình thực tế giúp chúng xuất hiện.”
Jaton chia nhỏ hiến pháp của thuật toán thành ba giai đoạn chính: Ground-truthing, lập trình và công thức hóa.

Ground-truthing
Khi một nhóm các nhà khoa học máy tính, nghiên cứu viên hoặc kỹ sư tụ tập để tạo ra một thuật toán, họ đầu tiên được động viên bởi một loạt các yếu tố, bao gồm mong muốn, kỹ năng, phương tiện và hy vọng. Ví dụ, một nhóm nghiên cứu có thể muốn đối đầu hoặc vượt qua kết quả của một bài báo khoa học đã được công bố trước đó. Các thành viên trong nhóm có một tập hợp kỹ năng toán học và lập trình mà họ có thể dựa vào để đạt được mục tiêu này.
Họ có thể có quyền truy cập vào nguồn lực máy tính, bài báo khoa học và công cụ số hóa có thể giúp họ. Và cuối cùng, họ có thể hy vọng tạo ra một sự thay đổi trong lĩnh vực khoa học, chẳng hạn như giúp cải thiện hình ảnh y học hoặc giải quyết một vấn đề có thể sau này được sản phẩm hóa, chẳng hạn như tạo ra một thuật toán có thể phát hiện khuyết điểm trong các nhà máy sản xuất.
Nhưng trước khi họ có thể phát triển một thuật toán có thể đáp ứng được mục tiêu của mình, họ phải trải qua một quá trình làm rõ vấn đề và ground-truthing. Trong giai đoạn này, các nhà nghiên cứu phải xác định một cách chính xác vấn đề họ muốn giải quyết và xác định loại dữ liệu họ cần để xác minh thuật toán của mình. Ví dụ, một thuật toán phân loại hình ảnh xác định xem một đối tượng có xuất hiện trong hình ảnh hay không. Một thuật toán phát hiện đối tượng, ngược lại, cũng phải xác định tọa độ của đối tượng trong hình ảnh. Các quy định khác cũng có thể áp dụng, chẳng hạn như hình ảnh chỉ chứa một đối tượng hay nó có thể chứa nhiều đối tượng? Điều kiện ánh sáng có thay đổi trong môi trường mà thuật toán sẽ được sử dụng không? Các đối tượng có xuất hiện trước nhiều phông nền khác nhau hay chúng xuất hiện trước cùng một phông nền liên tục không?
Sau khi vấn đề được đặt ra, các nhà nghiên cứu phải xác định ground truth bằng cách thu thập tư liệu phù hợp giúp họ xác minh thuật toán và mô hình mà họ sẽ xây dựng trong tương lai. Ví dụ, đối với thuật toán thị giác máy tính, các nhà nghiên cứu sẽ thu thập một bộ dữ liệu hình ảnh phù hợp với mô tả của vấn đề của họ và có thể được sử dụng để huấn luyện mô hình học máy. Những hình ảnh này sau đó phải được gắn nhãn với dữ liệu cần thiết để kiểm tra thuật toán. Ví dụ, nếu họ đang tạo một thuật toán phát hiện đối tượng, họ phải chú thích từng hình ảnh với dữ liệu cho hộp giới hạn của đối tượng(s) mà nó chứa.
Quan trọng là phải hiểu rằng cách chúng ta nghĩ về vấn đề và ground truths sẽ ảnh hưởng lớn đến thuật toán chúng ta tạo ra và các ảnh hưởng mà chúng sẽ gây ra. Ví dụ, nếu một thuật toán phát hiện đối tượng được xuất phát từ ground truths trong đó các đối tượng được tập trung, nó có thể hoạt động tốt trên các hình ảnh tương tự nhưng thất bại tràn lan trên những hình ảnh chứa nhiều đối tượng phân tán. Tương tự, nếu một thuật toán nhận dạng khuôn mặt chỉ được kiểm tra với hình ảnh của người thuộc một sắc tộc cụ thể, thì nó sẽ thực hiện kém trên hình ảnh của các nhóm khác. Như Jaton chỉ ra trong The Constitution of Algorithms, “chúng ta nhận được các thuật toán từ ground truths của chúng ta.”
“Để xem xét vấn đề của ground truths một cách trực tiếp sẽ giúp truyền đạt thông điệp sau đây: thuật toán, như những thiết bị kỹ thuật, chỉ có thể truy xuất những thứ đã được xác định trước,” Jaton nói.
“Ngay khi một thuật toán tạo ra một kết quả, phản xạ nên ngay lập tức là đặt câu hỏi sau đây: thuật toán này xuất phát từ cơ sở dữ liệu ground-truth nào? Điều này sẽ làm nổi bật những hạn chế bẩm sinh của thuật toán - chúng là những thiết bị tối ưu hóa - trong khi không làm suy giảm giá trị và vẻ đẹp của chúng - chúng có lẽ là những thiết bị tối ưu hóa tinh tế và đẹp nhất mà chúng ta đã thiết kế cho đến nay.”
Việc kiểm tra và tài liệu hóa quá trình ground-truthing rất quan trọng đối với nghiên cứu về thuật toán và ảnh hưởng của chúng đối với xã hội, đặc biệt là khi chúng thực hiện các nhiệm vụ nhạy cảm. Đã có nhiều trường hợp nơi thiết kế kém đã dẫn đến thuật toán mắc phải các lỗi quyết định quan trọng như tạo ra các quyết định có độ chệch không đúng, tạo ra quyết định đầy đủ độ chệch, và thúc đẩy tin tức giả mạo. Có sự quan tâm ngày càng tăng về việc hiểu và giải quyết các rủi ro của thuật toán. Việc có một quy trình cẩn thận để nghiên cứu và tài liệu hóa quá trình ground-truthing sẽ quan trọng để giải quyết những rủi ro này.
“Miễn là công việc thực tế nền tảng hiến pháp của thuật toán vẫn còn là một khái niệm trừu tượng và không xác định, việc thay đổi sinh thái của công việc này sẽ vẫn là một công việc cực kỳ khó khăn,” Jaton viết trong The Constitution of Algorithms. “Thay đổi các định kiến đưa thuật toán thành việc hỗ trợ các giá trị khác nhau có thể, trong tình cảnh đó, được đạt được bằng cách làm cho các thực hành công việc dưới cơ sở dữ liệu của thuật toán trở nên rõ ràng hơn. Nếu có thêm nghiên cứu có thể điều tra về các thực hành ground-truthing mà thuật toán xuất phát từ đó, thì khả năng sáng tạo thực sự có thể được gợi ý dần dần.”
Lập Trình
Cuối cùng, thuật toán chuyển sang giai đoạn lập trình, nơi một tập hợp các mô-đun và một danh sách các hướng dẫn được tạo ra để giải quyết vấn đề đã được định nghĩa và được xác minh đối với ground truth. Nhưng trong khi giai đoạn này thường chỉ được giảm xuống thành mã nguồn thuần túy, Jaton cho thấy trong cuốn sách của mình rằng có nhiều điều hơn nữa trong việc lập trình so với việc ghép một danh sách các hướng dẫn máy tính.
“Khi những người lý thuyết tri thức điều tra điều gì tạo nên các chương trình, họ không thể đi xa hơn hình thức ‘chương trình’ cần phải được giải thích chính xác. Trong một chu kỳ đầy thú vị liên quan đến cái được gọi là ẩn dụ tính toán của tâm trí, những người lý thuyết tri thức cuối cùng đều đưa ra nhiều chương trình (tâm lý) để giải thích sự phát triển của chương trình (máy tính),” Jaton viết trong The Constitution of Algorithms.
Quan điểm vấn đề này về các thực hành lập trình chủ yếu là có nguồn gốc sâu sắc trong lịch sử của máy tính, Jaton mô tả trong cuốn sách của mình. Nhà khoa học, nhà nghiên cứu và các công ty đã cố gắng đặt máy tính làm hệ thống đầu vào-đầu ra được tạo ra theo hình ảnh của não người. Trên thực tế, tuy nhiên, đó là tâm trí của con người sau này đã được tưởng tượng lại như là một phiên bản hữu cơ của máy tính.
Những ẩn dụ này đã làm giảm lập trình xuống việc cung cấp tập hợp đúng các hướng dẫn cho một bộ não số. Chúng cũng đã định hình cách các lập trình viên được đào tạo và đánh giá, đặt nhiều sự chú ý hơn vào việc viết hướng dẫn và bỏ qua tất cả các thực hành khác có giá trị đối với việc phát triển phần mềm.
Trong cuốn sách của mình, Jaton ghi chép về trải nghiệm của mình và của đội ngũ trong việc viết hướng dẫn, gặp sự cố với lỗi, viết mã trung gian để xác định nguyên nhân của vấn đề, và tham khảo ý kiến từ các thành viên khác trong nhóm.
Ông nhấn mạnh tầm quan trọng của các bước trung gian được thực hiện để điều chỉnh và cải thiện chương trình, các tương tác giữa các thành viên nhóm trong việc làm sáng tỏ mã nguồn, và nhiều bước và thực hành khác không được phản ánh trong mã nguồn cuối cùng. Trong việc đọc cuốn sách của ông, tôi có cơ hội để nghĩ về quá trình của mình trong việc viết mã và triển khai thuật toán và những chi tiết nhỏ quan trọng đối với công việc của tôi nhưng thường bị coi là hiển nhiên.
“Tôi nghĩ rằng khía cạnh thường bị bỏ qua nhất của các thực hành lập trình là tất cả những chú thích tạm thời nhỏ bé đi kèm với việc viết chương trình (và sau đó được xóa và trở nên vô hình),” Jaton nói. “Tôi thực sự ngạc nhiên khi khám phá ra tất cả những bản ghi và thí nghiệm nhỏ bé này nằm xen kẽ trong các chuỗi lập trình, và việc tích hợp chúng vào phân tích của các thực hành viết mã dường như là điều tuyệt vời để hiểu rõ hơn về những điều xảy ra trong những khoảnh khắc thú vị này (bởi vì như Donald Knuth đúng đắn nói, phần mềm là khó khăn).”
Phân tích nhỏ về xã hội của các thực hành lập trình chỉ mới bắt đầu, Jaton nói, và những đề xuất của nó do đó vẫn chủ yếu là khám phá. Do đó, khó nói nó sẽ dẫn đến đâu. Nhưng ông tin rằng việc nắm vững các thực hành lập trình thông qua các nghiên cứu nhỏ về xã hội tại chỗ sẽ tạo điều kiện linh hoạt hơn trong thiết kế thuật toán.
“Hiểu biết tốt hơn về lý do và mục đích của các thực hành lập trình có lẽ sẽ làm cho nó có thể trích xuất những điều làm cho các lập trình viên giỏi, để sau đó cố gắng truyền động lực đặc biệt này vào cộng đồng thiết kế thuật toán,” Jaton nói.

Định hình
Cuối cùng, khi một thuật toán được triển khai và kiểm tra đối với sự thật nền, nó trở thành một đối tượng toán học có thể sau này được sử dụng trong các thuật toán khác. Một thuật toán phải đứng vững qua thời gian, chứng minh giá trị của mình trong các ứng dụng và tính hữu ích của nó trong các công việc khoa học và ứng dụng khác. Một khi đã được chứng minh, những thuật toán này trở nên trừu tượng, được xem là những khẳng định đã được chứng minh không cần thêm nghiên cứu. Chúng trở thành cơ sở và thành phần của các thuật toán khác, và đóng góp vào công việc tiếp theo trong lĩnh vực khoa học.
Nhưng một điểm quan trọng cần nhấn mạnh ở đây là khi vấn đề, sự thật nền và triển khai được hình thành thành một thực thể trừu tượng, tất cả những chi tiết nhỏ và sự thật đã vào việc tạo ra nó trở nên vô hình và thường bị bỏ qua.
“Nếu Khoa học và Công nghệ xã hội đã lâu đã chỉ ra rằng các đối tượng khoa học cần được sản xuất trong phòng thí nghiệm, nhưng bộ máy nặng nề của những địa điểm này cũng như công việc thực tế cần thiết để làm cho chúng trở nên có hiệu suất có vẻ biến mất ngay khi những tuyên bố về các đối tượng khoa học trở thành các sự thật được chứng nhận,” Jaton viết trong cuốn sách The Constitution of Algorithms.
“Một khi không còn tranh cãi hoặc sự không đồng ý về một đối tượng khoa học mới, tự nhiên thường được kêu gọi như là vương quốc đã từng chứa đựng đối tượng khoa học được xây dựng này... khi sự thật được chứng nhận và được ghi danh trong các nghiên cứu tiếp theo, các thí nghiệm, công cụ, cộng đồng và thực hành đã làm cho chúng tiến triển thường được bỏ qua.”
Nhưng quan trọng là hiểu rằng thuật toán, khi đã được hình thành, trở thành nền tảng của các thuật toán khác, nơi chúng sẽ đóng góp vào việc thiết lập sự thật nền, lập trình, định hình và các thực hành khác. Việc có cái nhìn sâu rộng hơn vào các giai đoạn khác nhau trong việc hình thành thuật toán sẽ giúp chúng ta có cuộc thảo luận xây dựng hơn về chúng và điều tra tác động rộng lớn của chúng.
“Khái niệm về thuật toán như là sản phẩm chung của các hoạt động nền thực tế, lập trình và định hình — thường được hỗ trợ bởi các thuật toán thứ hai có thể đã trải qua các quy trình hình thành tương tự — làm phức tạp bức tranh tổng thể trong khi làm cho nó trở nên dễ hiểu hơn,” Jaton viết.
“Thực sự, mỗi khi tranh cãi nảy sinh về tác động của một thuật toán, những người tranh cãi có thể tham chiếu đến bản đồ cơ bản này và cùng nhau xem xét những câu hỏi như: Thực thể nền của thuật toán này được tạo ra như thế nào? Công thức nào đã thực hiện việc biến đổi dữ liệu đầu vào thành mục tiêu đầu ra? Công việc lập trình này đòi hỏi những nỗ lực gì? Và, nếu những suy ngẫm sâu sắc hơn được yêu cầu, những người tranh cãi có thể khám phá một lớp khác: Các thuật toán nào đã đóng góp vào những quá trình thực hiện nền, lập trình và định hình này? Và làm thế nào những thuật toán thứ hai này đã được hình thành ban đầu?”
Khi quan sát mạng phức tạp của các thuật toán và các thành phần xã hội của chúng tiến triển cùng nhau, chúng ta nhận được cái nhìn toàn cảnh về cách chúng ta và các thuật toán đang trở thành một phần không thể tránh khỏi của nhau. Đây là một lĩnh vực mà chúng ta vẫn còn rất nhiều để học và xem xét lại quan điểm của chính mình, theo Jaton nói.
“Tôi ngày càng nghĩ rằng việc chúng ta luôn xây dựng một thuật toán dựa trên các thuật toán khác cho phép chúng ta nhớ rằng các câu hỏi về tác động và sử dụng vẫn là trung tâm của việc phân tích về thuật toán trong xã hội,” ông nói với tôi.
“Thực sự, khi đọc sách, người đọc đôi khi có thể nghĩ rằng xã hội/địa lý học về các tác động và sử dụng của thuật toán khá khác biệt so với xã hội/địa lý học về sáng tạo của chúng. Nhưng sau sự suy ngẫm sâu rộng hơn, phân biệt này thực sự làm ngược lại: những người thiết kế thuật toán mới cũng là một phần của xã hội; họ là những người sử dụng và bị ảnh hưởng, ở mức độ khác nhau, bởi các thuật toán khác, mà họ đôi khi sử dụng để xây dựng những thuật toán mới. Do đó, không thể hoàn toàn bỏ qua câu hỏi về tác động và sử dụng của thuật toán, và quan trọng là cũng bao gồm nghiên cứu về các tác động xã hội của thuật toán trong việc hình thành chúng.”
Bài viết này ban đầu được đăng bởi Ben Dickson trên TechTalks, một xuất bản phẩm nghiên cứu xu hướng trong công nghệ, cách chúng ảnh hưởng đến cuộc sống và kinh doanh của chúng ta, và những vấn đề mà chúng giải quyết. Nhưng chúng tôi cũng thảo luận về mặt xấu của công nghệ, những hậu quả đen tối của công nghệ mới, và những điều chúng ta cần phải chú ý. Bạn có thể đọc bài viết gốc tại đây.
