Недавно я смотрел, играя с тензорным потоком, dnns и т. Д. Теперь я пытаюсь реализовать что-то более серьезное, поиск информации из коротких предложений (инструкции врача). К сожалению, набор данных, который у меня есть, как всегда, довольно «грязный». Поскольку я пытаюсь использовать вложения слов, мне действительно нужны «чистые» данные. Возьмите один пример: «Возьмите два дня в день». Между таблеткой и каждой из них отсутствует пробел. Я реализую «улучшитель токенизатора», чтобы посмотреть на каждое предложение и предложить новую токенизацию, основанную на совместной вероятности каждого слова в предложении, учитывая частоту терминов в целом документе (tf). Поскольку я делал это сегодня, мне пришла в голову мысль: зачем писать субоптимальное решение этой проблемы, когда я могу использовать мощные алгоритмы обучения, такие как сети Lstm, чтобы сделать это для меня. Однако на сегодняшний день у меня есть только чувство, что на самом деле можно это сделать. Как мы знаем, чувства не лучше, когда речь идет о создании таких сложных проблем. Я не знаю, с чего начать: какой должен быть мой тренировочный набор и цель обучения. Я знаю, что это широкий вопрос, но я знаю, что есть много блестящих людей с большим знанием о тензорпотоке и нейронных сетях, поэтому я уверен, что кто-то либо уже решил подобную проблему, либо просто знает, как подойти к этой проблеме. Любые указания приветствуются, я не исключаю, что вы, конечно, решите это для меня :) Besos и все лучшее для сообщества тензорного потока :)Lstm, чтобы улучшить токенизацию
ответ
Имея ту же проблему. Я решил это, используя сеть уровня символов. В основном я переписал Character-Aware Neural Language Models, выбил все «слова» -элементы и просто остался с уровнем качества.
Данные обучения: Я взял данные, которые у меня были, как бы грязные, использовал грязные данные в качестве целей и сделал их еще более грязными для создания входных данных.
Значит, ваш «Возьмите два дня в день», так как во многих случаях у вас есть чистая и аналогичная фраза, например. «Возьмите одну таблетку каждое утро», что с упомянутым режимом будет служить целью, и вы тренируете сеть на разрушенных входах, таких как «Take ae pileach mornin»
Спасибо, я попробую этот подход! На данный момент я просто закодировал решение, чтобы найти правильные слова внутри слов, распознанных как орфографические ошибки pyenchant.checker.SpellCheck – mhnatiuk
- 1. Изменить NLTK word_tokenize, чтобы предотвратить токенизацию скобок
- 2. TensorFlow: LSTM поверх другого LSTM
- 3. Распечатать токенизацию строки
- 4. Поддерживает ли корпорация токенизацию?
- 5. Почему мой LSTM стабилизируется, чтобы исправить точку?
- 6. Чтобы улучшить точность Tesseract
- 7. LTSM в LSTM (вложенной) LSTM (вложенной)
- 8. Как улучшить мой код, чтобы улучшить качество видео?
- 9. TensorFlow: Помните состояние LSTM для следующей партии (stateful LSTM)
- 10. Как сделать токенизацию строки в Javascript?
- 11. Как разбить слова и цифры, используя токенизацию
- 12. LSTM NN: распространение вперед
- 13. LSTM network learning
- 14. Solr/Lucene: возможно, что строки имеют токенизацию?
- 15. Как сделать токенизацию этой строки в Ruby?
- 16. Внедрение Stateful LSTM
- 17. Когда состояние LSTM сбрасывается
- 18. One to One LSTM
- 19. Понимание состояния LSTM
- 20. Тензорный поток: LSTM со скользящим средним весов другого LSTM
- 21. Num_steps LSTM in Tensorflow
- 22. LSTM пример с MNIST
- 23. Deeplearning4j LSTM размер выхода
- 24. TensorFlow LSTM Generative Model
- 25. Ошибка Keras LSTM
- 26. Keras stateful LSTM error
- 27. скорость обучения в LSTM
- 28. Обучение LSTM в факеле
- 29. LSTM с rnn cuda()?
- 30. Реализация LSTM с глазок
Нормализация текста также является трудной проблемой. Из вашего примера, может ли это работать программа проверки орфографии? – Aaron
Только тот, который контекстно-зависим в отношении моего набора данных. Я закодировал решение, которое работает достаточно хорошо, опубликует как предлагаемый ответ – mhnatiuk