Новий AI записує комп'ютерний код: все ще не Skynet, але це навчання

Новий AI записує комп'ютерний код: все ще не Skynet, але це навчання

Іноді, коли ви годуєте вміст AI з Інтернету, він вивчає природну мову. Іноді він читає весь вміст GitHub і навчається виробляти прості фрагменти коду.

Це історія того, що відбувається, коли AI робить обидва.

Neural Networks - це все ж лють у ці дні. З Siri до саморегулювання, до складу білків та медичної діагностики, потужний дует машинного навчання та великих даних. Neural Nets розпочато як одноручні поні: ланцюг Маркова створив голблдойговський вільний папір, який прийняв як безперервний папір до ("Spammy та мають низькі стандарти") 2005 р. Конференції WMSCI. Марковський ланцюг створив кафкаске славу "Гарков". Інший був здатний зробити trippy зображення, де все виглядало як очне яблуко або кішку.

Охоплення АІ досі перевищує його розуміння. Невдачі та успіхи у програмному забезпеченні розпізнавання обличчя показують як обмеження АІ, так і як навіть машинне навчання сприйнятливо до неявних упереджень даних та програмістів. Але ми пройшли довгий шлях від Smarterchild. Щороку ми будуємо, що ми зробили раніше.

Новий AI записує комп'ютерний код: все ще не Skynet, але це навчання

Ви можете тренувати AI, щоб виробляти прозу так близько до природної мови, що люди мають проблеми з розповіданням, хто його написав: людина або машина. У минулому році люди на Openai Labs (з якими Microsoft є ексклюзивним партнером), приготовану модель під назвою GPT-3, яка може блог, твіт і сперечатися. Вони навчали його, використовуючи частину спільного каналу, яка включає в себе Вікіпедію та цілу тону книг, серед інших підмножин прози та кодексу. Але загальне сканування також показує Github. Коли GPT-3 піддавався великим мешканням загальних даних сканування, він навчився виробляти прозу - але вона також дізналася за осмосом для виготовлення фрагментів інтелектуального комп'ютера.

Інтригований, команда Openai зробила іншу версію моделі GPT-3 та назвала його кодексом, і навчив його на справді колосальний набір прози з загального сканування та комп'ютерного коду від Github та в інших місцях. (Codex увійшов до приватної бета, але технологія насправді вже використовується Github, який використовує його для влади інтелектуального інструменту коду-пропозицій, названого Copilot.) Openai Codex - це Fluent AI, який може приймати нормативну мову як вхід, і генерувати код для завдання. Це чудово - іноді.

Чому кодекс може бути настільки потужним, і так недоліком

Велика сила кодексу - це її вільне володіння. Він може генерувати код на 12 мовах, а її стійкість до введення природного мови є надзвичайно потужним. Але це також є ключовою слабкістю. Кодування є виснажливим, тому що це настільки детально чутлива, але природна мова є брудною та контекстною. Типова або погана логіка можуть обидва зруйнувати функцію цілого шматка інакше міцного програмного забезпечення. І є хороший код і поганий код, і просто Weird Code розміщено в Інтернеті.

Кодекс сприйнятливий до тієї ж проблеми. На відміну від ланцюга марки, кодекс зберігає запис своїх дій у кеш-пам'яті, але його обсяг все ще обмежений і неглибокий. Він обмежується абстрактним жорстким синтаксисом та логічними правилами програмування. Він також обмежується моделями та неявними правилами у фактичних даних, які він використовує. І якщо ми не скажемо це, щоб взаємопородити, це не буде.

Іншими словами, а кодекс може повернути код, який робить те, що ви хочете, це не знає, чому ви хочете, щоб ця функція, і її міркування не обов'язково будуть очевидними. Це як написання математичного доказу: можуть бути декілька шляхів до тієї ж відповіді, деякі з них звинуватили. Іноді кодекс повертає код, який не виглядає нічого подібного до того, що може зробити людський програміст, але це достатньо, він виконує те ж саме. Іноді його код має недоліки безпеки або просто не буде працювати взагалі. Тридцять сім відсотків часу, це працює весь час.

Кодекс настільки міцний частково через силу своїх наборів даних. Загальні сканування індексує велику кількість речей, включаючи WordPress, Blogspot, LiveJournal, Archive.org та тонну вмісту .EDU. Всі вони багаті метаданими, семантичною інформацією та внутрішніми правилами для вивчення кодексу, і вони також розповідають нам багато про те, як люди використовують мови, які ми говоримо. Codex вільно володіє багатьма розмовними мовами, але це також може перекласти між розмовною мовою та Python - обидва складу коду, який робить те, що ви просите це робити, і пояснюючи код вам на звичайній мові. Щоб тренувати кодекс на код програмування, лише одну з багатьох речей, які вони зробили, був годуючи його Python, плюс одинадцять інших основних мов програмування.

Я довго тримав, що один з основних кроків у прогресії АІ буде годувати одного алгоритму навчання до іншої. Під капотом, AI спирається на ідею, яку ви можете використовувати математику, щоб знайти шаблони у даних. Він має ті ж самі обмеження сміття, що має всі інші коди. Навіть вишукані нервові сітки, які роблять незаймане навчання, не можуть вирішити, що являє собою стан успіху, якщо ми не скажемо їм, що шукати. Але велика сила АІ - це ітерація. А.І. методично пройде через величезні ваги даних, ітерацію на тій же проблемі, поки хтось не розповідає, щоб зупинити. Нейрні сітки для вживлення даних, такі як реактивні двигуни, що займаються гусей.

Тут є реальне порівняння, яке можна зробити між сучасним станом мистецтва в дослідженні АІ та фізіології людського мозку. Система має когерентну внутрішню логіку, і вона вже побудована для встановлення закономірностей, як вони стосуються один одного. Одне обмеження на AI полягає в тому, що правила можуть бути глибокими контекстними шарами, а також з поточними методами, це займає велику кількість обчислювальної сили, щоб наблизити результати, яку людина отримає за таку ж проблему або підказку. Мозок використовує закон Вольфа, який тут означає "нейрони, що вогонь разом разом", "на карту асоціацій". Codex використовує внутрішню асоціативну базу даних, що мітки стосунків у процесах ITA даних, і він має буквально 175 мільярдів правил. Обидва вони перекладають природну мову в код. Для мозку вихідний автомобіль - коркові нейрони, а для кодексу це може бути Python.

Ai, що покращує себе

Ми недалеко від інтелектуальної системи, яка може навчитися рекурсивно вдосконалюватися. Якщо ми стоїмо на плечах гігантів, існує велика кількість гігантів нижче нас, і ми швидко зростаємо. Курцвейл обговорює прискорення "хокейного палиця" людського прогресу, а також позиції АІ як природний наступний рівень складності у нашому колективному майстерні. Системи Robust AI мають можливість інтегрувати багато потоків даних одночасно. Я називаю кодексом сингулярність у жарті, але все жартуєш, це дійсно, здається, є ключовим моментом, в якому АІ стає здатним вдосконалюватися на собі. Який кодекс може шукати весь світ, як перший мерехтіння самотнього нейрона, оскільки він встановлює перші синапси. Де і як це буде видно з іншими системами навчання, залишається видно.

У шкалі SkyNet, створюючи весь антагоніст вхідного АІ, прийняв ресурси на рівні того, що сьогодні Microsoft виливається в кодекс, а кодекс іноді бореться над друк того ж рядка п'ять разів. Зрозуміло, що ми не на цьому рівні витонченості. Замість цього кодекс не відрізняється від агрегатора, великого кореляційного двигуна від злодіїв долі. Найбільш корисним, як програмування ад'юнкт для досвідчених програмістів, як і механічних роботів, які допомагають людям автоматизувати витягнуту з повторюваних завдань. Щоб автоматизувати процес з кодом, ви повинні точно обмежувати свою роботу, щоб переконатися, що ви і IDE знаходяться на тій же сторінці, щоб ви отримали те, що ви просите. Кодекс може допомогти з деяким з цієї drudground, і саме там він світить.

Це чудово уявити собі таку систему навчання, щоб побудувати свої власні успіхи. І все ж, що потрібно, щоб зробити Codex Go, є абсолютно вражаючою кількістю перехресних даних, з усією інфраструктурою, яка команда даних. Він повертає випуск, виходячи з того, що ви дали його вчитися. Хоча Codex може допомогти програмістам повними нудними завданнями та переконатися, що всі комолодини включені, це все ще дивиться на логічні помилки. Дивовижний, але крихкий. Можливо, краще, щоб ми заздалегідь виконуємо бета-версію для сингулярності.