В мире, где с 1974 года доминирует SQL, в 2008 году появился Pandas, предлагающий привлекательные функции, такие как встроенная визуализация и гибкая обработка данных. Он быстро стал популярным инструментом для исследования данных, затмив собой SQL.
Но не обманывайте себя, SQL по-прежнему держит свои позиции. Это второй по востребованности и третий по скорости роста язык для Data science (см. здесь ). Таким образом, в то время как Pandas привлекает всеобщее внимание, SQL остаётся жизненно важным навыком для любого специалиста по данным.
Давайте узнаем, как легко выучить SQL, если вы уже знаете Pandas.
▪ Читать
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥2❤1🤣1
🖋 Нечеткое сравнение строк с помощью rapidfuzz
Недавно у меня возникла Недавно у меня возникла задача, в процессе которой потребовалось нечеткое сравнение строк. Ниже кратко опишу суть.
Проблема: на входе большое количество сканов документов в pdf формате, которые с помощью Adobe FineReader переведены в текстовые документы формата docx и мне необходимо произвести некоторую классификацию. К счастью тренировать NLP модель для этого не потребуется, т.к. документы легко классифицируются по содержанию в них конкретной фразы и мне остается лишь определить есть ли эта фраза в документе. С другой стороны, я еще далек от идеального будущего, в котором computer vision правильно распознает даже скан плохого качества, и поэтому текст в формат docx трансформировался с ошибками. Например, фраза «объект залога» может превратиться в «обb ект %алога».
Задача: написать функцию, которая определяет есть ли в документе определенная формулировка, с учетом неправильного преобразования текста., в процессе которой потребовалось нечеткое сравнение строк. Ниже кратко опишу суть.
Проблема: на входе большое количество сканов документов в pdf формате, которые с помощью Adobe FineReader переведены в текстовые документы формата docx и мне необходимо произвести некоторую классификацию. К счастью тренировать NLP модель для этого не потребуется, т.к. документы легко классифицируются по содержанию в них конкретной фразы и мне остается лишь определить есть ли эта фраза в документе. С другой стороны, я еще далек от идеального будущего, в котором computer vision правильно распознает даже скан плохого качества, и поэтому текст в формат docx трансформировался с ошибками. Например, фраза «объект залога» может превратиться в «обb ект %алога».
Задача: написать функцию, которая определяет есть ли в документе определенная формулировка, с учетом неправильного преобразования текста.
С чего начнем?
Прежде чем бежать писать функцию, надо определиться каким методом производить нечеткое сопоставление строк. Выбор тут не самый широкий, было решено протестировать три варианта: сравнение по косинусному сходству; сравнение по сходству Левенштейна; сравнение по сходству Джаро-Винклера. Критерии, по которым предстоит выбрать лучший вариант: скорость выполнения (документов довольно много, нужно находить подстроку за разумное время); правильность сравнения (нечеткое сравнение на то и нечеткое, потому что требуется некая экспертная оценка того, как отрабатывает критерий сравнения), простота реализации.
▪Читать дальше
▪RapidFuzz
@data_analysis_ml
Недавно у меня возникла Недавно у меня возникла задача, в процессе которой потребовалось нечеткое сравнение строк. Ниже кратко опишу суть.
Проблема: на входе большое количество сканов документов в pdf формате, которые с помощью Adobe FineReader переведены в текстовые документы формата docx и мне необходимо произвести некоторую классификацию. К счастью тренировать NLP модель для этого не потребуется, т.к. документы легко классифицируются по содержанию в них конкретной фразы и мне остается лишь определить есть ли эта фраза в документе. С другой стороны, я еще далек от идеального будущего, в котором computer vision правильно распознает даже скан плохого качества, и поэтому текст в формат docx трансформировался с ошибками. Например, фраза «объект залога» может превратиться в «обb ект %алога».
Задача: написать функцию, которая определяет есть ли в документе определенная формулировка, с учетом неправильного преобразования текста., в процессе которой потребовалось нечеткое сравнение строк. Ниже кратко опишу суть.
Проблема: на входе большое количество сканов документов в pdf формате, которые с помощью Adobe FineReader переведены в текстовые документы формата docx и мне необходимо произвести некоторую классификацию. К счастью тренировать NLP модель для этого не потребуется, т.к. документы легко классифицируются по содержанию в них конкретной фразы и мне остается лишь определить есть ли эта фраза в документе. С другой стороны, я еще далек от идеального будущего, в котором computer vision правильно распознает даже скан плохого качества, и поэтому текст в формат docx трансформировался с ошибками. Например, фраза «объект залога» может превратиться в «обb ект %алога».
Задача: написать функцию, которая определяет есть ли в документе определенная формулировка, с учетом неправильного преобразования текста.
С чего начнем?
Прежде чем бежать писать функцию, надо определиться каким методом производить нечеткое сопоставление строк. Выбор тут не самый широкий, было решено протестировать три варианта: сравнение по косинусному сходству; сравнение по сходству Левенштейна; сравнение по сходству Джаро-Винклера. Критерии, по которым предстоит выбрать лучший вариант: скорость выполнения (документов довольно много, нужно находить подстроку за разумное время); правильность сравнения (нечеткое сравнение на то и нечеткое, потому что требуется некая экспертная оценка того, как отрабатывает критерий сравнения), простота реализации.
▪Читать дальше
▪RapidFuzz
@data_analysis_ml
👍11❤5🔥5👎1
🔥 Подборка каналов для Дата сайентиста
🖥 Machine learning
ai_ml – машинное обучение, ии, нейросети!
@bigdatai - Big Data
@machinelearning_ru – гайды по машинному обучению
@machinelearning_interview – подготовка к собеседованию мл.
@datascienceiot – бесплатные книги ds
@ArtificialIntelligencedl – ИИ
@machinee_learning – чат о машинном обучении
@datascienceml_jobs - вакансии ds, ml
@Machinelearning_Jobs - чат с вакансиями
#️⃣ c# c++
C# - погружение в C#
@csharp_cplus чат
С++ - обучающий канал по C++.
@csharp_1001_notes - инструменты C#
🖥 SQL базы данных
@sqlhub - Повышение эффективности кода с грамотным использованием бд.
@chat_sql - чат изучения бд.
👣 Golang
@Golang_google - восхитительный язык от Google, мощный и перспективный.
@golang_interview - вопросы и ответы с собеседований по Go. Для всех уровней разработчиков.
@golangtests - интересные тесты и задачи GO
@golangl - чат изучающих Go
@GolangJobsit - отборные вакансии и работа GO
@golang_jobsgo - чат для ищущих работу.
@golang_books - полезные книги Golang
@golang_speak - обсуждение языка Go
@golangnewss - новости go
🖥 Linux
linux - kali linux ос для хакинга
linux chat - чат linux для обучения и помощи.
@linux_read - бесплатные книги linux
🖥 Python
@pythonl - главный канал самого популярного языка программирования.
@pro_python_code – учим python с ментором.
@python_job_interview – подготовка к Python собеседованию.
@python_testit - проверочные тесты на python
@pythonlbooks - современные книги Python
@python_djangojobs - работа для Python программистов
@python_django_work - чат обсуждения вакансий
🖥 Javascript / front
@react_tg - - 40,14% разработчиков сайтов использовали React в 2022 году - это самая популярная библиотека для создания сайтов.
@javascript -канал для JS и FrontEnd разработчиков. Лучшие практики и примеры кода. Туториалы и фишки JS
@Js Tests - каверзные тесты JS
@hashdev - погружение в web разработку.
@javascriptjobjs - отборные вакансии и работа FrontEnd.
@jsspeak - чат поиска FrontEnd работы.
🖥 Java
@javatg - выучить Java с senior разработчиком на практике
@javachats - чат для ответов на вопросы по Java
@java_library - библиотека книг Java
@android_its - Android разработка
@java_quizes - тесты Java
@Java_workit - работа Java
@progersit - шпаргалки ит
👷♂️ IT работа
https://t.iss.one/addlist/_zyy_jQ_QUsyM2Vi -ит каналы по яп с вакансиями
🤡It memes
@memes_prog - ит-мемы
⚙️ Rust
@rust_code - Rust избавлен от болевых точек, которые есть во многих современных яп
@rust_chats - чат rust
📓 Книги
https://t.iss.one/addlist/HwywK4fErd8wYzQy - актуальные книги по всем яп
⭐️ Нейронные сети
@vistehno - chatgpt ведет блог, решает любые задачи и отвечает на любые ваши вопросы.
@aigen - сети для генерации картинок. видео, музыки и многого другого.
@neural – погружение в нейросети.
📢 English for coders
@english_forprogrammers - Английский для программистов
🖥 Devops
Devops - канал для DevOps специалистов.
ai_ml – машинное обучение, ии, нейросети!
@bigdatai - Big Data
@machinelearning_ru – гайды по машинному обучению
@machinelearning_interview – подготовка к собеседованию мл.
@datascienceiot – бесплатные книги ds
@ArtificialIntelligencedl – ИИ
@machinee_learning – чат о машинном обучении
@datascienceml_jobs - вакансии ds, ml
@Machinelearning_Jobs - чат с вакансиями
#️⃣ c# c++
C# - погружение в C#
@csharp_cplus чат
С++ - обучающий канал по C++.
@csharp_1001_notes - инструменты C#
@sqlhub - Повышение эффективности кода с грамотным использованием бд.
@chat_sql - чат изучения бд.
@Golang_google - восхитительный язык от Google, мощный и перспективный.
@golang_interview - вопросы и ответы с собеседований по Go. Для всех уровней разработчиков.
@golangtests - интересные тесты и задачи GO
@golangl - чат изучающих Go
@GolangJobsit - отборные вакансии и работа GO
@golang_jobsgo - чат для ищущих работу.
@golang_books - полезные книги Golang
@golang_speak - обсуждение языка Go
@golangnewss - новости go
linux - kali linux ос для хакинга
linux chat - чат linux для обучения и помощи.
@linux_read - бесплатные книги linux
@pythonl - главный канал самого популярного языка программирования.
@pro_python_code – учим python с ментором.
@python_job_interview – подготовка к Python собеседованию.
@python_testit - проверочные тесты на python
@pythonlbooks - современные книги Python
@python_djangojobs - работа для Python программистов
@python_django_work - чат обсуждения вакансий
@react_tg - - 40,14% разработчиков сайтов использовали React в 2022 году - это самая популярная библиотека для создания сайтов.
@javascript -канал для JS и FrontEnd разработчиков. Лучшие практики и примеры кода. Туториалы и фишки JS
@Js Tests - каверзные тесты JS
@hashdev - погружение в web разработку.
@javascriptjobjs - отборные вакансии и работа FrontEnd.
@jsspeak - чат поиска FrontEnd работы.
@javatg - выучить Java с senior разработчиком на практике
@javachats - чат для ответов на вопросы по Java
@java_library - библиотека книг Java
@android_its - Android разработка
@java_quizes - тесты Java
@Java_workit - работа Java
@progersit - шпаргалки ит
👷♂️ IT работа
https://t.iss.one/addlist/_zyy_jQ_QUsyM2Vi -ит каналы по яп с вакансиями
🤡It memes
@memes_prog - ит-мемы
⚙️ Rust
@rust_code - Rust избавлен от болевых точек, которые есть во многих современных яп
@rust_chats - чат rust
📓 Книги
https://t.iss.one/addlist/HwywK4fErd8wYzQy - актуальные книги по всем яп
@vistehno - chatgpt ведет блог, решает любые задачи и отвечает на любые ваши вопросы.
@aigen - сети для генерации картинок. видео, музыки и многого другого.
@neural – погружение в нейросети.
@english_forprogrammers - Английский для программистов
Devops - канал для DevOps специалистов.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🔥3👍2😁2🥰1
Продвинутый NumPy: оттачивайте навыки с помощью 25 иллюстрированных упражнений
В этой статье мы рассмотрим 25 различных упражнений, используя библиотеку NumPy (и сравним с тем, как мы бы реализовали их без неё).
Рекомендуется, чтобы читатель имел средний уровень знаний Python, NumPy, numpy.dtype, numpy.ndarray.strides и numpy.ndarray.itemsize.
▪Читать
@data_analysis_ml
В этой статье мы рассмотрим 25 различных упражнений, используя библиотеку NumPy (и сравним с тем, как мы бы реализовали их без неё).
Рекомендуется, чтобы читатель имел средний уровень знаний Python, NumPy, numpy.dtype, numpy.ndarray.strides и numpy.ndarray.itemsize.
▪Читать
@data_analysis_ml
👍7🔥3❤2
Набор инструментов Data Scientist: гайд по использованию основных функций sklearn с примерами кода.
Python имеет множество библиотек, которые делают его одним из наиболее часто используемых языков программирования. Большинство из них имеют схожие функции и могут использоваться друг с другом и достигать одинаковых результатов. Но когда дело доходит до машинного обучения, единственная библиотека, о которой мы можем говорить, это sklearn.
Итак, в этой статье я расскажу про пять самых важных особенностей sklearn.
Читать
@data_analysis_ml
Python имеет множество библиотек, которые делают его одним из наиболее часто используемых языков программирования. Большинство из них имеют схожие функции и могут использоваться друг с другом и достигать одинаковых результатов. Но когда дело доходит до машинного обучения, единственная библиотека, о которой мы можем говорить, это sklearn.
Итак, в этой статье я расскажу про пять самых важных особенностей sklearn.
Читать
@data_analysis_ml
❤10👍4🔥1
Датасет использовали для обучения функции оценки релевантности изображения введенному запросу.
Сравнение PickScore с FID, устоявшейся метрикой для оценки генеративных моделей, показало, что даже при оценке по подписям MS-COCO, PickScore демонстрирует сильную корреляцию с предпочтениями пользователей (0,917), в то время как ранжирование с помощью FID дает отрицательную корреляцию (-0,900). PickScore коррелирует с ранжированием «экспертов» гораздо сильнее, что делает PickScore наиболее надежной метрикой скоринга по сравнению с существующими.
▪Github
▪Статья
▪Модель
▪Датасет
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤2🔥1
Когда вы отправляете свой код машинного обучения команде инженеров, могут возникнуть проблемы совместимости с различными операционными системами и версиями библиотек. Эти проблемы могут вызвать сбои в выполнении кода и затруднить совместную работу. Однако есть мощный инструмент, способный облегчить эти проблемы — Docker .
В этом подробном руководстве мы не только познакомим вас с основными понятиями Docker, но и проведем вас через процесс установки. Затем мы продемонстрируем его практическое использование на реальных примерах, что позволит вам воочию убедиться в его эффективности. Кроме того, мы углубимся в лучшие отраслевые практики, предоставив ценные идеи и стратегии для оптимизации рабочего процесса машинного обучения с помощью Docker.
▪ Читать
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤3🔥2
HInt: Ускорение регулярных выржаений в 127 раз в 2 строках кода
Скомпилируйте ваш шаблоны Regex с помощью re.compile(<pattern>).
Функция предварительно скомпилирует регулярные выражения в байткод.
Далее мы будем используйте кэш LRU. Кэш хранит результат вызова функции, возвращая ранее вычисленный результат при последующих вызовах для тех же входных параметров. Таким образом, медленный Regex будет выполняться только один раз для каждой уникальной строки (~1 мкс), а последующие вызовы происходят за время O(1) (~20 нс).
@data_analysis_ml
Скомпилируйте ваш шаблоны Regex с помощью re.compile(<pattern>).
Функция предварительно скомпилирует регулярные выражения в байткод.
Далее мы будем используйте кэш LRU. Кэш хранит результат вызова функции, возвращая ранее вычисленный результат при последующих вызовах для тех же входных параметров. Таким образом, медленный Regex будет выполняться только один раз для каждой уникальной строки (~1 мкс), а последующие вызовы происходят за время O(1) (~20 нс).
import re
from functools import lru_cache
text = '''Lorem ipsum dolor sit amet...'''
compiled = re.compile(r'i')
@lru_cache
def cache(text):
return compiled.findall(text)
# Протестировано на: Apple M2 Pro, 32 ГБ оперативной памяти, Python 3.11.3
%%timeit
re.findall(r'i', text)
%%timeit
re.compile(r'i')
%%timeit
cache(text)
# Naive: 3.13 µs ± 24.2 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)
# Compiled: 2.96 µs ± 43.2 ns per loop (mean ± std. dev. of 7 runs, 100,000 loops each)
# Cached: 24.8 ns ± 0.325 ns per loop (mean ± std. dev. of 7 runs, 10,000,000 loops each)
@data_analysis_ml
🔥8👍7❤4👎1👏1
У меня возникла необходимость автоматизированного анализа текста постов на habr.com. Рассмотрю задачу, которая позволяет находить в заданном тексте ответы на вопросы (Context Question Answering, далее CQA).
В процессе работы над решением задачи оказался полезным сервис HuggingFace, предлагающий множество мультиязычных передобученных NLP моделей. Однако, при обработке текста на русском языке предпочтение было отдано российскому инструменту DeepPavlov, специализирующемуся на задачах NLP. Тем более, что DeepPavlov позволяет работать с NLP-моделями, представленными на HuggingFace «из коробки».
Разобью задачу на три этапа:
Загрузить текст поста с habr.com.
Подготовить набор вопросов из ответов.
Настроить deepPavlov для решения задачи CQA.
Для получения текста постов с habr.com воспользуюсь библиотеками urllib для загрузки html-документа с сайта и bs4 для доступа к элементам. Библиотека urllib входит в состав предустановленных библиотек языка Python, а библиотеку bs4 можно установить с помощью команды:
pip install beautifulsoup4
Код для получения текста по заданному url представлю в виде функций
getHtmlDocument
и getTextFromHtml
:from urllib import request
def getHtmlDocument(url):
""" Получаем html-документ с сайта по url. """
fp = request.urlopen(url)
mybytes = fp.read()
fp.close()
return mybytes.decode('utf8')
from bs4 import BeautifulSoup
def getTextFromHtml(HtmlDocument):
""" Получаем текст из html-документа. """
soup = BeautifulSoup(HtmlDocument,
features='html.parser')
content = soup.find('div', {'id': 'post-content-body'})
return content.text
Набор вопросов из ответов выглядит следующим образом:
questions = (
'О чём пост?',
'Какая цель поста?',
'Какая задача решалась?',
'Что использовалось в работе?',
'Какие выводы?',
'Что использовалось?',
'Какие алгоритмы использовались?',
'Какой язык программирования использовали?',
'В чём отличия?',
'Что особенного проявилось?',
'Какова область применения?',
'Что получено?',
'Каков результат?',
'Что получено в заключении?',
)
Далее перейду к настройке deepPavlov для решения задачи СQA. Установлю библиотеку deeppavlov в соответствии с официальным сайтом проекта:
pip install deeppavlov, transformers
Импортирую объекты configs и build_model с помощью команд:
from deeppavlov import configs, build_model
Далее инициализирую загрузку модели
squad_ru_bert
командой:model = build_model('squad_ru_bert', download=True)
Модель squad_ru_bert
— это модель глубокого обучения на основе архитектуры BERT, обученная на наборе данных SQuAD-Ru, который содержит пары вопрос-ответ на русском языке.Выберу посты с habr.com:
paper_urls = (
'https://habr.com/ru/articles/339914/',
'https://habr.com/ru/articles/339915/',
'https://habr.com/ru/articles/339916/',
)
и воспользуюсь моделью squad_ru_bert для построения ответов на указанные выше вопросы (questions) для каждого поста из списка paper_urls:for url in paper_urls:
content = getTextFromHtml(getHtmlDocument(url))
for q in questions:
answer = model([content], [q])
if abs(answer[2] – 1) > 1e-6:
print(q, ' ', answer[0])
Результатом работы модели является:
— фрагмент текста, который является ответом на заданный вопрос на основании текста,
— позиция этого ответа в тексте и качество полученного результата. Примеры «удачных» ответов, по моему мнению, на вопросы отмечены зелёным цветом на рисунках 1-3.
▪ Статья
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13❤4🔥2🎉1
✔ Плохие модели машинного обучения? Но их можно откалибровать
Модели машинного обучения часто оцениваются по их производительности, близости какого-либо показателя к нулю или единице, но это не единственный фактор, которым определяется их полезность. В некоторых случаях модель, в целом не очень точную, можно откалибровать и найти ей применение. В чем же разница между хорошими калибровкой и производительностью, и когда одна предпочтительнее другой?
Калибровка вероятности
Калибровка вероятности — это степень, с которой прогнозируемые в модели классификации вероятности соответствуют истинной частотности целевых классов в наборе данных. Прогнозы откалиброванной модели в совокупности тесно соотносятся с фактическими результатами.
На практике это означает, что если из множества прогнозов идеально откалиброванной модели двоичной классификации учесть только те, для которых моделью предсказана 70%-ная вероятность положительного класса, то модель должна быть корректной в 70% случаев. Аналогично, если учесть только примеры, для которых моделью прогнозируется 10%-ная вероятность положительного класса, эталонные данные окажутся положительными в 1 из 10 случаев.
▪ Читать
@data_analysis_ml
Модели машинного обучения часто оцениваются по их производительности, близости какого-либо показателя к нулю или единице, но это не единственный фактор, которым определяется их полезность. В некоторых случаях модель, в целом не очень точную, можно откалибровать и найти ей применение. В чем же разница между хорошими калибровкой и производительностью, и когда одна предпочтительнее другой?
Калибровка вероятности
Калибровка вероятности — это степень, с которой прогнозируемые в модели классификации вероятности соответствуют истинной частотности целевых классов в наборе данных. Прогнозы откалиброванной модели в совокупности тесно соотносятся с фактическими результатами.
На практике это означает, что если из множества прогнозов идеально откалиброванной модели двоичной классификации учесть только те, для которых моделью предсказана 70%-ная вероятность положительного класса, то модель должна быть корректной в 70% случаев. Аналогично, если учесть только примеры, для которых моделью прогнозируется 10%-ная вероятность положительного класса, эталонные данные окажутся положительными в 1 из 10 случаев.
▪ Читать
@data_analysis_ml
❤6👍3🔥1👌1
27 июня X5 Tech проведёт Customer Analytics Meetup
Спикеры компании поделятся, как удалось найти замену Vendor-Lock и оперативно внедрить альтернативное решение для предоставления клиентской аналитики в режиме реального времени на базе open-source технологий Clickhouse и Redis.
В спикерах - менеджер направления клиентской аналитики в цифровых каналах, архитектор данных и старший разработчик.
Регистрация обязательна.
Больше информации здесь
Спикеры компании поделятся, как удалось найти замену Vendor-Lock и оперативно внедрить альтернативное решение для предоставления клиентской аналитики в режиме реального времени на базе open-source технологий Clickhouse и Redis.
В спикерах - менеджер направления клиентской аналитики в цифровых каналах, архитектор данных и старший разработчик.
Регистрация обязательна.
Больше информации здесь
👍8
Это пошаговое руководство, представляет собой введение в Prompt Engineering для
Python программистов и датасаентистов.
Цель руководства, состоит в том, чтобы помочь вам понять, как эффективно управлять GPT-4 для достижения оптимальных результатов в процессе разработки на Python.
▪Читать
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
❤6👍1👎1🔥1
1. Introduction to Generative AI - введение в генеративный ИИ Этот курс погрузит вас в основаы генеративного ИИ,
2. Introduction to Large Language Models - в курсе вы узнаете о больших языковых моделях (LLM), которые представляют собой разновидность искусственного интеллекта, способного генерировать текст, переводить языки, писать различные виды креативного контента и информативно отвечать на ваши вопросы.
3. Introduction to Responsible AI - этот курс расскажет вам об этичном и ответственном использовании искусственного интеллекта. Вы узнаете о различных этических проблемах ИИ, таких как предвзятость, конфиденциальность и безопасность. Вы также узнаете о некоторых лучших практиках разработки ИИ.
4. Introduction to Image Generation - этот курс расскажет вам о генерации изображений, разновидности искусственного интеллекта, способного создавать изображения на основе текстовых описаний. Вы узнаете о различных типах алгоритмов генерации изображений, о том, как они работают, и о некоторых из их наиболее распространенных применений.
5. Encoder-Decoder Architecture -
этот курс расскажет вам об архитектуре модели кодера-декодера, которые представляют собой тип архитектуры нейронной сети, широко используемой для задач обработки естественного языка, таких как машинный перевод и резюмирование текста. Вы узнаете о различных компонентах архитектур энкодер-декодер, о том, как они работают, и о некоторых наиболее распространенных областях их применения.
6. Attention Mechanism - В этом курсе вы узнаете о механизме attention - технике, которая используется для повышения производительности нейронных сетей в задачах обработки естественного языка.
7. Transformer Models and BERT Model - В этом курсе вы изучите архитектуру трансформеров, которые представляют собой тип архитектуры нейронной сети, показавшей свою эффективность при решении задач обработки естественного языка.
8. Create Image Captioning Models - Этот курс научит вас создавать модели автоматического описания изображений, которые представляют собой разновидность искусственного интеллекта, способного генерировать подписи к изображениям.
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤4🔥1
Forwarded from YTsaurus Community Chat (RU)
🦖 Вебинар YTsaurus. DWH Яндекс Go: как мы готовим наши петабайты
Новый вебинар YTsaurus — об использовании платформы в реальных сервисах. В гостях — Яндекс Go, суперапп с разными сервисами внутри, который основан на data driven подходе. Владимир Верстов и Николай Гребенщиков из команды разработки Data Management Platform Яндекс Go расскажут, какие требования команда предъявляет к системам хранения и расскажет, как с этими требованиями справляется YTsaurus.
Ждём 28 июня в 18:30 Мск. Участие бесплатное, зарегистрироваться можно по ссылке.
Также запись вебинара будет доступна на YouTube.
Новый вебинар YTsaurus — об использовании платформы в реальных сервисах. В гостях — Яндекс Go, суперапп с разными сервисами внутри, который основан на data driven подходе. Владимир Верстов и Николай Гребенщиков из команды разработки Data Management Platform Яндекс Go расскажут, какие требования команда предъявляет к системам хранения и расскажет, как с этими требованиями справляется YTsaurus.
Ждём 28 июня в 18:30 Мск. Участие бесплатное, зарегистрироваться можно по ссылке.
Также запись вебинара будет доступна на YouTube.
❤5👍3🔥2👎1
🤖 Заставляем трансформеров отвечать на вопросы
Интеллектуальные системы призваны облегчать жизнь человека, выполняя за него рутинные задачи. Одной из таких задач является поиск информации в большом количестве текста. Возможно ли и эту задачу перенести на плечи интеллектуальных систем? Этим вопросом я решил задаться.
▪ Читать
@data_analysis_ml
Интеллектуальные системы призваны облегчать жизнь человека, выполняя за него рутинные задачи. Одной из таких задач является поиск информации в большом количестве текста. Возможно ли и эту задачу перенести на плечи интеллектуальных систем? Этим вопросом я решил задаться.
▪ Читать
@data_analysis_ml
👍10❤1🔥1
🔍 Podman: Альтернатива Docker без deamon
Хотя Docker, безусловно, перевернул наше представление о разработке, развертывании и запуске приложений, стоит изучить, чем отличается Podman (Pod Manager) и почему вам может быть интересно начать использовать его вместо Docker.
Podman — это менеджер контейнеров и падов с открытым исходным кодом.
Аналогично Docker, он позволяет создавать, запускать, останавливать и удалять контейнеры OCI, а также управлять образами контейнеров.
Он также поддерживает пады в рамках своего функционала, а значит, вы можете создавать и управлять падами так же, как с Kubernetes.
Что такое OCI-контейнеры
OCI (Open Container Initiative) — это организация отраслевого стандарта, которая стремится создать набор правил (спецификаций и стандартов), обеспечивающих согласованную работу контейнеров на разных платформах.
Это означает, что образы/контейнеры Podman полностью совместимы с Docker или любой другой технологией контейнеризации, которая использует совместимый с OCI исполнитель контейнеров.
Большинство пользователей Docker могут просто сделать псевдоним Docker для Podman (
Это означает, что все команды Docker остаются такими же, за исключением команды
Архитектура Podman
Архитектура Podman не подразумевает использование демонов (deamons).
Демоны — это процессы, которые выполняются в фоновом режиме системы, они обычно работают непрерывно на заднем плане, ожидая определенных событий или запросов.
Возвращаясь к контейнерам, представьте себе демона Docker в качестве посредника, общающегося между пользователем и самим контейнером.
Использование демона для управления контейнерами приводит к нескольким проблемам:
Одна точка отказа.
Когда демон падает, падают все контейнеры.
Требуются привилегии root
Поэтому демоны в Docker — это идеальная цель для хакеров, которые хотят получить контроль над вашими контейнерами и проникнуть в хост-систему.
Podman решает упомянутые проблемы, напрямую взаимодействуя с реестрами контейнеров, контейнерами и хранилищем образов без необходимости в демоне.
Переходя в режим без прав root, пользователи могут создавать, запускать и управлять контейнерами, что снижает риски безопасности.
Утилита buildah заменяет команду docker build как инструмент для создания контейнерного образа.
Аналогично, skopeo заменяет команду docker push и позволяет перемещать контейнерные образы между реестрами.
Эти инструменты обеспечивают эффективное и прямое взаимодействие с необходимыми компонентами, исключая необходимость в отдельном демоне в процессе.
Нужно ли переписывать каждый Dockerfile и docker-compose файл, чтобы использовать Podman с существующими проектами
Абсолютно нет. Podman предлагает совместимость с синтаксисом Docker для файлов контейнеров (containerfile).
Также Podman предлагает инструмент под названием pod compose в качестве альтернативы docker compose.
Pod compose использует тот же синтаксис, позволяя вам определять и управлять многоконтейнерными приложениями с использованием того же подхода или даже с использованием существующих файлов "docker-compose.yml".
Podman также поставляется с Podman Desktop, предлагая расширенные функции, которые делают его мощнее и проще. Он совместим с Docker и Kubernetes, расширяя их возможности и обеспечивая простую работу.
Руководство по установке и документацию по Podman можно найти на их официальном веб-сайте podman.io.
@data_analysis_ml
Хотя Docker, безусловно, перевернул наше представление о разработке, развертывании и запуске приложений, стоит изучить, чем отличается Podman (Pod Manager) и почему вам может быть интересно начать использовать его вместо Docker.
Podman — это менеджер контейнеров и падов с открытым исходным кодом.
Аналогично Docker, он позволяет создавать, запускать, останавливать и удалять контейнеры OCI, а также управлять образами контейнеров.
Он также поддерживает пады в рамках своего функционала, а значит, вы можете создавать и управлять падами так же, как с Kubernetes.
Что такое OCI-контейнеры
OCI (Open Container Initiative) — это организация отраслевого стандарта, которая стремится создать набор правил (спецификаций и стандартов), обеспечивающих согласованную работу контейнеров на разных платформах.
Это означает, что образы/контейнеры Podman полностью совместимы с Docker или любой другой технологией контейнеризации, которая использует совместимый с OCI исполнитель контейнеров.
Большинство пользователей Docker могут просто сделать псевдоним Docker для Podman (
alias docker=podman
) без каких-либо проблем.Это означает, что все команды Docker остаются такими же, за исключением команды
docker swarm.
Архитектура Podman
Архитектура Podman не подразумевает использование демонов (deamons).
Демоны — это процессы, которые выполняются в фоновом режиме системы, они обычно работают непрерывно на заднем плане, ожидая определенных событий или запросов.
Возвращаясь к контейнерам, представьте себе демона Docker в качестве посредника, общающегося между пользователем и самим контейнером.
Использование демона для управления контейнерами приводит к нескольким проблемам:
Одна точка отказа.
Когда демон падает, падают все контейнеры.
Требуются привилегии root
Поэтому демоны в Docker — это идеальная цель для хакеров, которые хотят получить контроль над вашими контейнерами и проникнуть в хост-систему.
Podman решает упомянутые проблемы, напрямую взаимодействуя с реестрами контейнеров, контейнерами и хранилищем образов без необходимости в демоне.
Переходя в режим без прав root, пользователи могут создавать, запускать и управлять контейнерами, что снижает риски безопасности.
Утилита buildah заменяет команду docker build как инструмент для создания контейнерного образа.
Аналогично, skopeo заменяет команду docker push и позволяет перемещать контейнерные образы между реестрами.
Эти инструменты обеспечивают эффективное и прямое взаимодействие с необходимыми компонентами, исключая необходимость в отдельном демоне в процессе.
Нужно ли переписывать каждый Dockerfile и docker-compose файл, чтобы использовать Podman с существующими проектами
Абсолютно нет. Podman предлагает совместимость с синтаксисом Docker для файлов контейнеров (containerfile).
Также Podman предлагает инструмент под названием pod compose в качестве альтернативы docker compose.
Pod compose использует тот же синтаксис, позволяя вам определять и управлять многоконтейнерными приложениями с использованием того же подхода или даже с использованием существующих файлов "docker-compose.yml".
Podman также поставляется с Podman Desktop, предлагая расширенные функции, которые делают его мощнее и проще. Он совместим с Docker и Kubernetes, расширяя их возможности и обеспечивая простую работу.
Руководство по установке и документацию по Podman можно найти на их официальном веб-сайте podman.io.
@data_analysis_ml
👍16🔥4❤3
🔝Топ-10 инструментов для обнаружения ChatGPT, GPT-4, Bard и Claude
1. GPTZero
GPTZero обладает высокой точностью, прост в использовании и имеет удобное расширени для Chrome.
2. OpenAI AI Text Classifier
ИИ-классификатор текста OpenAI обладает высокой точностью, но не предоставляет дополнительной информации о содержимом контента.
3. CopyLeaks
Это быстрая и точная проверка на плагиат, в виде расширения для Chrome.
4. SciSpace
SciSpace Academic AI Detector немного отличается от других упомянутых инструментов. Он обладает высокой точностью, но был специально разработан для обнаружения научного контента в PDF-файлах.
5. Hive Moderation
Функция обнаружения ИИ-генеративного контента Hive Moderation.
6. Content at Scale
ИИ-детектор контента Content at Scale прост в использовании и дает достаточно точные отчеты о конетнте.
7. Hello Simple AI
ChatGPT Detector by Hello Simple AI – это бесплатный инструмент с открытым исходным кодом, который можно использовать для обнаружения текста, создаваемого ChatGPT.
8. OpenAI HF Detector
OpenAI Detector – это бесплатный инструмент с открытым исходным кодом, который можно использовать для обнаружения текста, сгенерированного языковой моделью GPT от OpenAI.
9. Corrector.app
AI Detector от Corrector.app – это довольно точный инструмент, который можно использовать для обнаружения текста, сгенерированного ChatGPT, Bard и другими больми языковыми моделями (LLM).
10. Writer.com
Детектор контента AI от Writer.com завершает наш список, представляя собой наименее точный вариант с ограничением в 1500 символов.
@data_analysis_ml
1. GPTZero
GPTZero обладает высокой точностью, прост в использовании и имеет удобное расширени для Chrome.
2. OpenAI AI Text Classifier
ИИ-классификатор текста OpenAI обладает высокой точностью, но не предоставляет дополнительной информации о содержимом контента.
3. CopyLeaks
Это быстрая и точная проверка на плагиат, в виде расширения для Chrome.
4. SciSpace
SciSpace Academic AI Detector немного отличается от других упомянутых инструментов. Он обладает высокой точностью, но был специально разработан для обнаружения научного контента в PDF-файлах.
5. Hive Moderation
Функция обнаружения ИИ-генеративного контента Hive Moderation.
6. Content at Scale
ИИ-детектор контента Content at Scale прост в использовании и дает достаточно точные отчеты о конетнте.
7. Hello Simple AI
ChatGPT Detector by Hello Simple AI – это бесплатный инструмент с открытым исходным кодом, который можно использовать для обнаружения текста, создаваемого ChatGPT.
8. OpenAI HF Detector
OpenAI Detector – это бесплатный инструмент с открытым исходным кодом, который можно использовать для обнаружения текста, сгенерированного языковой моделью GPT от OpenAI.
9. Corrector.app
AI Detector от Corrector.app – это довольно точный инструмент, который можно использовать для обнаружения текста, сгенерированного ChatGPT, Bard и другими больми языковыми моделями (LLM).
10. Writer.com
Детектор контента AI от Writer.com завершает наш список, представляя собой наименее точный вариант с ограничением в 1500 символов.
@data_analysis_ml
👍8🔥4❤3
This media is not supported in your browser
VIEW IN TELEGRAM
PyGWalker: преобразуем датафрейм pandas в пользовательский интерфейс в стиле таблицы для визуального анализа.
pip install pygwalker
import polars as pl
df = pl.read_csv('./bike_sharing_dc.csv',try_parse_dates = True)
gwalker = pyg.walk(df)
📌 Colab
@data_analysis_ml
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤6🤨3🔥2
🔥 Kubernetes и Docker для дата-сайентистов
Изучение и применение новейших инструментов и технологий в области науки о данных является неотъемлемым условием для развития специалистов. Появление Docker и Kubernetes привело к существенным изменениям в процессе разработки и развертывания программных продуктов. Однако, какова роль этих инструментов и почему они важны для дата-сайентистов?
Мы представляем полный обзор Docker и Kubernetes, включая их преимущества и функционал. Как отличаются эти две технологии и какова их польза для дата-сайентистов? В конце статьи вы получите ясное понимание роли контейнеризации и оркестрации в более эффективной работе дата-сайентиста.
📌 Читать
@data_analysis_ml
Изучение и применение новейших инструментов и технологий в области науки о данных является неотъемлемым условием для развития специалистов. Появление Docker и Kubernetes привело к существенным изменениям в процессе разработки и развертывания программных продуктов. Однако, какова роль этих инструментов и почему они важны для дата-сайентистов?
Мы представляем полный обзор Docker и Kubernetes, включая их преимущества и функционал. Как отличаются эти две технологии и какова их польза для дата-сайентистов? В конце статьи вы получите ясное понимание роли контейнеризации и оркестрации в более эффективной работе дата-сайентиста.
📌 Читать
@data_analysis_ml
👍9❤3🔥3🤨1