GotAI.NET

Форум: Проблемы искусственного интеллекта

 

Регистрация | Вход

 Все темы | Новая тема Стр.1 (4)След. > >>   Поиск:  
 Автор Тема: Реальный алгоритм ИИ
Михайло
Сообщений: 2366
Реальный алгоритм ИИ
Добавлено: 31 мар 18 22:39
Изменено: 31 мар 18 22:40
Ниже будет описание того, как примерно сделана Яндекс-Алиса и т.п.

Мы должны взять какой-нибудь алгоритм машинного обучения MLalg. Это может быть нейронная сеть или какой-нибудь случайный лес. Такие объекты содержат обычно две функции:
MLalg.train() - обучение алгоритма
MLalg.predict() - собственно работа алгоритма по предсказанию
Вау! Вы так много узнали, но это ещё не всё.

Алгоритм ИИ:

1 MLalg.train(x_train,y_train)
2 y_predicted = MLalg.predict(x_real)
3 MLalg.train(x_real,y_real)
4 goto 2


Важно пояснить переменные:
x_train, y_train - пара обучающей выборки, которые могут быть скормлены объекту MLalg в лаборатории (как показывают научно-фантастических фильмах)
x_real - реальные значения, которые поступают на рецепторы ИИ
y_predicted - предсказанное значение, которое следует подать на эффекторы ИИ
x_real, y_real - пара реальной выборки. До того, как событие произошло, y_real неизвестно, оно заменяется y_predicted. После того, как событие произошло, y_real стало известно, следует обучиться на этом примере.

Алгоритм работает непрерывно.
[Ответ][Цитата]
гость
46.165.230.*
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 7:17
Цитата:
Автор: Михайло

Такие объекты содержат обычно две функции:
MLalg.train() - обучение алгоритма
MLalg.predict() - собственно работа алгоритма по предсказанию
train и predict - хуёвые имена методов, позорные, лоховские, в нормальных библах называют fit и decide, на худой конец learn и compute никакой спец по ML не различает прогнозирование от регрессии\классификации и вообще не любит использовать это слова "предсказывать", оно больше из шаманств лохофорексных автоматических торговых стратегий и детских фантазий Хокинса про "память+прогноз" нежели серьёзного машинного обучения где студенты САМИ пишут случайный лес и многослойный персептрон в качестве домашнего задания
[Ответ][Цитата]

Сообщений: 105
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 7:28
Изменено: 01 апр 18 7:44
на моей С++ либе оно выглядит так так:


предлагаю померятся пиписьками у кого интерфейс круче, для разных ML примеров можно чужие библиотеки у кого пока силенок маловато на свои
[Ответ][Цитата]
гость
185.56.80.*
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 8:26
мне нравится шотган, там проффесионально

//CDenseFeatures (here 64 bit floats aka RealFeatures) and CMulticlassLabels are //created from training and test data file

auto features_train = some<CDenseFeatures<float64_t>>(f_feats_train);
auto features_test = some<CDenseFeatures<float64_t>>(f_feats_test);
auto labels_train = some<CMulticlassLabels>(f_labels_train);
auto labels_test = some<CMulticlassLabels>(f_labels_test);
//Combination rules to be used for prediction are derived form the CCombinationRule class. Here we create a CMajorityVote class to be used as a combination rule.

auto m_vote = some<CMajorityVote>();
//Next an instance of CRandomForest is created. The parameters provided are the number //of attributes to be chosen randomly to select from and the number of trees.

auto rand_forest = some<CRandomForest>(features_train, labels_train, 100);
rand_forest->set_combination_rule(m_vote);
//Then we run the train random forest and apply it to test data, which here gives CMulticlassLabels.

rand_forest->train();
auto labels_predict = rand_forest->apply_multiclass(features_test);
//We can evaluate test performance via e.g. CMulticlassAccuracy as well as get the //“out of bag error”.

auto acc = some<CMulticlassAccuracy>();
auto oob = rand_forest->get_oob_error(acc);
auto accuracy = acc->evaluate(labels_predict, labels_test);
[Ответ][Цитата]
гость
31.185.104.*
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 8:54
Цитата:
Автор: гость

мне нравится шотган, там проффесионально

auto features_train = some<CDenseFeatures<float64_t>>(f_feats_train);
согласен, сейчас не модно пользоваться круглыми скобками в с++ только угловыми, иначе не проффесионал, код также профи не раскрашывают, это позор
[Ответ][Цитата]

Сообщений: 105
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 10:00
Цитата:
Автор: гость

согласен, сейчас не модно пользоваться круглыми скобками в с++ только угловыми, иначе не проффесионал, код также профи не раскрашывают, это позор
Подозреваю Вы глумитесь, забавляетесь, но если нет, то Вы полностью не правы, злоупотребеление угловыми скобками пройдет, также как раньше дефайнами и юсингами, для бессмысленного переименовывания, просто потому что "все так делают", самое главное это УДОБСТВО ИСПОЛЬЗОВАНИЯ и ПОНЯТНОСТЬ, угловые скобки вообще ИМХО не место для параметров, они чисто для шаблонов, зря вообще туда сделали возможной параметризацию, лишнее оно
[Ответ][Цитата]
Misteryest
Сообщений: 1044
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 14:38
Изменено: 01 апр 18 15:03
Убожество содержания вы оправдываете красивой формой именования переменных? да мой племянник программирует интереснее.
Вот к этому и сводятся навыки современных "программистов". 10 строчек, два прихлопа, три притопа, ждем чуда.
Ну, ждите))
[Ответ][Цитата]

Сообщений: 105
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 15:11
Цитата:
Автор: Misteryest

Убожество содержания вы оправдываете красивой формой именования переменных? да мой племянник программирует интереснее.
Вот к этому и сводятся навыки современных "программистов". 10 строчек, два прихлопа, три притопа, ждем чуда.
Ну, ждите))
Поясните плиз, в чем "убожество содержания" и покажите как же Ваш племянник ML программирует "поинтереснее", в данном случае речь не про мистический ИИ, а про интерфейс ML инструментов
[Ответ][Цитата]
Misteryest
Сообщений: 1044
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 15:28
Цитата:
Автор: ●

Поясните плиз, в чем "убожество содержания"

Собственно сообщение скорее было обращено к автору топика.
Но убожество, оно убожество и есть, его под коврик не спрячешь и умными словами не замаскируешь. Чтобы вас немного успокоить поясню, что я к любому программному продукту, содержащему меньше 5000 строк в коде отношусь с пренебрежением, поэтому мое возмущение и очевидно.
[Ответ][Цитата]
victorst
Сообщений: 821
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 17:00
Цитата:
Автор: Misteryest
Чтобы вас немного успокоить поясню, что я к любому программному продукту, содержащему меньше 5000 строк в коде отношусь с пренебрежением, поэтому мое возмущение и очевидно.

Кто-то любит прозу - пишет программные романы, а кто-то - поэзию.
"Краткость- сестра таланта" А.П.Чехов.
[Ответ][Цитата]

Сообщений: 105
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 17:06
Цитата:
Автор: Misteryest


Собственно сообщение скорее было обращено к автору топика.
Но убожество, оно убожество и есть, его под коврик не спрячешь и умными словами не замаскируешь. Чтобы вас немного успокоить поясню, что я к любому программному продукту, содержащему меньше 5000 строк в коде отношусь с пренебрежением, поэтому мое возмущение и очевидно.
Сразу видно что от программирования Вы далеки как мой трёхлетний сын, так как только профан может рассуждать так о 5к строках не понятно какого кода, когда как например бэк-проп в MLP 50 строк и над ним корпела вся цивилизация 20 лет, выходит по Вашему какая то вёрстка или GUI сгенерированное автоматом в 5к строк круче алгоритма бэкпропа в 50? Можите не отвечать, это риторический вопрос

PS: За последние 5 лет я написал более 60к строк кода, на разных языках, однако более половины своего дохода(за 5 лет) получил всего за 200 строк одного очень замысловатого алгоритма, вышло по ~1к$ за строчку, мучился примерно год, так что я давно не меряю строчками ценность кода и Вам не советую.
[Ответ][Цитата]
Misteryest
Сообщений: 1044
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 17:32
Цитата:
Автор: ●

Сразу видно что от программирования Вы далеки как мой трёхлетний сын


Не вам судить о моей близости или далекости, поскольку ни мы с вами не знакомы, ни вы не знакомы с плодами моего труда. Так же глупо измерять успешность кода количеством долларов. Честно говоря я еще не считал сколько там у меня заработалось посредством моего кода. Даже не задумывался об этом, вероятно подобные суммы, но я к этому не отношусь как к основному средству заработка. Моего мнения вы однако не измените, поскольку 98% местных "разработчиков" не обладают ни граммом фантазии и рад за вас, если вы попадаете в оставшиеся 1-2%.
[Ответ][Цитата]
Misteryest
Сообщений: 1044
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 17:52
Цитата:
Автор: victorst

Кто-то любит прозу - пишет программные романы, а кто-то - поэзию.
"Краткость- сестра таланта" А.П.Чехов.


Покойный профессор философии Федор Иванович Селиванов говорил так: "Краткость не сестра таланта. Эта фраза просто очень нравится идиотам". И я с ним солидарен. Впрочем, пишите поэзию или еще лучше - хокку. Останется больше места тем, кому на самом деле есть чем заняться.
[Ответ][Цитата]

Сообщений: 105
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 17:57
Цитата:
Автор: Misteryest
Не вам судить о моей близости или далекости, поскольку ни мы с вами не знакомы, ни вы не знакомы с плодами моего труда. Так же глупо измерять успешность кода количеством долларов. Честно говоря я еще не считал сколько там у меня заработалось посредством моего кода. Даже не задумывался об этом, вероятно подобные суммы, но я к этому не отношусь как к основному средству заработка. Моего мнения вы однако не измените, поскольку 98% местных "разработчиков" не обладают ни граммом фантазии и рад за вас, если вы попадаете в оставшиеся 1-2%.
Есть недостатки у бабла как метрики профессионализма кодера, но при равных прочих ИМХО лучше нет, я собственно не о своих зароботках, а об их крайней не равномерности от кода к коду, очевидно 80% кода вообще ничего не стоят, можно сказать что сам по себе просто код мало что стоит, если он не решает какую то важную проблему бизнеса и Вам удалось в этом убедить того кто может заплатить, однако хороший программист не кодит только по ТЗ за бабло, он как котёнок, постоянно что то тестирует, играется, что то изобретает и проверяет свои идеи, только так набивается рука до уровня "мастера кунг-фу", если только делать то что скажут, обычно такие кодеры даже на собственную квартиру не наскребают, это должно быть и профессией и хобби.
[Ответ][Цитата]
Misteryest
Сообщений: 1044
На: Реальный алгоритм ИИ
Добавлено: 01 апр 18 18:15
Изменено: 01 апр 18 18:16
Цитата:
Автор: ●
хороший программист не кодит только по ТЗ за бабло, он как котёнок, постоянно что то тестирует, играется, что то изобретает и проверяет свои идеи, только так набивается рука до уровня "мастера кунг-фу"


Вот с этим соглашусь.
Собственно почему я полез в эту тему; фигурально выражаясь, поскольку посчитал что под теми небоскребами которые сейчас предложены как данность, и которые предлагается двигать 2-3 операторами, - чего-то под фундаментом сильно не хватает. Там и ковыряюсь и мне это интересно. А чем больше ты зарываешься "в землю", тем более интересная конструкция вырастает.

Никто же не будет спорить, что поиски новых алгоритмов обработки данных это наиболее перспективный путь появления сильного ИИ. Просто, как вы выражаетесь, ИМХО - из того что предложено на сегодняшний день человеческой логики не вырастет, как ни колотись головой об статистические данные.
[Ответ][Цитата]
 Стр.1 (4): [1]  2  3  4След. > >>