Дискретный анализ
Про улучшение картинки, про которое тут:
https://tjournal.ru
Исходники качать тут:
https://github.com/alexjc/neural-enhance
Первое, что тут надо сказать, что ни к каким нейронам это отношения не имеет. Для красивости можно сказать, что дороги это кровеносная система города, но к биологии это отношения не имеет.
По исходникам на экзотическом языке… Дело, что называется, вкуса. Если скачать и поставить компилятор он, скорее всего, сделает EXE который можно будет запускать и получать улучшенные картинки (запускать программы и Web приложение может). Переписать сходу на другой язык, думаю, не получится. У него довольно специфический набор внутренних (которые в библиотеках языка) функций. А если пишут, то рассчитывают на стандартный набор. Не факт, что написание своих именно таких функций – оптимальное решение.
Это, наверное, по нему (Python) хороший справочник:
http://lasagne.readthedocs.io/en/latest/user/installation.html
… Преимущества именно этого языка тоже не возьмусь назвать.
В этой ситуации логичнее брать описание алгоритма, чем копаться в текстах. Тем более что сами по себе тексты в таких алгоритмах трудны для понимания.
Ссылки на статьи там даны, но пусть и тут будут хотя бы одна:
https://arxiv.org/abs/1609.05158
Вот тут надо приложить интеллектуальное усилие и попытаться понять, что они тут делают:
С конспектом перед экзаменом делают примерно то же самое. Тут, разве что надо ещё с непонятного языка перевести. Но это и в google можно засунуть. Раньше было сложнее.
Теперь про то, что это. Это так называемый дискретный анализ.
Почти все природные процессы описываются гладкими функциями:
Даже если машина очень быстро разгоняется это будет выглядеть как гладкая функция, (хоть и быстро растущая).
А дискретная функция выглядит так:
Т.е нечто с углами и ступеньками. Теоретически это даже проще, а практически весь стандартный математический аппарат работать с таким не умеет. Он для другого создавался.
Потому эту экзотику и вынесли в отдельную науку – дискретный анализ. Основное, где такое бывает это компьютер. Последовательность нулей и единиц нечто ущербное даже по дискретным меркам, т.е это функция принимающая только два значения, и выглядящая примерно так:
Значений мало, зато компьютеров и того, что на них можно делать много. К тому же множество кодов букв текста это вполне себе дискретное множество. Потому дискретный анализ стал неким описанием компьютерных алгоритмов типа того, который улучшает картинки.
Имеется какой-то массив байт. Например набор букв в тексте. Я применяю к этом массиву байт некий алгоритм и меняю исходный набор байт на конечный. Не важно, что я делаю, сортирую слова в массиве, шифрую текст или улучшаю картинку. Важно, что идёт преобразование информации по некому алгоритму и с математической точки зрения это всего лишь получение некого Y = F(X), где F – функция (алгоритм), X – исходные данных, а Y – то, что получится в результате. При этом математика тут только в виде идеологии, т.е того самого Y = F(X). Внутри там просто описание конкретных алгоритмов для конкретных задач.
Для почитать например Романовский «Дискретный анализ»:
https://vk.com/wall-43948962_26508
Романовский это зав.кафедрой Исследования операций:
http://www.math.spbu.ru/rus/apmath/97-operations-research.html
Есть у меня подозрение, что «нейронная сеть» это что-то типа неориентированного дерева:
… какой-нибудь его подвид так назвали.
Просто для примера то, чем занимается дискретный анализ со строками (которые как и картинки – последовательности байт):
Это я сразу пытаюсь объяснить, почему я не хочу этим заниматься. Я как-то привыкла использовать это всё в виде уже написанных функций стандартных библиотек. Понятно, что поиск подстроки в строке тоже кто-то писал. И скорее всего есть более и менее быстрые способы это сделать. Но есть же и люди, которые с удовольствием занимаются именно этим. Алгоритм с картинкой – замечательная тема для какого-нибудь курсовика. Вот там и надо это заказать. Потому что там это кто-то с удовольствием сделает а всем польза будет. Я не помню, учили меня этому или нет но меня это как-то не заинтересовало.
В учебнике не всё, что на эту тему придумали. На самом деле нарисовать прямую линию на экране это уже сложная задача. Потому, что на экране компьютера не действует классическая геометрия. В геометрии точка это нечто бесконечно малое. А на экране точка это квадрат, к тому же по меркам бесконечно малых огромный. И линии там нет. А если место, где будет проходит линия, т.е где должен быть окрашен квадрат. Вычислять по теореме Пифагора можно, то это будет очень долго. Потому и тут есть специальные алгоритмы для работы с этой специфической и тоже дискретной реальностью:
Алгоритм рисования линии
Другое дело, что к улучшению качества GPS сигнала это отношения, по-моему, не имеет. Потому, что это такие инструменты для работы с экзотической дискретной средой внутри компьютера, с теми самыми квадратами, которые не точки. Не знаю, насколько это может быть использовано для вполне природной задачи, описывающей вполне природное перемещение в гладком пространстве.
По-моему, с этим, всё-таки, сюда:
http://www.math.spbu.ru/comp_math/
…приближённые методы, сплайновая аппроксимация и т.д.
Хотя, могу ошибаться.
|