четвъртък, 17 януари 2013 г.

Сравнение между двете дефиниции на Изкуствен Интелект



Сравнение между двете дефиниции на Изкуствен Интелект

Dimiter Dobrev
Institute of Mathematics and Informatics
Bulgarian Academy of Sciences
Acad. G. Bonchev Str., Bl. 8,
1113 Sofia, Bulgaria
dobrev@2-box.com


Резюме:

В статиите [1] и [2] са предложени две различни дефиниции на понятието Изкуствен Интелект. Първата дефиниция е неформална, защото в нея се казва, че за изкуствен интелект признаваме тези програми, които са по-умни от човек. Втората дефиниция е формална благодарение на това, че избягва позоваването на понятието „човек“. Читателят прочел статиите [1] и [2] остава с впечатлението, че тези две дефиниции са еквивалентни и че дефиницията от [2] е просто формален вариант на тази от [1]. В тази статия ще сравним двете дефиниции на Изкуствен Интелект, което ще помогне за разбирането на това понятие.

Ключови думи: Artificial Intelligence, AI Definition.



Каква е основната идея?

Идеята, която стои зад дефинициите на Изкуствен Интелект от [1, 2]  е следната: Ако една програма е интелигента, то тя би се справила добре в произволен свят. Това е вариант на народната мъдрост, че умният човек може да се справи с всяка професия. Разбира се, умният човек ще се справи, но не веднага, а чак след като премине известно обучение.

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

Можем да направим аналогия с хората. При нас първите 18 години се смята, че сме в период на обучение и дори да извършим престъпление, ще получим по-малко наказание, именно защото се смята, че още не сме се обучили. При животните периода на обучение обикновено е по-кратък, което често е свързано с по-краткия им живот и по-тежките условия, в които те живеят. При животните често валидно е правилото: „Учи се бързо или ще бъдеш изяден!“

Колко дълъг е периода на обучение и може ли да се каже кога точно този период свършва?

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

При втората дефиниция подхода е различен. Там се предполага, че живота е ограничен и че има един параметър, който ще наречем „максимална дължина на живота“. Оценката на интелигентността се прави на базата на живота от началото му до края. При втората дефиниция има разлика и в периода за обучение. Тук такъв период не се предвижда. Тоест, в сила е правилото: „Учи се бързо или ще бъдеш изяден!“

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


Еквивалентни ли са двете дефиниции?

От горното следва, че двете дефиниции не са еквивалентни, защото бавно развиващата се програма е Изкуствен Интелект според първата дефиниция и не е според втората. Бавно развиваща се ще наричаме такава програма, която има нужда от почти безкрайно дълго време за обучение (тоест, времето й за обучение е крайно, но на практика е безкрайно). Пример за бавно развиваща се програма са TD1 и TD2 от [2].

Бавно развиващата се програма всъщност не отговаря на нашата идея за Изкуствен Интелект, защото нашата цел е да конструираме робот, който да може да измете пода и ако на този робот ще са му нужни 1000 години, за да се научи да мете, то на нас това не ни върши работа.

Има ли други програми, които формално да удовлетворяват дефиницията, но да не отговарят на идеята ни за Изкуствен Интелект? Да, безкрайно неефективната програма също не ни върши работа, макар формално да удовлетворява и първата и втората дефиниция. В [2] тази програма е описана като Trivial Decision 5. Тази програма би работила, ако разполагахме с безкрайно бърз компютър, защото тя за изчисляването на една стъпка прави почти безбройно много стъпки (тоест крайно много, но на практика безкрайно).

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


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

Има още две причини, поради които двете дефиниции не са еквивалентни:

Първо: Дефиницията от [1] е неформална и зависи от хората. Тоест, тя не определя едно конкретно множество, а по-скоро нещо като размито множество. Казваме, че за Изкуствен Интелект приемаме програмите, които са по-умни от човек и тук естествено изниква въпросът; „Кой е човекът с когото сравняваме?“ Можем да кажем, че искаме да е по-умна от всеки човек, но това пак не определя множеството на тези програми еднозначно. Например, ако дефинираме програма играеща шах, като програмата която играе по-добре от световния шампион, то пак ще има програми които играят по-добре от един световен шампион и по-зле от друг. Тоест, една формална и една неформална дефиниция няма как да са напълно еквивалентни.

Второ: Дефиницията от [2] зависи от няколко параметъра. Тоест, не става дума за множество от програми, а за функция, която при различните стойности на параметрите връща различни множества от програми.

Предположението, което се прави в [2] е, че съществуват такива стойности на параметрите, за които множеството определено от дефиницията не е празното и програмите, които са в това множество отговарят на идеята ни за Изкуствен Интелект.

Разбира се, не всички програми в това множество отговарят на тази наша идея. Вече споменахме за проблема с безкрайно неефективната програма. Друг проблем, който се появява при дефиницията от [2] това е програмата „зубрач“. Проблемът е, че при [2] се предполага, че интересуващите ни светове са краен брой. Следователно може да се напише програма, която да е специално за тези светове. Същият проблем имаме на кандидат студентските изпити, където се явяват хора зазубрили всички възможни теми, които могат да се паднат на изпита. Тези хора успяват да си вземат изпита, но те не могат да решат никоя задача, която е извън кръга на зазубрените теми.

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


Продължителност на живота

Първият параметър, от който зависи втората дефиниция е продължителността на живота. Щом се отказваме от безкрайния живот, следователно живота трябва да е ограничен и да имаме параметър, който ни казва каква е очакваната продължителност на живота. За по-просто в [2] живота е фиксиран на 100 игри, всяка от които е не по-дълга от 1000 стъпки.

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

Дефиниция: Фатална грешка наричаме група от вътрешни състояния на света, в която група, ако попаднем, повече да не можем да излезем. Ако може да се излезе, то грешката не би била фатална. Освен това света в тази група трябва да е по-лош отколкото извън групата (т.е. оценките, които се получават там да са относително по-ниски). Ако света в групата не е по-лош, то тогава попадането ни там няма да е грешка.

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

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

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

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


Произволен свят

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

Да видим, можем ли да конструираме свят, който да е прекалено сложен, за която и да е програма, но да не е сложен за човек. Да си представим един свят, в който роботите не ги обичат. В този свят, познаят ли че си робот и веднага ти дават слаба оценка. Ако решат, че си човек, получаваш положителна оценка. Изглежда сякаш, че това е светът, в който хората ще се справят по-добре от роботите. Да си припомним каква беше дефиницията на свят. Там имаше две функции (World и View), които определяха света. Това са абсолютно произволни функции и можем да предполагаме, че те връщат успех когато в света се подвизава човек и неуспех, когато вътре имаме робот. Все пак, света не е Господ и няма откъде да знае дали неговия обитател е човек или робот. Светът трябва да го разбере това на базата на действията на опонента. Тоест, ако робота се държи като човек и ако се преструва достатъчно умело, то света ще бъде излъган и ще го приеме за човек. Тоест, в този случай изискването към програмата е да може да играе имитационната игра. Същата тази игра беше предложена от Тюринг като тест за интелигентност. Излиза, че ако една програма удовлетворява дефиницията от [1], то тя удовлетворява и теста на Тюринг, но не веднага, разбира се, а след като се пообучи малко.

Въпрос: Може ли светът да разбере, че срещу него има робот, (още докато робота не се е обучил и не е започнал да се преструва на човек, достатъчно умело) и от този момент нататък да започне да дава лоши оценки и така до безкрайност? Отговорът е: Не, защото в света няма фатални грешки.

Значи ли това, че дефиницията от [1] е еквивалентна на теста на Тюринг? Не, ако обучим програмата от [1] да се прави на човек, то тя ще удовлетвори теста на Тюринг, но това ще стане чак след обучение. Може ли програмата удовлетворяваща теста на Тюринг да бъде обучена да се справи в произволен свят. Отговорът е: По-скоро не. Щом тази програма може да се прави на човек, значи може да се обучава, но тя трябва да се прави на тъпа, защото ако покаже колко е интелигента, ще се издаде, че не е човек, а робот. Ако забраним на изпитващия да наказва прекалената интелигентност, то дефиницията от [1] и теста на Тюринг ще бъдат еквивалентни.


Невъзможен свят

Може ли светът да е толкова сложен, че никоя програма да не може да го разбере? Да, може. Нека например светът да генерира една безкрайна редица от нули и единици и целта на Изкуствения Интелект е да познае какво следва (нула или едно). Нека функцията, която описва тази безкрайна редица да не е изчислима. Тогава няма как програмата да изчисли и да познае кое ще е следващото число, но същото важи и за човека. Въпреки това, програмата и човека ще открият различни зависимости. Например, че нулите са повече от единиците, че след нула е по-вероятно да се появи единица отколкото нула и т.н.

Не е необходимо Изкуствения Интелект да разбере света на 100%. Важното е да го разбере по-добре от човека.


Коефициент на интелигентност

В първата дефиниция сравнявахме интелигентността на програмата с интелигентността на човек. Във втората дефиниция не можем да си позволим да използваме сравнение с човек (защото искаме дефиницията да е формална.) Следователно нужно е да въведем една независима оценка на коефициента на интелигентност и чрез тази оценка да дефинираме Изкуствен Интелект като кажем, че за такъв признаваме тези програми, чиито коефициент на интелигентност е над определена стойност. В [2] избрахме тази стойност да бъде 0.7, но този избор е в голяма степен произволен. По-скоро, казва се, че съществува някакъв коефициент на интелигентност и програмите по-интелигентни от това ниво могат да бъдат признати за Изкуствен Интелект.

Въвеждаме функцията Success, която за всеки конкретен живот връща число в интервала [0, 1] и това число оценява успеха на устройството в конкретния живот. След това коефициента на интелигентност се изчислява, като се избере множество от тестови светове, пуска се програмата да изживее по един живот във всеки от тези светове и се изчислява средния успех на програмата във всичките тестови живота.

Тоест, коефициента на интелигентност е средната стойност на функцията Success изчислено за множеството на тестовите светове.


Сложност на света

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

Защо избрахме множеството на тестовите светове да бъде именно това?

В [1] се прави нещо подобно. Там се предлага да се подготви тест състоящ се от краен или изброим брой тестови светове. Идеята е, програмата, която може да се справи с всичките тези светове да бъде призната за Изкуствен Интелект. В [1] се предлага тестовите светове да са подготвени от човек, а в [2] искаме да сме максимално формални, поради което ще определим множеството от тестовите светове, така че то да не зависи от човешкия избор. Друга разлика е, че в [1] искаме програмата да издържи всички изпити, т.е. да се справи във всички тестови светове, докато в [2] искаме средния успех (т.е. коефициента на интелигентност) да е по-голям от 0.7. Защо в [2] искаме по-малко отколкото в [1]? Защото ако задачите са предварително подготвени можем да искаме програмата да ги реши всичките, но ако задачите са произволно генерирани, тогава между тях ще има и нерешими и следователно не можем да разчитаме програмата да ги реши всичките.

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

Първата естествена възможност е да вземем множеството на всички светове. Това множество е безкрайно неизброимо и изглежда прекалено голямо (не е ясно, различните светове с каква тежест трябва да участват). Първото, което виждаме е, че много от световете са неразличими (т.е. имат еднакво дърво на света). Затова, следващата ни идея е да вземем фактор множеството, т.е. множеството от всички възможни дървета на света и това да бъде нашето множество от тестови светове. Това множество отново е безкрайно неизброимо, но като съобразим, че ограничихме продължителността на живота виждаме, че множеството от тези дървета е дори крайно (По-точно крайно е множеството на дърветата на детерминираните светове. При недетерминираните също е крайно, защото разклоненията са с еднаква вероятност – виж дефиницията на TM_W от [2]).

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

Тук е момента да приложим правилото наречено „Бръснача на Окам“ според което по-простия модел е по-вероятен от по-сложния. Т.е. по-простия свят е по-вероятен от по-сложния. За да говорим за сложност на света трябва да въведем някакво описание на света и да дефинираме сложността на света като дължината на най-късото възможно описание.

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

Следващото ни предположение е да изберем множеството от тестовите светове да бъде множеството на недетерминираните машини на Тюринг, като вземем всички такива машини без значение от размера им. Не можем ли да изберем един конкретен размер и да минем само с машините, които са с този размер? Отговорът е: по-скоро да.

Ако вземем всички машини на Тюринг, то ще трябва да им дадем различни тегла, защото няма как безброй много машини, всичките да са с еднакво тегло и сумата от теглата им да е единица. След като решим какви ще са теглата на различните машини, имаме два варианта – или средния размер на машините е някакво конкретно число или този среден размер е безкрайност (зависи от това какви тегла сме избрали). Ако средния размер е краен, можем да приемем, че вместо всички машини на Тюринг, тестови ще са само тези, чиито размер е средния. Това не е съвсем същото, но е почти същото. Ако средния размер е безкрайност, тогава има едно N от което нататък, машините с по-голям размер почти не влияят. Тоест, ако изберем едно ε, което ни се струва достатъчно малко за да може да бъде пренебрегнато, тогава съществува N, такова че машините с дължина по-голяма от N влияят по-малко от ε на средната оценка. Тогава може да изберем това N да бъде размера на тестовите машини и резултата ще е близък до този, който бихме имали ако вземем всичките машини със съответните им тегла.

Следващия въпрос: Щом сме избрали едно конкретно N, дали тестовите ни машини да бъдат тези с размер по-малък или равен на N или да бъдат тези, които са с размер точно N. Отговорът е, че няма нужда да включваме по-късите машини, защото всяка машина с размер N-1 има много еквивалентни машини с размер N (защото може да добавим едно ненужно състояние).

Добре, решихме, че тестови светове ще бъдат изчислимите светове, които се изчисляват от недетерминирана машина на Тюринг, която има размер N и това е поредния параметър, от който зависи нашата дефиниция. В [2] за този параметър избрахме конкретната стойност 20. Решаваме, всички тестови машини да участват с равни тегла (това е възможно, защото множеството е крайно).

Дали така избраното множество отговаря на принципа на Окам? Дали простите светове са по-вероятни от по-сложните. Отговорът е: Да. Действително всички машини участват с еднаква тежест, но простите машини имат огромен брой еквивалентни (които изчисляват същия свят), докато най-сложните нямат нито една еквивалента машина (със съответната сложност разбира се, в случая със сложност 20). Тоест, колкото по-прост е един свят, толкова повече машини с размер 20 го изчисляват и токова повече този свят влияе на средната стойност на функцията Success, а тази средна стойност ние наричаме коефициент на интелигентност.


Кой е подходящия модел?

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

Може ли една сложна машина на Тюринг да бъде частично описана с някакви по-прости зависимости. Може, но това не е характерно за модела на машината на Тюринг. Там обикновено или разбираш света, или нищо не разбираш.

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

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


Работи на други учени

Повод за написването на тази статия стана публикацията [5], където двама учени от Швейцария се опитват да обобщят дефинициите от [1, 2]. Тяхната идея е била да се отърват от параметрите, от които зависи дефиницията в [2] и да получат едно ново понятие за коефициент на интелигентност независещо от никакви параметри.

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

Разбира се, коефициента на олекване (обезценка) също е параметър и те просто за заменили един параметър с друг. Освен това, тяхното представяне противоречи на идеята, че началото на живота не е важно, а по-важно е какво се случва след като програмата вече се е обучила. При тяхното представяне, най-важната част от живота е самото му начало и от един момент нататък живота така се обезценява, че практически е без значение какво прави програмата. Разбира се, в [2] също има един момент (максималната дължина на живота) от който нататък няма значение какво прави програмата, но поне до този момент всички оценки са равноправни. Тоест, при нас е: „Върви, върви и спре“, а при тях е: „Затихва, затихва, затихва и така до безкрайност“

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

Другия параметър, от който авторите на [5] се опитват да се отърват е сложността на света. Ние сме избрали една конкретна сложност (т.е. брой състояния на машината на Тюринг, която генерира света). Те са предпочели да направят сума от всички сложности, като са използвали коефициент на обезценка 1/2. Като резултат се получава, че при тях средната сложност е 2 (ние сме избрали за този параметър числото 20). Тоест, ако искат да разрешат и по-големи стойности за средната сложност, ще трябва да заменят числото 1/2 с друг параметър. Тоест, отново заменят един параметър с друг.

От параметъра 0.7 те се отървават като не казват какво е Изкуствен Интелект. Казват какво е коефициент на интелигентност, но колко трябва да бъде този коефициент, за да бъде една програма призната за Изкуствен Интелект, не казват.

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

Ето някой от най-фрапиращите грешки допуснати в [5].

Там пише, че от тезиса на Чърч следва, че света е изчислим. Действително в [1] пише, че от тезиса на Чърч следва, че Изкуствения Интелект е програма, но не и че света е програма. Дали света е изчислим или не, дали е детерминиран или не е, това са въпроси чиито отговор не знаем и никога няма да научим. Това е, нещо което няма как да бъде проверено, защото не съществува експеримент, чиито резултат може да отговори на тези въпроси. (Въпросът детерминиран ли е светът е разгледан подробно в [3]. Въпросът изчислим ли е светът е аналогичен.).

Когато са дефинирали коефициент на интелигентност, така са го дефинирали, че се е получило нещо, което е безкрайност за всяка програма. Там те не са предвидили, че броят на програмите нараства експоненциално с увеличаване на дължината им. Това може да го приемем за грешка от недоглеждане, още повече, че е ясно как тази грешка може да бъде поправена. (Там се прави сума от успеха на програмата в различните животи, т.е от функцията Success. В тази сума не трябва всеки член да се умножава по 1/2 на степен сложността, а трябва да се вземе средното за съответната сложност и то да се умножи.) По-нагоре, когато казахме че в [5] средната сложност на света при тях е 2, това беше при предположение, че тази грешка е оправена. Ако оставим нещата така както са ги написали, то средната сложност е безкрайност и сумата, която наричаме коефициент на интелигентност, също е безкрайност. Тоест, ако не се коригира грешката понятието коефициент на интелигентност се обезсмисля.

Най-сериозния проблем в [5] това е втория вариант, който се предлага, за да бъде избегнат коефициента на затихване. Там множеството на световете е различно и съответно различна е и функцията Success (тази която за всеки живот казва какъв успех е достигнат в този живот.)

Да обобщим какво се е получило в [1], [2] и в двата варианта на [5].

В [1] се разглежда безкраен живот в множество от светове, които са без фатални грешки. В [2] се предполага, че живота е краен. В първия вариант на [5] живота е безкраен със затихване, което е същото, все едно че живота е краен. Във втория вариант на [5] се предполага безкраен живот в свят където всичките грешки са фатални. Тук проблемът не е в това, че може да имаме фатална грешка (фаталните грешки не пречат в [2] и тук също няма да пречат). Проблемът е в това, че всички грешки са фатални. Тоест, няма поправими грешки. Човек не се учи от фаталните си грешки, може би се учи от фаталните грешки на другите, но не и от своите фатални грешки. Затова тази концепция противоречи на идеята за обучението.

Във втория вариант на [5] функцията Success е растяща. Тя е определена да бъде сумата от всички оценки, които са числа в интервала [0, 1]. Нормално е да смятаме, че през живота функцията Success може да расте и да намалява. Когато тя трайно започне да намалява, това може да го сметнем за поправима грешка. Авторите на [5] са предпочели тази функция да е растяща, което значи, че устройството не може да прави поправими грешки. Единствената възможна грешка е от тип „пропуснати ползи“ и тази грешка винаги е фатална, защото ползите пропуснеш ли ги веднъж, повече няма как да ги хванеш. Освен това, при пропусканите ползи няма обратна връзка. Тоест, когато функцията Success се променя, това устройството го разбира, но когато е пропуснало ползи, това няма как да го разбере. Евентуално, може да го разбере в бъдещето, но живота е безкраен и това значи че и в бъдещето няма да го разбере. Винаги устройството ще се надява, че ползите не са пропуснати, а ще се появят съвсем скоро.

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

Това ограничение те го налагат, за да може функцията Success да бъде в интервала [0, 1]. Вместо да изкривяват света по този ужасен начин, по-добре би било функцията Success вместо да бъде сумата от оценките, да бъде средното им аритметично (както е направено в [2]). По този начин функцията Success нямаше да бъде растяща.

Заключението е, че при втория вариант (на дефиницията на коефициент на интелигентност) авторите на [5] използват светове, при които обучението е невъзможно. Успехът на устройството в такъв свят зависи единствено от късмета му, а когато световете са много късмета престава да влияе. Тоест, всички програми са еднакво интелигенти.

Поставяме си въпроса дали авторите на [5] изобщо са разбрали, че в [1] и [2] става дума за устройство, което се обучава и което ще постигне добър резултат в следствие на това обучение или те си мислят, че устройството се е родило обучено. В началото на [5] действително се казва, че на устройството трябва да му се даде достатъчно време, за да се обучи, но после предлагат два варианта на дефиниция, които противоречат на тази идея (особено втория вариант).

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

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

Въпреки всичко, объркването на Shane Legg и Marcus Hutter по въпроса къде трябва да бъде поставена оценката има своите основания. Те си задават въпроса, оценката при човека дали не са чувствата на болка и на удоволствие (от храна, секс, музика и други източници на удоволствие). Отговорът, който ще им дадем е следния: Човек няма вградена оценка. При него оценката се дава от света чрез еволюцията. Според тази оценка в света оцеляват тези които оцеляват и които успеят да се размножат. Самият човек не я получава тази оценка на готово. По-точно той никога не я получава. Ако е живял според еволюционната оценката, която той не знае, то той ще оцелее достатъчно дълго време и в следващото поколение ще има такива подобни на него. Това е причината, поради която хората цял живот търсят смисъла на живота (търсят го защото не го знаят). Що се отнася до чувството на болка и удоволствие, това не е смисъла на живота, а това е инстинкт. Тоест, човек се ражда донякъде научен и знае, че болката е нещо лошо, а удоволствието нещо добро. На тези инстинкти не трябва да се вярва сляпо. Например, чувството на болка е погрешно, когато зъболекаря ви вади зъб (стига зъболекаря да вади правилния зъб, разбира се). Горчивата храна също инстинктивно се възприема за лоша, но с времето човек започва да харесва горчиви храни като кафето и бирата. Чувството на удоволствие също често е погрешно.

Въпреки всичките забележки, които изредихме, статиите на Shane Legg и Marcus Hutter са много ценни за нас, защото това е първото признание на дефинициите от [1, 2]. Освен това, анализа на грешките допуснати от нашите швейцарски колеги също е полезен, защото той показва къде нещата не са достатъчно добре обяснени. Очевидно е, че Shane Legg и Marcus Hutter са поработили много сериозно по темата и за нас беше ценно да проучим техния опит да подобрят нашата дефиниция. Там където те не са разбрали дефинициите от [1, 2], вината е по-скоро наша, за това че лошо сме обяснили. В резултат на този анализ бе подготвена тази статия, която се надяваме да помогне на тях и на други бъдещи изследователи в областта на Изкуствения Интелект.


Благодарности

Искам да благодаря на професор Димитър Скордев и професор Тинко Тинчев за направените от тях забележки и за съветите, които ми дадоха във връзка с тази статия. На професор Скордев искам да благодаря още за това, че на времето той ме провокира да напиша дефиницията [2], като каза по повод на дефиницията [1] следното: „Тази дефиниция въобще не е формална. Вие твърдите, че тя може да бъде формализирана, но въобще не е ясно как това може да стане!“ Това, беше една конструктивна критика и в неин резултат се появи дефиницията [2].


References

[1] Dobrev D. D. AI - What is this. In: PC Magazine - Bulgaria, November'2000, pp.12-13 (www.dobrev.com/AI/definition.html).
[2] Dobrev D. D. Formal Definition of Artificial Intelligence. In: International Journal "Information Theories & Applications", vol.12, Number 3, 2005, pp.277-285. (www.dobrev.com/AI/).
[3] Dobrev D. D. AI - How does it cope in an arbitrary world. In: PC Magazine - Bulgaria, February'2001, pp.12-13 (www.dobrev.com/AI/).
[4] S. Legg and M. Hutter. A Universal Measure of Intelligence for Artificial Agents, In
Proc. 21st International Joint Conf. on Artificial Intelligence (IJCAI-2005), pages
1509–1510, Edinburgh, 2005.
[5] S. Legg and M. Hutter. A formal measure of machine intelligence. In Proc. 15th Annual Machine Learning Conference of Belgium and The Netherlands (Benelearn'06), pages 73–80, Ghent, 2006.
[6] S. Legg and M. Hutter. Universal Intelligence: A Definition of Machine Intelligence, Minds & Machines, 17:4 (2007) pages 391-444.

Няма коментари:

Публикуване на коментар