Skip to content

Signals Processing and Interpretation: iteration 1#1

Closed
zuevval wants to merge 12 commits into
masterfrom
main
Closed

Signals Processing and Interpretation: iteration 1#1
zuevval wants to merge 12 commits into
masterfrom
main

Conversation

@zuevval
Copy link
Copy Markdown
Member

@zuevval zuevval commented Mar 20, 2021

Этот Pull Request идёт вместе с braille-systems/AngelinaReader / PR #3

Прочесть про работу и про эти Pull Request'ы можно в документе report_01_20_mar.md

Copy link
Copy Markdown
Collaborator

@NikitaS4 NikitaS4 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Проделана большая работа по сбору данных и их разметке, что очень важно для обучения нейросети. Данные соответствуют заявленному описанию и требованиям

@mitenevav
Copy link
Copy Markdown
Collaborator

Дублирую и в этот пр
Появился вопрос по постановке задачи. Одним из пунктов было уменьшить "Чувствительность к повороту листа в горизонтальной плоскости". Казалось бы повернув на 180 градусов, получиться другая буква. Тут наверно стоило бы ввести ограничение по углу, или же указать какие-нибудь характерные черты поворота (если такие имеются).
Так же было тяжело бродить по двум репозиториям и разбираться с таким большим количеством файлов, не смог детально разобраться в структуре всего этого.
В целом же проект понравился, проделан большой объем работы. Очень полезное приложение.

@zuevval
Copy link
Copy Markdown
Member Author

zuevval commented Mar 27, 2021

Дублирую и в этот пр

Мне кажется, можно было не дублировать.
Ответил на оригинал комментария.

@DanilPestryakov
Copy link
Copy Markdown
Collaborator

"местами проведён рефакторинг (например, внутренним функции в модуле validate_retinanet даны названия, начинающиеся с _)"
возникает вопрос целесообразности данного шага. действительно, в питоне это является хорошим тоном. однако при таком подходе могут возникнуть проблемы с вызовом типа func._internal_func(some_args). так тоже никто не делает. но все же надо быть аккуратнее с такими вещами. потому что сейчас _ и __ вначале негласно ассоциируются с модификаторами доступа (был уже такой опыт и очень неприятный на работе)

@DanilPestryakov
Copy link
Copy Markdown
Collaborator

"Недавно я узнал, что Илья Геннадиевич Оводов использовал при разметке своего датасета AngelinaDataset более слабую нейросеть, обученную на маленькой выборке, после чего вручную корректировал её ошибки. Вероятно, следует попробовать что-то такое же."
Да, валидный подход. Лучше обучаться на малом датасете и доразмечать. Потом на нем можно сделать переобучение и закинуть датасет побольше, но быть готовым к тому, что его тоже придется править ручками. Так порционно увеличивая порционность данных ты сможешь обучить сеть достаточно неплохо. Хорошо тут не совсем подходящее слово, но неплохо

@DanilPestryakov
Copy link
Copy Markdown
Collaborator

Не хочется писать, что проделана огромная работа. Потому что это и так понятно.
Так как проект правда большой, а времени смотреть его правда мало, то я, не кривя душой, могу сказать, что лишь посмотрел readme и бегло датасет. (К тому же моя домашняя машина все равно не смогла бы потянуть такой проект у себя, увы). Я плохо знаком со спецификой шрифтов Брайля, за тем исключением, что ты уже описал в файле. Но мне кажется, что стоит посмотреть куда-то в сторону технологии T9, но для шрифтов Брайля. Не знаю, реализовано это где-то и будет ли удачной данная идея, но я предлагаю вероятностный подход к распознаванию и интерпретации. Да, часть данных у неизбежно будет потеряна, однако даже с тем, что уцелеет, можно вполне себе работать. К тому же каждая буква - это определенный набор точек по сути. Вопрос лишь в том, насколько влияют углы поворота на интерпретацию. В общем, это мое чисто беглое мнение...

@zuevval
Copy link
Copy Markdown
Member Author

zuevval commented Mar 30, 2021

могут возникнуть проблемы с вызовом типа func._internal_func(some_args)

Может, я неверно выразился, имелись в виду не конструкции вида

def f():
   def _g():
      pass

а просто функции, которые не импортируются из других файлов, используются только в validate_retinanet.

@zuevval
Copy link
Copy Markdown
Member Author

zuevval commented Mar 30, 2021

стоит посмотреть куда-то в сторону технологии T9, но для шрифтов Брайля

@DanilPestryakov пока что не очень понял идею.
Интерпретация распознанного - конечно, отдельная задача из класса NLP.
Её Илья частично решил, но там ещё есть проблемы с короткими наборами знаков, например, отдельно стоящие номера страниц иногда распознаются плохо.

@zuevval zuevval closed this May 18, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants