Một lỗ hổng trong tập lệnh Python có thể dẫn đến kết quả sai trong hơn 100 ấn phẩm hóa học

Sinh viên tốt nghiệp Đại học Hawaii tìm thấy vấn đề trong tập lệnh Python được sử dụng để tính toán sự dịch chuyển hóa học, xác định cấu trúc hóa học của chất được nghiên cứu trong quá trình phân tích quang phổ của tín hiệu bằng phương pháp hưởng từ hạt nhân. Trong khi xác minh kết quả nghiên cứu của một trong những giáo sư của mình, một sinh viên tốt nghiệp nhận thấy rằng khi chạy tập lệnh trên các hệ điều hành khác nhau trên cùng một tập dữ liệu, kết quả đầu ra sẽ khác nhau.

Ví dụ: khi chạy trên macOS 10.14 và Ubuntu 16.04 cho tập dữ liệu đã thử nghiệm, tập lệnh cấp giá trị không chính xác 172.4 thay vì 173.2. Tập lệnh bao gồm khoảng 1000 dòng mã và được các nhà hóa học sử dụng từ năm 2014. Kiểm tra mã cho thấy đầu ra không chính xác bởi vì sự khác biệt khi sắp xếp tập tin trong các hệ điều hành khác nhau. Các tác giả của kịch bản tin rằng chức năng "cầu ()" luôn trả về các tệp được sắp xếp theo tên, trong khi tài liệu toàn cầu nêu rõ rằng thứ tự đầu ra không được đảm bảo. Cách khắc phục là thêm list_of_files.sort() sau lệnh gọi glob().

Một lỗ hổng trong tập lệnh Python có thể dẫn đến kết quả sai trong hơn 100 ấn phẩm hóa học

Vấn đề được phát hiện đã làm dấy lên nghi ngờ về tính đúng đắn của hơn 100 công bố về hóa học, kết luận của chúng được đưa ra trên cơ sở độ dịch chuyển hóa học được tính toán bằng kịch bản. Số lượng nghiên cứu chính xác về việc sử dụng chữ viết này vẫn chưa được xác định, nhưng các ấn phẩm có mã của nó đã được trích dẫn trong 158 bài báo. Tác giả của các tác phẩm này được khuyến nghị đánh giá tính chính xác của tập lệnh trên hệ điều hành được sử dụng để tính toán và tính toán lại chúng để đảm bảo rằng các giá trị được tính toán là chính xác. Vụ việc là một ví dụ điển hình cho thấy không chỉ chất lượng của thí nghiệm mà còn cả tính chính xác của việc xử lý dữ liệu thu được trong các chương trình
Điều này đã được sử dụng rộng rãi có thể ảnh hưởng đến kết quả cuối cùng.

Nguồn: opennet.ru

Thêm một lời nhận xét