Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.60/15: Рейтинг темы: голосов - 15, средняя оценка - 4.60
1 / 1 / 0
Регистрация: 30.04.2019
Сообщений: 89

Обработка естественного языка

15.06.2019, 23:14. Показов 3378. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте!

Меня интересует компьютерная лингвистика, которая решает задачи обработки естественного языка. Имею достаточно смутное представление об курсе изучения. Большинство утверждает, что обработки естественного языка - это подзадача машинного обучения, т.е. нужно изучать нейронные сети. С другой стороны существует библиотека для python - nltk, которая не поддерживает нейронные сети. В книге "Natural Language Processing with Python" автор вообще не рассматривает нейронные сети.

Какие же методы используются при обработки естественного языка и что нужно изучать?
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.06.2019, 23:14
Ответы с готовыми решениями:

Обработка естественного языка
Всем доброго времени суток! Делаю учебный пример на тему обработки естественного языка с использованием библиотеки natasha версии...

Обработка естественного языка на Python. Задача на программирование
Здравствуйте! Помогите переписать этот код или же написать полностью новый. Так как моё чудо не проходит по ограничению времени. Заранее...

Задача разбора предложения естественного языка
Здравствуйте! Есть задача написать парсер предложений русского языка. Я взял корпус, написал КС-грамматику, составил дерево разбора....

8
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
15.06.2019, 23:40
Цитата Сообщение от constantin_01 Посмотреть сообщение
подзадача машинного обучения, т.е. нужно изучать нейронные сети.
С чего вы решили, что машинное обучение это только нейронные сети?
ML это прежде всего ... статистика, друг мой. Когда-то machine learning называлось скромно statistical learning. А потом пришли маркетологи и решили что это скучно :-) С тех пор появилась куча красивых "этикеток" типа machine learning, deep learning...
Цитата Сообщение от constantin_01 Посмотреть сообщение
что нужно изучать?
В книгах по компьютерной лингвистике написано что изучать - математику, статистику и лингвистику. Остальное вам преподнесут в готовом виде, завернутым в красивый фреймворк, коих сейчас до кучи для Python.
https://nlpub.ru/Обработка_текста
0
1 / 1 / 0
Регистрация: 30.04.2019
Сообщений: 89
15.06.2019, 23:47  [ТС]
Garry Galler, спасибо большое за сайт! Буду изучать.

Какие перспективы у nlp? Я спрашиваю потому что вижу, что очень мало материала по данному направлению, особенно в русском сегменте интернета, а в вузах выделяется как правило совсем небольшой курс в качестве электива. Кроме того, ни разу не видел, чтобы кого то называли "экспертом в области NLP".
0
Просто Лис
Эксперт Python
 Аватар для Рыжий Лис
5973 / 3735 / 1099
Регистрация: 17.05.2012
Сообщений: 10,791
Записей в блоге: 9
16.06.2019, 07:52
pymorphy2
0
 Аватар для Andrey B
170 / 122 / 61
Регистрация: 06.02.2015
Сообщений: 300
16.06.2019, 10:25
"Большинство утверждает, что обработки естественного языка - это подзадача машинного обучения"

Не совсем корректно. Есть два пути:

1. Более простой - найти качественный корпус (тексты, разобранные или проверенные лингвистами) на которых будете обучать нейронку (не так просто как кажется, но тот же синтаксический анализатор MaltParser универсален). Получите быстрый, приемлемый результат

2. Более качественный и муторный. Придумываете свой велосипед. Если делаете все верно, то получите результат выше чем на первом этапе. Но это очень сложный путь.

Какие перспективы ? Для английского вроде все хорошо в плане морфологического (части речи и морфологические характеристики) и синтаксического (какое слово от какого зависит). Насчет семантического (больший упор на смысл) похуже и этот этап зависит от того, что вы хотите в конце

Для русского языка ситуация хуже. То, что есть в открытом доступе (тот же морфологический анализатор pymorphy2 ) приемлимо в каких-то рамках, но какие это рамки решаете сами. Ну у 80% слов в предложении верно определит часть речи. Как сильно повлияет на результат, то где он ошибся

Качественные продукты либо у Институтов которые их разрабатывают и которым нужно писать запросы, чтобы получить их продукты (Национальный Корпус Русского Языка, РуТез), либо это закрытые коммерческие продукты за которые надо платить (Abbyy)

Каждый понимает описание языка по разному. Например, только для русского языка знаю три корпуса текстов.

Короче говоря, перспективы неплохие, но многое будет зависеть от того, что Вы хотите получить в итоге : вопросно-ответную систему, систему по переводу текстов, систему оценки тональности текстов или еще что-то
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
16.06.2019, 12:00
Цитата Сообщение от constantin_01 Посмотреть сообщение
очень мало материала по данному направлению, особенно в русском сегменте интернета
И не стоит особо надеяться на улучшение в ближайшее время.
По Обработке естественного языка на русском существует один-единственный более-менее современный учебник, да и тот скорей вводно-обзорного характера: Николаев И.С., Митренина О.В., Ландо Т.М Прикладная и компьютерная лингвистика[2016]
+ еще кое-что
Батура,Т.В., Чаринцева М.В Основы обработки текстовой информации[Учебное пособие ,2016, 45 стр.]
Батура Т.В. Математическая лингвистика и автоматическая обработка текстов на естественном языке[НГУ,2016,166 стр.]


Все прочие, выпущенные до этого года - сильно академичны и никак не привязаны к актуальным технологиям применяемым на практике сегодня.
Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
Большакова Е.И., Клышинский Э.С., Ландэ Д.В., Носков А.А., Пескова О.В., Ягунова Е.В АОТ на естественном языке и компьютерная лингвистика[МГИЭМ, 2011,272 стр.]
 Большакова Е.И., Воронцов К.В., Ефремова Н.Э.,Клышинский Э.С., Лукашевич Н.В., Сапин А.С. АОТ на естественном языке и анализ данных[ВШЭ,2017,269 стр.]
 Марчук Ю.Н. - Компьютерная лингвистика[2007,301 стр.]
 Марчук Ю.Н. Проблемы машинного перевода[1983,233 стр.]
 Леонтьева Н.Н. Автоматическое понимание текстов[2006,300 стр.]
 Волкова И.А - Введение в компьютерную лингвистику. Практические аспекты создания лингвистических процессоров[2006,45 стр.]
 Белоногов Компьютерная лингвистика и перспективные информационные технологии[2004,200 стр.]
 Тузов В. А Компьютерная семантика русского языка[2003,390 стр.]
 Кобозева И.М. - Лингвистическая семантика[2000,350 стр.] 
 Васильев Л.М. Современная лингвистическая семантика[1990,179 стр.]
 Баранов А.Н. - Введение в прикладную лингвистику[2001,176 стр.].
 Апресян,Ю.Д.,Богуславский,И.М.,Иомдин, Л.Л. Лингвистический процессор для сложных информационных систем[1992,256 стр.]
 Беляева Лингвистические автоматы в современных гуманитарных технологиях[2007,192 стр.]
 
 Гладкий В., Мельчук И. Элементы математической лингвистики [1969,188 стр.]
Головин Б.Н. Язык и статистика[1970,193 стр.]
Поэтому остается только искать англоязычные публикации и выковыривать что-то полезно из документации по NLP библиотекам.

...Но это не отменяет того, что компьютерный лингвист должен быть прежде всего лингвистом и следовательно знать основы этой области. Иначе - беда, беда.... "знатоков" фреймворков ныне много, но в яндекс\майл или ABBYY берут иных спецов. В последнюю - отбирают прямо на их собственном кафедре компьютерной лингвистики в МФТИ.

Добавлено через 7 минут
P.S. "Нетленки" из зарубежных книг - "библии" NLP
1. Manning, D. Foundations of Statistical Natural Language Processing[700 стр.]
2. Jurafsky Daniel, Martin James H. Speech and Language Processing: An Introduction to Natural Language Processing, Computational Linguistics, and Speech Recognition[2-е издание, 2008, 1030 стр].
0
 Аватар для Andrey B
170 / 122 / 61
Регистрация: 06.02.2015
Сообщений: 300
16.06.2019, 17:01
На деле же Вы ничего сами изобретать с нуля не будете, и будете использовать чужие разработки и чтобы понимать что там происходит помимо документации к этим программам. хотя бы посмотреть книги перечисленные Garry Galler посмотреть стоит.

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

Тузов и Каневский - качественный семантический словарь русского языка, который можно получить.
Иомдин Леонид работал над одним из лучших открытых Синтаксических анализаторов для русского языка ЭТАП-3. Доступен онлаин и его можно использовать.
Лукашевич Н. - разработка тезауруса на русском языке. Его тоже можно получить по запросу.

Плюс в ВШЭ хорошая кафедра компьютерной лингвистики. Там тоже должны быть полезные публикации
0
1 / 1 / 0
Регистрация: 30.04.2019
Сообщений: 89
16.06.2019, 18:17  [ТС]
Andrey B, таким образом, компьютерная лингвистика это знание основных фрэймворков для работы с естественным языком и знание базовых лингвистических понятий и концепций?

Я просто собираюсь писать ВКР по данной теме и ищу места для исследований и разработок, то есть "поле поле непаханное". И желательно чтобы это имело прикладной характер.

Добавлено через 10 минут
Получается так, что нас учат алгоритмам со строками, например, вычисление длины Левенштейна (редакторская правка) или алгоритм Кнута-Морриса-Пратта, а на деле выходит, что работа с языком - это просто умелое сочетание чужих разработок.
0
 Аватар для Andrey B
170 / 122 / 61
Регистрация: 06.02.2015
Сообщений: 300
17.06.2019, 07:09
Мой Вам совет такой. Поговорите с потенциальным научным руководителем.

Если замахнетесь на что-то крупное (сделать свой корпус текстов, свой синтаксический или морфологический анализатор), то за год вряд ли получите хороший результат

Если все же что-то попроще (оценка тональности текста, что-то с использованием приведенных Вами алгоритмов) то вполне себе хорошая академическая работа.

Компьютерная лингвистика специфическая область, где один человек вряд ли сам справится (есть обратные примеры тот же Михаил Коробов сделал вполне качественный анализатор pymorphy2) и приходится пользоваться разработками групп людей если работаете над чем-то крупным, если проект меньше то можно вполне справиться своими силами.

Область действительно огромная и можно найти свою нишу. Так что дерзайте и терпения Вам
2
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.06.2019, 07:09
Помогаю со студенческими работами здесь

Задача 4: Обработка естественного языка
2.1 Вкрапления слов (a) Вам был предоставлен небольшой набор документов в файле nlp_data.json, сопровождающий этому тесту. Напишите...

Перевод естественного языка
Есть задание, в котором даны два текста на русском и немецком языках. Нужно написать программу, которая будет создавать новый файл и...

Обработка естественного языка, определять кто чей брат
Помогите, пожалуйста, с задачей: Генеалогическое дерево задано фактами вида parent(alexei,tolia). parent(alexei,volodia). ...

Перевести с естественного языка на язык предикатов
Переведите с естественного языка на язык логики предикатов Зайцы не всегда глупее лис.

Перевод с естественного языка на язык логики
Переведите с естественного языка на язык логики предикатов: Так как 60 делится на 2 и на 3, то 60 делится на некоторые числа, отличные от...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
Архитектура слоя интернета для сервера-слоя.
Hrethgir 11.04.2026
В продолжение https:/ / www. cyberforum. ru/ blogs/ 223907/ 10860. html Знаешь что я подумал? Раз мы все источники пишем в голове ветки, то ничего не мешает добавить в голову такой источник, который сам. . .
Подстановка значения реквизита справочника в табличную часть документа
Maks 10.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: при выборе сотрудника (справочник Сотрудники) в ТЧ документа. . .
Очистка реквизитов документа при копировании
Maks 09.04.2026
Алгоритм из решения ниже применим как для типовых, так и для нетиповых документов на самых различных конфигурациях. Задача: при копировании документа очищать определенные реквизиты и табличную. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru