Tôi Không Thể Tái Lập Lại Kết Quả Tốt Nhất Của Chính Mình
Kết quả ám ảnh tôi nhất từ trước đến nay lại là kết quả tôi không bao giờ tạo ra được thêm một lần nữa. Có một lần chạy duy nhất, từ những ngày đầu, trả về một con số tốt hơn hẳn bất cứ thứ gì tôi từng thấy. Tôi mừng rỡ. Rồi khi tôi quay lại để xây dựng tiếp trên nó, nó đã biến mất — và tôi đã không ghi chép lại đủ để có thể tìm đường quay về. Tôi mất nhiều tuần sau đó để đuổi theo một bóng ma do chính mình tạo ra rồi đánh mất một cách bất cẩn.
Đó vẫn là một trong những thất bại đáng học hỏi nhất của cả dự án, bởi bài học hoàn toàn không nằm ở thị trường hay mô hình. Nó nằm ở sự khác biệt giữa làm khoa học và chỉ đơn thuần tạo ra những con số.
Kết quả mà tôi không lấy lại được
Trong những ngày đầu, khi tôi chưa có chút kỷ luật thực sự nào, tôi chạy thí nghiệm một cách lỏng lẻo. Tôi thay đổi nhiều thứ cùng một lúc, liếc qua kết quả, đổi thêm vài thứ nữa, rồi tiếp tục. Tôi đã không cẩn thận ghi lại chính xác cấu hình nào đã tạo ra kết quả nào; tôi chỉ lặp đi lặp lại thật nhanh và tin rằng mình sẽ nhớ những phần quan trọng. Tôi đã không nhớ.
Thế nên khi một lần chạy trả về kết quả tốt hơn hẳn phần còn lại, tôi gặp một vấn đề mà tôi chưa hiểu hết tầm vóc của nó. Tôi quay lại để tái lập, để xác nhận và xây dựng tiếp trên nó — và tôi không thể. Tôi chạy lại những gì tôi cho là cùng điều kiện, một cách đại khái, theo trí nhớ. Điều kỳ diệu không bao giờ trở lại nữa. Tôi đã tạo ra một thứ thật sự đáng phấn khích đúng một lần duy nhất, rồi khóa nó lại sau một cánh cửa mà tôi đã vô tình vứt mất chìa khóa.
Một kết quả không thể tái lập thì không phải là kết quả
Nhận thức cay đắng đó, khi cuối cùng nó cũng đến, vừa ảm đạm vừa sáng tỏ trong cùng một mức độ. Một con số mà bạn không thể tái lập theo ý muốn gần như chẳng nói lên điều gì. Liệu kết quả tuyệt vời ấy có phải là một cải thiện thật sự? Một cú đổ may mắn của con xúc xắc ngẫu nhiên? Một lỗi tình cờ, đúng vào lần đó, đã tâng bốc tôi? Khi không có cách nào chạy lại đúng những điều kiện đã tạo ra nó, tôi không có cách nào phân biệt những khả năng này với nhau.
Và chúng là những thứ khác nhau một trời một vực. Một cái là khám phá đáng để xây cả một năm công sức lên trên. Một cái là nhiễu mà lẽ ra tôi nên quên ngay lập tức. Cái thứ ba là một lỗi mà tôi nên truy lùng và sửa. Trong cách làm cẩu thả của tôi, chúng đã gộp lại thành một con số không thể tái lập duy nhất, mà có thể là bất kỳ cái nào trong số đó — và tôi đã suýt đặt cược cả một khối nỗ lực nghiêm túc vào nó. Một phát hiện mà bạn không thể tái tạo thì không phải là bằng chứng. Nó là một lời đồn mà bạn tình cờ chứng kiến.
Trạng thái ẩn khiến mọi thứ không thể tái lập
Điều tôi đã không nhận ra là có bao nhiêu thứ vô hình lặng lẽ quyết định một kết quả. Hạt giống ngẫu nhiên (random seed) khởi tạo tất cả. Phiên bản chính xác của dữ liệu, đến tận chỗ thứ gì đã hay chưa được làm sạch trong ngày hôm đó. Mọi giá trị trong cấu hình. Trạng thái chính xác của mã nguồn vào đúng khoảnh khắc cụ thể đó, kể cả những thay đổi mà tôi chưa commit ở bất cứ đâu. Thứ tự mà mọi thứ chạy.
Thay đổi bất kỳ thứ nào trong số này, dù âm thầm, dù tình cờ, và kết quả có thể dịch chuyển. Tôi đã không ghim chặt cái nào trong số chúng. “Thí nghiệm” của tôi là một nồi súp sôi sục những bộ phận chuyển động, vậy mà tôi lại đối xử với kết quả đầu ra của nó như thể nó là một phép đo sạch sẽ, lặp lại được từ một thiết bị đã hiệu chuẩn. Nó hoàn toàn không phải vậy. Nó là một sự kiện chỉ xảy ra một lần trong một hệ thống mà tôi không kiểm soát hoàn toàn và đã không buồn ghi lại.
Tính tất định là một lựa chọn bạn phải tự đưa ra
Sự thật khó chịu là khả năng tái lập không tự nhiên mà có. Nó không phải trạng thái mặc định của một hệ thống phức tạp; mặc định là hỗn loạn, trôi dạt, và sự không-thể-tái-lập lặng lẽ. Nếu bạn muốn có thể chạy cùng một thứ hai lần và nhận được cùng một câu trả lời, bạn phải chủ ý thiết kế đặc tính đó vào trong hệ thống.
Điều đó có nghĩa là cố định các hạt giống để ít nhất tính ngẫu nhiên được kiểm soát. Quản lý phiên bản của dữ liệu để bạn biết chính xác mình đã huấn luyện và kiểm thử trên cái gì. Ghi lại cấu hình chính xác và mã nguồn chính xác bên cạnh từng kết quả một, để một con số không bao giờ là một đứa trẻ mồ côi. Biến một lần chạy thành thứ bạn có thể chạy lại y hệt, một cách có chủ đích, bất cứ khi nào bạn muốn. Chẳng có gì trong số này là công việc hào nhoáng cả. Nhưng tất cả chúng chính là sự khác biệt giữa khoa học và việc đoán mò có học thức được khoác lên lớp áo khoa học.
Kỷ luật nhàm chán đã sửa được nó
Phương thuốc, khi cuối cùng tôi cũng áp dụng nó, nhàm chán đến mức gần như sỉ nhục. Tôi bắt đầu đối xử với mọi thí nghiệm như một thứ phải tái dựng được từ một bản ghi. Dữ liệu nào. Mã nào. Thiết lập nào. Cái gì tạo ra cái gì. Nếu một kết quả không gắn với đủ thông tin để tái tạo nó, thì theo cách nhìn của tôi, kết quả đó không tồn tại.
Lúc đầu, điều này có cảm giác như thủ tục hành chính thuần túy — gánh nặng cản đường công việc thật sự, thú vị. Nhưng nó không phải là gánh nặng. Nó chính là thứ đã biến những lần vùng vẫy cuống cuồng, dễ quên của tôi thành một thứ thực sự có thể tích lũy. Trước kia, mỗi kết quả bốc hơi ngay khoảnh khắc tôi bước tiếp. Sau này, các kết quả chồng chất thành một bản ghi mà tôi có thể tin tưởng, so sánh, và xây dựng tiếp lên. Thủ tục hành chính ấy chính là khoa học.
Tại sao điều này quan trọng ở đây hơn gần như bất cứ đâu
Có một lý do khiến việc bỏ qua kỷ luật này đặc biệt tàn nhẫn trong một lĩnh vực như lĩnh vực này. Môi trường nhiễu một cách phi thường, nghĩa là sự ngẫu nhiên liên tục tạo ra những con số đẹp đẽ mà chẳng có ý nghĩa gì cả. Những cú trúng số may rủi không hề hiếm ở đây; chúng là một cơn mưa phùn đều đặn. Nếu bạn không thể tái lập một kết quả, bạn không có cách nào tách một tín hiệu thật khỏi một trong những tai nạn may mắn này — và việc đuổi theo những tai nạn may mắn, nhầm chúng với những khám phá, là một trong những cách hiệu quả nhất mà tôi biết để đổ hàng tháng trời nỗ lực vào con số không.
Kết quả tốt nhất không thể tái lập chính là miếng mồi hoàn hảo. Nó đúng là loại thứ mang lại cảm giác như một đột phá nhưng, thường xuyên hơn nhiều, chỉ là tiếng nhiễu mỉm cười với bạn đúng một lần.
Bài học sâu hơn: tin vào bản ghi, đừng tin vào trí nhớ
Điều cuối cùng tôi rút ra từ chuyện này là một sự ngờ vực sâu sắc đối với bất kỳ kết quả nào chỉ sống trong trí nhớ của tôi hoặc trong một ảnh chụp màn hình. Trí nhớ tự biên tập chính nó. Nó làm tròn lên, nó quên đi những điều dè dặt cảnh báo, nó nhớ con số mà đánh mất các điều kiện. Một kết quả không có dòng dõi tái dựng được thì không phải là một phát hiện; nó là một giai thoại, và giai thoại chính xác là thứ mà lĩnh vực này dùng để hủy hoại người ta.
Thế nên giờ đây câu hỏi đầu tiên tôi đặt ra về bất kỳ kết quả phấn khích nào không phải là “nó tốt đến mức nào?” Mà là “tôi có lấy lại được nó không, một cách chính xác, theo ý muốn?” Nếu câu trả lời là không, thì nó tốt đến đâu cũng chưa quan trọng, bởi vì tôi thật ra không biết mình đang có cái gì. Cho đến khi một kết quả có thể được tái lập, nó không phải là một khám phá mà tôi sở hữu. Nó chỉ là một con số tôi từng thấy, và những con số tôi từng thấy chẳng đáng giá gì ở đây.
— Không tín hiệu, không lợi nhuận, không phải lời khuyên đầu tư.