Форум программистов, компьютерный форум, киберфорум
Наши страницы

Непризнанные теории, гипотезы

Войти
Регистрация
Восстановить пароль
 
 
echs
894 / 1090 / 348
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
#1

Программа: почему человек меня не понимает? - Теории

11.12.2016, 14:36. Просмотров 2928. Ответов 203
Метки нет (Все метки)

Речь идет о разговорной программе. Программисты, которые
пишут такие программы, стараются всю работу свалить на
программу. А ведь можно было бы облегчить жизнь и себе и
программе...
...
1. Итак, основой любой диалоговой программы является текстовый
файл. В него пишут фразы пользователя (я для этого использую
буквы верхнего регистра) и после каждой такой фразы или целого
блока фраз на отдельной строке пишется число. Это число указывает
сколько строк (вариантов) есть у программы для ответа.
2. Программа с ИИ должна также запомнить и переработать несколько
(будем говорить конкретно) ТРИ предыдущие фразы пользователя.
3. Вот тут то программист и должен помочь своей программе
Каким образом?
Да очень просто!
Не надо заставлять программу разбирать три фразы пользователя
и потом выяснять, что в них главное, а что мусор...
4. Надо сразу самому программисту после каждой его (а Не программы)
фразы в круглых или иных скобках указывать через пробел СЛОВА,
НЕСУЩИЕ ОСНОВНУЮ СМЫСЛОВУЮ НАГРУЗКУ.
5. А если таких слов нет, то и никаких скобок тоже не надо.
6. Вот здесь программе не потребуется тратить время на разбор
предложений. Имея одно или несколько слов она выберет не просто
ответ, а САМЫЙ ЛУЧШЫЙ ОТВЕТ в параллельной базе данных
....
Вы понимаете, программа сможет делать свои выводы.
пример
Если в трёх предыдущих фразах будут слова "выпить, закусить, на здоровье",
то программа поймет, что пользователя надо поздравить С Новым годом!
...
Ребята, мне будет очень интересно ваше мнение по поводу выше сказанного,
а также Любые мысли, предложения и другое, относящееся к ИИ.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.12.2016, 14:36
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Программа: почему человек меня не понимает? (Теории):

Программа, человек, альтернатива - Искусственный интеллект
Речь идет об разговорной программе с ИИ. Предполагается, что база данных построена так, что фразы пользователя являются ведущими и...

Почему у меня не работает программа? - C++
блин что тут не так? #include <iostream> #include <math.h> using namespace std; const int n=5,m=6; int main() { int i,j; ...

почему у меня программа не работает ..подскажите - Pascal
Задание: Создать в программе Блокнот текстовый файл. Написать программу, которая расшифровывает тестовый файл. Известно, что при...

Почему у меня программа не выводит к во фразе? - Pascal ABC
program f1; uses crt; var k: integer; begin clrscr; writeln('введите переменную к'); writeln ('к не >20'); ...

Функция не понимает меня - C++
Вот попытался написать функцию для подсчета комбинаций "ab" (Читаю книгу, пытаюсь делать упражнения, но застрял что то слишком рано :( ) ...

Помогите! Почему у меня не идёт программа на других компьютерах? - Visual C++

203
Mikhaylo
157 / 117 / 19
Регистрация: 20.09.2014
Сообщений: 993
11.12.2016, 15:30 #2
Ну и тяжелую ты себе задачу поставил... особенно с учетом п.3.
Ну так для оценки: человек за всю свою жизнь наговаривает 10 Гб текста. Ты будешь порядка 10 гигов текста строчить да еще выделять основные слова? И ради чего? Чтобы получить дебильно-ассоциативную программу?
Ну остынь уж, где-то в твоем подходе глубокий прокол...
1
echs
894 / 1090 / 348
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
11.12.2016, 16:48  [ТС] #3
Mikhaylo
Человек на самом деле говорит гораздо меньше, чем
Вы насчитали. В самом деле, в газете редко бывает
более 5 000 различных слов. Это у Пушкина за всю
его кипучую жизнь во всех произведениях насчитали
28 000 слов. А реально, самый словообильный человек
через 5 минут начинает повторяться, а через 10 минут
он выговаривается (в смысле говорит одно и тоже)
Я могу с спокойной совестью утверждать, что в мире
нет человека, который бы за 100 лет сказал 1 миллион
различных фраз!! (язык отвалится)

все повторяется, повторяется, повторяется, ...
0
Mikhaylo
157 / 117 / 19
Регистрация: 20.09.2014
Сообщений: 993
11.12.2016, 17:52 #4
Не принижайте богатство разговора. Ничего не выйдет из Вашего словаря.
2
echs
894 / 1090 / 348
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
11.12.2016, 18:02  [ТС] #5
Mikhaylo
Но вы все-таки не будете отрицать, что многие люди
говорят штампами. Даже на форуме. А вне его тем более...
0
Mikhaylo
157 / 117 / 19
Регистрация: 20.09.2014
Сообщений: 993
11.12.2016, 18:15 #6
Ну штампами. Ну коллекционируйте штампы. Заколебетесь разгребать хлам. Может автоматизировать процесс обучения?..
1
echs
894 / 1090 / 348
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
11.12.2016, 18:21  [ТС] #7
Mikhaylo
Вы сейчас подали хороший совет. Рано или поздно
я этим займусь всерьёз. А вот как автоматизировать
процесс обучения? Ну приведите хотя бы маленький
пример. Из маленьких примеров выростают большие
программы!
0
Shamil1
Модератор
1623 / 1048 / 192
Регистрация: 26.03.2015
Сообщений: 3,890
12.12.2016, 13:52 #8
Цитата Сообщение от echs Посмотреть сообщение
Вот тут то программист и должен помочь своей программе
Нет. Это программа должна помогать программисту. Иначе, зачем она вообще нужна?
1
echs
894 / 1090 / 348
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
12.12.2016, 14:17  [ТС] #9
Shamil1
Мне кажется, что программа (при помощи программиста)
будет работать быстрее. Собственно говоря, кто?, как не
человек может решить. Какие слова в предложении
важные, а какие нет? Все-равно они должны быть тем или
иным образом заданы (списком например)
0
Shamil1
Модератор
1623 / 1048 / 192
Регистрация: 26.03.2015
Сообщений: 3,890
12.12.2016, 16:22 #10
Цитата Сообщение от echs Посмотреть сообщение
Мне кажется, что программа (при помощи программиста) будет работать быстрее.
А, по-моему, медленней.
1. Вместо того, чтобы обучаться, она будет ждать помощи от программиста. За сутки программист сможет наговорить 1Мб текста. Программа способна проанализировать этот текст за 1 секунду. (цифры взяты с потолка)
2. Программист - человек, а людям свойственно ошибаться. Одна ошибка программиста может перечеркнуть неделю или даже месяц обучения.
2
Mikhaylo
157 / 117 / 19
Регистрация: 20.09.2014
Сообщений: 993
12.12.2016, 16:26 #11
Цитата Сообщение от echs Посмотреть сообщение
Мне кажется, что программа (при помощи программиста)
будет работать быстрее.
Цитата Сообщение от Shamil1 Посмотреть сообщение
А, по-моему, медленней.
Да че говорить, вон специалисты по машинному обучению настроили стандартную нейронную сеть, а она сама все делает. Значит все-таки Шамиль прав - и надо учить машинное обучение.
Машинное обучение - это наука, которая по сути объясняет, что нужно дать программе, чтобы она начала самостоятельно обучаться и работать.
2
echs
894 / 1090 / 348
Регистрация: 23.10.2013
Сообщений: 5,076
Записей в блоге: 8
12.12.2016, 17:09  [ТС] #12
Mikhaylo
Вы поймите, мне приходится писать программу на том,
что есть. Поэтому нейронная сеть и многое другое, как
вы верно заметили, делают специалисты. А я только учусь...
0
Ermit
Нарушитель
29 / 14 / 0
Регистрация: 25.04.2017
Сообщений: 209
25.04.2017, 16:26 #13
Цитата Сообщение от Mikhaylo Посмотреть сообщение
Ничего не выйдет из Вашего словаря.
Есть более общая формула. Ничего у вас не получится. Годится для любых начинаний.
0
angpe
0 / 1 / 0
Регистрация: 02.08.2017
Сообщений: 59
Завершенные тесты: 1
02.08.2017, 17:46 #14
Цитата Сообщение от echs Посмотреть сообщение
Mikhaylo
Вы поймите, мне приходится писать программу на том,
что есть. Поэтому нейронная сеть и многое другое, как
вы верно заметили, делают специалисты. А я только учусь...
Как-то это несерьезно. Тема ии для гугла или мклкого-мягкого. Зачем вам в нее лезть?
0
сахатый
32 / 13 / 2
Регистрация: 12.10.2015
Сообщений: 75
Завершенные тесты: 2
04.08.2017, 11:39 #15
Пока что трушный NLP – не полностью решенная задача машинного обучения, попытки конечно имеются и в большом количестве, но пока не блеск. ИМХО нужно отталкиваться, не от низкоуровневых статистик, вроде пропорций содержания слов\словосочетаний в предложении\тексте, но работать над семантикой.

О семантике много говорят но мало кто понимает что это, хотя это вполне простая сущность\отношение, семантическая связь подобна связи указателя(ссылки, адреса в памяти) и значения записанного в этой ячейки\ах, предложение\фраза\слово – указатель, а указываемый объект\структура – значение. Вначале нужно понять\интерпретировать указатель, то есть перейти по ссылке и прочитать значение, это может быть физический объект(ты), структура, сцена, концепция, как есть, или с задачей\вопросом которую нужно разрешить. Тут важно не упустить тонкий момент, вы работаете уже не с указателями(ссылками) но с значениями(объектами), а только результат затем интерпретируете снова в слова, указатели, вербализуете. На мой взгляд, это самое важное, что упускают большинство спецов по NLP.

Итак… Как же перейти от указателя к значению? Легко сказать, но совсем не тривиально реализовать, первое что в голову приходит это каторжный труд по ручной формализации языка в алгоритмы интерпретации, построения сцен по словесному описанию, нужны орды лингвистов и программистов и это будет проект их всей жизни с неопределенным результатом и всю эту работу нужно будет проделывать для каждого языка, а возможно даже для культуры и субкультуры. Как то это не впечатляет и причем тут ML???

Второй путь нужно учить наш ML самому строить значения(образы) по ссылкам(словесному описанию), мы называем это ПРЕДСТАВЛЯТЬ, ИМХО представление – тот самый важный недостающий компонент в NLP, превращающий его в парсинг и сухой формальный вывод, который как известно замкнут и не полон. По сути нам нужно иерархически декомпозировать фразу в сцену из объектов, то есть понять и представить, в представлении решить задачу и затем описать это, вербализовать.

Технически, с классификацией иерархических структур, прекрасно справляются CNN, можно сказать, что они могут «представлять», также есть попытки вербализации представлений CNN, когда описываются простые сцены, «яблоко лежит на столе» и тп. Это прекрасное начало! Принцип верен! От этого не далеко до продвинутого животного интеллекта, нужно только на 2-3 порядка масштабироваться…

Но как перейти к математической абстракции??? Как научить ответчать на вопрос «сколько яблок»?(позже отвечу если кто не догатается)
0
04.08.2017, 11:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.08.2017, 11:39
Привет! Вот еще темы с ответами:

Ошибка в коде или компилятор не понимает меня? - C++
Добрый день. Изучаю, с недавнего времени, с++ по книге Джесса Либерти "С++ за 21 день". Использую компилятор Dev-C++. И как ни странно...

Почему VC++ не понимает cout?? - C++
Помогите новичку!! При компиляции win32 console application VC++ дает 3 ошибки на следующий фрагмент #include <iostream.h> { ... ...

Почему internet exsplorer не понимает - HTML, CSS
Привет всем кто может помоч с такой проблемой internet exsplore не понимает <a Href="1.htm" target="1"><input name="vai" type="button"...

Почему FileListBox не понимает путь? - Visual Basic
Отчего может быть такой глюк: я указываю путь в FileListBox, но он не показывает список файлов! Такое случается не всегда, к примеру, если...


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

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru