CRAZY IRON Слайдеры на дуги с логотипом HONDA D22 по цене 990р Комплектующие, ЗАЩИТА ДЛЯ МОТОЦИКЛА для мотоциклов
Адрес склада | Количество товара |
---|---|
Санкт-Петербур, ш. Революции 63. Склад | 4 |
Москва, Волоколамское ш. д. 79 к.1 | 6 |
Идентификационный номер:
5220
Бренд:
CRAZY IRON
Информация:
Универсальные слайдеры на дуги.
Подходят на все дуги диаметром 22мм.
Слайдеры необходимо расположить на дуге вдоль движения мотоцикла.
Правильное расположение слайдера обеспечивает скольжение мотоцикла по прямой траектории.
Истираясь, слайдер гасит скорость скольжения, не давая мотоциклу закручиваться, выполняя таким образом роль полозьев лыжи.
Простая установка, надежная конструкция.
Справочная документация:
Доставка:
- Курьером по Санкт-Петербургу
- Транспортной компанией ПЭК из Санкт-Петербурга в ваш город.
- Почтой России в регионы где нет альтернативных вариантов доставки
- Самовывоз из пунктов выдачи заказа (Санкт-Петербург, Краснодар, Москва)
Оплата:
- онлайн оплата банковской картой (VISA, MASTERCARD)
- оплата банковской картой или наличными при самовывозе из магазина (Санкт-Петербург,
Краснодар) - Юридические лица могут самостоятельно выписать себе счет на оплату.
Возврат и обмен:
В соответствии со статьей 26.1 ЗоЗПП возврат должен быть осущеcтвлён в течение 7 дней со
дня
получения товара.
Возврат или обмен товара возможен, если сохранена упаковка, товарный вид и
потребительские
свойства товара, а также сопроводительные документы к покупке. В этом случае мы
гарантируем вам
возврат стоимости товара без учета стоимости доставки.
Перемычка разборная на дуги d трубы 10мм общая длина 5м
Описание
Перемычка служит для созания прочности конструкции, быстро и удобно собирается и крепится на парник/теплицу. Преимуществами являются легкость, скорость сборки/разборки, устойчивость к погодным условиям
В наличии 309 ₽
Характеристики
- Размеры
Наружный диаметр трубы, мм:
10 мм
Высота:
5000 мм
- Вес, объем
Вес нетто:
0.620 кг
- Другие параметры
Цвет:
зеленый
Материал:
металл
Производитель:
Сезонность:
весна, лето
Страна происхож.:
Россия
Торговая марка:
Характеристики
Торговый дом «ВИМОС» осуществляет доставку строительных, отделочных материалов и
хозяйственных товаров. Наш автопарк — это более 100 единиц транспортных стредств. На каждой
базе разработана грамотная система логистики, которая позволяет доставить Ваш товар в
оговоренные сроки. Наши специалисты смогут быстро и точно рассчитать стоимость доставки с
учетом веса и габаритов груза, а также километража до места доставки.
Заказ доставки осуществляется через наш колл-центр по телефону: +7 (812) 666-66-55 или при
заказе товара с доставкой через интернет-магазин. Расчет стоимости доставки производится
согласно тарифной сетке, представленной ниже. Точная стоимость доставки определяется после
согласования заказа с вашим менеджером.
Уважаемые покупатели! Правила возврата и обмена товаров, купленных через наш интернет-магазин
регулируются Пользовательским соглашением и законодательством РФ.
ВНИМАНИЕ! Обмен и возврат товара надлежащего качества возможен только в случае, если
указанный товар не был в употреблении, сохранены его товарный вид, потребительские свойства,
пломбы, фабричные ярлыки, упаковка.
Доп. информация
Цена, описание, изображение (включая цвет) и инструкции к
товару Перемычка разборная на дуги d трубы 10мм общая длина 5м на сайте носят информационный
характер и не являются публичной офертой, определенной п.2 ст. 437 Гражданского
кодекса Российской федерации. Они могут быть изменены производителем без предварительного
уведомления и могут отличаться от описаний на сайте производителя и реальных характеристик
товара. Для получения подробной информации о характеристиках данного товара обращайтесь
к сотрудникам нашего отдела продаж или в Российское представительство данного
товара, а также, пожалуйста, внимательно проверяйте товар при покупке.
Купить Перемычка разборная на дуги d трубы 10мм общая длина 5м в магазине
Санкт-Петербург вы можете в интернет-магазине «ВИМОС».
Погода на Дуги-Отоке сейчас / Температура воды в море / Прогноз погоды на 3 дня
31 января, понедельник
Местное время: | 04:27 |
Разница с Москвой: | -2 часа |
7°C
| |
Осадки: 0% | Ощущается: 5°C |
Давление: | 763 мм. рт. ст. |
Влажность воздуха: | 64% |
Видимость: | 10 км. |
Длина светового дня: | 9 ч. 50 мин. |
Средняя температура
31.01
пн
ДЕНЬ
10°C
СЗ 8 м/c
осадки
0%
НОЧЬ
8°C
Ю 6 м/c
осадки
86%
01.02
вт
ДЕНЬ
10°C
Ю 7 м/c
осадки
0%
НОЧЬ
5°C
Ю 2 м/c
осадки
0%
02. 02
ср
ДЕНЬ
10°C
ЮВ 8 м/c
осадки
0%
НОЧЬ
8°C
ЮЗ 3 м/c
осадки
0%
* Представленные выше графики отображают усредненные данные о погоде, собранные за последние три года.
Самые солнечные месяцы:
Самые теплые месяцы:
Самое теплое море:
Самые холодные месяцы:
Самые дождливые месяцы:
Самые ветреные месяцы:
Развалины древней столицы — Солин и древняя крепость Клис.
Голубое и Красное озера, бунары и захоронения богомилов.
Способы крепления поликарбоната на дуги теплиц
Легкий и гибкий пластик под названием поликарбонат завоевал всеобщее признание у населения. Им укрывают теплицы, получая идеальный микроклимат для выращивания всех видов культур. Хотя многие предпочитают приобрести парник с услугой профессионального монтажа под ключ, есть и те, кто хочет самостоятельно – обстоятельно и аккуратно – уложить поликарбонат на каркас. Это довольно просто сделать, зная основные правила обращения с этим материалом и владея навыками правильной укладки. Мы регулярно занимаемся монтажом поликарбонатных листов и хотим уберечь вас от основных ошибок, а также дать практические советы для надежной и долговечной укладки своими руками.
Как располагать материал на каркасе
Учитывая, что внутри поликарбоната есть продольные каналы с ячейками, важно помнить – в них может образовываться конденсат. Чтобы он не застаивался и не разрушал пластик изнутри (хотя он очень устойчив к влаге), нужно располагать листы под наклоном – не стоит укладывать листы горизонтально и параллельно земле.
Если у вас арочная теплица, то листы нужно укладывать так, чтобы каналы имели направление, параллельное дугам. Чем более вертикальное положение занимают листы, тем лучше. Само собой, что на крыше двускатного парника каналы поликарбоната должны идти по направлению скатов.
Также важный нюанс – одна их сторон поликарбонатного листа всегда покрыта невидимым слоем для защиты пластика от ультрафиолета. Поэтому нужно располагать лист этой защищенной поверхностью только к солнцу – чтобы не вышло так, что он окажется внутри теплицы.
Особенности крепежа
Для закрепления листов на металлических дугах понадобятся кровельные саморезы: длиной 19 мм для закрепления одного слоя и длиной 25 мм для крепежа участков, где поликарбонат уложен внахлест (место стыка листов). Для надежного крепления достаточно только саморезов, но можно улучшить технологию монтажа для более длительного срока службы конструкции. Лучше использовать саморезы в комплекте с шайбой, уплотнителем и заглушкой. Так крепеж будет абсолютно плотно прилегать к материалу, а место соединения и сами саморезы будут надежно защищены от влаги, ветра, солнца и пыли. Благодаря этому винты прослужат не меньше, чем поликарбонат.
Этапы укладки
Монтаж поликарбоната осуществляется поэтапно, по определенным шагам. Следуя этой схеме, вы сможете правильно и качественно покрыть теплицу материалом.
Длины листа должно хватать так, чтобы его края доставали до нижней планки основания каркаса, то есть – чтобы после наложения на основу не оставалось щелей и зазоров. При покупке теплицы вам могут нарезать поликарбонат на листы нужной длины (в соответствии с высотой каркаса), либо вы можете сделать это самостоятельно при помощи ножа – предварительно измерив периметр закрытия.
Перед тем как положить лист на каркас, нужно проделать отверстия в дугах – если их нет. Далее накладывается поликарбонат, первый лист крепится только в области торца теплицы. Другой край должен выходить на 5 см за следующую дугу. В этом месте накладывается второй лист поликарбоната, также с нахлестом шириной в 5 см. Здесь понадобятся более длинные саморезы, которыми и нужно закрепить материал поверх второго листа. И таким образом теплица накрывается до противоположного края.
Поскольку пластик имеет свойство расширяться и сужаться под воздействием температурных перепадов, то не следует слишком плотно соединять поверхности саморезами. Должно быть небольшое расстояние для расширения, тогда материал не деформируется в процессе эксплуатации.
Урок №6 Построение дуг
В этом уроке будут показаны методы построения дуг.
Инструменты из группы Дуга могут быть вызваны из панели инструментов, расположенной слева, или из меню Вставка / Дуга.
Инструменты для построения дуг идентичны инструментам Круг / Эллипс.
- Центр и радиус
- Концентрические
- По двум точкам
- Касание к дуге или кривой
- Касание к линии
- Начало / Длина / Конец
- Начало / Конец / Длина
- Касание к 3 дугам
- Касание к объектам
- Касание к 2 объектам
Используя метод Центр и радиус, строится дуга, основываясь на центре, точке окружности, начальном и конечном угле. Выберем положение центра дуги и точки на окружности, из которой будет вырезана дуга. Установим начальный угол дуги, а затем, перемещая курсор против часовой стрелки, создадим дугу.
Метод Концентрические позволяет построить несколько дуг различного радиуса с общим центром. Дуги создаются, как и в методе Центр и радиус. Для завершения построения вызовите контекстное меню и выберете команду Ввод.
Выбрав метод По двум точкам, можно начертить дугу на основании двух крайних точек. Сначала строится окружность по двум точкам, а потом, меняя положение курсора, устанавливается начальный угол дуги и чертится дуга.
Метод Касание к дуге или кривой применяется для построения дуги касательной к заданной окружности или кривой.
Касание к линии используется при создании дуги, касающейся заданной линии.
Метод Начало / Длина / Конец позволяет задать дугу по трем точкам. Первая точка определяет начало дуги, вторая – точку на дуге, а третья – конец дуги.
Метод Начало / Конец / Длина отличается от предыдущего метода только порядком задания точек дуги. Первая точка устанавливает начало дуги, вторая – ее конец, а третья – точка, через которую проходит дуга.
Имея в качестве основания 3 окружности или дуги, можно построить дугу, воспользовавшись инструментом Касание к 3 дугам.
При использовании метода Касание к объектам можно построить дугу по точкам трех объектов.
Касание к 2 объектам помогает построить дугу, соприкасающуюся с двумя объектами – линиями, дугами, окружностями или эллипсами.
Выбирая наиболее подходящий вариант построения дуги, Вы можете сократить время работы над чертежами.
« Урок №5 Построение эллипса | Урок №7 Построение эллиптической дуги » |
---|
Подключение машины в масштабе, запустив сценарии PowerShell с Configuration Manager — Azure Arc
-
Статья -
- Чтение занимает 3 мин
Были ли сведения на этой странице полезными?
Оцените свои впечатления
Да
Нет
Хотите оставить дополнительный отзыв?
Отзывы будут отправляться в корпорацию Майкрософт. Нажав кнопку «Отправить», вы разрешаете использовать свой отзыв для улучшения продуктов и служб Майкрософт. Политика конфиденциальности.
Отправить
Спасибо!
В этой статье
Microsoft Endpoint Configuration Manager облегчает комплексное управление серверами, поддерживающими безопасное и масштабируемое развертывание приложений, обновлений программного обеспечения и операционных систем. В Configuration Manager имеется интегрированная возможность выполнения сценариев PowerShell.
Configuration Manager можно использовать для запуска скрипта PowerShell, который автоматизирует масштабирование на серверах с поддержкой дуги Azure.
Прежде чем приступить к работе, ознакомьтесь с данными о необходимых компонентах и убедитесь, что подписка и ресурсы соответствуют требованиям. Сведения о поддерживаемых регионах и других связанных вопросах см. в статье Поддерживаемые регионы Azure. Кроме того, ознакомьтесь с нашим руководством по планированию для больших масштабов, чтобы понять критерии проектирования и развертывания, а также ознакомиться с рекомендациями по управлению и мониторингу.
Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начинать работу.
Необходимые условия для Configuration Manager запуска сценариев PowerShell
Чтобы использовать скрипты PowerShell в Configuration Manager, необходимо соблюдать следующие условия.
- Версия Configuration Manager должна быть 1706 или более поздняя.
- Чтобы импортировать и создавать скрипты, учетная запись Configuration Manager должна иметь разрешения на Созданиесценариев SMS.
- Чтобы утвердить или отклонить скрипты, ваша учетная запись Configuration Manager должна иметь разрешения на утверждениесценариев SMS.
- Для выполнения скриптов учетная запись Configuration Manager должна иметь разрешения на выполнение скриптов для коллекций.
Создание субъекта-службы и подготовка сценария установки
Перед запуском сценария для подключения компьютеров необходимо выполнить следующие действия.
Выполните действия, чтобы создать субъект-службу для адаптации в масштабе. Назначьте субъекту-службе роль адаптации подключенного компьютера Azure и ограничьте область роли целевой зоной Azure. Запишите секрет субъекта-службы, так как это значение потребуется позже.
Выполните действия по созданию скрипта установки из портал Azure. Хотя этот сценарий установки будет использоваться позже, не запускайте сценарий в PowerShell.
Создайте скрипт в Configuration Manager
перед началом работы проверьте Configuration Manager умолчанию Параметры , что политика выполнения PowerShell в разделе агент компьютера имеет значение обходить.
- В консоли Configuration Manager выберите Библиотека программного обеспечения.
- В рабочей области Библиотека программного обеспечения выберите скрипты.
- На вкладке Главная в группе создать выберите создать скрипт.
- На странице Скрипт мастера создания скриптов настройте следующие параметры.
- Имя скрипта — подключение дуги Azure
- Язык скрипта — PowerShell
- Импорт — импортируйте скрипт установки, созданный в портал Azure.
- В мастере скриптов вставьте скрипт, созданный из портал Azure. Измените этот вставленный сценарий на секрет субъекта-службы для созданного субъекта-службы.
- Завершите работу мастера. Новый скрипт отображается в списке Скрипт с состоянием Ожидается утверждение.
Утверждение скрипта в Configuration Manager
С учетной записью, которая имеет разрешения на утверждение для сценариев SMS, выполните следующие действия.
- В консоли Configuration Manager выберите Библиотека программного обеспечения.
- В рабочей области Библиотека программного обеспечения выберите скрипты.
- В списке Скрипт выберите скрипт, который требуется утвердить или отклонить. Затем на вкладке Главная в группе сценарий выберите утвердить или отклонить.
- В диалоговом окне утверждение или запрет скрипта выберите утвердить для скрипта.
- Завершите работу мастера и убедитесь, что новый скрипт отображается как утвержденный в списке сценариев .
Запустите скрипт в Configuration Manager
Выберите коллекцию целевых объектов для скрипта, выполнив следующие действия.
- В консоли Configuration Manager выберите элемент Активы и соответствие.
- В рабочей области активы и соответствие выберите коллекции устройств.
- В списке коллекции устройств выберите коллекцию устройств, на которых требуется выполнить скрипт.
- Выберите коллекцию по своему усмотрению и нажмите кнопку выполнить сценарий.
- На странице Скрипт мастера запуска скриптов выберите скрипт, который вы создали и утвердили.
- Нажмите кнопку Далее и завершите работу мастера.
Проверка успешного подключения к службе «Дуга Azure»
Мониторинг состояния скрипта указывает, успешно ли установлен сценарий подключенного компьютера в коллекции устройств. Успешно подключенные серверы с поддержкой Arc Azure также будут отображаться в портал Azure.
Дальнейшие действия
ДУГИ БЕЗОПАСНОСТИ | МОДЕЛИСТ-КОНСТРУКТОР
Хочу поделиться своим вариантом изготовления дуг безопасности, которые установлены мною на мотоцикле «Ява» и вот уже больше года надежно служат. Знакомых мотоциклистов заинтересовала их конструкция: снимали размеры, форму и т. д. Поэтому я решил предложить их читателям журнала.
Дуги безопасности для защиты ног да и самого мотоцикла при падении, а также щитки на них устанавливают многие. Однако не всем удается выбрать правильную форму и размеры этого несложного защитного устройства.
Предлагаемые мною дуги безопасности одновременно являются и вместительной емкостью, в которой можно иметь постоянный запас масла (1000—1500 г).
Для изготовления дуг необходима стальная труба Ø 30— 35 мм, лучше из «нержавейки». Чтобы при изгибе не получилась «гармошка», трубу необходимо предварительно набить сухим песком, с обоих торцов загнать деревянные пробки — заглушки. После этого в месте изгиба трубу нужно разогреть по всей окружности до красного свечения и сразу гнуть.
Щитки можно изготовить из прозрачного оргстекла, винипласта или тонкой жести; крепится щиток к ушкам, приваренным к дуге.
Дуга безопасности и ее детали:
А — труба ограждения, она же емкость для хранения масла, Б — заливная горловина с пробкой, В — сливное отверстие с пробкой, Г — дуги безопасности на раме мотоцикла.
Для пластины крепления дуги используется листовая сталь толщиной от 3 до 5 мм (размеры — по рисунку).
Пробки для залива и слива масла вытачиваются на токарном станке, они могут иметь различную конструкцию.
Дуги состоят из двух одинаковых половин, но перед привариванием пластин их необходимо разделить на правую и левую. Расположение пластин и пробок показано на рисунке.
После установки дуг на мотоцикл приступают к изготовлению щитков: их подгоняют под дуги и выхлопные трубы. Для лучшего охлаждения двигателя верхний конец щитка сгибают,
И. ГАВРИЛИН, г. Гродно
Рекомендуем почитать
- ПОПЕРЕЧНЫЙ НОЖ
Простейший скребок для очистки, например, швов от застывших подтеков клея, выступивших при сплачивании досок в мебельный щит, или оконного стекла после покраски рам, можно сделать… - «ЧИ» ОЗНАЧАЕТ — «СРЕДНИЙ»
В отличие от большинства других стран японское танкостроение начиналось не с легких, а со средних танков. Первым стал средний танк «2589» (см. «Моделист-конструктор» № 1,1997),…
Дуги и хорды
На рисунке 1 окружность O имеет радиусы OA, OB, OC и OD. Если хорды AB и CD имеют одинаковую длину, можно показать, что Δ AOB ≅ Δ DOC. Таким образом, м ∠1 = м ∠2, что, в свою очередь, дает м = м . Это сформулировано как теорема.
Рисунок 1 Окружность с четырьмя радиусами и двумя хордами.
Теорема 78: В окружности, если две хорды равны по размеру, то соответствующие им малые дуги равны по размеру.
Обратное утверждение этой теоремы также верно.
Теорема 79: В окружности, если две малые дуги равны по размеру, то их соответствующие хорды равны по размеру.
Пример 1: Используйте рисунок 2 , чтобы определить следующее. (a) Если AB = CD и = 60°, найдите м CD. (b) Если м = и EF = 8, найдите GH.
Рисунок 2 Связь между равенством мер (не диаметральных) хорд и равенством мер соответствующих им малых дуг.
GH = 8 (теорема 79)
Некоторые дополнительные теоремы о хордах в окружности приводятся ниже без пояснений. Эти теоремы могут быть использованы для решения многих типов задач.
Теорема 80: Если диаметр перпендикулярен хорде, то он делит хорду и ее дуги пополам.
На рис. 3, UT, диаметр QS перпендикулярен хорде QS. По теореме 80 QR = RS, m = м , и м = м .
Рисунок 3 Диаметр, перпендикулярный хорде.
Теорема 81: В окружности, если две хорды равны по размеру, то они равноудалены от центра.
На рисунке 4, если AB = CD , то по теореме 81 OX = OY .
Рисунок 4 В окружности отношения между двумя хордами равны по размеру и равноудалены от центра.
Теорема 82: В окружности, если две хорды равноудалены от центра окружности, то эти две хорды равны по размеру.
На рисунке 5, если OX = OY , то по теореме 82 AB = CD .
Пример 2: Используйте рисунок, чтобы найти x .
Рисунок 5 Окружность с двумя малыми дугами равной длины.
Пример 3: Используйте рисунок 6, на котором м = 115°, м = 115° и BD = 10, чтобы найти AC .
Рисунок 6 Окружность с двумя малыми дугами равной длины.
Пример 4: Использование Рисунок 7, в котором ab = 10, OA = 13 и м ∠ AOB = 55 ° С, чтобы найти OM , м и м .
Рис. 7 Окружность с диаметром, перпендикулярным хорде.
Итак, ST ⊥ AB, а ST — диаметр. Теорема 80 говорит, что AM = BM . Поскольку AB = 10, то AM = 5. Теперь рассмотрим прямоугольный треугольник AMO .Поскольку OA = 13 и AM = 5, OM можно найти с помощью теоремы Пифагора.
Кроме того, Теорема 80 говорит, что м = м и м = м . Поскольку м ∠ AOB = 55°, то м = 55° и м = 305°. Следовательно, м = 27 ½ и м = 152 ½°.
Пример 5: Используйте рисунок 8, на котором AB = 8, CD = 8 и OA = 5, чтобы найти ON .
Рисунок 8 Окружность с двумя хордами равной длины.
По Теореме 81 , НА = ОМ . По теореме 80 , AM = MB , поэтому AM = 4. OM теперь можно найти с помощью теоремы Пифагора или путем распознавания пифагорейской тройки. В любом случае ОМ = 3. Следовательно, НА = 3.
Основы геометрии дуг и вытянутых углов
Дуги и стягиваемые углы — Малая и большая дуги в окружности
Дуги и стягиваемые углы: Любая дуга окружности будет стягивать в центре угол, в два раза превышающий угол, который она стягивает в любой точке дополнительной дуги.Эта концепция вытягивания угла дуги играет важную роль в решении геометрических задач.
Концепция дугового расширения
Для начала мы будем использовать следующий рисунок для пояснения концепции. На рисунке дуга AB, окрашенная в красный цвет, образует угол $\angle APB=\theta$ в любой общей точке P на дополнительной дуге APB, окрашенной в синий цвет. Эта дополнительная дуга является в данном случае главной дугой. Тот же участок дуги AB, окрашенный в красный цвет, стягивает угол $\угол AOB$ в центре.
На этом фоне мы теперь сформулируем известное соотношение между двумя углами, $\угол APB$ и $\угол AOB$. Для удобства мы называем это отношение концепцией вытягивания угла дуги .
Эта важная концепция утверждает,
Любая дуга окружности образует в центре угол, в два раза превышающий угол, который она образует в любой точке дополнительной дуги.
В соответствии с этим определением на приведенном выше рисунке меньшая или меньшая дуга AB, окрашенная в красный цвет, образует угол $\angle AOB=2\theta$ в центре, где угол, на который она опирается в любой общей точке P на дополнительную большую дугу APB, равен , $\угол APB=\theta$.
Вместо терминов большая или малая дуга мы будем использовать с этого момента единую терминологию Дополнительная дуга , которая образует остальную часть круга, а ссылка является дугой, представляющей центральный интерес. В нашем случае дуги красного цвета AB и синего цвета APB дополняют друг друга.
На рисунке выше показана первая и наиболее часто встречающаяся форма, используемая для объяснения этой концепции.
В нашем предыдущем курсе базовые и расширенные концепции геометрии, часть 3, круги мы упомянули эту богатую концепцию, а позже мы широко использовали ее для решения геометрических задач различного уровня сложности.Но мы не обсуждали, насколько эта связь верна. Другими словами, мы не показали доказательства этой концепции.
На этом занятии мы обсудим механизм, с помощью которого связь сохраняется во всех конфигурациях.
Вы можете пропустить причины необходимости, показанные ниже.
Необходимость обсуждения доказательства во всех формах
Мы чувствуем необходимость исчерпывающе показать, как это происходит, по трем причинам:
- Это свойство стягиваемых углов в окружности хотя и носит принципиальный характер, но широко используется при решении задач геометрии. Если вы не знаете механизма того, как это происходит, у вас не будет внутренней веры в концепцию , и вы будете склонны применять ее механически, как формулу, заученную наизусть.
- Эта концепция используется не только непосредственно для решения задач, она также используется в качестве основы для других богатых и важных концепций в геометрии . Это делает концепцию еще более важной.
- Наконец, мы склонны иметь дело с простейшей конфигурацией, как показано выше для объяснения этой важной концепции.Если такое важное понятие не будет показано во всех его вариациях и механизмах, то при решении задач с необычными конфигурациями, где нужно использовать механизм, вы можете колебаться из-за отсутствия полной ясности. Исчерпывающее понимание того, как работает концепция во всех ее вариациях, должно создать полную ясность концепции вместе с ее механизмами в вашем сознании, что повысит уверенность и эффективность использования концепции.
Первая конфигурация
На приведенном выше рисунке представлена первая конфигурация.Особенность этой простейшей конфигурации заключается в том, что когда вы соединяете центр с точкой P на дополнительной дуге, два красиво выглядящих равнобедренных треугольника формируются с двух сторон радиуса, соединяющего центр и точку P, что значительно помогает логическому доказательству.
Механизм
(или доказательство, этот термин «доказательство» нам не нравится, поэтому оно здесь вторично)
Предположим, что есть два равнобедренных треугольника $\треугольник APO$ и $\треугольник BPO$ (равнобедренный, так как радиусы AO=BO=PO),
$\угол APO = \угол OAP = x$ и
$\угол BPO = \угол OBP =y$.0 — (\угол AOP + \угол BOP) = 2\theta$, где $\угол AOB$ — угол, удерживаемый дугой AB в центре.
Таким образом, угол, заключенный в центре дуги AB, в два раза больше угла, который он составляет в любой точке P на дополнительной дуге APB.
Две подконцепции
Здесь два понятия:
- угол, образуемый дугой $AB$ в центре , в два раза больше этого угла, образуемого на периферии в любой точке (на дополнительной дуге).
- дуга $AB$ стягивает один и тот же угол в любой точке остальной части периферии окружности (на дополнительной дуге).Если верно первое, то сразу следует второе.
Теперь, если вы повернете P по периферии, скажем, против часовой стрелки (результаты вращения по часовой стрелке будут зеркальными и одинаковыми), на определенном этапе точки P, центр O и конец хорды B упадет на прямую линию. До этой конфигурации конфигурация на приведенном выше рисунке и соответствующее доказательство будут действовать во всех точках дополнительной дуги.
Это наша вторая конфигурация, и здесь вместо предыдущего механизма новый механизм по-прежнему будет поддерживать связь.
Вторая конфигурация
Это важная конфигурация, так как дополнительная геометрическая концепция, которая является очень базовой, будет верна в этой конфигурации. Рисунок показан ниже.
Поскольку B, O и P коллинеарны, три точки образуют диаметр BP.
Механизм
Внешний угол $\угол AOB = \угол OPA + \угол OAP = \theta + \theta = 2\theta$, где $\угол APO = \угол APB = \theta$, удерживаемый дугой AB на дополнительной дуге APB . 0$. Это механизм хорошо известного результата.
Если мы теперь продолжим вращать точку P против часовой стрелки по периферии круга, мы достигнем третьей конфигурации , где нам нужно снова использовать новый механизм, чтобы показать, как работает концепция.
Третья конфигурация
Третье положение точки P показано на рисунке ниже.
В этом случае также образуются два равнобедренных треугольника $\треугольник OAP$ и $\треугольник OBP$ с углами при основании, $\угол OPA = \угол OAP = y$ и $\угол OPB = \угол OBP = x$.
Кроме того, для краткости предположим, что угол, стягиваемый дугой AB в точке P на дополнительной дуге, равен $\angle APB = a$, а угол, стягиваемый в центре той же дугой, $\angle AOP = b$. Здесь точка P находится на той же стороне диаметра, продолжающего радиус BO, что и дуга AB. В первой конфигурации P находился на противоположной стороне диаметра, а во второй конфигурации — на самом диаметре. Эта разница в относительных положениях точки P создала три различные конфигурации.0 — 2 года$
Или $b = 2(y — x) = 2a$.
В этой конфигурации также выполняется то же соотношение, хотя знаки некоторых углов различны.
Эти три конфигурации затем вселяют в нас уверенность, что во всех точках P на дополнительной дуге AB концепция стягивания угла дуги останется в силе.
Теперь, если мы продолжим вращать точку P против часовой стрелки дальше, она пересечет A и будет лежать между точками A и B. Это четвертая конфигурация, где соотношение между углами все еще будет верным, но определение углов будет другим.0 — \угол АОП = 2\угол \альфа$
Или $\угол\бета = 2\угол\альфа$,
Здесь $\угол \beta$ — угол, образуемый большой дугой в центре, а $\угол \alpha$ — угол, образуемый той же дугой в любой точке P на дополнительной к ней малой дуге APB.
Аналогичное соотношение между стягивающими углами дуги сохраняется, но в этом случае $\угол \beta$ – это начальный угол, удерживаемый в центре интересующей дуги в качестве главной дуги.
В соответствии с нашей концепцией стягивания угла дуги, этот угол в два раза больше угла, удерживаемого той же большой дугой в любой точке P ее дополнительной дуги, которая оказывается малой дугой.Мы использовали малую дугу в качестве опорной дуги в наших трех предыдущих конфигурациях с большой дугой в качестве дополнительной дуги. В этой четвертой конфигурации роли меняются местами, и теперь большая дуга является опорной дугой, а меньшая дуга является дополнительной дугой.
Несмотря на смену ролей, концепция стягивания угла дуги остается в силе.
Примечание: Если мы используем термины «большая дуга» и «малая дуга», эта четвертая конфигурация нуждается в смене ролей между большой дугой и малой дугой в определении концепции и, таким образом, во втором дополнительном определении. Но , если мы используем концепцию дополнительной дуги, для всех целей достаточно одного определения.
Использование концепции
Мы идентифицируем четыре различных богатых концепции , которые основаны на концепции стягивающей дуги угла,
- Угол, образуемый дугой в любой точке дополнительной дуги, одинаков. Это следует из концепции стягиваемого угла, потому что этот угол равен фиксированному углу, удвоенному его значению в центре.0$. Это объясняется в нашем предыдущем обсуждении основных и богатых концепций геометрии, часть 3, круги.
- Богатая концепция Секанс касательной. Это опять-таки богатая концепция, в которой в качестве базового механизма используется концепция стягивания угла. Это также было объяснено в нашем предыдущем обсуждении основных и богатых концепций геометрии, часть 3, круги.
Исчерпывающий подход
Следуя Принципу полноты , мы, таким образом, разработали метод вращения точки P вдоль периферии круга для формирования всех возможных уникальных конфигураций, связанных с концепцией вытягивания угла дуги, для исчерпывающего и всестороннего понимания механизма, стоящего за ним. .0$
Раствор
Анализ проблемы
Рисунок, изображающий проблему, показан ниже,
Искомый угол, который нужно найти, равен $\angle APC$. Это один из четырех углов в точке пересечения P двух хорд AB и CD, из четырех углов, если известен один угол, можно найти остальные (поскольку четыре угла состоят только из двух уникальных углов).
Поскольку $\угол APD$ находится в области заданных углов, мы чувствуем, что это должно дать нам прорыв.0$.
Ключевые понятия: Анализ конечного состояния — Свойство пересечения двух линий — Концепция стягивания угла дуги — Идентификация шаблона перекрытия угла.
Пошаговая справка по геометрии в Suresolv
Чтобы получить наилучшие результаты из обширного ассортимента статей учебников , вопросов и решений по Геометрия в Suresolv, следуйте инструкциям,
Suresolv Geometry Reading and Practice Guide для SSC CHSL, SSC CGL, SSC CGL Tier II и других конкурсных экзаменов.
Список статей включает ВСЕ статьи по геометрии и соответствующим темам в Suresolv, а актуален.
← →
ученых ARCS | КОЛЛЕДЖ НАУК
Текущие исследования
В настоящее время я работаю в лаборатории доктора Николаса Шикумы, где наши исследования надеются понять, как бактериальные сообщества могут влиять на развитие животных и способствовать ему. Недавно мы добились значительного прогресса в понимании того, как бактериальные белки могут вводиться животным и изменять определенные клеточные процессы.Наша работа показала, что бактерии могут вводить белки непосредственно в клетки животных, чтобы контролировать их функции и поведение. Недавно мы обнаружили, что две бактерии производят белки, которые вводятся животным и контролируют два основных клеточных процесса.
Один белок представляет собой токсин, который нацелен на ядро животной клетки и разрушает ДНК. Я опубликовал это открытие в 2019 году в влиятельном журнале Cell Reports в качестве соавтора. Мы продолжили это исследование в прошлом году и обнаружили, что этот процесс завершается через высокоспецифичный эукариотический сигнальный путь, опосредованный протеинкиназой С и митоген-активируемыми протеинкиназными путями.Это открытие важно, потому что оно еще больше подтверждает роль этих бактерий в опосредовании развития животных. Мы представили эту статью в отдел биологии развития и в настоящее время отвечаем на критику рецензента. Мы надеемся опубликовать эту статью до конца 2021 года.
Чтобы продолжить понимание того, как активируются эти пути, за последний год мы добились значительного прогресса в открытии функции эффекторного белка. Наша работа показала, что этот белок обладает активностью липазы, и мы работаем над тем, чтобы понять, как активность липазы напрямую стимулирует метаморфоз.Это открытие затем свяжет воедино все исследования, которые я завершил до сих пор, и предоставит полную картину того, как бактерия стимулирует развитие животных. Я надеюсь закончить это исследование и опубликовать его в качестве моей последней статьи для моей кандидатской диссертации весной 2022 года.
В качестве соавтора я также представил обзорную статью, которая была опубликована в конце 2020 года в Annual Reviews of Microbiology. В этом обзоре подчеркивается роль водных бактерий и их роль в развитии морских животных, таких как кораллы.В нашем обзоре также подчеркивается, как бактерии вносят значительный вклад в другие естественные процессы, такие как колонизация морских беспозвоночных уловов судов, известная как биообрастание. Этот процесс может быть очень вредным для окружающей среды из-за увеличения потребления ископаемого топлива, и понимание того, как предотвратить увеличение биологического обрастания бактериями, может значительно сократить выбросы углерода.
Публикации и постеры
K Malter , M Esmerode, M Damba, E Forsberg и N Shikuma, Липидомика метаморфоза трубчатых червей в ответ на действие бактерий раскрывает роль протеинкиназы C и передачи сигналов MAPK (в обзоре, представлено в январе 2021 г. ).
Аманда Т. Алкер, Бхумика С. Годе, Альфер Э. Аспирас, Джеффри Э. Джонс, Сама Р. Майкл, Дэвид Агилар, Одриа Д. Кейн, Алек М. Кандиб, Джулиан М. Сизмич, Элиз А. Кларк, Алисса К. Коццо, Лаура Э. Фигероа, Питер А. Гарсия, Кейси М. Хини, Александра Т. Леви, Люк Макнайт, Анна С. Маккарти, Джон П. Макнамара, Келвин А. Нгуен, Кендалл Н. Роллин, Габриэлла Ю. Сальседо, Джулия А. Шоуолтер, Эндрю Д. Сью, Тони Р. Замро, Тиффани Л. Данбар, Кайл Э. Малтер, Николас Дж. Шикума.(2021) Проект геномных последовательностей 10 бактерий из группы морских псевдоальтеромонас. Объявления о микробиологических ресурсах, 10 (32). DOI: https://doi.org/10.1128/MRA.
G Cavalcanti, A Alker, N Delherbe, K Malter , NJ Shikuma. (2020) Влияние бактерий на метаморфоз животных. Ежегодные обзоры микробиологии. 74: в прессе . DOI: 10.1146/annurev-micro-011320-
(2016)Хвостообразная структура бактериального фага убивает эукариотические клетки путем введения эффектора нуклеазы. Cell Reports , https://doi.org/10.
C Ericson*, F Eisenstein*, J Medeiros, K Malter , G Cavalcanti, RW Zeller, DK Newman, M Pilhofer и NJ
Blackwood, E. Plate, L. Paxman, R. Malter, K. Wiseman, L. Kelly, J. (2017) Высокопроизводительный скрининг идентифицирует новый низкомолекулярный регулятор стресса, который обеспечивает кардиозащиту во время ишемически-реперфузионного повреждения. Журнал молекулярной и клеточной кардиологии , 11(112), 154.
Награды и почести
Мемориальная стипендия Джеймса и Мэри Крауч, 2018 г.; Премия Американского общества микробиологии за выдающиеся рефераты, 2017 г .; Диплом с отличием, 2014 г.; Академическая стипендия Калифорнийского университета в Лос-Анджелесе, 2012-2014
Польза для науки и общества
Мое исследование направлено на то, чтобы понять, как микробы (бактерии) влияют на животных во время развития. В настоящее время мало что известно о том, какой вклад микробы вносят в здоровье человека и животных. Общепризнано, что факторы окружающей среды играют важную роль в развитии иммунной системы человека и функции нервной системы. Однако неясно, как бактерии способствуют этому развитию. Чтобы ответить на этот вопрос и определить различные способы, которыми бактерии могут взаимодействовать с животными и обеспечивать их развитие и здоровье, в нашем исследовании используется морской трубчатый червь, который требует от бактерий развития во взрослую стадию.
Изучение этого трубчатого червя позволяет нам определить, как бактерии влияют на развитие животных. Знания, которые дает наше исследование, закладывают основу, необходимую для понимания более сложных систем, таких как микробиом кишечника человека. Наша лаборатория идентифицировала специфический бактериальный белок, который вводится животным-хозяевам и способствует их развитию. Наше исследование впервые открыло бактериальные белки, и в настоящее время мы работаем над тем, чтобы лучше понять их тонкости. Понимание взаимодействия животных и бактерий может дать информацию для будущих исследований очень сложных микробных экосистем. Затем мы можем начать использовать более целенаправленные методы, чтобы определить важную роль этих микробов в здоровье человека и животных. Долгосрочная цель нашей лаборатории состоит в том, чтобы понять, как сложная смесь микробов, связанных с людьми и животными-хозяевами, способствует и контролирует развитие нормальных хозяев.
Трубчатый червь, которого мы используем для проведения этого исследования, также является одним из основных факторов биологического обрастания корпуса корабля.Биообрастание — это скопление морских организмов с твердым панцирем на дне корпуса корабля. Для крупных грузовых и военных кораблей это может привести к увеличению расхода топлива и значительному увеличению углеродного следа. Личинки этих организмов распознают специфические бактерии, обнаруженные на корпусе корабля, и это взаимодействие приводит к расселению и росту их взрослой формы с твердым панцирем. Изучая взаимодействие между животными и бактериями, мы можем смягчить эту проблему, разработав методы и методы лечения, которые предотвратят скопление морских организмов на корпусе корабля.Это окажет значительное влияние на вклад судоходной отрасли в изменение климата.
Обзор серверов с поддержкой Azure Arc — Azure Arc
- Статья
- 5 минут на чтение
Полезна ли эта страница?
Пожалуйста, оцените свой опыт
да
Нет
Любая дополнительная обратная связь?
Отзыв будет отправлен в Microsoft: при нажатии кнопки отправки ваш отзыв будет использован для улучшения продуктов и услуг Microsoft.Политика конфиденциальности.
Представлять на рассмотрение
Спасибо.
В этой статье
Серверы
Azure с поддержкой Arc позволяют управлять физическими серверами Windows и Linux и виртуальными машинами, размещенными за пределами Azure, в вашей корпоративной сети или у другого облачного провайдера. Этот опыт управления разработан в соответствии с тем, как вы управляете собственными виртуальными машинами Azure.Когда гибридная машина подключена к Azure, она становится подключенной машиной и рассматривается как ресурс в Azure. Каждая подключенная машина имеет идентификатор ресурса, позволяющий включить машину в группу ресурсов. Теперь вы можете воспользоваться стандартными конструкциями Azure, такими как политика Azure и применение тегов. Поставщики услуг, управляющие локальной инфраструктурой клиента, могут управлять своими гибридными машинами точно так же, как они это делают сегодня с собственными ресурсами Azure, в нескольких клиентских средах с помощью Azure Lighthouse.
Чтобы реализовать эту возможность на гибридных компьютерах, вам необходимо установить агент Azure Connected Machine на каждом компьютере. Этот агент не предоставляет никаких других функций и не заменяет агент Azure Log Analytics. Агент Log Analytics для Windows и Linux требуется, когда:
- Вы хотите активно отслеживать ОС и рабочие нагрузки, выполняемые на машине,
- Управляйте им с помощью модулей автоматизации или решений, таких как Управление обновлениями, или
- Используйте другие службы Azure, такие как Microsoft Defender для облака.
.
Поддерживаемые облачные операции
Когда вы подключаете свой компьютер к серверам с поддержкой Azure Arc, он дает вам возможность выполнять следующие рабочие функции, как описано в следующей таблице.
Операционная функция | Описание |
---|---|
Правительство | |
Политика Azure | Назначьте гостевые конфигурации политики Azure для аудита параметров внутри компьютера.Чтобы понять стоимость использования политик гостевой конфигурации политики Azure с серверами с поддержкой Arc, см. руководство по ценообразованию политики Azure |
Защита | |
Защитник Майкрософт для облака | Защитите серверы, отличные от Azure, с помощью Microsoft Defender for Endpoint, включенного в Microsoft Defender for Cloud, для обнаружения угроз, управления уязвимостями и упреждающего мониторинга потенциальных угроз безопасности. Защитник Microsoft для облака представляет предупреждения и предложения по устранению обнаруженных угроз. |
Microsoft Sentinel | Компьютеры, подключенные к серверам с поддержкой Arc, можно настроить с помощью Microsoft Sentinel для сбора событий, связанных с безопасностью, и сопоставления их с другими источниками данных. |
Настройка | |
Служба автоматизации Azure | Автоматизируйте частые и трудоемкие задачи управления с помощью модулей Runbook PowerShell и Python. Оцените изменения конфигурации установленного программного обеспечения, служб Microsoft, реестра и файлов Windows, а также демонов Linux с помощью отслеживания изменений и инвентаризации. Используйте Управление обновлениями для управления обновлениями операционной системы для ваших серверов Windows и Linux. |
Автоматическое управление Azure (предварительная версия) | Автоматизируйте подключение и настройку набора служб Azure при использовании автоматического управления компьютером для серверов с поддержкой Arc. |
Расширения ВМ | Предоставляет задачи настройки и автоматизации после развертывания с использованием расширений виртуальных машин поддерживаемых серверов с поддержкой Arc для вашего компьютера с Windows или Linux, отличного от Azure. |
Монитор | |
Azure Monitor | Отслеживайте производительность гостевой операционной системы подключенной машины и обнаруживайте компоненты приложений, чтобы отслеживать их процессы и зависимости от других ресурсов, используя аналитику виртуальных машин. Собирайте другие данные журнала, например данные о производительности и события, из операционной системы или рабочих нагрузок, выполняемых на компьютере, с помощью агента Log Analytics. Эти данные хранятся в рабочей области Log Analytics. |
Данные журнала, собранные и сохраненные в рабочей области Log Analytics с гибридного компьютера, теперь содержат свойства, характерные для компьютера, такие как идентификатор ресурса, для поддержки доступа к журналу контекста ресурса.
Примечание
Эта служба поддерживает Azure Lighthouse, что позволяет поставщикам услуг входить в собственный клиент для управления подписками и группами ресурсов, делегированными клиентами.
Чтобы узнать больше о том, как серверы с поддержкой Azure Arc можно использовать для реализации служб мониторинга, безопасности и обновления Azure в гибридных и многооблачных средах, см. следующее видео.
Поддерживаемые регионы
Полный список поддерживаемых регионов с серверами с поддержкой Azure Arc см. на странице продуктов Azure по регионам.
В большинстве случаев расположение, которое вы выбираете при создании сценария установки, должно быть регионом Azure, географически ближайшим к местоположению вашего компьютера. Неактивные данные хранятся в географическом регионе Azure, содержащем указанный вами регион, что также может повлиять на ваш выбор региона, если у вас есть требования к местонахождению данных.Если в регионе Azure, к которому подключается ваша машина, произошел сбой, подключенная машина не пострадает, но операции управления с использованием Azure могут быть невозможными для завершения. В случае регионального сбоя и при наличии нескольких расположений, поддерживающих географически избыточную службу, лучше всего подключить компьютеры в каждом расположении к другому региону Azure.
Следующие метаданные о подключенном компьютере собираются и хранятся в регионе, где настроен ресурс компьютера Azure Arc:
- Название и версия операционной системы
- Имя компьютера
- Полное доменное имя компьютера (FQDN)
- Версия агента подключенного компьютера
Например, если компьютер зарегистрирован в Azure Arc в регионе Восток США, эти данные хранятся в регионе США.
Поддерживаемые среды
Серверы с поддержкой Azure Arc поддерживают управление физическими серверами и виртуальными машинами, размещенными за пределами Azure. Конкретные сведения о том, какие гибридные облачные среды, в которых размещаются виртуальные машины, поддерживаются, см. в разделе Предварительные требования для агента подключенной машины.
Примечание
Серверы с поддержкой Azure Arc не предназначены и не поддерживаются для управления виртуальными машинами, работающими в Azure.
Статус агента
Агент подключенной машины отправляет службе регулярное контрольное сообщение каждые 5 минут.Если служба перестанет получать эти контрольные сообщения от компьютера, этот компьютер будет считаться отключенным, и его статус будет автоматически изменен на Отключено на портале в течение 15–30 минут. При получении последующего контрольного сообщения от агента Connected Machine его статус автоматически изменится на Connected .
Пределы обслуживания
Серверы с поддержкой Azure Arc имеют ограничение на количество экземпляров, которые можно создать в каждой группе ресурсов.У него нет ограничений на уровне подписки или обслуживания. Чтобы узнать о том, какие существуют ограничения на типы ресурсов, см. статью об ограничениях экземпляров ресурсов.
Следующие шаги
Перед оценкой или включением серверов с поддержкой Azure Arc на нескольких гибридных компьютерах ознакомьтесь с обзором агента подключенного компьютера, чтобы понять требования, технические сведения об агенте и методах развертывания.
Ознакомьтесь с руководством по планированию и развертыванию, чтобы спланировать развертывание серверов с поддержкой Azure Arc в любом масштабе и внедрить централизованное управление и мониторинг.
Рост ARC не соответствует тенденциям NPA: отчет RBI
В то время как Центр объявил о создании компании по реконструкции активов (ARC) и управлению активами, подкрепленной государственной гарантией, для решения проблемы NPA с банками государственного сектора, существующая отрасль ARC до сих пор продемонстрировал слабую производительность.
Согласно отчету Резервного банка Индии (RBI) о ARC, рост отрасли ARC не был последовательным во времени и не всегда был синхронным с тенденциями неработающих активов (NPA) банков и небанковских финансовых учреждений. компании (НБФК).Тем не менее, он поддержал предложение правительства о новом ARC, заявив, что «такая организация еще больше укрепит механизм разрешения активов».
В отчете RBI говорится, что, несмотря на рост числа ARC, рост их активов под управлением (AUM) в основном не имел тенденции, за исключением значительного всплеска в 2014 финансовом году. «По сравнению с объемом NPA банков и NBFC, AUM ARC имеет тенденцию к снижению, за исключением периода высокого роста AUM примерно в 2013–2014 годах», — заявил центральный банк.
В течение 2019–2020 годов продажи активов банками в адрес ARC снизились, что, вероятно, могло быть связано с тем, что банки выбрали другие каналы урегулирования, такие как IBC и SARFAESI. Стоимость приобретения ARC относительно балансовой стоимости активов снизилась, что свидетельствует о более низкой стоимости реализации активов.
Индустрия ARC началась с создания компании Asset Reconstruction Company India Ltd (ARCIL) в 2003 году, говорится в сообщении RBI.
После того, как в первые годы своего существования они оставались подавленными, в 2008 году, а затем в 2016 году наблюдался скачок в количестве ARC.Хотя количество ARC со временем увеличилось, их бизнес оставался высококонцентрированным.
В отчете RBI говорится, что в марте 2020 года около 62% и 76% от общего объема активов под управлением приходилось на тройку и пятерку крупнейших ARC соответственно. «Кроме того, с точки зрения капитальной базы отрасли, 62 процента принадлежали трем ведущим ARC; соответствующая доля составляла 67 процентов для пяти ведущих ARC», — добавил он.
индийских ARC были субъектами частного сектора, зарегистрированными в Резервном банке.КУА государственного сектора в других странах часто пользуются легким доступом к государственному финансированию или поддерживаются государством. Напротив, нехватка капитала часто выделялась как область, вызывающая озабоченность у ARC в Индии.
Согласно исследованию RBI, изменение качества активов банков и NBFC после пандемии Covid-19 может привлечь больше внимания к ARC и активизировать их действия.
В дальнейшем введение новой компании по реконструкции активов для решения NPA банков государственного сектора может также повлиять на деятельность существующих ARC, добавил он.«Существует определенная возможность для входа хорошо капитализированной и хорошо спроектированной компании в индийскую индустрию ARC. Такая организация еще больше укрепит механизм разрешения активов».
По данным Всемирного банка и Института финансовой стабильности, эксперименты КУА, в том числе рассмотренные ранее, которые успешно выполнили свой первоначальный мандат, имели: узкий мандат (например, решение НПД) с четко определенными целями; оговорка об истечении срока действия, определяющая срок их службы; вспомогательная правовая инфраструктура, включая законы о банкротстве и частной собственности; поддержка твердой политической воли к признанию проблемных кредитов; RBI заявил, что коммерческая направленность AMC, включая требования к управлению, прозрачности и раскрытию информации.
Предложенный в бюджете ARC будет создан государственными и частными банками, и Центр не будет вносить акционерный капитал. ARC, у которой будет компания по управлению активами (AMC) для управления и продажи безнадежных активов, будет стремиться урегулировать проблемные активы на сумму 2-2,5 миллиона рупий, которые остаются неурегулированными примерно на 70 крупных счетах.
Модульное обучение и рассуждения на ARC
Модульное обучение и рассуждения на ARC
Дата Отправки:
11 февраля 2021 г.
Дата записи:
9 февраля 2021 г.
Спикер CBMM:
Анджей Банбурски, Саймон Алфорд
- Все видео с субтитрами
- Исследование CBMM
Описание:
Abstract: Современные алгоритмы машинного обучения узкоспециализированы для того, для чего они предназначены, т. е.г. игра в шахматы, собирание предметов или распознавание предметов. Как мы можем распространить это на систему, которая могла бы решать широкий круг проблем? Мы утверждаем, что этого можно достичь с помощью модульной системы, которая может адаптироваться к решению различных задач, изменяя только выбранные модули и порядок, в котором эти модули применяются к проблеме. Недавно представленный набор данных ARC (Abstraction and Reasoning Corpus) служит отличным тестом на абстрактное мышление. В соответствии с модульным подходом задачи зависят от набора встроенных априорных знаний человека.Мы реализуем эти априорные предположения как модули системы рассуждений и комбинируем их с помощью нейропрограммного синтеза. Затем мы обсудим наши текущие усилия по расширению синтеза программ, управляемых выполнением, до алгоритма двунаправленного поиска с помощью обратной семантики функций
.
ГЕКТОР: Я хотел бы поприветствовать всех на первом исследовательском собрании CBMM в весеннем семестре. Сегодня мы послушаем Энди Банбурски, постдока в лаборатории Томми Поджио. И к нему присоединится Саймон Алфорд, который учится в магистратуре и тесно сотрудничает с Энди.Итак, сегодня они расскажут вам о некоторых из самых последних и интересных работ, которые проводились в модуле 1 и в лаборатории Поджио. И поэтому я думаю, что сейчас я просто передам это Энди.
АНДРЕЙ БАНБУРСКИЙ: Спасибо, Гектор, за то, что представил нас. Теперь это место, где мы работали в сотрудничестве с довольно многими людьми. Я просто… у нас они перечислены здесь как… [НЕРАЗБОРЧИВО] и Томми Поджио. И у нас может быть больше людей, работающих над этим. Нас частично финансирует DARPA.Я думаю, это все, что мы должны сказать из титров в начале, и мы сразу перейдем к делу.
Речь идет о модульном обучении и рассуждениях об ARC. По сути, мы собираемся начать с некоторой мотивации того, почему мы заботимся об этом, а затем поговорим о том, что такое ARC, то есть об абстракции и корпусе рассуждений. Затем мы немного поговорим о том, как можно решить эту проблему с помощью синтеза программ, и поговорим о некоторых работах, которые мы расширили на основе работы, уже проделанной в CBMM в [НЕРАЗБОРЧИВО] лаборатории. А затем мы кратко коснемся некоторой предварительной работы, которую мы в настоящее время делаем по двунаправленному синтезу программ.
Я не думаю, что мне нужно много говорить людям здесь. Глубокое обучение стало успешным в последнее десятилетие. Но довольно интересно посмотреть, для чего на самом деле полезно глубокое обучение, а для чего, может быть, не очень. Итак, мы знаем, что он довольно неплохо справляется с классификацией объектов, что-то вроде ImageNet, он справляется с этим очень хорошо.
Он также неплохо справляется с такими задачами, как сегментация, семантическая сегментация, что дает нам надежду на то, что у нас могут быть такие вещи, как беспилотные автомобили и другие автоматизированные технологии.Кроме того, он добился действительно больших успехов в задачах, которые, как мы бы сказали, действительно требуют определенного интеллекта, таких как победа над лучшими людьми в го или в таких играх, как StarCraft. И они долгое время воспринимались как хорошие ориентиры для определения того, что мы считаем настоящим интеллектом.
Итак, визуальный интеллект — это то, что, как мы бы сказали, трудно как-то количественно определить, и мы на самом деле не понимаем, либо люди лучше разбираются в визуальном интеллекте, чем другие.Но это была какая-то большая интуиция, на которую способны действительно очень умные люди — вам нужно действительно потратить много времени и тренировок, чтобы добиться успеха в чем-то вроде шахмат, или го, или StarCraft. И каким-то образом победить людей в битве было бы хорошим критерием для того, чтобы сказать: «Эй, эта штука умная».
А совсем недавно GPT3 и GPT2, в последний год или около того, делали действительно впечатляющие вещи как на уровне языка, так и применяя это к визуальным задачам, либо к визуальным завершениям, либо к использованию текстовых подсказок для генерации изображений.И это приближается к тому, что мы скажем, эй, возможно, это какие-то рассуждения более высокого уровня, чем простая сторона вещей, которые мы видели раньше.
Но точно ли так мы делаем все виды рассуждений? Можем ли мы таким образом добраться до общего интеллекта? Можем ли мы добраться до чего-то, что сделает нас устаревшими? Можем ли мы получить автоматизированного исследователя, просто расширив масштабы глубокого обучения, или есть что-то еще?
Итак, мы знаем, что глубокое обучение на самом деле имеет разные [НЕРАЗБОРЧИВО] режимы. Есть очень простые, то есть если вы тренируете эти вещи на большом количестве данных, они не обязательно экстраполируют слишком далеко за пределы этого. Это пример того, что было обучено для создания подписей к изображениям. Знаешь, он никогда раньше не видел ребенка с зубной щеткой. Итак, одна из догадок — мальчик с бейсбольной битой. Это то, что было бы в наборе данных.
Некоторые другие вещи, которые были сделаны в CBMM. Было показано, что очень сложно обучать нейронные сети, особенно [НЕРАЗБОРЧИВО] нейронные сети, для решения таких задач, как определение того, находитесь ли вы где-то внутри или вне формы.Это связано с более серьезной проблемой, заключающейся в том, что трудно выучить твердые правила с градиентным спуском в глубоких сетях или рекуррентных сетях.
Так что в этом смысле такие вещи, как обучение нейронной сети сложению чисел, на самом деле являются большой проблемой. На самом деле, в большинстве случаев мы не можем успешно обучить нейронные сети точно выполнять сложение. Он делает это в пределах диапазона данных, которым он подвергался, но затем он не может экстраполировать числа, которые больше, чем он видел раньше.
Что говорит нам о том, что он чему-то научился, он каким-то образом связал эти тренировочные примеры с чем-то, что работает достаточно хорошо, но тогда он действительно каким-то образом не смог добраться до сути вопроса, что это такое… что такое добавление или что такое подсчет, проверка четности битовой строки.Он только что научился исследовать немного за пределами своего круга вещей, которые ему приходится делать.
Таким образом, мы могли бы даже пойти дальше и сказать, что во всех этих успешных случаях у нас на самом деле есть очень квалифицированные алгоритмы, но для одной конкретной задачи. И вы могли бы начать спрашивать себя, таким ли мы хотели бы видеть интеллект? Потому что ни одна из этих систем не выходит за рамки того, чему они обучены, как я уже упоминал.
Например, это тот факт, что AlphaGo может обыграть лучшего человека в го, но не может играть в го на доске, на которой она не обучалась. Принимая во внимание, что, если вы дадите доску нестандартного размера профессионалу или даже любителю, они довольно хорошо экстраполируют технику, которую они успешно использовали на обычных размерах доски. Так что вы сразу же видите, что эти существа, может быть, в некотором роде искусны, но если у них есть какой-то разум, этот разум очень хрупок.
И то, что мы собираемся цитировать на протяжении всего выступления, это статья Франсуа Шолле из [НЕРАЗБОРЧИВО] об измерении интеллекта.И в этой газете… если вы ее не читали, я настоятельно рекомендую вам ее прочитать, потому что это одна из моих любимых статей за последние несколько лет. И это в некотором смысле большая критика всей области. И особенно в том, как мы относимся к интеллекту и как мы его определяем.
И [НЕРАЗБОРЧИВО] он предлагает, что интеллект — я думаю, в этом нет ничего драматического, — но мы должны измерять интеллект, а не быть действительно квалифицированными в каких-то задачах, интеллект следует рассматривать как эффективность. в приобретении новых навыков.А затем в статье он как бы предлагает математическую структуру, в которой это можно четко определить, а также предлагает, как это проверить.
Но, может быть, чтобы быть немного конкретным в том, о чем мы на самом деле хотим говорить с технической точки зрения, мы говорили об обобщении. И тогда мы действительно можем говорить о разных уровнях обобщения, о том, какое обобщение имеет система ИИ. И на самом деле, если вы посмотрите [НЕРАЗБОРЧИВО], вы можете подумать о том факте, что современные системы ИИ находятся как бы на этой самой нижней ступени этой лестницы.Это своего рода локальное обобщение в том смысле, что оно позволяет обобщать новые изображения в одном и том же распределении.
Например, относительно хорошие результаты на тестовом наборе ImageNet. Это какое-то локальное обобщение. Но тогда вы хотите иметь системы, способные обобщать, возможно, более широкий диапазон вариаций, с которыми они раньше не сталкивались. Но в самом крайнем смысле вы хотели бы, чтобы система обучения имела что-то, называемое обобщением с учетом разработчика.
И это для того, чтобы справляться с ситуациями, с которыми ранее не сталкивалась ни система, ни система ИИ, ни разработчик, который ее создавал.И в этом смысле вам потребуется система, которая была бы способна обнаруживать правила и обнаруживать соответствующие функции и концепции в задаче или наборе задач, которые она рассматривает, без какой-либо подготовки к ним. Теперь это звучит, может быть, невозможно, и в некотором смысле это так.
Я могу сказать вам, что теории бесплатного обеда не существует, но нет ничего, что вы могли бы иметь в качестве общего алгоритма, подобного этому. Но, может быть, в наборе задач, которые нас волнуют, а это те, с которыми мы сталкиваемся в реальном мире, таких ограничений нет, потому что мы на это способны.В этом смысле мы можем думать о системах глубокого обучения как о таких вещах, которые учатся, используя огромные объемы данных, и они в основном используют такого рода ассоциативные рассуждения.
Но если мы определяем интеллект как эффективность и приобретение навыков, мы бы не хотели иметь огромные объемы данных. Вместо этого мы хотим пойти по пути «чем меньше, тем лучше». Итак, вопрос здесь в том, как мы можем эффективно учиться на небольших объемах данных, эффективном обучении. И как мы можем эффективно выучить правила? И как мы можем эффективно изучать то, что потом можно точно применить в каком-то смысле?
И очевидно, что вы хотели бы иметь архитектуру, способную рассуждать о некоторых абстрактных версиях сущностей, которые имеют отношение к объектам или просто к общим абстракциям.И вот это, в области когнитивной науки, есть эти теории системы двойного мышления, в которых есть концепция быстрого интуитивного мышления, основанного на опыте. И что позволяет реагировать и реагировать довольно быстро.
И я бы сказал, что глубокие сети — это именно такая система, которая просто связывает и в основном имеет несколько более причудливые версии таблиц поиска, и которые она способна экстраполировать в рамках своего опыта. Но есть и более медленная система, которая отвечает за наши языковые способности, за наши логические и математические способности, а также за наше общее мышление, которое представляет собой более линейный и пошаговый процесс. И в некотором смысле, я думаю, все согласятся, что глубокое обучение не совсем так.
И тогда возникает вопрос, как нам добраться до чего-то, что было бы способно делать такие более медленные, но более абстрактные рассуждения? И об этом будет этот разговор. Теперь, когда мы говорим о, мы хотим иметь систему, которая делает абстрактные рассуждения. Вопрос в том, что первый вопрос, который у вас должен возникнуть, заключается в том, что это за задача или набор задач, над которыми вы собираетесь это делать?
Это будут какие-то наглядные, логические головоломки? Это будет похоже на тесты на IQ? Будем ли мы использовать набор данных всех математических задач SAT? Что именно мы хотим сделать здесь? И каким образом мы можем как-то контролировать и конкретно говорить о производительности обобщения?
Вы знаете, многие из этих вещей, особенно вещи, которые находятся в области SAT или даже [НЕРАЗБОРЧИВО] головоломки, зависят каким-то очень специфическим образом от нашего опыта, как культурного, так и того, как вы растете, и подвергаетесь воздействию различных концепций. .И вы хотели бы очень четко понимать, что входит в качестве априорного знания, которое стоит позади, что каким-то образом лежит в основе выполнения реальной разведывательной работы поверх него. И здесь вступают в действие абстракция и корпус рассуждений.
Это, опять же, из статьи «О мере интеллекта». И, перефразируя, это общий тест искусственного интеллекта, или тест синтеза программ, или тест психометрического интеллекта. И это то, что нацелено как на людей, так и на системы интеллекта, и Шолле предлагает это как своего рода набор задач, подобных IQ.И он предназначен для измерения именно эффективности обучения навыкам, а не уровня навыков в конце вашего обучения.
Теперь я покажу вам, как выглядят все эти задачи, но он четко определил набор основных априорных знаний, которые отвечают за хорошую работу с этим набором данных. А у нас уже есть вопрос. Разве общий интеллект не должен также иметь возможность решать, какую работу делегировать [НЕРАЗБОРЧИВО]?
Да, я бы так сказал. И затем, может быть, вы как бы сводите эту проблему наличия системы, способной к такого рода абстрактным рассуждениям, к наличию неких центральных, может быть, специфических модулей, которые являются нейронными сетями, а затем к некоему центральному контроллеру, который будем выяснять, какие из них использовать. И в этом смысле это была бы система, о которой мы будем говорить. Не знаю, отвечает ли это на твой вопрос, Кент.
Что ж, теперь, возвращаясь к АРО, для решения этих задач вам нужно число, в обоих случаях некоторые из них — это просто понятие наличия объекта, тот факт, что объекты сохраняются, они могут взаимодействовать и способность считать, основное понятие чисел, основные понятия геометрии и топологии и некоторые другие. И это пример [НЕРАЗБОРЧИВО].
Здесь у нас слева три разных образца, три разных примера для данной задачи, из которых вы должны выяснить правило, которое преобразует входные данные в выходные.И у вас есть три таких примера. И затем вам дается тестовая сетка, которая находится здесь, и вы должны выяснить, каким должен быть тестовый результат.
Итак, это пример одной задачи ARC. В некотором смысле вы можете легко увидеть, что вам нужно взглянуть на тот факт, что у вас есть эта сетка, которая как бы разделена на две части. И вам каким-то образом нужно зеркально отразить одно поверх другого и как бы сложить их. Это пример того, как решить эту [НЕРАЗБОРЧИВО].
Но на самом деле в рамках ARC существует большое разнообразие задач.На самом деле существует 400 различных обучающих заданий. Каждый из них имеет примерно три-четыре обучающих примера. Опять же, каждое задание совершенно другое, и в каждом задании вы должны полностью выучить правило для него. И сделать это нужно всего из трех-четырех примеров.
И тогда у вас есть один или два тестовых вывода, и для каждого из них у вас есть три попытки решить его. Если вы не решите ее с трех попыток, значит, вы потерпели неудачу. Таким образом, вы можете получить три лучших прогноза. Затем, кроме 400 обучающих заданий, есть еще 400 оценочных заданий, а затем скрытый тестовый набор, доступ к которому есть только у Франсуа Шолле, и в нем 200 заданий.По общему мнению, скрытый тестовый набор сильно отличается от обучающего. И на самом деле даже оценочная выборка сильно отличается от обучающей.
Вот некоторые из этих априорных значений, которые могут вам понадобиться для решения этой проблемы. Это задача, где нужно уметь распознавать, что есть предметы, и уметь считать эти предметы, и находить самые распространенные предметы, например. Итак, это набор из трех обучающих примеров и тестового набора. Вот еще один, который требует от вас понимания концепций симметрии и завершения симметричных узоров.Другой — некая целеустремленность, когда вам нужно соединить два объекта, которые вы каким-то образом должны обнаружить на изображении, линией, состоящей из отрезков. И это… если вы начнете думать, как бы вы написали программу, которая делает что-то подобное? Конечно, вы можете записать это. Но можете ли вы сделать это так, чтобы это не было жестко запрограммировано, чтобы его можно было обнаружить? Это интересный вызов.
И эта потребность в обобщении, о которой я упоминал, вот пример из оценочного набора задачи, которая требует совершенно нового набора правил, которые вы должны выучить, которых нет в обучающем наборе.Это требует какой-то нетривиальной укладки, которую вы можете увидеть визуально. Возьмите все эти цветные картинки и сложите их в квадрат 3 на 3. Но как это определить и как красиво записать этот набор правил? Это немного сложно. Опять же, вам нужно узнать это только из трех примеров.
Итак, еще в марте прошлого года было [НЕРАЗБОРЧИВО] соревнование Kaggle, в котором эта вещь была оспорена. И из этого было одно решение, которое было похоже на победу. И это достигло 20% на оценочном наборе.И то, что он сделал, по сути, он создал — парень, который сделал это, он известен как icecuber, он создал предметно-ориентированный язык, который применяет некоторое количество преобразований к входным данным. Он запускает этот список изображений, перемещает их в исходное положение, окрашивает некоторые пиксели, изменяет их размер, чтобы они соответствовали размеру вывода, который вы как бы угадываете, и это совсем не похоже на что-либо [НЕРАЗБОРЧИВО] общий интеллект. .
Так как же нам спроектировать что-то, что было бы удовлетворительным решением для человеческой жизни? Что ж—
АУДИТОРИЯ: [НЕРАЗБОРЧИВО] Я задаю хороший вопрос?
СЛУШАТЕЛЬ: Да, концептуальный вопрос. И если вы предпочитаете, мы можем просто отложить это на потом. Но меня интересует принцип, когда мы рассматриваем АРО как своего рода тест общего интеллекта. Потому что, насколько я понимаю, набор тестов определен — интеллект здесь определяется, в основном, экстенсивно, а не намеренно, правильно. Итак, он говорит: вот набор задач, и если вы хорошо справляетесь с этими задачами или эффективно учитесь в этих задачах, тогда мы можем объявить вас интеллектуальным агентом.
Вместо того, чтобы сказать, вот определение интеллекта, удовлетворяете ли вы этому определению? Это было бы своего рода преднамеренным определением интеллекта.И я предполагаю, что проблема с экстенсиональными определениями заключается в том, что кажется трудным убедить других людей в том, что ваше экстенсиональное определение — ваш выбор задач правильный. Мол, откуда вы знаете, что в плане обобщения, откуда вы знаете, что нет какой-то другой задачи, которая не совсем подходит к тому набору задач, который здесь был выбран, а еще другой, наблюдатель, сказал бы, что это тоже разумный тест на интеллект. Видишь, что я говорю?
АНДРЕЙ БАНБУРСКИЙ: Я понимаю, о чем ты говоришь, Сэм.И я полностью с вами соглашусь, что это еще не все, чем является интеллект. Это хороший небольшой ориентир для интеллекта. Этот набор данных, кстати, со временем растет, так что все больше и больше задач, подобных этим, в рамках такого рода сетки [НЕРАЗБОРЧИВО] что-то можно добавить.
Это было попыткой устранить необходимость в таких вещах, как математические способности и так далее. Но я согласен с вами в том, что я не думаю, что успехи в ARC внезапно дадут нам AGI.
АУДИТОРИЯ: Я полагаю… Я полагаю, что моя озабоченность здесь носит более общий характер, чем этот конкретный набор задач, а именно то, что каждый хочет найти что-то вроде искусственного общего интеллекта.Но способ, которым мы это делаем, заключается в определении ориентиров. Я так понимаю, что это эталон. И это кажется хорошим эталоном. Я не критикую его как эталон.
СЛУШАТЕЛЬ: Привет, Сэм. Могу я просто заскочить на секунду. Потому что, я имею в виду, я согласен, что это хороший вопрос. Но я думаю, что в какой-то степени — я думаю, что Энди уже сказал то, что я собираюсь сказать, но я просто добавлю это — часть того, почему я нахожу ARC интересным и почему мы также работаем над ним, заключается в том, что Франсуа действительно имеет положительный, более положительный тезис о человеческом интеллекте, который очень согласуется с мнением некоторых из нас, включая вас и меня, о которых мы писали в нашей статье BBS, например, о том, что в основном эти тесты разработан для того, чтобы начать с основных представлений знаний, таких вещей, которые, кажется, встроены в человеческий мозг.А затем иметь какие-то общие — разрозненные обучаемость и композиционные способности, композиционность в выразительности изображения. И тезис в том, что вы можете собрать эти вещи вместе, чтобы научиться решать эти задачи. Так что я просто думаю, что это правда, что это просто расширение определения с точки зрения эталона, но это особенно интересно, потому что оно отражает, я думаю, очень когнитивно обоснованный тезис о том, что может быть силой человеческого интеллекта.
СЛУШАТЕЛЬ: Я имею в виду, что я полностью согласен с этим.Думаю, меня беспокоит то, будем ли мы всегда находиться в режиме «Я знаю это, когда увижу это», или у нас будет фактическое определение, в котором мы сможем заявить, что система действительно удовлетворяет этому определению?
АУДИТОРИЯ: Я не знаю, будет ли какое-то определение или больше градаций размеров, но что в этом хорошего, так это то, что, я думаю, есть научный тезис, почему эта точка отсчета была установлена таким образом, что она был. В любом случае, давайте не будем… Я не думаю, что нам стоит слишком отвлекаться на это.Но это хороший вопрос. И я думаю, что в какой-то степени это часть того, что здесь происходит.
АНДРЕЙ БАНБУРСКИЙ: Да, это отличный вопрос, и я не думаю, что у нас есть на него ответ. Я согласен, что это хорошая попытка создать более абстрактный ориентир для рассуждений. Но это только это. Это просто эталон. И нам придется иметь их гораздо больше. Я не думаю, что вы можете определить непротиворечивый набор, который был бы хорошей проверкой общего интеллекта.
В некотором смысле, «Документ о мере интеллекта» начинается с нападок на тест Тьюринга.И я не думаю, что это… в каком-то смысле вы хотели бы иметь… может быть, то, что вы действительно хотите иметь, является эталоном, в котором каким-то образом нельзя играть. И в некотором смысле я подозреваю, что некоторые части ARC, возможно, не так играбельны, как некоторые другие тесты, и это то, что в нем положительно.
Итак, как я уже говорил, как нам разработать решение, которое нас удовлетворило бы? И, опять же, есть еще один вопрос от Кента, который заключается в том, что мы пытаемся сравнить то, в чем люди хороши, а машины нет? В основном, да.Мы хотели бы как-то добраться до того, что мы называем реальным для нас интеллектом, с тем, что мы способны далеко обобщать.
Кажется, сложность можно увеличивать и уменьшать. Это исследовано? Кент. Да, в том смысле, что вы можете смотреть только на подмножества ARC. И, например, одно подмножество ARC, с которым вы можете работать достаточно хорошо — и это то, о чем мы только что болтали, я думаю, во вторник утром в Slack или что-то в этом роде.
Если вы ограничитесь размером сетки 10 на 10 — и Эван упоминает об этом — если вы ограничитесь большими размерами 10 на 10, вы сможете достаточно хорошо работать с дифференциальным и нейронным компьютером и трансформаторами.Таким образом, вы можете решить около 80% задач, ограничиваясь одним конкретным сайтом сетки. И тогда вам не нужно ничего более необычного, чем, возможно, самые передовые [НЕРАЗБОРЧИВО] сети, которые мы можем использовать. Но вы бы преуспели только в глубоком обучении.
И на этом я закончу и позволю Саймону взять верх. Где он начнет говорить о нашей работе по расширению некоторых результатов из лаборатории Джоша, а затем о некоторых других вещах, которыми мы также занимались. И Саймон, возьми на себя.
САЙМОН АЛФОРД: Позвольте мне снова начать этот обмен, и тогда мы начнем.[НЕРАЗБОРЧИВО] этот чат, Google тоже. Так что да. Итак, Энди лучше представил набор данных ARC. Я просто собираюсь спуститься в окопы и немного забыть о… может быть, не забыть, но немного больше сосредоточиться на том, как мы можем разработать что-то, что хорошо работает в ARC, и какие вещи необходимы , и куда это нас приведет с точки зрения инженерного проектирования.
Итак, во-первых, я начну с простого подхода к синтезу программ в ARC. Франсуа Шолле в своей статье упомянул синтез программ как область, которая особенно применима к эталонному тесту ARC.А затем мы перейдем к содержанию того, что было в нашем рабочем документе из семинара по обучению на выносливость и комбинаторным алгоритмам, и покажем, как DreamCoder можно применить к ARC. И затем мы сделаем кое-что… если у нас будет время, мы сделаем некоторые предварительные расширения. Это просто незавершенная работа и просто разные мысли, которые у нас есть по этому поводу.
Итак, с чего мы начнем? Итак, вы посмотрите на некоторые из этих тестов. Я думаю, прежде чем я начну, я должен сказать, что собираюсь представить много этих пар сетки задач.Итак, я объясню, как это работает. Скажем, для задачи 173 здесь три верхние сетки — это входные сетки, а нижние три — выходные сетки.
Поэтому, когда я показываю такую картинку, цель состоит в том, чтобы конвертировать. Каждый столбец представляет собой пару входных и выходных данных, и цель состоит в том, чтобы произвести выходные данные. Я также показываю только обучающие примеры. На самом деле есть тестовые примеры, для которых вы должны создать решение.
Итак, для вашей задачи 173 здесь слева решение может быть примерно таким: мы хотим получить объект с вертикальной симметрией.В то время как этот тест справа, решение может состоять в том, чтобы получить самый большой объект в сетке. Итак, базовый подход к решению задач ARC состоит в том, чтобы сказать что-то вроде «ладно, мы будем решать эти задачи, опять же, в синтезе программ». Мы собираемся решать задачи, написав программы для преобразования ввода в вывод.
И программы полезны, потому что они охватывают множество вещей, которые мы хотели бы упомянуть Джошем, таких как композиционность, гибкость для расширения и обобщения, а также рассуждения на основе правил.Так что это подход, с которого мы собираемся начать. Синтез программ — очень увлекательная, интересная область с множеством различных техник.
И один из наиболее распространенных способов приблизиться к такому эталонному тесту — это разработать — вы начинаете с какого-то предметно-ориентированного языка, набора функций, которые широко применимы. И вы можете комбинировать по-разному для получения решений разных задач. И затем, учитывая этот набор функций и поставленную задачу, проблема становится в том, чтобы выполнить какой-то комбинаторный поиск для создания функции, которая использует ваши функции из вашего доменного языка и дает решение задачи.Так что здесь есть небольшие трудности. Основная проблема заключается в том, что этот комбинаторный поиск является очень сложной задачей. Существует экспоненциальное пространство возможных программ. И это как найти иголку в стоге сена. В частности, здесь очень легко увидеть программу, она несколько… может показаться короткой, но с точки зрения поиска это очень длинная программа.
Таким образом, самый простой способ сделать это — выполнить что-то вроде поиска методом грубой силы, когда вы просто комбинируете все возможные программы. Чтобы сделать это податливым, рекомендуется делать ваши программы короткими.Таким образом, необходимо разработать предметно-ориентированный язык таким образом, чтобы различные решения задач можно было выразить кратко.
Таким образом, вместо того, чтобы писать такую программу, мы могли бы ввести новую функцию, например, получение самого большого объекта в сетке. И так теперь мы можем сократить нашу программу. И поэтому очень заманчиво просто разработать очень большой, очень мощный предметно-ориентированный язык, который может покрыть все возможные задачи ARC. Вы можете просмотреть различные примеры и получить представление о том, какие типы вещей тестируются. И тогда вы можете попробовать и посмотреть, как это работает.Будет ли это работать? Я бы сказал, что нет, и я думаю, что Франсуа согласился бы. Здесь важно помнить, что наборы оценочных тестов содержат задачи, которые сильно отличаются от обучающих наборов. Поэтому, если мы используем тренировочный набор для разработки этого языка и функций, они могут не распространяться на тестовый набор. Программы там будут такими же длинными, как и были изначально.
И поэтому, если мы действительно хотим преуспеть, вам нужно как бы выучить концепции из примеров, как мы говорили. И основная проблема, просто чтобы еще раз обрисовать ее, заключается в том, что существует проблема экспоненциального поиска.А без тщательно проработанного DSL многие задачи будут иметь решения, которые будут слишком длинными, чтобы их можно было обнаружить.
В то же время нам нужно хорошо работать на скрытом тестовом наборе с неизвестными типами задач. Итак, как мы можем это сделать? Одно из решений — сказать: «Хорошо, мы хотим изучить эти новые концепции на примерах, и это отличная идея». И на самом деле, я думаю, есть много свидетельств того, что эталонный тест ARC был разработан с учетом этого.
Есть определенные задачи, которые очень просты, например, эта задача, где для получения решения нужно просто обрезать сетку.А потом задачи как бы усложняются. Таким образом, вы можете ввести еще одну задачу, которая представляет концепцию взятия сетки и объединения ее по горизонтали с самой собой.
И затем, после того, как вы изучите эти две концепции, вы можете объединить их. Итак, сначала вы обрезаете ввод, а затем комбинируете по горизонтали. И это действительно небольшой пример, но в ARC есть идея создания все более сложных комбинаций вещей. И это поддерживает возможность начать с простого, изучить эти концепции, а затем повторно использовать их для более сложных тестов.Кроме того, я понимаю, что в чате что-то происходит. Если у кого-то есть вопросы, они могут просто высказаться. Я просто позволю чату обсудить вещи на стороне.
АНДРЕЙ БАНБУРСКИЙ: Да, я думаю, что в чате параллельно этому разговору идет обсуждение.
САЙМОН АЛФОРД: Хорошо. Итак, давайте посмотрим. Есть ли еще что-нибудь? Итак, вот еще один пример, когда культура используется в тандеме с другой концепцией. Кроме того, в разных тестах вы можете увидеть разные понятия, представленные по-разному.Итак, здесь есть концепция взять объект и сдуть его. Таким образом, там, где ранее были блоки пикселей, вы уменьшаете их до одного пикселя.
Поэтому недостаточно просто сказать, что всякий раз, когда вы решаете задачу, изучайте ее как функцию и применяйте ее. Вам нужно изучить более сложные понятия. Итак, это познакомит нас с DreamCoder. Это действительно захватывающая работа, выпущенная в прошлом году в лаборатории Тененбаума Кевином Эллисом, который сейчас поступает в Корнелл.
И идея этой работы как раз в том сеттинге, о котором мы говорили.У вас есть набор задач, которые вы пытаетесь решить, от более простых до более сложных. И вы хотите изучить библиотеку концепций, которые позволят вам решать все более сложные задачи.
Итак, один из способов думать о DreamCoder, я не буду вдаваться в подробности. Я настоятельно рекомендую ознакомиться с бумажной презентацией, если вы заинтересованы в этом. Но идея в том, что у вас есть некий алгоритм поиска, решающий задачи. А затем в тандеме с алгоритмом поиска для любых задач, которые вы решаете, вы запускаете этот алгоритм абстракции, который создает новые функции, основанные на концепциях, повторно используемых до сих пор в результатах тестов.Эти функции добавляются к предметно-ориентированному языку и могут использоваться для решения все более сложных задач. Итак, в приведенном здесь примере на рисунке показана проблема сортировки списка и то, как, начиная с более простых задач, таких как фильтрация списка, поиск максимального элемента списка, а затем до n-го по величине элемента списка, вы можете выразить решение для сортировки как очень короткая комбинация этих изученных понятий. В то время как исходная программа, показанная здесь внизу, была очень длинной.Так что это действительно захватывающе.
Это очень интригующая работа. И это кажется почти идеально подходящим для ARC. так что одна из вещей, которую мы только что попытались сделать, это просто посмотреть, насколько хорошо работает применение DreamCoder к ARC? Это своего рода то, о чем была наша рабочая работа. И, я имею в виду, здесь нет ничего сумасшедшего. Но просто некоторые доказательства применения DreamCoder к ARC, и то, что мы видели.
Итак, вот наш первый эксперимент, в котором мы создали эти простые синтетические задачи. И мы сказали: «Хорошо, у вас будет два разных действия: двигаться вниз и рисовать линию вниз». И разные задачи будут заключаться в применении этого действия в разных направлениях. Таким образом, вы можете двигаться влево, двигаться вправо, двигаться вверх, двигаться вниз, а затем аналогично для рисования линии.
И способ, которым мы это делаем, заключается в том, что мы предоставляем возможность вращать сетку. Итак, делая что-то вроде движения влево, если вы двигались вниз, вы можете сначала повернуть сетку против часовой стрелки, а затем двигаться вниз, а затем повернуть по часовой стрелке в конце. Таким образом, вы можете применить действие в любом заданном направлении, используя только эти исходные примитивы.Итак, если мы поручим DreamCoder выполнить эту действительно простую синтетическую задачу, он действительно обнаружит программы. Здесь справа вы можете увидеть обнаруженные программы. Они написаны с помощью лямбда-исчисления из-за того, как DreamCoder представляет программы. А потом после запуска алгоритма абстракции мы изучаем эти новые понятия, которые создаются из решенных задач.
Таким образом, новые концепции, которые мы изучили, — это применение действия влево, применение действия вправо и применение действия вверх. Конечно, вниз мы уже были с самого начала.Так что это просто функция идентификации. Итак, вывод здесь заключается в том, что мы не просто копируем отдельные задачи. Учитывая набор решений, мы строим более обобщенную версию функции, которая является общей для всех решенных программ.
Кент спросил, ищет ли DreamCoder более короткие формулировки, дающие аналогичные результаты. Алгоритм абстракции немного технический. Таким образом, он предпочитает сжимать библиотеку. И он также рассматривает рефакторинг семантически эквивалентных, но синтаксически различных программ, и это может позволить ему находить более короткие решения, хотя и в определенных пределах.Так что вроде да.
Итак, второй эксперимент, который мы провели, фактически выполнялся на реальных задачах ARC. И снова относительно простой эксперимент. Мы только что предоставили шесть различных исходных примитивов, функций, которые выполняют различные операции, связанные с симметрией, различные преобразования Ричарда. Затем мы собрали подмножество задач ARC, которые выполняют разные важные задачи — тестируют разные важные вещи, как показано здесь, различные примеры задач.
И да, посмотрим, что будет. Итак, на первой итерации поиска мы решаем 16 задач.Вы можете видеть здесь, все они относительно короткие программы. А потом мы подключаем это к алгоритму абстракции, и что мы получаем? Мы изучаем эти новые функции.
Я не уверен, что с этой коробкой. Но в основном… не обращайте внимания на синюю коробку. Если вы посмотрите на некоторые из этих новых функций, то увидите, что нижние функции довольно зашумлены и не являются интерпретируемыми концепциями. Но эти новые функции, которые мы изучили, есть. Один из них поворачивает сетку на 180 градусов. Другая функция эквивалентна горизонтальному флипу.
Так что я забыл упомянуть, но в предоставленных нами функциях мы только… мы не включили все направления, как и в предыдущем эксперименте.Мы только что добавили возможность переворачивать сетку по вертикали и складывать сетки по вертикали. И это интересно, потому что теперь мы научились функции, которая способна делать это горизонтальное сальто. Кроме того, он мог делать диагональный флип.
И это не только интересно, что он изучил эти концепции, это также позволит ему решать все более сложные задачи. Итак, на второй итерации поиска мы решили три дополнительные задачи, которые раньше не могли решить. Одной из таких задач является, например, задача 248, показанная здесь.Как я показывал ранее, это просто объединение сетки по горизонтали с самой собой.
Что, если бы у вас был этот примитив, это была бы очень хорошая, очень короткая программа. Но мы начали не с этого примитива. Вместо этого это выражается следующей программой. Что, если вы перепишете эти изученные примитивы из предыдущей итерации, вы можете записать это как это. Сначала вы переворачиваете ввод по диагонали, затем складываете перевернутый по диагонали ввод по вертикали сам с собой, а затем делаете еще один переворот по диагонали. И это эквивалентно горизонтальному стеку. Так круто, что можно так писать. Но действительно важно то, что после того, как мы решили эти задачи здесь, остальные три задачи, которые были решены, также относятся к горизонтальным движениям и штабелированию. Новая привлекательность, которую вы изучаете, — это, действительно, вещи, связанные с этими горизонтальными вещами, а также способность вращаться против часовой стрелки.
А затем на последней итерации вы просто выполняете еще один раунд поиска, и теперь вы можете решать эти более сложные задачи, где требуется зеркальное отображение по осям x и y и комбинирование как по вертикали, так и по горизонтали.Итак, здесь показана исходная программа, выраженная в терминах исходных примитивов, но на самом деле большинство примитивов здесь на самом деле являются изученными концепциями из более ранних примеров. Например, чтобы совместить по горизонтали, он просто вызвал какую-то выученную абстракцию из предыдущего опыта.
Оценивая ситуацию, кажется, что DreamCoder работает хорошо.
АУДИТОРИЯ: Вы выполнили более трех итераций или проблема застряла и больше не решается? [НЕРАЗБОРЧИВО].
САЙМОН АЛФОРД: Точно. Точно. Я имею в виду, я не думаю, что мы каким-либо образом исчерпали возможности выжимания из него всех уровней производительности, но в этом случае да, он вышел на плато.СЛУШАТЕЛЬ: Хорошо, хорошо. Это все, что я хочу знать. Спасибо.
САЙМОН АЛФОРД: Да, опять же, довольно круто, что он может изучить эти концепции и применить их к новым ситуациям. И что это позволяет решать все более сложные задачи. Но есть еще ограничение. Я имею в виду, что в очень простом эксперименте, который мы проводили ранее, эта задача 210 не могла быть эффективно решена поисковым алгоритмом DreamCoder, даже несмотря на то, что у нас есть эти новые более высокие концепции.
Эта задача включает в себя слишком много различных возможных размышлений для разумного, довольно небольшого поиска, который мы предприняли, чтобы обнаружить ее.И это связано с тем типом поиска, который DreamCoder использует при обнаружении программ. Он использует нейронный управляемый синтез, когда вы оцениваете входные данные, выходные сетки с помощью нейронной сети и используете это для управления поиском в виде распределения по программам.
И это распределение по программам помогает, например, сузить список функций, которые могут применяться для данной задачи. Но ему не хватает детализации, чтобы сказать конкретно: о, я собираюсь применить эту функцию, затем эту функцию, затем эту функцию.Это преднамеренный выбор DreamCoder, поскольку он обеспечивает эффективный поиск. Но, с другой стороны, он не использует в полной мере различные визуальные сигналы, визуальные подсказки, которые предлагают тесты ARC.
Итак, еще одним примером этого является вот эта задача, задача 15, где решение, выраженное, по крайней мере, таким образом, может быть записано как отображение разных цветов друг в друга. И чтобы отобразить их, вы можете сделать эти восемь сопоставлений. И это очень длинная программа. И на самом деле нет способа сократить его, хотя вы могли бы сделать какой-нибудь причудливый примитив DSL, чтобы помочь с вещами.Да и вообще поиск не такой сильный, как мог бы быть. Итак, возможно, в оставшееся время мы рассмотрим возможные расширения, которые позволят DreamCoder использовать его действительно захватывающую способность к концептуальному обучению, а также хорошо масштабироваться для сложности задач ARC. Я также заметил, что у Кента был вопрос о том, как вы группируете абстрактные функции?
СЛУШАТЕЛЬ: Да, извините. Я просто имею в виду, что вы говорите об использовании сети для… или изученной функции, чтобы решить, каково распределение по использованию функций.Мне просто интересно, как вы учитываете новые функции, которые просто… если есть четыре аксиоматических функции или что-то в этом роде, как вы группируете новую… как вы группируете следующую функцию?
САЙМОН АЛФОРД: Я не могу сказать это со 100% уверенностью, хотя, насколько мне известно, вы просто увеличиваете размер нейронной сети. И вы просто обучаете этот канал или эту часть сети с нуля, чтобы новый примитив предсказывал его. Итак, что вы делаете, так это то, что вы можете как для задач, которые вы решили, так и для создания случайных задач, чтобы увидеть их в действии и понять семантические эффекты, которые они имеют.СЛУШАТЕЛЬ: Я не уверен, что это уже сделано, но я думаю, что было бы интересно сделать ковариацию — посмотрите на матрицу ковариации между функциями, чтобы у вас было только меньшее количество весов, чтобы оно сходилось к правильную общую идею быстрее.
САЙМОН АЛФОРД: Верно, значит, нейронная сеть не является расточительной, каким-то образом переиспользуя функции.
СЛУШАТЕЛЬ: Да, в основном. Точно так же, как вам, вероятно, это не нужно — вам, вероятно, не нужна целая нейронная сеть с набором функций или набором весов.САЙМОН АЛФОРД: Итак, это точка разговора, когда мы как бы переходим к более спекулятивным вещам. Это исследование, над которым мы работали, все еще продолжается. Так что, пожалуйста, смиритесь с отсутствием конкретных результатов и тем не менее с размышлениями о трех разных идеях. Но то, что мы собираемся рассмотреть дальше, — это всего лишь проба: как мы можем искать программы так, как это делают люди?
Существует обучение с помощью понятий на примерах, но, как также объяснил Энди, есть своего рода пошаговые рассуждения, необходимые для решения задач ARC.И нам все еще нужно сформулировать подход, который может сделать это послушным и эффективным способом. Итак, то, что мы предлагаем здесь, является своего рода выполнением — опять же, методом синтеза программ, в котором мы используем — мы руководствуемся выполнением, а также выполняем двунаправленный поиск для обнаружения решений.
Итак, я представлю это, просто у нас есть синтез программ, управляемый выполнением. Также работа, проделанная Кевином Эллисом, хотя этим занимались несколько человек. И идея в том, что мы используем нейронную сеть не только в начале задачи.Нейронная сеть, которую можно рассматривать как интуитивно предугадывающую, что делать дальше, вызывается несколько раз в процессе рассуждений по мере того, как вы строите программу.
Таким образом, для другой задачи симметрии, подобной показанной, вы можете сначала вызвать функцию, которая переворачивает ввод по горизонтали. И это производит частичную оценку, которая не является окончательным решением, но это часть пути к нему. И это еще одна сетка, на которую вы можете посмотреть. И затем вы можете основывать свое распознавание на просмотре всего состояния и догадываться о другой функции, которая заключается в объединении сетки по горизонтали с исходной входной сеткой.После того, как вы сделали это, то, взглянув — если вы просто подумаете о задаче данной частичной оценки, как вы попадете в сетку? Решение состоит в том, чтобы просто сложить его с собой. Так что почему-то проще перейти от личной оценки к решению, чем делать все сразу с самого начала. Таким образом, это подводит нас к пошаговым рассуждениям, которые могут привести нас к решению.
Несколько замечаний по этому поводу. Во-первых, в контексте синтеза программ это похоже на поиск снизу вверх.Мы строим программы, начиная с выводов абстрактного синтаксического дерева, и заканчиваем подключением к выходу. Итак, окончательная программа здесь, hstack, hstack или hflip. Первое, что мы сделали [НЕРАЗБОРЧИВО] здесь, где мы перевернули ввод.
Еще одна вещь, которую следует отметить, это то, что вам, возможно, придется настроить DSL, чтобы ваши функции можно было оценивать по ходу работы. Вы не хотите иметь функцию, в которой вам нужно заранее указать кучу аргументов, а затем вы получите результат сразу. Так что это просто дизайн, немного.Но сейчас мы собираемся рассмотреть только некоторые из них, просто самоанализ. И посмотрите на несколько мотивирующих примеров многошагового рассуждения в ARC. Итак, вот задача, которую мы разделили ранее. Как проходит этот пошаговый процесс рассуждения, когда мы решаем такую задачу?
По крайней мере, для меня первое, что я замечаю, когда решаю это, это то, что выходная сетка присутствует во входной сетке. И как только вы заметите это, это как бы поможет вам приблизиться к решению. Тогда возникает вопрос: хорошо, какой объект с моста мы выбираем?
И это как бы меняет проблему поиска.После того, как мы это сделаем, вы можете найти решение, то есть выбранный объект является самым большим объектом. Или, что то же самое, в этом случае вы можете сказать, что это объект, который на самом деле отличается от других объектов.
Итак, вот еще один пример, опять же, из предыдущего. Подобная вещь, которую мы сначала замечаем, заключается в том, что выход — это один из объектов, присутствующих во входной сетке. Затем мы переформулируем — это своего рода пошаговое рассуждение, о котором говорил Энди. И мы думаем, какой объект был выбран.Опять же, выбранный объект отличается от других своей вертикальной симметрией. Так как же это связано с управляемым исполнением синтезом? Один из способов сделать это — сказать: ОК, сначала мы получаем объекты из ввода. Это оценка, мы можем частично оценить ее, а затем переоценить, как мы придем к решению.
Но этот следующий шаг, когда мы замечаем, что на выходе находится один из объектов, присутствующих во входной сетке, это почти как действие в противоположном направлении. Мы начинаем с выходной сетки, мы знаем, как сгенерировать выходную сетку, учитывая входные данные, если бы мы знали какой-то другой аргумент.Итак, в этом случае мы можем сказать, что результат — если вы отфильтруете ввод по некоторым критериям. И теперь нам просто нужно определить, что это за критерии.
В данном случае критерием было наличие у объекта бисимметрии. В предыдущем случае критерием было то, что это был самый большой объект. А вот последний пример, этот говорит, несколько более легкая задача, вы могли бы сказать, хорошо, первое, что вы заметите, это то, что решение представляет собой сетку три на три, и это только один цвет. Тогда вопрос в том, какой цвет должен стать этот пример?
Решением в данном случае является наиболее распространенный цвет или, что то же самое, цвет самого большого объекта.Итак, опять же, мы предполагаем функцию, но это в конце программы. Это не предварительная оценка. И мы можем вычислить эту функцию в обратном порядке, чтобы сказать, что если бы мы знали цвет, мы могли бы решить задачу. И тогда возникает вопрос, как нам узнать, что это за цвет?
Итак, вот лишь набросок того, о чем мы думали для этого. Идея состоит в том, что некоторые функции обратимы и могут быть вычислены в обратном порядке. И когда мы решаем АРО, я думаю, в целом разные понятия обратимы.И мы можем использовать это, когда смотрим на пары вход-выход, чтобы попытаться определить, каково решение.
Но не так уж много функций обратимы. Как и в этом случае, блок, учитывая выходную сетку, вы можете сказать, какова ширина, высота и цвет. Но большинство функций сложнее, чем это. А кроме непосредственно обратимых функций есть еще и условно обратимые. Который может быть оценен в обратном порядке, в зависимости от одного или нескольких предоставленных входных данных.
Так что в этом случае вот [? hstack, ?], где вы комбинируете свои сетки по горизонтали.Если вам задано, какой должна быть левая сетка, и вам дан вывод, между выводом и правым аргументом существует отношение один к одному. Так что это условно обратимый аргумент. Она также известна как функция, которая выдает правильный аргумент, известная как функция-свидетель. Это терминология из слова синтеза программ под названием FlashMeta, которое использует обратимость функций и условные инверсии для эффективного поиска сверху вниз для различных доменов синтеза программ.Итак, мы думали, что в качестве аргумента для ARC можно было бы применить двунаправленный поиск, когда вы начинаете с входной сетки, вы начинаете с выходной сетки. На каждом шаге вы можете либо оценить функцию вперед, либо просто типичные управляемые тесты выполнения.
Или вы можете оценить функцию в обратном направлении, либо выбрав выходной узел из набора обратных оценок и вычислив обратное значение напрямую, либо с помощью условного обратного вычисления, где вы сначала предоставляете один из входных аргументов, а затем можете вычислить обратное. И вы добьетесь успеха, если у вас есть путь от входа к выходу, где путь — это полностью сформированная программа.
И поэтому я просто покажу один пример того, как мы делаем это здесь с более интересной задачей. И просто покажите некоторые интересные приемы, которые вы можете реализовать с помощью этого подхода. Так что эта задача на самом деле является одной из самых сложных задач, я думаю. Я думаю, что ключ к ее решению заключается в том, чтобы заметить, что — думать о выходной сетке не как о связке блоков три на три, а как о…
Ой, извини. Кент задал вопрос. Мы хотим, чтобы наши абстракции были интуитивными, необратимыми? Я не понимаю.СЛУШАТЕЛЬ: Извините, я просто, я думаю, я просто неправильно истолковал, почему вы ввели концепцию обратимости.
САЙМОН АЛФОРД: Да, опять же, я думаю, что ключ к решению этой проблемы заключается в следующем: осознайте, что результат можно представить как сетку три на три, где каждый из этих блоков три на три похож на один пиксель. . И поэтому, если его переформулировать, вместо создания выходной сетки будет создана сетка три на три. Затем вы можете заметить, что эта супер сетка три на три фактически присутствует во входной сетке, как и раньше.Это один из объектов.
Мы можем снова переформулировать, какую сетку три на три мы должны выбрать из входных подсеток? И решение в этом случае состоит в том, что только одна из входных подсеток имеет площадь четыре. Или, что то же самое, только у одного из них отсутствует голубой пиксель.
Итак, чтобы набросать это в рамках двунаправленного поиска, мы начнем с нашего дерева, как это. Во-первых, мы вычисляем эту функцию в обратном порядке, чтобы избавиться от линий сетки. Затем мы могли бы оценить другую функцию, которая сдувает сетку до сетки три на три.Обратите внимание, что технически они обратны, если вы ставите условие на цвет линий сетки или сумму, которую вы дефлятируете. Итак, это константы, которые мы предоставляем, и любые константы можно рассматривать как часть предварительных оценок. И затем следующим шагом будет сказать: «ОК, мы получаем объекты в прямом направлении». Я немного уклоняюсь от точной семантики этих функций, потому что это не имеет большого значения.
И затем мы собираемся сделать обратный фильтр, где условный обратный фильтр, что он делает, так это берет входной список и знает, что выход является одним из элементов входных списков.И поэтому он создает новый целевой вывод, который является истинным там, где был выбран объект, и ложным в противном случае. Так что это, опять же, помогает оценить эти функции.
Итак, теперь наша задача состоит в том, как нам перейти от объектов к истинному, истинному, ложному. Итак, опять же, мы могли бы посмотреть на это так. И у нас есть эти три объекта — я не показываю все девять просто для ясности — и затем вы можете оценить функцию в прямом направлении, то есть площадь, которая дает вам четыре или пять и пять. Итак, вы знаете, что это совпадает, на самом деле идеально совпадает, потому что истинный пункт отличается от других.Так что это почти похоже на проблему поиска.
Возможно, я скрываю там кучу деталей. Я просто хотел дать общее представление о том, о чем мы думали. Последнее, о чем стоит поговорить, это как это сочетается с DreamCoder? DreamCoder вообще не говорит об инверсиях. Таким образом, один из способов думать об этом таков: любую функцию, которую мы изучаем как абстракцию, мы можем попытаться найти обратную, просто как задачу синтеза.
Попробуйте несколько примеров ввода-вывода, посмотрите, что будет на выходе, когда вы подключите входы, а затем посмотрите, сможете ли вы, учитывая выходные данные, синтезировать входные данные или условно синтезировать некоторые из входных данных, как показано в примере здесь.Итак, некоторые детали реализации. Эта работа еще не завершена. Я не думаю, что реализация имеет такое большое значение, но мы делаем это в рамках обучения с подкреплением, и это очень похоже на то, что сделано Кевином Эллисом в сводном документе по обучению с подкреплением, управляемому выполнением.
Так что да. Я мог бы сделать вывод на этом. По сути, это просто то, что было сказано ранее. Мы показываем, что нам нужно изучать новые концепции на примерах, и вам также нужен логический подход, чтобы преуспеть. И это то, над чем мы сейчас работаем.Итак, да, я надеюсь, что это хороший способ представить вам некоторые из наших идей, ребята, и поделиться некоторыми работами, которые мы нашли действительно захватывающими и интересными. Так что да, спасибо.
ГЕКТОР: Итак, если у вас есть вопросы, задавайте их нам. Это могло бы быть хорошим обсуждением, потому что есть много вещей, которые вы могли бы подумать об ARC, и как бы вы на самом деле попытались их оценить. Я имею в виду, что у меня здесь есть вещи, которые меня особенно интересуют, которых мы даже не коснулись. Но, может быть, мы сможем перейти к вопросам.СЛУШАТЕЛЬ: Да, у меня есть вопрос. Я думаю, что DreamCoder и любая техника поиска требуют какой-то базовой DSL с некоторым понятием полноты. В каком-то смысле все ли задачи в ARC перехватываются вашим DSL? И когда вы можете найти его, как вы можете количественно определить, что это просто ваш поисковый алгоритм не смог его найти, или это просто невозможно с самого начала?
И поэтому, по сути, я подумал, есть ли какой-то универсальный DSL, который может решить все наши проблемы? Но это, вероятно, какой-то очень низкоуровневый язык манипулирования пикселями, который может быть полезен, а может и нет. Итак, что вы думаете об этом?
САЙМОН АЛФОРД: Совершенно верно. Вы могли бы предоставить какие-то… набор различных общих операций функционального программирования, а затем манипулирование пикселями, и, надеюсь, теоретически вы можете выразить что угодно с помощью этого. Невозможно узнать, проверяете ли вы, что не можете создать решение с данным набором примитивов. По крайней мере, там ничего не пытались сделать. Так что я думаю, что это…
АНДРЕЙ БАНБУРСКИЙ: Я просто хочу добавить, тем более, что вы можете случайно обнаружить, что некоторые операции вы изучаете из приведенных обучающих примеров в сочетании с имеющимися у вас примитивами.Таким образом, вы можете случайно узнать такие вещи, как переводы, даже никогда не включая их и исходные операции. И это только потому, что входы имели очень специфическую симметрию, но допускали переводы.
Это один пример, с которым мы столкнулись, и мы обнаружили, что вы можете выучить [НЕРАЗБОРЧИВО] вертикальный перевод, не вставляя его, а просто потому, что он есть в примерах.
АУДИТОРИЯ: Извините, я не уверена, что есть дополнительный вопрос. Не стесняйтесь прерывать меня, если есть.Как-то совсем не связанно. Мне просто любопытно, как вы думаете, есть ли смысл пробовать базовые функции, которые полезны в классической обработке сигналов и тому подобном? Как вы думаете, это… кажется, что вы могли бы применить аналогичные вещи к ImageNet или чему-то еще с гораздо большим количеством данных, и все же реализовать эту идею с несколькими выстрелами [НЕРАЗБОРЧИВО] обучающей идеи, если бы у вас просто было что-то вроде… если бы вы только начали с более высокого [ НЕСЛЫШНО] функции, которые, я думаю, полезны при обработке сигналов в целом.
САЙМОН АЛФОРД: Так вы говорите, применить к более перцептивным тестам, где ваш набор функций связан с обработкой сигналов?
СЛУШАТЕЛЬ: Да, точно так же, как предыдущая работа в поле или что-то в этом роде.Я думаю, что ARC хорош, потому что это минимальный пример, о котором легко думать и все такое. Но если конечная цель состоит в том, чтобы сделать машинное обучение и DNN лучше и прочее, то кажется, что начинать с чего-то, что имеет лучшую историю применения в задачах высокого уровня, начинать с этого, а затем как бы наращивать оттуда. Итак, я думаю, мой вопрос в том, почему мы начинаем так низко на уровнях манипулирования пикселями?
АНДРЕЙ БАНБУРСКИЙ: Может быть, я что-то скажу. Я имею в виду, что ARC в некотором смысле не является задачей визуального интеллекта.Эти пиксели имеют только 10 возможных цветов. И не думайте, что есть смысл применять многие техники визуальной обработки изображений. Вещь, которая может быть уместна, похожа на шумоподавление. Вы можете использовать некоторые методы оттуда, но я сильно подозреваю, что обработка сигналов не является правильным языком для решения чего-то вроде ARC.
СЛУШАТЕЛЬ: Конечно, но я имею в виду, что конечная цель не в том, чтобы решить АРО, верно. Конечная цель — получить что-то полезное. Я имею в виду, я думаю, это шаг к ARC AGI, что, я думаю, тоже понятно.АНДЖЕЙ БАНБУРСКИЙ: Конечная цель состоит в том, чтобы иметь возможность выполнять операции над абстрактными тождествами. И в каком-то смысле есть переход от того, чтобы взять что-то, что смотрит на обычные визуальные сцены, а затем создать упрощенное представление, на котором вы можете сделать что-то вроде того, что мы делаем с ARC. Но я бы сказал, что это будет многоэтапный процесс. Вы смотрите на визуальную сцену, вы видите в ней вещи, а затем у вас есть этот абстрактный объект и отношения между объектами, вы можете считать вещи и так далее.Но это в каком-то смысле на более высоком уровне, чем просто на базе пикселей.
СЛУШАТЕЛЬ: Хорошо, но — извините, а как насчет того, что вы пытаетесь упростить — как будто у вас есть нейронная сеть, которая явно слишком мала для этой задачи или что-то в этом роде, а затем вы пытаетесь упростить изображение? чтобы он мог поместиться в меньшую нейронную сеть или что-то в этом роде. Это похоже на еще один способ сделать такой синтез, например, удалить другие внешние переменные, так что вы не просто грубо форсируете, знаете ли.АНДРЕЙ БАНБУРСКИЙ: Саймон, у вас есть что сказать по этому поводу?
САЙМОН АЛФОРД: Я должен подумать об этом. Да, я не знаю. Но я согласен в целом. Это была бы надежда на то, что это… любое понимание может быть применено к другим областям, а не просто иметь какие-то очень специфические методы только для ARC.
АНДРЕЙ БАНБУРСКИЙ: С этим я определенно согласен. Я имею в виду, что есть наборы данных, такие как CLEVER, в которых вы пытаетесь установить какие-то простые отношения между геометрическими по своей природе объектами на полуреалистично выглядящих изображениях.И вы надеетесь, что если вы можете что-то сделать, преуспеть в ARC, то комбинация этих методов, которые мы используем здесь, с CNN, преуспеет в CLEVER. Я имею в виду, это надежда. Но сначала вам нужно найти что-то, что действительно хорошо сработает.
АУДИТОРИЯ: Могу я задать вопрос о вызовах АРО, задачах АРО? Итак, существуют ли теги более высокого уровня, которые группируют или группируют похожие задачи вместе?
АНДРЕЙ БАНБУРСКИЙ: Нет.
АУДИТОРИЯ: Значит ли это, что когда вы входите в набор данных ARC, вы рассматриваете каждую из этих задач как отдельные и не имеете ничего общего?
АНДРЕЙ БАНБУРСКИЙ: Ну, вам это не представляется.Вы можете пойти тем же путем, что и мы, и создать объемный документ, который каким-то образом классифицирует эти разные задачи по разным категориям. Но это не предоставлено вам в наборе данных.
СЛУШАТЕЛЬ: Хорошо, спасибо. Я собираюсь подумать об этом на секунду.
АНДРЕЙ БАНБУРСКИЙ: Отвечая на вопрос Эрика, не может ли это привести к ограничению преимуществ? Мы могли бы придумать решения, которые подходят только для АРО без какого-либо более глубокого или общего интеллекта. рук Отсюда надежда, что тестовая выборка достаточно сильно отличается от обучающей.Если вам действительно нужно изучать новые вещи, когда они решают набор тестов, то, надеюсь, вы действительно ведете себя разумно. Теперь, если вы можете играть в ARC, потому что вы обнаружили хороший набор примитивов, которые каким-то образом могут хорошо решать эти задачи мира сетки, тогда вам нужен лучший тест.
Кто-нибудь собирал данные о движении глаз человека во время обслуживания ARC? Я не… так что я помню, Эван, вы, ребята, смотрели какую-то базовую психофизику, что-то вроде описания того, как принимаются решения.И как кто-то, в основном получающий DSL на основе поведения, может [НЕРАЗБОРЧИВО] на самом деле пытаться решать задачи?
СЛУШАТЕЛЬ: Это немного слабее. Я бы сказал, что мы еще не пришли к DSL.
АНДРЕЙ БАНБУРСКИЙ: Я говорю, что вы пытаетесь достичь этого.
СЛУШАТЕЛЬ: Да, мы. Типа вычислительной проблемы. ARC сильно отличается от той вычислительной задачи, которую может решать компьютер. А потом мы такие, ну, наш компьютер слишком слаб. Поэтому мы хотели запускать программы ARC на людях. Итак, DSL подобен естественному языку, а компьютер подобен человеку.Итак, что мы сделали, так это то, что у нас есть один человек, синтезирующий программу из некоторого входного вывода, представленного в виде естественного языка. А потом мы даем эту программу другому человеку, и он должен решить задачу на новом входе. Итак, мы обнаруживаем, что люди могут достаточно хорошо общаться, я думаю. Я бы сказал, что 70%, 80% задачи можно передать, по крайней мере, на тренировочном наборе, с помощью естественного языка.
Но взгляд на естественный язык не дает прямого представления о том, какой может быть программная структура.Вот почему мне очень хочется задать вопрос о том, что же такое настоящий DSL? Потому что прямо сейчас у кого-то в голове как будто слишком поздно. Это похоже на одинокого чувака, и он на своем Microsoft Paint, чем бы он ни пользовался, правильно.
Так что да, мы думаем о более детальных аннотациях для этих задач. Как будто мы могли бы… так что, да, Кент говорил об отслеживании взгляда. Так что, в принципе, мы можем получить дополнительную аннотацию того, какие объекты вы используете при решении этих задач. Таким образом, в основном, как только мы как бы объединяем больше деталей операционных особенностей решения этой задачи и ограничиваем их правильным образом, возможно, мы сможем поместить их в компьютер и получить компьютер, способный выполнять эти любые программы.Но да, у нас нет DSL.
АНДРЕЙ БАНБУРСКИЙ: Я бы сказал так, учитывая тот факт, что даже с описаниями на этом национальном языке вы не добьетесь 100% воспроизводимости данного кода. Очень трудно сообщить о некоторых из этих решений, которые вы придумали. Я подозреваю, что, используя данные о движении глаз человека, я не знаю, насколько это вам поможет. Я имею в виду, что это, вероятно, сообщит вам, что есть определенные формы, которые мы обнаруживаем как полезные объекты, но я не знаю, действительно ли это поможет нам в попытке найти решение АРО. Я думаю, это… вы могли бы абстрагироваться, сказав, что нам нужен какой-то детектор объектов, который будет обнаруживать отдельные объекты в примерах, но я не уверен, что вы получите что-то от серии движений глаз. на рисунке. Типа, вы бы что-нибудь поняли из каких-то движений, глядя в глаза шахматисту? Возможно, но расшифровать их будет сложно. Но это мое личное мнение.
СЛУШАТЕЛЬ: У меня вопрос. Не могли бы вы вернуться к слайду, где вы показываете свой подход, над которым вы сейчас работаете, и у вас есть пример с тремя разными объектами?
САЙМОН АЛФОРД: Этот?
СЛУШАТЕЛЬ: Нет, я думаю, может быть, немного назад.Да, этот. Следующий, тот… да, этот. Итак, если я правильно понял, идея в том, что у вас есть многоэтапный процесс. И первый шаг, о котором вы говорите, кажется, что мы берем один из объектов. И тогда вопрос, какой объект? И причина, по которой вы хотите, чтобы он был обратимым, заключается в том, что вы можете затем восстановить из данных те объекты, которыми он является.
Я предполагаю, что мой вопрос заключается в том, что на этом первом этапе, когда вы обнаруживаете, что это один из объектов, которые вы извлекаете, представляете ли вы, что находите конкретные функции? Итак, на первом изображении я беру розовый объект, а на втором — желтый. И затем из этих случаев, абстрагируя тот факт, что я беру один из объектов, или вы представляете, что прямо переходите к этой частичной функции, которая говорит, что я извлекаю один из объектов? Имеет ли это смысл?
САЙМОН АЛФОРД: Я не понимаю, извините.
АУДИТОРИЯ: Итак, в какой-то момент вам придется создать эту функцию с неизвестным входом, верно, то есть у нас есть эта функция, и у нее есть этот неизвестный вход. И я думаю, вопрос в том, как вы получаете эту функцию?
САЙМОН АЛФОРД: Я думаю, что эту функцию можно было бы применить, если бы вы знали аргументы.Но это также функция, о которой мы знаем, что если один из аргументов и вывод, вы знаете, каким должен быть второй аргумент. Итак, в этом случае мы знаем, что будет на выходе, и можем указать один из аргументов. А затем мы оцениваем функцию-свидетель, чтобы получить второй аргумент.
СЛУШАТЕЛЬ: Итак, в данном случае второй аргумент — что именно?
САЙМОН АЛФОРД: Итак, функция здесь, опять же, будет фильтровать. Опять же, я как бы махнул рукой на детали. Предположим, что фильтр возвращает один элемент вместо списка.Таким образом, при наличии входного списка и выходного объекта функция-свидетель выдаст второй аргумент, который является другим списком, который является списком логических значений. Таким образом, фильтр в обычном смысле принимает список объектов и список логических значений и возвращает все объекты в первом списке, для которых соответствующее логическое значение было истинным.
СЛУШАТЕЛЬ: Понятно. Я предполагаю, что мой вопрос такой: когда вы предложили частично определить или отфильтровать без… с некоторыми отсутствующими входными данными, я думаю, мой вопрос в том, как мы доберемся до этого этапа? Как мы предлагаем это в качестве функции-кандидата для изучения?
САЙМОН АЛФОРД: Действительно, чтобы предложить это, нам нужно иметь список входных объектов, и нам нужно иметь выходные данные.Таким образом, они уже должны быть построены либо из частичных прямых оценок и частичных обратных оценок, либо просто быть входом или выходом. И когда они есть, мы можем вызвать эту функцию. И мы выбираем его аргументы, прямой элемент и обратный элемент, а затем он будет оценивать в обратном порядке. Это отвечает на ваш вопрос?
СЛУШАТЕЛЬ: Возможно. Мне нужно подумать об этом еще немного. Но спасибо.
АНДРЕЙ БАНБУРСКИЙ: Я имею в виду, вы можете подумать о том, что [НЕРАЗБОРЧИВО], если вы особенно переходите к последним слайдам, вы пытаетесь… вам даются ввод и вывод, и вы можете [НЕРАЗБОРЧИВО] применять эти операции в разных направлениях. .И в итоге у вас получится такая большая сумка, которая растет с обоих концов. И некоторые части вам не пригодятся. Но вы можете найти часть следующего ввода-вывода.
Вопрос в том, является ли это более полезным, чем просто движение в одну сторону? Я имею в виду, надеюсь, что да. [НЕРАЗБОРЧИВО] И надежда действительно должна быть «да». Потому что, если подумать, вам дали результат, вам дали обучение, ввод-вывод, и теперь вы получаете результат в конце теста.
Но вы получаете ответы, которые. .. вы пытаетесь решить тестовое задание, и вы потерпели неудачу.Это ужасно — вы получаете сигнал о том, что вы не сделали ничего хорошего, но вы не получаете сигнал о том, что вы сделали плохо. Но вы все равно интуитивно понимаете, что некоторые вещи вы точно сделали правильно.
И это похоже на то, что, может быть, не совсем в полной мере получить такого рода попытки выяснить, какие части имеют смысл, но, по крайней мере, в этом возвращении, вы знаете, что эти части, которые у нас есть, являются правильными, по крайней мере, в каком-то предложении, или что-то такое.
СЛУШАТЕЛЬ: Да, верно. Я имею в виду, я думаю, что это хорошая идея.Я неравнодушен к этой идее движения вперед и назад. Просто хотел уточнить вопрос. Я думаю, еще один вопрос: если вы вернетесь назад… не буквально, но если вы вспомните один из примеров, который у вас был в начале с планированием, этого маленького агента, который пошел вверх и вправо, думаете ли вы, что это подход может предположительно масштабироваться для такого рода проблем, или для этого потребуются какие-то другие идеи?
САЙМОН АЛФОРД: В целом, я не думаю, что это комплексный подход. Определенно существует множество задач, для которых тип рассуждений, которые мы используем, чтобы найти решение, немного отличается.Для этой конкретной задачи я подумал об этом, и есть способ сделать это. Но это несколько… опять же, вы дошли до того, что типа… Я просто даже не собираюсь переходить к слайду, потому что это займет слишком много времени. Но тип обратимых операций, которые у вас есть, очень тщательно продуман, чтобы быть обратимыми. И это снова начинает нарушать дух изучения понятий на примерах. И неясно, сможет ли синтезирование обратного добиться чего-то подобного.Так что да, есть способ добиться такого рода вещей. Но вообще нет, с ним всего не сделаешь. И, да.
СЛУШАТЕЛЬ: Круто. Спасибо.
ГЕКТОР: У Феликса есть еще один вопрос. Но, возможно, у Эвана также есть вопрос, и они собираются поругаться из-за этого.
СЛУШАТЕЛЬ: Нет, у меня нет вопроса. Я как раз собирался прокомментировать конкретную сетку девять на три. Эта программа чертовски сложная. Так что, если вы сможете получить это, это будет довольно впечатляюще. Вот этот. Этот жестокий. Многие комментаторы-люди на самом деле не знают, как это сделать.И когда они это делают, они не знают, как сообщить об этом. Так что это особенно сложно. Так что это хорошо, если бы вы могли это сделать.
[ВСТАВКА ГОЛОСОВ]
ГЕКТОР: Давай.
САЙМОН АЛФОРД: Я только что хотел сказать, я думаю, что проблема в том, что он основан на этой ранее изученной концепции дефлирования выходной сетки, которая присутствует в других примерах. Но случайные люди, решающие это, не обязательно являются людьми, которые прошли и решили задачи от самых простых до самых сложных. Так что это почти преимущество нашего агента в том, что он видел эти примеры раньше.Так что, как кто-то вроде меня, который исследовал это, вы смотрите на выходную сетку и можете сразу сказать: «Хорошо, одна из возможностей заключается в том, что это маленькая сетка три на три». И я думаю, что для населения в целом эта концепция недоступна сразу.
ЗРИТЕЛИ: Я думаю, что сложная часть решения — так что есть две части, верно. Вы можете потерпеть неудачу, если сначала не сможете решить, а затем не сможете общаться. Решающая часть действительно сложная. Вы должны заметить, что это желтый квадрат в центре, это важно.Многие этого не замечают.
И даже если вы это заметите, как вы сообщите об этом выводе? Да, тогда раздувайте, это не… если вы посмотрите на [НЕРАЗБОРЧИВО], доступное людям, Там [НЕРАЗБОРЧИВО] цвет, там как заливка. И поэтому inflate не является одним из доступных операторов. Так что им очень сложно сообщить об этой конкретной функции, когда ее не существует. Вам нужно как бы описать, что делает функция. Но это действительно хорошо.
САЙМОН АЛФОРД: Вопрос Феликса.Как изменилась динамика поверхности по мере роста DSL? Так что это хороший вопрос. Интуитивно понятно, что если у вас больше примитивов, пространство поиска больше, и это будет тянуть вас вниз. Это улучшается тем фактом, что у нас есть нейронная сеть, управляющая распознаванием.
Таким образом, для данной задачи вы прогнозируете, какие функции применимы к этому тесту. Это означает, что для данной задачи вы будете использовать только часть полной библиотеки. Таким образом, теоретически он может масштабироваться до неограниченного количества, если для одной конкретной задачи используется только небольшой набор.Не знаю, так ли это на практике или нет. Мы обнаружили, что он замедляется. Но, с другой стороны, вы изучаете функции, которые могут выражать… которые могут более эффективно искать в пространстве поиска. Так обычно вроде получается.
АУДИТОРИЯ: Другой способ сформулировать то, что меня интересует, таково: поскольку ранее мы говорили о подходах грубой силы, в свете этого, как вы ожидаете, что должным образом развитый кодер кластеризации DSL будет вести себя с оценочным набором? , этот скрытый тестовый набор? Будет ли это невероятно медленно?
Потому что в то же время, если нет… Мне любопытно, нет ли данных более высокого уровня о том, что это задача на отражение.Это ротационная задача. Или это любая задача, которая ограничивает или мягко набирает DSL, или дает вам подмножество DSL. Мне просто любопытно, как это не становится проблемой перечисления.
САЙМОН АЛФОРД: Я думаю, что есть два — вы будете — хорошие результаты на тестовом наборе — это действительно проблема обучения. Таким образом, было бы оптимально, если бы произошла какая-то акклиматизация к распределению тестов, наблюдаемых в тестовом наборе. Я не говорю, как именно этот подход к обучению будет работать. Но это… Я имею в виду, я думаю, я думаю, смущает то, что для людей мы можем решить тестовый набор сразу же, как мы делаем тренировочный набор.Таким образом, неясно, где черпать вдохновение из того типа обучения, которое необходимо выполнить на тестовом наборе. Но я думаю, что есть возможные способы сделать это. Но я согласен, что это потенциальная проблема.
СЛУШАТЕЛЬ: У меня есть еще один вопрос… он связан с этой темой. Думаю, в данном случае это больше для Эвана, раз уж ты проводишь эти психофизические эксперименты. В задачах описания на естественном языке просили ли вы кого-нибудь описать тип задачи? Или высокоуровневое описание, как я только что сказал, это задача ротации, или это задача зеркала. Саймон, вы только что предоставили немного информации, связанной с этим, где вы сказали, что видели это задание на этом слайде. И вы такие, о, в тот момент, когда я увидел это, я подумал, что это будет включать в себя такое решение или что оно будет включать в себя такую функцию. Так что мне просто интересно, есть ли способ…
СЛУШАТЕЛЬ: Мы не просим их аннотировать это. Мы думали об ограничении ключевого слова, которое мы используем, чтобы они пытались использовать те же слова, которые использовали предыдущие пользователи. Но это было не слишком полезно.Я думаю, что эта система тегов очень полезна, если вы делаете ее правильно. Но они также требуют, чтобы правильное сообщество людей, которые модерируют, могли убедиться, что все задачи помечены согласованным образом.
Таким образом, некоторые люди могут создать тег квадрата, но другие люди могут ссылаться на них как на коробку. Так вы объединяете эти две вещи? Есть ли у вас какое-то встраивание слов, чтобы автоматически рассматривать эти два тега как один и тот же? Это действительно очень шумно. Да, я не понял, как сделать социальный аспект этого.
Я думаю, вы могли бы сделать что-то вроде GitHub, где есть несколько модов, которые контролируют отчет о том, что нужно пометить.И люди могут предлагать, и тогда вы можете… Я думаю, что такая система должна быть установлена, чтобы эти теги были полезными. В противном случае вы просто получите мешок избыточных тегов.
А то граница между тегами не очень чистая. Итак, это задача, заключающая в себя прямоугольник, или задача исключения в виде квадрата? Эти штуки очень, очень волосатые. И поэтому мы не придумали, что делать с этим уважением.
ЗРИТЕЛИ: Я просто скажу, прежде чем вы закончите, Энди и Саймон, действительно крутая работа, действительно классные вещи.Очевидно, что многое связано с вещами, которые мы сделали и над которыми также работаем. Так что я просто хотел сказать, спасибо за это. И мы свяжемся с вами по электронной почте. Я видел ваш ответ на [? Воля. ?] Надеюсь, в четверг мы найдем время, чтобы больше коснуться того, чем мы занимались в космосе, и просто поговорить об идеях. Потому что я думаю, что есть много связей.
Я также хотел бы сказать, что один из последних моментов, о котором вы, ребята, сказали, — интересно, насколько люди могут просто… например, я согласен с тем, что способность учиться и адаптироваться от обучения к тесту является важной частью гибкого интеллекта.И, как вы сказали, очень интересно, что люди могут делать это прямо из коробки. И на самом деле они тоже могут решить обучающий набор из коробки.
Это довольно полезно, имеет смысл, что есть набор для обучения, набор для разработки и набор для тестирования. Но на самом деле, как и у людей, это весь наш предыдущий опыт плюс эволюция, которая позволяет нам решать все эти проблемы. Или если не все, то уж точно подавляющее большинство, вообще без подготовки. Что довольно поразительно, насколько мы можем это сделать.Так что я думаю, что это достаточно большой набор данных, который интересен, и стоит попробовать начать обучение, как вы это делали, и мы тоже пытались это сделать, используя тренировочный набор в качестве тренировочного набора. И он предназначен для этого, как вы указали. Это своего рода встроенная учебная программа. Но когда мы думаем о человеческом интеллекте, это настолько поразительно, что мы можем сделать… у нас есть способности к действительно далекому переносу и абстрагированию, которые позволяют нам делать все это, не делая ничего из этого. задачи, что угодно даже в этом роде, в принципе.АНДРЕЙ БАНБУРСКИЙ: Я имею в виду, это очень хорошие моменты. И я определенно с нетерпением жду возможности обсудить с вами больше. Давайте посмотрим, как [НЕРАЗБОРЧИВО] на эту штуку. Я имею в виду, что в этом смысле это очень интересный набор данных. Это хорошее место, чтобы подумать об идеях.
СЛУШАТЕЛЬ: Абсолютно, абсолютно. Вы, ребята, говорили об этом с Шимоном? Шимон Ульман? Потому что, опять же, я думаю, что он был бы очень заинтересован. И есть связи, будь то его интерес к программам и процедурам, а также двунаправленный поиск.Это похоже на очень… Я уверен, вы это знаете… Очевидно, я уверен, что вы думаете. [НЕРАЗБОРЧИВО] Я думал на заднем плане.
Это просто как бы соединяет точки между кучей интересов разных людей в CBMM. Так что здорово, что это может быть также место, где различные части [? CMM ?] тоже могли бы объединить усилия.
АНДЖЕЙ БАНБУРСКИЙ: Это определенно связано с представлениями Шимона о рутине. Одна вещь, которая, возможно, не связана напрямую, в том смысле, что мы в основном использовали модули, которые были жестко запрограммированы, а не нейронные сети.Но нет никаких причин, по которым любой из этих примитивов, которые мы используем, нельзя было бы закодировать как нейронные сети.
И, возможно, это было бы очевидным местом для подключения. Но даже на этом абстрактном уровне я полностью согласен с тем, что мы были, по крайней мере частично, вдохновлены работой Шимона.
АУДИТОРИЯ: И последний вопрос: если есть какая-то часть, связанная с ARC в DreamCoder, которую вы хотели бы заменить человеком, какую часть это будет?
САЙМОН АЛФОРД: Кажется, можно просто сказать, что алгоритм поиска должен быть человеком. СЛУШАТЕЛЬ: Понятно. Итак, вы хотите, чтобы алгоритм поиска предоставил вам решение. Итак, вы даете мне DSL, и тогда я могу предложить вам решение. Это было бы полезно. Я понимаю. Я думаю, мы можем получить лейбл для этого.
САЙМОН АЛФОРД: Я не… Хотя я должен подумать об этом подробнее.
АНДРЕЙ БАНБУРСКИЙ: Думаю, я тоже согласен с Саймоном. Так как, допустим, у вас есть DSL, который был предустановлен, то не могли бы вы отдать этот DSL человеку, чтобы он просто искал решение какой-либо задачи? Я думаю да.
АУДИТОРИЯ: Думаю, да, если вы достаточно тщательно изложите семантику DSL, чтобы [НЕРАЗБОРЧИВО] мог правильно понять.Я понимаю. Итак, сложность здесь в том, что [НЕРАЗБОРЧИВО] можно также попробовать в DSL и сказать вам, что это не сработало. И тогда у вас возникнет мысль, что, о, может быть, наш DSL недостаточно выразителен, чтобы охватить такие операции, я думаю. Хорошо, думаю, я доволен этим ответом. Спасибо.
АНДРЕЙ БАНБУРСКИЙ: Я имею в виду, что на самом низком уровне я, вероятно, могу показать, что да, это определенно проблема поиска. Потому что DSL может быть просто пиксельной операцией.
АУДИТОРИЯ: Да, но дело в том, что вы хотите… так что есть другое… Я думаю, да, если представить это так, вы могли бы получить машину… это просто я представляю это как [НЕРАЗБОРЧИВО]- —
СЛУШАТЕЛЬ: Нет, нет, нет.Я понимаю.
АНДРЕЙ БАНБУРСКИЙ: Я согласен с Саймоном.
САЙМОН АЛФОРД: Первоначально я интерпретировал ваш вопрос как то, что больше всего улучшит результаты, а не как то, что наиболее полезно для вашего исследования. Вот почему я колебался.
СЛУШАТЕЛЬ: Я думаю, это хорошо. Так что запуск DreamCoder стоил Кевину больших денег. Итак, если вы хотите измерить это в этом смысле, если бы вы могли передать часть компьютера DreamCoder на аутсорсинг [НЕРАЗБОРЧИВО]. Например, какую часть вы хотели бы передать на аутсорсинг?
Потому что, в конце концов, мы хотим найти баланс между поиском программы в пространстве.Программа, а затем некоторые из этих усилий лучше всего выполнять путем перечисления и внутри чего-то вроде, где вы помещаете эти храповики в нужное место? Я чувствую, что частью храповика могут быть люди. И поэтому, если они хороши в решении какой-то особенно очень глубокой задачи поиска, которая, вероятно, требует какой-то сумасшедшей заученной эвристики, которой у вас нет, тогда, возможно, они могут дать вам несколько семян, например, вот как вы перемещаетесь в этом пространстве поиска. И вы могли бы как-то использовать имитацию. Это может быть полезно.Но да, я вижу. Да, круто. Спасибо.
АНДЖЕЙ БАНБУРСКИЙ: Итак, мы можем официально закрыть первое заседание CBMM в этом году.
Связанный исследовательский модуль:
CanvasRenderingContext2D.arc() — веб-API | МДН
То
CanvasRenderingContext2D.arc()
метод Canvas 2D API
добавляет дугу окружности к текущему подпути.
void ctx.arc(x, y, radius, startAngle, endAngle [, против часовой стрелки]);
Метод arc()
создает дугу окружности с центром в точке (x, y)
с радиусом радиусом
.Путь начинается с startAngle
, заканчивается
at endAngle
и движется в направлении, заданном
против часовой стрелки
(по умолчанию по часовой стрелке).
Параметры
-
x
Горизонтальная координата центра дуги.
-
г
Вертикальная координата центра дуги.
-
радиус
Радиус дуги.Должен быть положительным.
-
начальный угол
Угол начала дуги в радианах, измеренный от положительной оси x.
-
Концевой угол
Угол окончания дуги в радианах, измеренный от положительной оси x.
-
против часовой стрелки
Дополнительно Необязательное логическое значение. Если
верно
, рисует дугу
против часовой стрелки между начальным и конечным углами.По умолчаниюложно
(по часовой стрелке).
Рисование полного круга
В этом примере метод arc()
рисует полный круг.
HTML
JavaScript
Дуге задана координата x 100, координата y 75 и радиус 50. Чтобы
сделать полный круг, дуга начинается под углом 0 радиан (0 ° ), и
заканчивается под углом 2π радиан (360 ° ).
константный холст = документ.селектор запросов('холст');
const ctx = canvas.getContext('2d');
ctx.beginPath();
ctx.arc(100, 75, 50, 0, 2 * Math.PI);
ctx.stroke();
Результат
Демонстрация различных форм
В этом примере показаны различные фигуры, чтобы показать, что возможно с помощью arc()
.
<холст>холст>
const canvas = document.querySelector('canvas');
const ctx = canvas.getContext('2d');для (пусть я = 0; я <= 3; я ++) {
for (пусть j = 0; j <= 2; j++) {
ктх.началоПути();
пусть х = 25 + j * 50;
пусть у = 25 + я * 50;
пусть радиус = 20;
пусть startAngle = 0;
пусть endAngle = Math.