В информатике мы обычно реализуем нашу работу в виде алгоритмов и кодов. Поэтому, чтобы сравнивать нашу работу с другими, нам также необходимо применять их подходы.
Но проблема в том, что обычно в каждой области есть недавно опубликованные работы, в которых используются сложные математические методы и утверждается, что они превосходят предыдущие методы. Но некоторые из них трудно реализовать, просто читая статьи; или они не упомянули в документе все необходимые детали для точной реализации своей работы, а также не предоставили доступ к своему коду.
Как мне сравнить свою работу с этими самыми последними алгоритмами, код которых недоступен?
Запрашивать код у авторов, конечно, всегда можно, но, судя по моему личному опыту, это почти никогда не работает (есть причина, по которой они не разместили его в сети на первом месте).
Я не знаю, из какой области компьютерных наук вы работаете, но обычно есть некоторая количественная мера, чтобы определить, какой метод лучше, и эти меры каким-то образом отражены в статье. Это могут быть такие вещи, как время выполнения или кривые точного отзыва для определенных наборов данных.
Если вы хотите сравнить один и тот же набор данных, вы можете запросить у авторов сами числа / графики, а затем построить свои собственные кривые вместе с ними.
Если вы хотите сравнить другой набор данных, вы можете попросить авторов запустить код для вас. По моему опыту, это работает чаще, потому что многие коды не публикуются из-за их беспорядка и необходимости настройки большого количества параметров, поэтому маловероятно, что кто-то еще даст хорошие результаты с ним.
Если у вас есть студенты бакалавриата/магистратуры, которым нужно руководить, вы можете передать им реализацию в виде проекта (хотя вам нужно дать им достаточно времени для этого).
По моему личному мнению, не стоит затрачивать усилий на реализацию метода, который нигде достаточно подробно не описан. Это, вероятно, будет стоить вам неоправданного количества времени, даже не воспроизводя качество, показанное в статье (по разным причинам).
"If you want to compare on a different data set, you can ask the authors to run the code for you."
В этот момент ваша статья содержит результаты, основанные на экспериментах, которые вы не проводили, используя код, которого у вас нет. Что происходит, когда кто-то связывается с вами , пытаясь воспроизвести ваши результаты?Что плохого в том, чтобы быть честным?
Мы сравниваем наш алгоритм с A и с B. Мы хотели бы сравнить также с X, Y и Z, но код для них недоступен.
Если вы публикуете свой код и он дает лучшие измеримые результаты, чем любой другой опубликованный фрагмент кода, вы можете заявить, что он лучший. Для того, чтобы оспорить это, они должны были бы показать более поддающиеся количественному измерению результаты. В науке нам нужно иметь возможность проверять теории, а в компьютерных науках это означает проверку алгоритмов. Рецензирование применимо и к компьютерным наукам.
пользователь2768
Конрад Рудольф