GotAI.NET

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

 

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

 Все темы | Новая тема Стр.2 (12)<< < Пред. | След. > >>   Поиск:  
 Автор Тема: На: Унифицированная платформа для создания приложений в сфере ИИ
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 1:07
Цитата:
Автор: daner
К стандартам, тоже имею скептическое отношение. Не вижу никаких особенностей в стандартах для ИИ программ и для не ИИ программ.


А зря, стандарты задают уровень качества ПО. Видите ли, код написанный с пометкой "сделано в Макрософт" всегда отличается от кодов с пометкой "сделано Петей Ивановым" ... как вы думаете почему?

Отличий - да вполне может и не быть .. Но давайте НАЧНЕМ ! Без аксиом построить теорию нельзя, поэтому давайте с ряда пунктов:

1. К ИИ программам должны применяться самые высокие требования качества
2. ИИ программы должны быть максимально гибки в сопровождении и развитии

Теперь соображение №1. ИИ сообщество достаточно малочисленно, состоит и маленьких независимых групп с достаточно узкой спецификой. Корпораций международного уровня не предвидется и в силу специфики скорее всего созданно не будет. Это означает, что сами самой высокие требования качества соблюдены не будут. К сожалению, это очевидный факт - выполняя свои проф. обязаности я очень часто вижу как сложно согласовать мнения и желания даже двух программистов с той целью, чтобы результирующая программа была выполнена в одном стиле и в одной идеологии. Надеюсб не нужно объяснять, что будет если этого не поддерживать. Поэтому в таких условиях все будет зависеть от личностей тех у кого есть хоть минимальная предрасположенность выполнять роль архитектора ПО.

Соображение №2. Учитывая первую аксиому и соображение №1 - можно прейти к выводу, что ИИ-программист должен большое внимание уделить архитектуре разрабатываемого ПО. Тут проблема в лени каждого программиста, и только за отдельные деньги программист соглашается "делать к все", а не "делать как ему хочется" ... Надеюсь объяснять не нужно, что качество ПО не зависит от того работает или нет, выполняет или нет ПО свою функцию ... это не задача архитектора, ему до лампочки что делает ПО, если оно соответствует соответствующему уровню и общей концепции. Дальше дело тестировщиков и заказчиков. И вот пока рядовой программист этого не поймет, о качестве ПО можно забыть. Выделим три аспекта - в первую очередь - это стиль программирования (соглашения о наименовании переменных, соблюдение отступов, правильное раставление скобок, комментарии), документирование как минимум с использованием UML, контроль версий, и собственно архитектурная концепция.

Соображение №3. Итак, пока ничего специфичного для ИИ, а лишь обоснованно необхадимая высокая планка. Это означает, что лучше забыть о крутой графике и многопоточности, если не соблюденно выше сказаное, например, если не будет документации или если не будет выдержан общий стиль программирования. Да, да ни когда не будет достигнут нужный уровень качества если не сделать такую переоценку ценностей. Отступ в 2, а не в 3 пробела - должен быть самой большой ошибкой программиста.

Теперь поговорим собственно о концепции архитектуры. Сегодняшние реалии таковы, что концепция должна быть написана СТРОГО в объектном стиле, структурный стиль или смешанный - это вред. Отсюда и выбор соответствующего языка программирования - это NET и с некоторой натяжкой Java - другие языки не могут быть признаны даже притендентами ... выбор между ними двумя или совмещению их - можно посметить отдельному разговору ...

Итак, выше представленны минимальные, но еще не достаточные требования к ПО вообще, и к ИИ ПО в частности ... После того как это будет БЕЗУСЛОВНО признано можно говорить о дальнейшем ... иначе ничего как кроме рассуждений на уровне детского сада, а не промышленного программирования у нас не выйдет ...

В дальнейшем если пожелаете я могу еще рассказать каким требованиям должна удовлетворять любая архитектурная платформа ...
[Ответ][Цитата]
shuklin
Сообщений: 2053
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 1:13
2tac: +100
[Ответ][Цитата]
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 1:18
Цитата:
Автор: shuklin

2tac: +100


Это значит, что Вы согласны с выше сказаным и ждете продолжения ?
[Ответ][Цитата]
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 1:37
Впрочем, действительно к Шуклину - это относится мало ... у него все в достаточно приемлемом виде, за исключением документации, а без нее ни один уважающий себя человек не возьмется судить о архитектурной концепции

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

Шуклин же знает свои проблемы - "пишите документацию Шура, она на вес золота в вашем случае ... " и убереги вас Господь, от новых проектов без документации - посветите ее 1 год, вместо любого другого проекта, результат возымеет 100 кратное улучшение ...



[Ответ][Цитата]
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 1:58
Ладно, раз я уже начал ... Значит, что касается архитектурных принципов ...

1. Не нужно изобретать велосипеды, надо взять и изучить как работают современные микропроцессоры, как они обеспечивают защиту задач, немного понимать как работают ОС в кольцах защиты и только тогда начинать писать т.н. Framework ...
2. Можно выделить две концепции - концепцию ядра и концепцию каркаса. Первая предполагает, что есть API которое могут вызывать внешние программы, а вторая предполагает написание кода в определенных узлах и клиент-программист повторно использует управляющий код.
3. Обычно многие делают, что-то одно и как правило концепцию ядра, вот и у Шуклина скорее используется это (но там действительно не все так прозрачно, поэтому думаю элементы концепции каркаса, там тоже присутствуют только не явной форме). А вот Террариум скорее наоборот использует только концепцию каркаса. Последнее более сложно реализовать, что связанно с концепцией событий, или точнее т.н. обратными вызовами ... вообще идеологически концепцию каркаса лучше всего изучать на примере идеологии COM (но только теоритически, т.к. в промышленном представлении это очень перегруженная и неоправданно усложненная штука, правда идеология Net как раз развязала имеющиеся там проблемы)

4. Так вот хороший архитектурный принцип может получится только от умелого совмещения этих двух концепций - что не так тривиально как может показаться ... а программы удовлетворяющие описанным выше и здесь требованиям - можно пересчитать по пальцам, а из программ по ИИ - таких я еще вообще не видел ... вот именно поэтому ИИ программы на данный момент не дотягивают до промышленных образцов скажем даже бухгалтерских ПО

---

5. следующий вопрос, который напрашивается далее - это любимый вопрос Шуклина постоянное хранения данных ... он должен быть подчинен выше описанным принципам и естественно вытекать из них ... тут я не буду хвалить Шуклина, он переодически перегибает палку, парою объективно, но не более чем я с перцептроном .. но об этом позже ...

6. и еще, что нужно обсудить отдельным образом - это пользовательский интерфейс, это сложный вопрос (и так получилось, что я им достаточно много занимался - т.е. тут бы я рассказал бы много о необходимых стандартах) - но к счастью для ИИ программ здесь можно сделать послабление ... но одновременно с этим есть требования к графическим оболочкам, поэтому скорее всего это будет апофеоз предложенных здесь (надеюсь не только мной) стандартов ...
[Ответ][Цитата]
daner
Сообщений: 4593
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 2:16
Цитата:
Автор: shuklin
2tac: +100

2tac: -1
ИИ занимается достаточно много отдельный групп разработчиков, исследователей и КРУПНЫХ компаний.
Почти в каждом уважающем себя университете мира существует факультет ИИ с написанием соответствующего программного обеспечения. Чаще всего, ИИ занимаются не только специально названные и созданные для этого факультеты, но и другие смежные (разного рода инженерные по управлению, экономические и т.д.). Так что в общем, код пишут многие.
Другое дело, что 80% его уходит в мусор, в основном из-за качества.

Большинство крупных компаний занимаются разработкой ИИ программ, а многие и исследованиями в ИИ области. Из крупных, я лично знаю следующие компании
1. НАСА
2. Самсунг
3. АйБиЭм
4. Майкрософт
5. Гугль
6. Яндех
7. Сони
8. Боинг
9. БМВ
10.Эльбит
11.Israel Air Industry (думаю что и других стран тоже)
12.Роскосмос
13.Пентагон
и т.д. (порядок значения не имеет).

Качественное ПО писать конечно нужно и важно, кто же с этим спорит. Вот только к ИИ это имеет отношение не больше и не меньше чем к любой другой области ПО. И общий стиль и т.д. и т.п.
Кстати, по сути, общий стиль в написании (ну там все эти скобки, отступы, наименования переменных) не так важно. Что бы программы нормально интегрировались они должны иметь четкий интерфейс и четкие протоколы взаимодействия друг с другом.
Этого по сути совершенно достаточно. Тогда даже код может быть закрытым, а программы все-равно будут работать как надо. Собственно, я про это и упомянул, когда напомнил, что УЖЕ СУЩЕСТВУЮТ (и не один, а много) всяких стандартов на любой вкус (правда так как их много, толку от них мало).

По поводу ООП и прочего... не совсем согласен. Особенно для ИИ... Конечно большинство открытых библиотек связанных с ИИ которые я видел (OpenCV,OpenJaus,JADE,Player,GBP-AS, etc.) в обязательном порядке поддерживают ООП (в виде С++ (или java, или python), что в общем правильно, так как позволяет им рассчитывать на использование в серьезных промышленных проектах). И уж тем более выбирать .Net язык в роли ведущего для opensource проектов, это просто смешно.
Ни чего не имею против .Net языков, но их жесткая привязка к конкретной операционной платформе (кстати платформе, которая по большому счету настольная) не совсем подходит для стандарта.

P.S.
(ИМХО)Мой BP отлично работает. Вам он чем-то не понравился (чем именно меня не очень интересует).
[Ответ][Цитата]
shuklin
Сообщений: 2053
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 2:20
Tac, В общеконцептуальном плане я абсолютно и полностью поддреживаю каждое Ваше слово во всех последних постах. Ну раз пошла такая "пьянка" )) один наводящий впорос по поводу следующего, и тут же ответ :

Цитата:
Автор: tac

Шуклин же знает свои проблемы - "пишите документацию Шура, она на вес золота в вашем случае ... " и убереги вас Господь, от новых проектов без документации - посветите ее 1 год, вместо любого другого проекта, результат возымеет 100 кратное улучшение ...



Вопрос: А зачем мне вообще писать хоть какую-то документацию?
Ответ: Абсолютно незачем. Мотивации 0. То что описано, не более чем акт альтруизма ; )
[Ответ][Цитата]
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 2:25
Цитата:
Автор: daner
ИИ занимается достаточно много отдельный групп разработчиков, исследователей и КРУПНЫХ компаний.
Почти в каждом уважающем себя университете мира существует факультет ИИ с написанием соответствующего программного обеспечения. Чаще всего, ИИ занимаются не только специально названные и созданные для этого факультеты, но и другие смежные (разного рода инженерные по управлению, экономические и т.д.). Так что в общем, код пишут многие.
Другое дело, что 80% его уходит в мусор, в основном из-за качества.

Большинство крупных компаний занимаются разработкой ИИ программ, а многие и исследованиями в ИИ области. Из крупных, я лично знаю следующие компании
1. НАСА
2. Самсунг
3. АйБиЭм
4. Майкрософт
5. Гугль
6. Яндех
7. Сони
8. Боинг
9. БМВ
10.Эльбит
11.Israel Air Industry (думаю что и других стран тоже)
12.Роскосмос
13.Пентагон
и т.д. (порядок значения не имеет).


Замечательно, факультеты ИИ - 99% мусор из-за качества ... 13 перечисленных фирм это конечно круто - но где там ИИ (надо разобраться) и где свободное ПО (т.е. разобраться нельзя) - в итоге полезного ИИ сообществу 0,1 %

т.е. Вы замечательно подтвердили сказаное мной
[Ответ][Цитата]
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 2:31
Цитата:
Автор: shuklin
Вопрос: А зачем мне вообще писать хоть какую-то документацию?
Ответ: Абсолютно незачем. Мотивации 0. То что описано, не более чем акт альтруизма ; )


Весь вопрос в том на какой уровень альтруизма Вы готовы
Вообще свободное ПО с открытым кодом - это целиком и полностью акт альтруизма, поэтому вопрос в том зачем Вы вообще написали свой Церебрум ? Зачем хотите, чтобы о нем знали люди ?

Мое личное мнение состоит в том, что ИИ просто не выжевет, если не будет создана культура сообщества ИИ с открытым кодом ... промышленный ИИ - это уже не будет ИИ ... (точнее ИИ будет не более, чем промышленный предаток, что совсем негоже для такой науки - примерно тоже самое, что изучать космос посредством создания ядерного оружия)
[Ответ][Цитата]
daner
Сообщений: 4593
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 2:33
Цитата:
Автор: tac

Замечательно, факультеты ИИ - 99% мусор из-за качества ... 13 перечисленных фирм это конечно круто - но где там ИИ (надо разобраться) и где свободное ПО (т.е. разобраться нельзя) - в итоге полезного ИИ сообществу 0,1 %

т.е. Вы замечательно подтвердили сказаное мной

Нет, не 99%. Не надо перегибать палку. Кроме того, сами же знаете, что "качественное" понятие относительное. Для кого-то потянет, а для кого-то не приемлемо.
Перечисленные мной компании, далеко не единственные. Половина из них, имеет библиотеки с открытым кодом. Я перечислил только те компании, в которых я знаю, что у них существует не только разработка ИИ, но и R&D (т.е. исследование).
Практически ЛЮБЫЕ стандартные алгоритмы имеют открытую реализацию. Правда не на C# который вы так любите (хотя и на нем уже не мало), а в основном на C++. Так что, проблема скорее не в том, что кода нет, а в том, что его искать сложно.

Вот придумали бы, как можно было бы код искать в легкую... вот это было бы супер!



[Ответ][Цитата]
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 2:43
Цитата:
Автор: daner

1. Правда не на C# который вы так любите (хотя и на нем уже не мало), а в основном на C++.

2. Так что, проблема скорее не в том, что кода нет, а в том, что его искать сложно.

Вот придумали бы, как можно было бы код искать в легкую... вот это было бы супер!


1. Так я и говорю пролетает по уровню качества (а не из-за моей любви к С#, я бы его не любил бы если бы написанные на нем программы вынужденно не соответствовали нужному уровню качества, конечно испахабить можно и на С#, но там это сделать на порядок сложнее, чем на других языках. А платформа независимость (которую Вы так любите) - здесь дело десятое, как только что-то окажется значимого уровня (уже не по форме, а по содержанию) - переводим код на микрочипы - и все вопросы платформо независимости отдыхают ... )

2. Я не против, но для этого должны быть не алгоритмы поиска - а базы данных кода, например такие как существуют для секвенсов ДНК организмов многих видов ...
[Ответ][Цитата]
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 2:57
Цитата:
Автор: daner

1. Качественное ПО писать конечно нужно и важно, кто же с этим спорит.

2. Кстати, по сути, общий стиль в написании (ну там все эти скобки, отступы, наименования переменных) не так важно. ... Тогда даже код может быть закрытым, а программы все-равно будут работать как надо.

По поводу ООП и прочего... не совсем согласен. Особенно для ИИ...


Вы и спорите Первый ваш пункт находится в явном противоречии со вторым ... Если не будет поддержан стиль - значит в этой программе никто никогда не разберется, а через месяц уже и сам автор, а это значит, что будут допученны ошибки ... один программист начнет првить то, что не понимает как написал второй ... Код не должен быть закрытым - тогда от него нету пользы, как вы пишите особенно для ИИ .... ни одному автору НЕ НУЖЕН ЗАКРЫТЫЙ и ЗАКОНЧЕННЫЙ код - каждый иследователь должен модифицироваь уже имеющийся код, только тогда он не теряет зря время ... Надеюсь мне не нужно объяснять как "легко" приспособить под себя закрытую длл ...

Ну, а по поводу ООП - тут вообще без комментарияев ... если не соблюденно это минимальное правило - назвать это можно только мусором ...
[Ответ][Цитата]
daner
Сообщений: 4593
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 2:57
QUOTE Автор: tac

Цитата:
1. Так я и говорю пролетает по уровню качества (а не из-за моей любви к С#, я бы его не любил бы если бы написанные на нем программы вынужденно не соответствовали нужному уровню качества, конечно испахабить можно и на С#, но там это сделать на порядок сложнее, чем на других языках. А платформа независимость (которую Вы так любите) - здесь дело десятое, как только что-то окажется значимого уровня (уже не по форме, а по содержанию) - переводим код на микрочипы - и все вопросы платформо независимости отдыхают ... )


Ой, да ладно. Качественно писать можно на любом языке! Я не люблю С++, но и на нем можно писать качественно, а главное эффективно.

Что же касается "платформа независимости", то она в первую очередь нужна при совместной разработке (если разработчиков много и они не зависымые). А чипы и прочее... а кто вам сказал, что чипы это конечная стадия? Скорее уж это будет что-то типа операционной системы. Вы где-нибудь видели прожженную операционку?

Цитата:
2. Я не против, но для этого должны быть не алгоритмы поиска - а базы данных кода, например такие как существуют для секвенсов ДНК организмов многих видов ...

Ну так... создание такой базы, она из задач. Сами коды уже в Интернете лежат, вот их и надо найти и классифицировать (естественно автоматически, а не ручками).
Думаете, если бы задача была тривиальной, ее уже не реализовали бы?
[Ответ][Цитата]
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 3:04
Цитата:
Автор: daner
Вы где-нибудь видели прожженную операционку?


Я вижу, что с каждым новым микропроцессором, "проженная оперерационка" все больше увеличивается
[Ответ][Цитата]
tac
Сообщений: 2601
На: Унифицированная платформа для создания приложений в сфере ИИ
Добавлено: 18 фев 09 3:07
Цитата:
Автор: daner
Ну так... создание такой базы, она из задач. Сами коды уже в Интернете лежат, вот их и надо найти и классифицировать (естественно автоматически, а не ручками).
Думаете, если бы задача была тривиальной, ее уже не реализовали бы?


Коды должны не лежать - а посылаться и классифицироваться авторами, только тогда это будет ответственный - тут дело не техническое, а экономически-инфраструктурное ... Почему авторы секвенсов присылают свои результаты работ в общую базу, и ИИ иследователи нет ?
[Ответ][Цитата]
 Стр.2 (12)1  [2]  3  4  5  6  ...  12<< < Пред. | След. > >>