Подтвердить что ты не робот

Приложения для церковного языка программирования

Кто-нибудь работал с языком программирования Church? Может ли кто-нибудь рекомендовать практические приложения? Я только что открыл его, и, хотя кажется, что он затрагивает некоторые давние проблемы в искусственном интеллекте и машинное обучение, я скептически отношусь. Я никогда не слышал об этом и был удивлен, обнаружив, что это действительно было в течение нескольких лет, о котором было объявлено в статье Церковь: язык для генеративных моделей.

4b9b3361

Ответ 1

Я не уверен, что сказать о практических приложениях. Является ли моделирование когнитивных способностей с генеративными моделями "практическим применением" в вашем сознании?

Ключевое значение Церкви (по крайней мере сейчас) заключается в том, что она позволяет тем из нас, кто работает с вероятностными решениями вывода для задач ИИ, является более простым способом моделирования. Это по существу подмножество Lisp.

Я не согласен с Крисом С в том, что это вообще не игрушечный язык. Хотя некоторые из этих проблем вывода могут быть реплицированы на других языках (я создал несколько в Matlab), они, как правило, не очень многократно используются, и вам действительно нужно любить работать в 4 и 5 для глубоких петель (я ненавижу его).

Вместо того, чтобы решать проблему таким образом, Церковь использует рекурсивные преимущества lamda calaculus, а также позволяет что-то называемое memoization, которое действительно полезно для генеративных моделей, так как ваша генеративная модель часто не является одним и тем же испытанием после испытания - хотя для вам действительно нужно это испытание.

Я бы сказал, что если то, что вы делаете, имеет какое-то отношение к байесовским сетям, иерархическим байесовским моделям, вероятностным решениям POMDP или Dynamic Bayesian Networks, то я думаю, что Церковь - это большая помощь. За то, что это стоит, я работал с Ноем и Джошем (двумя из авторов церкви), и никто сейчас не может лучше разбираться в вероятностных выводах (IMHO).

Ответ 2

Церковь является частью семейства вероятностных языков программирования, что позволяет отделить оценку модели от ее определения. Это делает вероятностное моделирование и вывод намного более доступным для людей, которые хотят применять машинное обучение, но которые сами по себе не являются учеными, изучающими компьютерные машины.

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

В качестве аналогии рассмотрим следующее:

Вы программист, и вы хотите запустить некоторый код на компьютере. Еще в 1970-х годах вам пришлось писать язык ассемблера на перфокартах и ​​передавать их в мейнфрейм (для которого вам приходилось записывать время), чтобы запустить вашу программу. Это сейчас 2014 год, и есть высокоуровневые, простые в освоении языки, на которых вы можете писать код даже без знания того, как работает компьютерная архитектура. По-прежнему полезно понять, как компьютеры работают для записи на этих языках, но вы не имеете, а еще многие люди пишут код, чем если бы вам приходилось программировать перфокарты.

Вероятностные языки программирования одинаковы для машинного обучения со статистическими моделями. Кроме того, Церковь - не единственный выбор для этого. Если вы не являетесь приверженцем функционального программирования, вы также можете проверить следующие рамки для байесовского вывода в графических моделях:

Ответ 3

Вы знаете, что лучше описывает Церковь, чем то, что я сказал? Эта статья MIT: http://web.mit.edu/newsoffice/2010/ai-unification.html

Это немного более гиперболично, но тогда я не застрахован от оптимизма, присутствующего в этой статье.

Ответ 4

Вероятно, статья должна была быть опубликована в День дурака. Вот еще одна статья, датированная концом марта прошлого года. http://dspace.mit.edu/handle/1721.1/44963