Data Science | Machinelearning [ru] – Telegram
Data Science | Machinelearning [ru]
20.1K subscribers
632 photos
39 videos
29 files
3.52K links
Все о Data Science, машинном обучении и искусственном интеллекте: от базовой теории до cutting-edge исследований и LLM.

По вопросам рекламы или разработки - @g_abashkin

РКН: https://vk.cc/cJPGXD
Download Telegram
Грандиозное судилище по факту злоупотребления искусственным интеллектом крупнейшими компаниями.


Google, Deepmind, Alphabet, Facebook, Tesla, Nearalink, Сергей Брин, Ларри Пейдж, Марк Цукерберг, Илон Маск, Сандар Пичаи, PR Newswire и John Does.

Это самый значительный и важный судебный процесс 21 века, и он оказывает влияние на весь мир. Генеральный директор и учредители Марк Цукерберг, Илон Маск, Сергей Брин, Ларри Пейдж и Сандар Пичаи также названы ответчиками вместе со своими компаниями.
Машинный перевод статьи, источник указан внизу. Судьбу ответчиков вы можете проследить самостостоятельно.

КРАТКИЕ ФАКТЫ

Угроза человечеству с помощью неправомерного использования искусственного интеллекта, соучастия и помощи в физическом геноциде внутри Китая путем передачи технологий искусственного интеллекта, участия в культурном геноциде человечества и управления и программирования человеческой расы с помощью социальной инженерии с помощью кодирования ИИ и алгоритмической обработки биометрических данных ИИ.
Это фаза 1 первого судебного процесса. Мы открыты для поддержки на глобальном уровне. У нас есть сеть, состоящая из тысяч человек по всему миру и десятков тысяч в Китае, которые являются свидетелями и пострадали в Китае из-за технологий и передачи данных ответчиками. Ниже приведены краткие сведения о соответствии федеральным делам, извлеченные из официального документа, поданного в Сан-Диего , Калифорния. Чтобы узнать подробности о финансовых, личных и корректирующих поведенческих требованиях, вы можете получить доступ к делу в базе данных федерального суда.
​​Нейронные сети прямого распространения (Feed Forward Neural Networks)
В основном, это многоуровневые классификаторы логистической регрессии. Многие слои весов разделены нелинейностями (sigmoid, tanh, relu + softmax и cool new selu). Также они называются многослойными перцептронами. FFNN могут быть использованы для классификации и “обучения без учителя” в качестве автоэнкодеров.
FFNN можно использовать для обучения классификатора или извлечения функций в качестве автоэнкодеров.
Полезные ссылки:
sklearn.neural_network.MLPClassifier
sklearn.neural_network.MLPRegressor
Вводные гайды:
FFNN
Автоэнкодеры
​​Свёрточные нейронные сети

Практически все современные достижения в области машинного обучения были достигнуты с помощью свёрточных нейронных сетей.
Они используются для классификации изображений, обнаружения объектов или даже сегментации изображений. Изобретенные Яном Лекуном в начале 90-х годов, сети имеют сверточные слои, которые действуют как иерархические экстракторы объектов.
Вы можете использовать их для работы с текстом (и даже для работы с графикой).

Полезные ссылки:
Интерактивная система обучения GPU c глубоким обучением
TorchCV: библиотека видения PyTorch имитирует ChainerCV
ChainerCV: библиотека для глубокого обучения и компьютерного зрения
Документация Keras
Вводные гайды:
CNN для визуального распознавания
Гайд для начинающих по CNN
​​Регуляризация (Regularization)

При создании аналитических моделей следует избегать двух крайностей — недообучения (underfitting) и переобучения (overfitting), В первом случае алгоритм делает поспешные выводы, во втором строит функцию слишком близко к исходным данным.
Истина лежит посередине, и достичь ее помогает регуляризация.
Для этого к целевой функции добавляются весовые коэффициенты. Они не позволяют функции «отвлекаться» на избыточные данные, обеспечивая нужный результат.

Недообучение, оптимальный результат, переобучение.
​​Ковариантная матрица (Covariance Matrix)
Бивариантный анализ позволяет изучать взаимосвязи между парами переменных. Ковариантность, которая применяется в такой работе, помогает определить линейное направление изменений в таких моделях. Позитивная ковариантность означает, что увеличение или уменьшение одной переменной приводит к симметричному изменению другой. Отрицательная ковариантность свидетельствует об обратном изменении — увеличение одного параметра уменьшает второй, и наоборот.
Определяя значение ковариантности, мы получаем показатель корреляции, который лежит в пределах от -1 до 1. Он объединяет в себе величину и направление линейной взаимосвязи двух переменных.
​​Рекуррентные нейронные сети (RNNs)
RNNs моделируют последовательности, применяя один и тот же набор весов рекурсивно к состоянию агрегатора в момент времени t и вход в момент времени t. Чистые RNN редко используются сейчас, но его аналоги, например, LSTM и GRU являются самыми современными в большинстве задач моделирования последовательности.
LSTM, который используется вместо простого плотного слоя в чистой RNN.
Используйте RNN для любой задачи классификации текста, машинного перевода, моделирования языка.
Полезные ссылки:
Модели и примеры, созданные с помощью TensorFlow
Бенчмарк текстовой классификации в PyTorch
Open-Source система перевода
Вводные гайды:
Глубокое обучение для обработки языка от Stanford
Статьи по RNN
Понимание LSTM
Условные случайные поля (CRFs)
Они используются для моделирования последовательности, как RNN, и могут использоваться в сочетании с RNN. Они также могут быть использованы в других задачах структурированных прогнозирования, например, в сегментации изображения. CRF моделирует каждый элемент последовательности (допустим, предложение), таким образом, что соседи влияют на метку компонента в последовательности, а не на все метки, независимые друг от друга.
Используйте CRF для связки последовательностей (в тексте, изображении, временном ряду, ДНК и т. д.).
Полезная ссылка:
sklearn-crfsuite
Вводные гайды:
Введение в условные случайные поля
YouTube плейлист по условным случайным полям
​​Если вы думали, что современные медицинские открытия совершаются только учеными-супергероями, то вот интересный факт: специалисты по Data Science тоже в этом замешаны.

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

Хотите окунуться в мир исследований? Тогда записывайтесь на факультет «Data Science в медицине» GeekBrains. Узнаете, как работать с научными данными и использовать машинное обучение и нейросети для решения сложных задач.

Кстати, на факультете помогают с трудоустройством. А еще специалисты по Data Science весьма неплохо зарабатывают.

Изучите новую специальность и станьте аналитиком-супергероем → https://geekbrains.ru/link/scdgRg
​​«Эмоциональный искусственный интеллект»
Искусственный интеллект, традиционно призванный решать «рациональные» задачи, в последние годы обретает способности, присущие только человеку, а именно — распознавание и синтез эмоций и социального поведения. Для чего машинам эмоции? Как научить роботов воспринимать социальные сигналы и корректно на них реагировать? Сможет ли компьютер чувствовать людей лучше, чем это делаем мы сами? Все эти вопросы изучает область Affective Computing - как при помощи методов компьютерного зрения, машинного обучения и анализа естественного языка можно извлекать разнообразную информацию о человеке. Появившись более 20 лет назад, сегодня это направление включает исследователей со всего мира: лаборатории, создающие эмоциональный искусственный интеллект, есть в крупнейших университетах (MIT, Cambridge и др.) и корпорациях (Microsoft, Apple, Amazon). Поговорим о том, куда движется индустрия эмоционального искусственного интеллекта, какие прогнозы ее развития, какие препятствия стоят на пути внедрения технологий, и рассмотрим практические кейсы, которые есть уже сегодня.
Источник: www.youtube.com
Деревья принятия решений и случайные леса

Один из самых распространённых алгоритмов машинного обучения. Используется в статистике и анализе данных для прогнозных моделей. Структура представляет собой “листья” и “ветки”. На “ветках” дерева решения записаны атрибуты, от которых зависит целевая функция, в “листьях” записаны значения целевой функции, а в остальных узлах – атрибуты, по которым различаются случаи.
Чтобы классифицировать новый случай, надо спуститься по дереву до листа и выдать соответствующее значение. Цель состоит в том, чтобы создать модель, которая предсказывает значение целевой переменной на основе нескольких входных переменных.
Полезные ссылки:
sklearn.ensemble.RandomForestClassifier
sklearn.ensemble.GradientBoostingClassifier
Документация XGBoost
Документация CatBoost
​​Оверсемплинг и андерсемплинг

Оверсемплинг и андерсемплинг используются в задачах классификации. Порой набор данных для классификации сильно сдвинут в одну сторону. Например, для класса 1 может быть 2000 примеров, а для класса 2 — всего 200. Это негативно повлияет на многие методы машинного обучения, которые используются для моделирования данных и составления предсказаний. Овер- и андерсемплинг нужны как раз для таких случаев.
На обеих сторонах этой картинки синий класс содержит гораздо больше данных, чем оранжевый. В такой ситуации можно предпринять один из двух шагов для препроцессинга данных перед их использованием для обучения моделей.
Андерсемплинг означает, что используется только часть данных большего класса. Это необходимо для поддержания распределения вероятности класса.
Оверсемплинг означает, что создаются копии меньшего класса, чтобы сравнять его размер с большим классом. Копии делаются таким образом, чтобы поддерживать распределение меньшего класса.
Изучаем Python. Программирование игр, визуализация данных, веб-приложения 3-е издание.
Эта книга представляет из себя курс, который за короткое время даст вам все необходимые базовые знания о геймдеве, разработке веб-приложений и визуализации данных. Сначала вы узнаете об основных принципах программирования: циклы, ветвления, списки, классы, словари. Вы научитесь грамотно разрабатывать программы и проводить тестирование кода.
Далее вы сразу сможете применить полученные знания в 3 крупных проектах: шутер с динамической сложностью, обработка и визуализация большого объёма данных, и веб-приложение на Django, гарантирующее пользователям конфиденциальность.
​​Метод опорных векторов (Support-Vector Machine)

Техника SVM применяется для классификации объектов. Для этого используется концепция векторных пространств — математических структур, объединяющих множество векторов, с которым можно проводить операции сложения, вычитания и умножения.
Для решения этой задачи каждая переменная (фактически, каждый объект, который нужно отнести к тому или иному классу) выражается в виде точки в n-мерном пространстве, где n — это количество характеристик, которыми вы располагаете. Координаты каждой точки обозначают соответствующие характеристики. Далее алгоритм с помощью метода опорных векторов находит гиперплоскость, которая пролегает точно между группами наших объектов.
Поскольку таких гиперплоскостей может быть больше одной, необходимо определить такую, которая пролегает на максимально далеком расстоянии от каждого объекта. Очевидно, это обеспечивает наилучшую классификацию.
Алгоритм, записанный на "понятном" компьютеру языке программирования, называется...

Исполнителем алгоритмов - 2
👍 1%
Программой - 153
👍👍👍👍👍👍👍👍 94%
Листингом - 5
👍 3%
Текстовкой - 2
👍 1%
Протоколом алгоритма - 1
👍 1%
👥 163 человека уже проголосовало.
⬆️ Правильный ответ ⬆️

Алгоритм, записанный на «понятном» компьютеру языке программирования, называется ПРОГРАММОЙ
This media is not supported in your browser
VIEW IN TELEGRAM
Новый метод позволяет внедрять ИИ в бытовые приборы


Исследователи из Университета Юты в США представили модель, которая внедряет искусственный интеллект (ИИ) в любое устройство. Для этого не нужны сложные вычисления.
Новая модель позволит исследователям внедрять искусственный интеллект в бытовые приборы, которые работают с помощью встроенных технологий для взаимодействия друг с другом или с внешней средой («интернет вещей»). По предварительным данным, приборы повышают безопасность данных и их энергоэффективность.
​​Метод главных компонент (Principal Component Analysis, PCA)
Очень часто эксперту по Data Science приходится работать с наборами данных, которые включают сотни и тысячи переменных. Большинство из них не представляют практического смысла, но даже если отсеять 99 мусорных процентов, на анализ оставшихся данных может потребоваться слишком много времени и ресурсов.
В таких случаях используются техники уменьшения размерности (dimensionality reduction), которые определяют переменные, сильнее всего влияющие на результат. Один из наиболее применимых методов для решения таких задач — метод главных компонент. Если не углубляться в математику, достаточно сказать, что таким образом можно найти основные векторы и спроецировать остальные данные согласно им. .
Git для профессионального программиста

Эта книга представляет собой обновленное руководство по использованию Git в современных условиях. С тех пор как проект Git — распределенная система управления версиями — был создан Линусом Торвальдсом, прошло много лет, и система Git превратилась в доминирующую систему контроля версий, как для коммерческих целей, так и для проектов с открытым исходным кодом. Эффективный и хорошо реализованный контроль версий необходим для любого успешного веб-проекта. Постепенно эту систему приняли на вооружение практически все сообщества разработчиков ПО с открытым исходным кодом. Появление огромного числа графических интерфейсов для всех платформ и поддержка IDE позволили внедрить Git в операционные системы семейства Windows. Второе издание книги было обновлено для Git-версии 2.0 и уделяет большое внимание GitHub.
​​Самый сложный язык программирования

Многие люди, которые желают начать изучать программирование, интересуются – какой самый сложный язык программирования? Вопрос вполне понятен, ведь мало кто из новичков хочет выбрать сразу очень сложный язык и потратить на его изучение множество времени, не имея возможности применить свои знания на практике или даже подзаработать на этом денег. Все стремятся найти такой вариант для изучения, который бы при минимальных вложениях в самые краткие сроки начал бы приносить конкретный результат и прибыль. Но на самом деле подобная стратегия действий далеко не всегда бывает выигрышной.
Дело в том, что простые языки, изучаются очень многими людьми, поэтому конкуренция в попытке коммерциализировать свои знания здесь будет слишком большой. Типичные шаблонные действия с таким языком сможет выполнить любой нормальный студент ВУЗа, а более сложные операции требуют или неординарной находчивости, или же они просто невозможны в силу ограниченных возможностей самого языка. Поэтому выбирая для изучения простой язык программирования, человек заведомо существенно сужает горизонт своих будущих возможностей. Такие языки годятся только для образовательных целей и как базис для изучения более сложных вещей.
Самые сложные языки – обычно самые функциональные
Сортируя языки программирования по сложности стоит понимать, что, как правило, чем более сложный язык и дольше времени требуется на его нормальное усвоение, тем большие возможности и перспективы он предоставляет программисту. Вот некоторые такие языки:
C++. Постепенно устаревающий, но все еще очень функциональный и распространенный язык. Он довольно сложен в изучении, но при хорошем знании с его помощью можно писать не только программы на ПК, но даже и целые операционные системы или их модификации, разрабатывать игры. Он сочетает в себе возможности программирования низкого и высокого уровня. Также с помощью С++ можно работать с компьютерной графикой, писать драйвера на устройства, создавать программы для работы на серверах и многое другое;
PHP. Отличный язык для разработки веб-приложений и динамичных сайтов. Способен реализовать любую задумку веб программиста и представить предельно качественный и функциональный продукт;
С#. Си Шарп – это тоже непростой в изучении язык, но и он предоставляет программисту очень широкие возможности: создание офисных приложений, мобильных программ, использование в играх, веб-приложениях и других сферах.
В качестве заключения нужно сказать, что самый сложный язык программирования в мире – это понятие несуществующее. Каждый язык требует усилий по освоению. Если какой-то язык требует больших усилий и запоминания большего объема знаний, то это с лихвой окупается его большими функциональными возможностями.
This media is not supported in your browser
VIEW IN TELEGRAM
Алгоритм заполнения шахматной доски

Достаточно простая, но тем не менее интересная задача для разминки программиста. Думаю, все видели, как выглядит шахматная доска, а также слышали выражение «расставить в шахматном порядке». На случай, если не видели, это поле, состоящее размером 8 на 8 клеток, имеющих разные цвета – черный и белый. При этом, клетки одного цвета не могут быть смежными, а расположены через одну: белый, черный, белый… как по вертикали, так и по горизонтали.
Мы выведем в шахматном порядке восемь строк по восемь символов в каждой. Черный цвет у нас будет изображать символ «X», а белый – «O».
Самое первое, что приходит в голову:
Создать двумерный массив соответствующего размера;
Двойным циклом заполнить одним белым цветом все поля;
Затем можно запустить еще дополнительные циклы, которые будут обходить нужные клетки и назначать «черный» цвет.
Сингулярное разложение (Singular Value Decomposition)
Способ понизить размерность без потери значительной доли ценной информации. Если у вас есть исходная матрица с большим объемом данных, вы можете разложить ее на меньшие матрицы, которые будут обладать теми же свойствами. Это отличный способ получить полезный результат в шумных условиях или в тех случаях, когда информации, напротив, не хватает. 
Например, Netflix применяет SVD в своих рекомендательных системах, где объем исходной информации (количество фильмов в базе) несравнимо превышает объем информации рабочей (количество фильмов, которые посмотрел пользователь). Кроме того, таким образом оказывается удобно обрабатывать изображения и музыку, сжимая их с минимальным ущербом качеству.