петък, 22 март 2013 г.

Добавка към статията: Сравнение между двете дефиниции на Изкуствен Интелект



Абстрактен човек

Когато в дефиницията [1] сравняваме интелигентността на програмата с интелигентността на човек, трябва да приемем, че това не е реален, а че става дума за абстрактен човек. Реалния човек може да е болен, уморен или отегчен, а ние ще си представяме един абстрактен човек, който винаги е в кондиция.

Какво би се случило, ако сравним програмата с реален вместо с абстрактен човек? Тогава почти всички програми биха удовлетворили дефиницията, защото дори и най-тъпата програма би се справила не по-зле от човек. Причина за това е факта, че човек е смъртен, а програмата безсмъртна. Тоест, в началото на живота човека ще се справя по-добре от тъпата програма, но това ще е само докато човека е още жив, от следващия момент нататък до безкрайност, тъпата програма ще се справя не по-зле от умрелия човек. Ако изчислим средния успех на човека и на тъпата програма ще се окаже, че те са равни. Това е така, защото, както вече казахме, всяко крайно начало на живота е безкрайно по-малко от целия живот.

Коя програма ще наричаме тъпа? Възможно най-тъпата програма е тази, чието IQ е 1/2. (Какво е IQ ще кажем по-надолу.) Програми, чието IQ е по-малко от 1/2 не са тъпи, но нарочно се правят на луди и играят така че да загубят. Примери за програми с IQ от 1/2 са случайната и умрялата програма. Случайна програма ще наричаме тази която играе случайно независимо от входа й, а умряла ще наричаме тази която играе едно и също, независимо от входа й.

Ако искаме човека, с когото ще сравняваме да е реален, а не абстрактен, тогава ще трябва да приемем, че живота е краен вместо безкраен. За да имаме достатъчно време за обучение, трябва да предположим, че живота е достатъчно дълъг, но не чак толкова, че човека да се умори, отегчи или да вземе да ритне камбаната.


Отърваване от параметрите

Можем ли, все пак да се отървем от параметрите, от които зависи дефиницията от [2]? Бихме могли да се отървем от параметрите, които участват в дефиницията на IQ, но не се сещам как бихме могли да се отървем от коефициента, който ни казва, кое е минималното IQ, което е достатъчно, за да признаем програмата за AI.

За да се отървем от параметрите, които участват в дефиницията на IQ нека да разгледаме IQ като функция на продължителността на живота и на сложността на света. Можем да вземем границата на тази функция когато тези две променливи клонят към безкрайност и тази граница да приемем за новото IQ, което не зависи от параметри.

Забележка: Всъщност, в [2] има още един параметър. Това е максималния брой малки стъпки, който машината на Тюринг на съответния свят има право да направи на една голяма стъпка. Можем да приемем, че сложността на света се определя от дава параметъра – брой състояния на машината на Тюринг и максимален брой малки стъпки за една голяма. Тоест, дефиницията на IQ зависи не от два, а от три параметъра.
 
Така дефинираме новото IQ. Въпросът е дали границата на тази функция съществува. Първото ни притеснение е дали границата не е безкрайност. Да припомним, че функцията Success се изчисляваше като средното аритметично от оценките получени за победата, загуба и реми, които са съответно 1, 0 и 1/2. Тоест, тази функция е в интервала [0, 1]. Оттук следва, че IQ също е в интервала [0, 1], защото това е средната стойност на функцията Success. Следователно границата на IQ, когато аргументите му клонят към безкрайност, също е в интервала [0, 1].

Второто ни притеснение е дали функцията няма да се окаже разсходяща. Тоест, долната й граница да се окаже строго по-малка от горната. Възможно ли е има свят, в който успехът в течение на живота да скача ту нагоре, ту надолу и да не клони към никоя конкретна стойност. Да, представете си свят, в който на първата стъпка получаваш победа, на следващите две стъпки получаваш загуба, на следващите 4 отново получаваш победа и на следващите 8 отново загуба.

Разбира се, подобни светове са малко и те не могат да повлияят на стойността на IQ, но възможно ли е да има програма, чието IQ да скача ту надолу, ту нагоре в зависимост от дължината на живота. Представете си програма, която е доста умна и знае какво става, но играе ту така, че да печели ту така че да губи. Пак ще използваме редицата от интервали 2n и ще предполагаме, че във всеки следващ интервал програмата обръща поведението си.

Възможно ли е една програма да има добро IQ, когато сложността на света е ниска, но при увеличаване на сложността на света нейното IQ рязко да падне. Да, това е така при програмата „зубрач“. Тази програма се справя добре при малък брой светове, ако е направена специално за тези светове, но когато световете станат много като брой и като разнообразие, тогава програмата „зубрач“ се проваля.

Следователно, възможно е функцията IQ да не е сходяща, но в този случай новото IQ няма да бъде границата й, а средното аритметично между долната и горната й граница.

Ако приемем тази нова дефиниция на IQ ще загубим хубавото свойство на тази функция, че тя е изчислима. Въпреки всичко ние не изчисляваме точната стойност на тази функция поради комбинаторната експлозия предизвикана от твърде големия брой на възможните светове и възможните животи. Вместо това ние изчисляваме тази функция приблизително по метода на статистиката, като използваме някаква крайна извадка от произволно избрани светове и пускаме програмата да изживее по един тестов живот във всеки тестов свят. Приблизително можем да изчислим и новата функция IQ като изберем случайно една изброима извадка от светове, в която редицата от тестовите светове да са с нарастваща сложност и тестовите животи да бъдат с нарастваща продължителност. Така ще получим една редица от междинни резултати, която ще клони към границата на IQ (т.е. към новото IQ, ако старото IQ има граница). Ако функцията IQ няма граница, то редицата няма да е сходяща, но нейната горна и долна граница ще съвпадат с долната и горната граница на IQ.

Въпросът е дали да дефинираме ново IQ като границата на IQ, когато сложността на света и продължителността на живота клонят към безкрайност или е по-добре да предположим, че сме избрали за тези параметри достатъчно големи стойности и това да е нашето IQ. Това, което е предпочетено в [2] е второто решение.

Що се отнася до коефициента, който определя минималното IQ, което е нужно за да признаем програмата за AI. Тази стойност трябва да е някъде между 1/2 (интелигентността на най-тъпата програма) и интелигентността на най-умната, т.е. интелигентността на Trivial Decision 5. Добре е да вземем IQ-то на човек, защото за нас достатъчно интелигентни са тези програми, които са по-умни от човек. Проблемът е, че ние не знаем кое е това IQ. Можем да се опитаме да го изчислим приблизително като провеждаме експерименти с хора. Аз имам известен опит като съм експериментирал с мои студенти и резултата е, че дори за прост свят какъвто е света на играта Морски Шах, студентите не успяват да се справят. Вярно е, че в този случай имаше излишно кодиране, което усложни света и попречи на студентите да го разберат. Вярно е още, че обучението се предполага да продължи цял живот, а моите студенти се опитваха да разберат този свят в рамките на 45 минути. Предполагам, че ако студентите бъдат обучени да решават задачи от този вид, те биха показали много по-добри резултати. Тоест, резултатите от направения от мен експеримент със студенти не могат да се приемат за достоверни и въобще човешкото IQ е трудно да бъде определено по експериментален път.

Разбира се, определянето на човешкото IQ е напълно безпредметно. За нас е важно да знаем какво е AI, а това са програмите, които са достатъчно интелигентни. Колкото по-интелигентна е една програма, толкова по-добре.


Кой е по-съвършен?

Когато променяме дефиницията на IQ ние променяме наредбата, която тази дефиниция ни дава. Тоест, променя се това кой е по-интелигентен и кой е по-глупав. Можем да имаме две програми и по една дефиниция на IQ първата програма да е по умната, а по другата дефиниция по-умната да е втората. Ако решим IQ да бъде границата когато продължителността на живота и сложността на света клонят към безкрайност, то ние бихме предпочели по-бавно развиващите се програми пред по-бързо развиващите се.

Един от съучениците на баща ми [7] имаше теория според която колкото по-бавно се развива едно същество, толкова по-съвършено е то. Той даваше примери с животните и хората като твърдеше, че хората са по-съвършени от животните. Друг негов аргумент беше това, че повечето велики хора като деца не са блестели с особена интелигентност. Също така, той съпоставяше мъжете и жените и отбелязваше, че момичетата се развиват по-бързо от момчетата, но мъжете постигат по-добри резултати в областта на абстрактното мислене.

Аз съм съгласен с неговите наблюдения, но не съм съгласен с неговите изводи. Първо не съм съгласен, че хората са по-съвършени от животните. Ако направим сравнение на физическата сила, бързината, издръжливостта на студ, глад и болка ще видим, че хората значително отстъпват на повечето животни. Красотата също е нещо по което отстъпваме на животните. Вярно е, че ние харесваме жени, но това е защото ние сме инстинктивно програмирани да ги харесваме, а не поради някакви обективни причини. Жените нямат цветни пера или нещо друго което би впечатлило животно от друг биологичен вид. Вземете като пример вимето на кравата. За бика вероятно то би било източник на вдъхновение достойно за написването на поема, но ние хората не виждаме в това виме нищо красиво.

Тази статия е посветена на интелекта и затова нека да сравним хората и животните като интелект, абстрахирайки се от другите им качества. Можем ли да твърдим, че хората са по-умни от животните? Да сравняваме два мозъка е все едно да сравняваме два автомобила. Ако единият е по-бърз, а другият е по-мощен, то кой тогава е по-добрият? Мозъка има много характеристики и е трудно да се каже кой мозък е по-добрият. Например, дългосрочната памет при слоновете е значително по-добра от тази на хората. Има експерименти, които показват, че някои маймуни имат значително по-добра краткосрочна памет от хората. Ако приемем, че най-важната характеристика на мозъка е способността за абстрактно мислене, то може да се окаже, че октоподите са много по-способни от нас хората. Разбира се, октоподите са едни доста глупави създания, защото абстрактното мислене далеч не е всичко. При октоподите няма връзка между поколенията и те са самоуки. За да сравним човек и октопод, трябва човека да е израсъл без родители и без възпитатели.

С две думи, не съм съгласен, че хората са по-съвършени от животните. Не съм съгласен и с това, че абстрактното мислене, което е силата на мъжете е по-важно от интуитивното мислене, което е по-развито при жените. Вярно е, че при абстрактното мислене, когато имаме отговор, знаем как сме достигнали до този отговор, докато интуитивното мислене ни дава отговор, но не можем този отговор да го обосновем. Затова, често когато говорим за мислене имаме предвид именно абстрактното мислене, но има области, където интуитивното мислене дава много по-добър резултат от абстрактното и в тези области жените са много по-успешни от мъжете.

Що се отнася до така наречените велики хора, също не съм съгласен, че те са по-съвършени от нас останалите. Не случайно повечето гении не са признати приживе, а чак след смъртта им. Представяте ли си, колко още гении има, които не са признати дори и след смъртта им? Такива, които винаги са ги мислили за слабоумни и отдавна вече са ги забравили.

Тоест, не е добра идеята да променяме дефиницията на IQ и вместо да търсим най-подходящата програма за определена продължителност на живота да вземем тази програма, която е най-подходяща в случая когато продължителността на живота клони към безкрайност. По този начин бавноразвиващата се програма ще стане една от най-умните, а както вече казахме тази програма не отговаря на идеята ни за Изкуствен Интелект.

За различни задачи са подходящи различни инструменти. Идеята ни да намерим един универсален инструмент, който да е добър за всяка задача е похвална, но често неизпълнима. Много често едно качество е за сметка на друго. Когато имаме реален мозък, често когато един дял е по-развит, това е за сметка на друг дял (защото реалният мозък трябва да може да се събере в реалния череп). Когато описваме изкуствения мозък можем да считаме, че нямаме физически ограничения и че всички дялове могат да бъдат максимално развити, но времето необходимо за обучение е един ресурс, който е ограничен и при реалния и при изкуствения мозък.

Когато говорим за време при изкуствения мозък имаме предвид брой стъпки, а при естествения имаме предвид секунди, часове и години. Нека приемем, че естествения мозък прави по 24 стъпки в секунда (колкото са кадрите в киното) и тогава идеята за време при естествения и изкуствения мозък ще се уеднакви.