Другие языки программирования и технологии

Нейросеть и сходство двух файлов.

По какому признаку нейросеть (или что то иное) может определить сходство двух не одинаковых НО похожих файлов? К примеру есть два документа, в одном "12345", в другом "12354", вообще возможно ли найти у этих документов сходство программным путём, необязательно нейросетью? И по какому признаку? Хеш сумма какая нибудь или что то в этом роде... Спасибо!
ET
Evgeniy Tsigankov
717
Нейросеть тут точно не нужна.
Из вопроса непонятно, какая схожесть файлов и что за файлы.
Например, берем 2 одинаковых блокнотовских файла. Расстояние левенштейна нулевое. И в один файл в самом начале вставим одну пустую строку или даже просто пробел. И всё! Левенштейн терпит фиаско.

То есть сначала нужно очень хорошо знать задачу, которую хочешь решать.
Бекетов Михаил
Бекетов Михаил
9 278
Лучший ответ
Нейросеть - это такая структура объектов, которая, грубо говоря, получает на входе кучу чисел, а выдает одно. И если твоя сеть натренирована на сравнение файлов, она тебе и выдаст некий "коэффициент схожести". А дальше уже твое дело решить по этому коэффициенту, достаточно твои файлы похожи или все же не очень.
Ну и можно без нее обойтись, конечно. Есть древняя программка diff, которая сравнивает файлы безо всяких сетей. Есть и более современные и удобные, вроде beyond compare.
Что значит "по какому признаку"? Ты явно не очень понимаешь принципы нейронных сетей. Нейронные сети обучаются сами находить необходимые признаки. В них готовые методики не вкладываются. Это машинное обучение на большом количестве данных. А нейросети тут действительно не нужны, потому что есть алгоритмы, которые хорошо с этим справляются. Не нужно думать, что нейросеть это панацея. Нет, нейронные сети хороши в опр. вопросах, но они имеют множество недостатков.
SU
Saidahmad Usmonov
96 533
в зависимости от того, как конкретно измеряется сходство, здесь возможны разные решения
например, можно посчитать какое-нибудь редакционное расстояние по типу левенштейна, или размер файла минус длина lcs, или количество строк в выводе diff, и т. д. и т. п., а потом сравнить с каким-то пороговым значением (абсолютным или относительно размера файла), можно преобразовать файл в вектор малой фиксированной размерности (например, каким-нибудь локально чувствительным хешированием) и считать скалярку двух векторов и т. д.

нейросеть здесь нафиг не нужна... то есть существует куча способов решать эту задачу и с использованием НС, но если у человека идея "а давайте как-нибудь бахнем здесь нейросеть" появляется первой и единственной, то он не разбирается ни в нейросетях, ни в строковых алгоритмах, и возможно, для начала следует изучить более базовые методы
Beka Seitcoolov
Beka Seitcoolov
36 956
двоичный код наверно всего лишь сканирует
.
хотя вряд ли там же кодировка может быть разная формат
.
но я обычно вижу в плане картинок определение, обучение ИИ
.
а с другими файлами ни разу
Evgeniy Tsigankov Вот именно мне нужен какой то признак который можно перевести в двоичный код и найти сходство у двух признаков схожих файлов
Evgeniy Tsigankov "а с другими файлами ни разу" ах если бы.... (