Python betiğindeki bir kusur, 100'den fazla kimya yayınında hatalı sonuçlara yol açabilir

Hawaii Üniversitesi Yüksek Lisans Öğrencisi bulduğum hesaplamalar için kullanılan Python betiğinde sorun kimyasal kaymaYöntemi kullanarak sinyallerin spektral analizi sırasında incelenen maddenin kimyasal yapısını belirleyen nükleer manyetik rezonans. Bir yüksek lisans öğrencisi, profesörlerinden birinin araştırma sonuçlarını doğrularken, aynı veri seti üzerinde farklı işletim sistemlerinde bir komut dosyası çalıştırırken çıktının farklı olduğunu fark etti.

Örneğin, test edilen veri kümesi için macOS 10.14 ve Ubuntu 16.04'te çalıştırıldığında komut dosyası ihanete uğramış yanlış değer 172.4 yerine 173.2. Komut dosyası yaklaşık 1000 satır kod içeriyor ve 2014'ten beri kimyagerler tarafından kullanılıyor. Kodun incelenmesi çıktının hatalı olduğunu gösterdi şartlandırılmış farklı işletim sistemlerindeki dosyaları sıralarken ortaya çıkan farklılıklar. Komut dosyasının yazarları işlevin "küre ()" her zaman dosyaları ada göre sıralanmış olarak döndürür, oysa glob belgeleri çıktı sırasının garanti edilmediğini belirtir. Çözüm, glob() çağrısından sonra list_of_files.sort() öğesinin eklenmesiydi.

Python betiğindeki bir kusur, 100'den fazla kimya yayınında hatalı sonuçlara yol açabilir

Keşfedilen sorun, kimya üzerine 100'den fazla yayının doğruluğu konusunda şüphe uyandırdı; bunların sonuçları, senaryo tarafından hesaplanan kimyasal kaymaya dayanarak yapıldı. Komut dosyasının kullanıldığı çalışmaların kesin sayısı bilinmiyor, ancak koduyla birlikte yayınlara 158 makalede atıf yapıldı. Bu eserlerin yazarlarına, hesaplanan değerlerin doğru olduğundan emin olmak için hesaplamalar için kullanılan işletim sistemleri üzerindeki scriptin doğruluğunu değerlendirmeleri ve yeniden hesaplamaları önerilmektedir. Olay, yalnızca deneyin kalitesinin değil, aynı zamanda elde edilen verilerin programlarda işlenmesinin doğruluğunun da mükemmel bir örneğidir.
Bu yaygın olarak kullanıldığında nihai sonucu etkileyebilir.

Kaynak: opennet.ru

Yorum ekle