Bayesian Noise
61 subscribers
57 photos
234 links
Канал @nesterione. Посты про ИТ, машинное обучение, рациональность, иногда просто заметки и наблюдения.

з.ы. картинка не картинка...
Download Telegram
Еще один факт про языки, есть так называемый белорусский латинский алфавит, которые не то же самое, что и транслитерация беларусского. 

Алфавит какое-то время использовался белорусами. Совсем упустил этот факт, изучая историю РБ в школе)

Думаю, что изучай мы оба алфавита, на бы было проще читать и понимать польский текст.

https://ru.wikipedia.org/wiki/%D0%91%D0%B5%D0%BB%D0%BE%D1%80%D1%83%D1%81%D1%81%D0%BA%D0%B8%D0%B9_%D0%BB%D0%B0%D1%82%D0%B8%D0%BD%D1%81%D0%BA%D0%B8%D0%B9_%D0%B0%D0%BB%D1%84%D0%B0%D0%B2%D0%B8%D1%82
Какой язык программирования лучше всего подходит для Machine Learning и AI? 

На мой взгляд, python — это must have язык для любого инженера работающего с Machine Learning, но если копать глубже, то для многих продакшен задач язык не подходит. На нём сложно писать код, который будет выжимать максимум из вашего железа — с другой стороны это никогда и не было задачей python. Python очень гибкая экосистема, есть много возможностей улучшить производительность, но какие альтернативы есть сейчас за которыми можно следить? 

Самые очевидные: 
- Julia https://julialang.org/  — собирается исправить многие проблемы python и компилируется в нативный код с помощью LLVM. 
- C/C++ — нестареющая классика, если нужно написать эффективный код, то C или C++ все еще выбор номер один


Еще бросил взгляд на Skip (http://skiplang.com/ ), статически-типизированный и использует LLVM, упор на безопасный параллелизм, есть сборщик мусора. Первое впечатление: это некая смесь rust и go. Фейсбук выпустил его в opensource несколько лет назад, но не вижу вокруг хоть сколько интересного движения. 

За чем следите вы?
👍3
Законы штука сложная и запутанная, почти невозможно найти однозначный ответ на свой вопрос. 

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

В свободное время я взял гражданский кодекс Германии (https://www.gesetze-im-internet.de/englisch_bgb/), нашел связи между статьями и показал их в виде графа, получилось красиво, хоть и запутано. 

(больше скринов тут https://www.linkedin.com/posts/nesterione_visualization-dataviz-legaltech-activity-6960496755549347841-82ni)

#legaltech #dataviz
3
Попался на глаза отчет Gallup Global Emotions, теперь статистически может быть доказано, что 2007 год был действительно хорош.

*Если доверять их методологии

#index
1
Еще у них есть интерактивная карта по разным эмоциям, по которой получается, что в Эстонии и Финляндии люди очень мало злятся, а в Турции наоборот.

В Ирландии люди часто испытывают удовольствие (ENJOYMENT), в Китае тоже все довольны 🤔(?).

Беларусь, как обычно, серое пятно на карте.
1
В одном из предыдущих постов я рассказывал про мой эксперимент связанный с визуализацией немецких законов. Сегодня я рад сообщить, что мы с коллегой опубликовали в немецком журнале статью, в которой мы рассказываем про визуализацию законов в доступной для юристов форме.

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

https://www.linkedin.com/feed/update/urn:li:activity:7036790525307289600/

#legaltech
6
Сегодня читал, как выбирать метрики для решения задач, и наткнулся на шуточный Segal's law: “A man with a watch knows what time it is. A man with two watches is never sure.”

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

Этот случай был живой демонстрацией идеи, которая была рассмотрена в TEDе How to start a movement https://www.ted.com/talks/derek_sivers_how_to_start_a_movement?language=en [3m]

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

В разных городах и странах подходы к оплате разные. Билеты зависят от времени поездки или расстояния, иногда и то, и другое. Есть приложения, но много и разные. Каждый раз в новом городе приходится разбираться как все здесь устроено. 

Думаю часто дело в местных привычках и традициях. Изменить сложившийся порядок бывает трудно из-за привязанности к знакомому.

Пример из Rimini: 4 способа оплаты. Купи билет в транспорте, через карту, на остановке или через приложение (у них 3 разных приложения). Важно учесть и время, и расстояние. Но как понять, какая зона относится к какой остановке? Это задача не для новичка. (есть даже специальный девайс)

Интересно наблюдать много людей путаются в таблицах. Получился продукт в котором очень много фич, но он сложный. 

Наблюдения: большой выбор усложняет задачу, полевое тестирование помогло бы выявить недостатки, задача UX сделать сложное простым
Теперь у HuggingFace появился собственный чат https://huggingface.co/chat/. Внутри несколько моделей, основанных на Llama от Meta. Там есть Llama-2-70b, самая большая модель на базе llama, а значит теперь можно ее протестировать без наличия 35 Гб GPU. 

Проверил один и тот же промпт в gpt-3.5, bard и Llama-2-70b. Все три модели справились с задачей. Llama-2 чаще других путает мелкие детали из моего запроса. Bard кажется теперь лучше, но результат gpt-3.5 мне нравится пока больше. Конечно это научный результат, я использовал промпты оптимизированные под gpt-3.5. 

В целом я считаю, что это демонстрирует тренд по развитию специализированных чат-моделей для различных задач. Очевидно моделей будет становиться больше, от разных компаний и оптимизированных под разные задачи.
Вы наверное слышали про OWASP (Open Web Application Security Project). Они занимаются улучшением безопасности веб-приложений и поддерживают обширную базу данных известных уязвимостей. Эта база пользуется огромной популярностью.

Генеративные искусственные интеллекты стали неотъемлемой частью нашей жизни, поэтому недавно на OWASP появился раздел, связанный с уязвимостями в LLM-приложениях https://owasp.org/www-project-top-10-for-large-language-model-applications/

Думаю этот раздел будет постоянно обновляться. Недавно была добавлена поддержка изображений в ChatGPT, и, конечно же, возникает интерес решить различные задачи, такие как распознавание капчи. Да, в публично доступные системы встраивают защиты от злонамеренного использования. Однако, такие системы могут быть легко обмануты, если им объяснить, что это не капча, а что-то другое. https://x.com/ItakGol/status/1708541450722414798?s=20 

В удивительное время мы живем: "злые" естественные интеллекты, пытаются обмануть наивные искусственные интеллекты :)
😁3
Andrej Karpathy опубликовал новое видео (https://youtu.be/zjkBMFhNj_g?si=Gb9RjAxBtaE_ba1R), где простым языком рассказывает о LLM и их обучение. Видео предназначено для тех, кто не вникал в машинное обучение, но хочет получить базовое представление. Для специалистов вряд ли будет что-то новое. Однако меня заинтересовала часть о безопасности.

Андрей продемонстрировал несколько атак на LLM, о которых уже говорили в OWASP. В одном примере он показал, как добавить текст на свой сайт для проведения Prompt Injection и заставить LLM выполнить определенное действие. В своем примере он использовал Bing Search, добавлял на сайт текст содержащий prompt injection и как результат получал ответ от Bing содержащий фишинговую ссылку.

Сейчас появляется множество продуктов, основанных на GPT и других LLM. Поэтому важно относиться с недоверием к новым продуктам на базе LLM, и с критикой смотреть, что вы получаете, и какие данные предоставляете.
🔥2
В течение недели появилось много новостей об OpenAI, с множеством комментариев и даже конспирологических теорий о том, что произошло. Я посмотрел одно из видео, где инвесторы (Николай Давыдов и братья Либермананы) делились своим взглядом на ситуацию (https://www.youtube.com/live/boF1n3EBGtc?si=Ea10Eew39X7xR-yh).

Было интересно услышать рассуждения о будущих больших проблемах, которые предстоит решать. Помимо потенциальных сложностей, связанных с приближением к AGI, я отметил несколько проблем про которые так или иначе говорили в видео:

1. Чипы: В настоящее время основная зависимость от NVIDIA и их GPU. Любая фундаментальная работа в области искусственного интеллекта требует большого количества GPU, и их становится сложно достать из-за квот, установленных NVIDIA для компаний. Существует даже слух, что Сэм собирал инвестиции под новую компанию по производству аппаратных средств.
2. Электроэнергия: Потребление электроэнергии становится проблемой не только для обучения нейросетей, но и для их инференса. С ростом использования искусственного интеллекта компаниями увеличатся затраты на электроэнергию, что потребует производства большего количества энергии и решения проблем повышенной нагрузки на энергетическую инфраструктуру. ~И кажется ветряные мельницы нас не спасут, быть может термоядерный синтез?~
3. Образование: Задачу которую мы до сих пор не решили. С ростом применения искусственного интеллекта станет важным быстро переучиваться и фокусироваться не только на "как" делать что-то, но и на "что" и "почему". Хорошая аналогия с музыкальным образованием: мы учимся игре по нотам, в то время как требуется становиться композиторами.

Про электричество даже не задумывался раньше, а вот вокруг образования в последнее время много читаю что происходит, пока выглядит что оно очень медленно изменяется.
1
На прошлой неделе мы обсуждали, что если предложить $200 чаевых GPT может стимулировать нейронную сеть генерировать более подробные ответы. На этой неделе вышел пост от Anthropic: https://www.anthropic.com/index/claude-2-1-prompting. В двух словах, кто-то в Twitter проверил, насколько хорошо модель Claude может сохранять контекст, и оказалось, что использование длинного контекста (до 200 тыс. токенов) дает довольно слабые результаты. Antropic провели свои собственные тесты и показали, что добавление всего лишь одного предложения к запросу может привести к практически 100% точности с длинным контекстом. Волшебное предложение? "Here is the most relevant sentence in the context."

Пожалуй не стоит называть это инженерингом, возможно, более точным будет назвать это гадание или хаккинг. Это больше похоже на волшебство, чем на инженерию. Но, собственно, это просто новые инструменты, это весело.

Какой ваш любимый трюк для LLM?
👍1
GitHub выпустили Copilot Chat из бета-версии. Это логичный этап в развитии GitHub Copilot, фокусирующийся на пользовательском опыте. В основе - GPT-4, который анализирует ваш код и контекст, теперь доступен прямо в IDE. Поддерживается в VS, VS Code и JetBrains (beta).

Основные возможности:
- Чат в отдельном окне или встроенный. Доступны команды (агенты) @workspace для работы с кодом и @vscode для вопросов по настройке IDE. Можно выделить код и задать вопрос или использовать команды /fix, /doc, /explain, /tests для частых задач.
- Генерация названий коммитов и описаний пул-реквестов.
- Голосовой ввод: объясните проблему словами и получите совет или решение. (уточка теперь может вам помочь не только слушая).

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

Все это можно было делать и напрямую в ChatGPT, но интеграция в IDE добавляет понимание контекста и позволяет оставаться в рабочем потоке.

Мне нравится, как команда GitHub интегрировала инструмент, делая его использование естественным. Интеграция не ограничивается чатом: если IDE подсвечивает ошибку, можно сразу обратиться к Copilot за решением, или, если что-то не работает в терминале, одним кликом спросить у чата, в чем проблема.

Мне нравится как меняется разработка, и активно советую всем попробовать новые инструменты. Интересно узнать о вашем опыте, особенно если что-то не понравилось.

https://github.blog/2023-12-29-github-copilot-chat-now-generally-available-for-organizations-and-individuals/
👍6
Существует лидерборд на chat.lmsys.org, который оценивает качество LLM на основе человеческих отзывов. Любой желающий может участвовать: задать вопрос, получить ответы от двух различных моделей и выбрать, какой ответ понравился больше. На мой взгляд, это пока самый объективный способ сравнения моделей, так как статические бенчмарки могут быть случайно (или не случайно) скомпрометированы, использованием при обучали модель, что делает оценку необъективной.

Недавно в этот рейтинг ворвалась новая модель от французской компании Mistral. По результатам, она сравнима с GPT-4 и опередила других конкурентов. Mistral известна тем, что успешно собрав инвестиции под обещание создать свою LLM, и выполнила это обещание, выпустив лучшую открытую модель. Компания также недавно представила модель на базе MoE, которая занимает седьмое место в лидерборде и превосходит GPT-3.5, причем её можно запустить на собственном сервере. Теперь у них есть также закрытая модель, сравнимая по качеству с GPT-4.

Хорошо что у OpenAI появились реальные конкуренты, особенно важно, что среди них есть сильный участник из Европы. Это может способствовать лучшему соответствию местным регуляциям. Как и во многих других сферах, конкуренция положительно влияет на развитие технологий: мы наблюдаем больше подробных технических статей, активное развитие экосистемы и появление большего числа открытых моделей
🔥4👍1👏1
OpenAI анонсировала новые модели эмбеддингов для текста. Предыдущая модель, ada v2, была представлена около года назад.

Хорошие эмбеддинги играют важную роль в создании AI продуктов. Например, сейчас везде пишут про разные RAG, где ключевым элементом является компонент Retrieval. Часто для Retrieval используется векторный поиск, который полностью зависит от качественной модели эмбеддингов. Эта модель позволяет превратить текст в векторы — математические представления смысла текста, что позволяет находить наиболее похожие вектора в данном пространстве и соответственно похожие тексты.

Ключевые обновления:

1) Были выпущены две новые модели эмбеддингов: text-embedding-3-small и text-embedding-3-large. При этом размер вектора для text-embedding-3-small составляет 1536, а для text-embedding-3-large — до 3072. Предыдущая ada v2 имела размер вектора 1536.

2) Новые модели обучены таким образом, что позволяют укорачивать вектор, с небольшим ухудшением качества. Это может быть полезно для оптимизации скорости обработки. При этом даже укороченная до 512 версия модели text-embedding-3-small превосходит ada v2 (это при размере вектора в 3 раза меньше), а text-embedding-3-large даже при укорочении до 256 показывает лучшие результаты, чем ada v2 по среднему показателю по бенчмарку MTEB.

Выглядит интересно, надо тестировать. Метрики выглядят привлекательно, но этого не достаточно, чтобы точно сказать, что новые модели лучше, надо тестировать на своих задачах. OpenAI не планирует прекращать поддержку модели ada-v2.

https://openai.com/blog/new-embedding-models-and-api-updates
👍1🔥1
Bayesian Noise
Существует лидерборд на chat.lmsys.org, который оценивает качество LLM на основе человеческих отзывов. Любой желающий может участвовать: задать вопрос, получить ответы от двух различных моделей и выбрать, какой ответ понравился больше. На мой взгляд, это пока…
На прошлой неделе Google Bard (работающий на Gemini Pro) ворвался на второе место в лидерборде chat.lmsys.org

Это интересно, что Google наконец начинает конкурировать в этой области.

Однако примечательно, что у них аж три попытки с использованием одной и той же основной модели.

С одной стороны, это показывает их настойчивость, а с другой — пока еще несовершенство. По сравнению с открытой моделью от Mistral, они еще не смогли добиться лучших результатов.

Также стоит уточнить, чем Bard отличается от Gemini Pro. Bard – это, по сути, аналог ChatGPT от Google, который, помимо базовой модели, включает в себя также поисковую систему и дополнительные функции (точные детали которых нам неизвестны), включая RAG и костыли особой формы.

Несмотря на то, что у Google нет самой передовой технологией, их навыки в создании поисковых продуктов позволили им разработать сервис, конкурирующий с GPT-4.

Ждем Gemini Ultra.
👏3🔥1🤔1
Самый удобный способ запускать LLM локально — это ollama https://github.com/ollama/ollama (пока не для windows пользователей). По сути, это как Docker Hub для LLM. Можно выбрать разные модели и версии, даже квантизированные, и они обновляются очень быстро, обычно в течение недели.

Они недавно добавили библиотеки для Python и JS https://ollama.ai/blog/python-javascript-libraries, что делает интеграцию локальных LLM в приложения еще удобнее.

Если вам нужна не вся мощность GPT-4, но важно не использовать сторонние сервисы (например, для личных заметок), Ollama – идеальный выбор для запуска LLM локально, даже без особых технических знаний.

Кстати, у Ollama есть что-то вроде Dockerfile, чтобы настраивать модель под свои нужды. Очень удобно.
3👍1