Как стать автором
Обновить
0
0

Пользователь

Отправить сообщение

Улучшаем модель RandomForestClassifier

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров3.5K

Статья взята из источника Daily Dose of Data Science.

Оговорюсь сразу: Я новичок в Data Scince и в оформлении статей. Пишу лишь сюда для своих заметок ну и может быть будет кому-то полезно. Прошу сильно не судить!)

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

Читать далее
Всего голосов 5: ↑4 и ↓1+5
Комментарии7

Алгоритм поиска ключевых словосочетаний «на пальцах». Анализируем новости

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров4.1K

В современном мире объем данных в интернете постоянно растет с огромной скоростью. Возникает логичный вопрос: как ориентироваться в этом информационном потоке? 

Чтобы упростить себе задачу поиска и обобщения информации IT-энтузиасты применяют технологии генеративно обученных чат-ботов. Наиболее широкое распространение получил  ChatGPT. Яндекс, в свою очередь, добавил в браузер YandexGPT, который позволяет тезисно ознакомиться с содержанием страницы. Всё чаще вакансия Prompt-инженера начинает встречаться на hh и Хабр Карьере. Специалисты и чат-боты помогают конечному пользователю экономить время для поиска необходимой информации. 

Но что делать, если возможности обратиться за помощью к подобным технологиям нет? Указанные выше языковые модели нельзя интегрировать в собственные проекты, сценариев их использования много, но они всё равно ограничены. 

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

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Виды баз данных. Большой обзор типов СУБД

Время на прочтение21 мин
Количество просмотров98K

Часто, в обзорах видов баз данных упоминают реляционные и “другие”, “NoSQL” и т.д., либо приводят самые основные типы СУБД (базы данных), забывая о редких. В данной статье я постараюсь описать максимально полно виды баз данных и привести примеры конкретных реализаций. Разумеется, статья не претендует на всеохватность и классифицировать базы данных можно по разному, в том числе по типам оптимальной нагрузки и т.д., но надеюсь, она даст базовое представление о видах СУБД и принципах их работы.

В статье мы рассмотрим следующие типы баз данных:

Читать далее
Всего голосов 38: ↑36 и ↓2+38
Комментарии16

Проблемы студентов курсов при работе с реальными данными

Уровень сложностиПростой
Время на прочтение9 мин
Количество просмотров3.8K

Практически от любого специалиста IT-сферы сегодня требуется хотя бы базовое знание SQL. Рынок онлайн-образования реагирует соответствующе: на любом сайте по теме можно найти что-то связанное с SQL и/или базами данных. В теории такие курсы действительно позволяют узнать основы языка, а иногда даже и немного больше, но на практике они не готовят специалиста ко взаимодействию с реальной базой данных. Многие стажеры и младшие (а иногда и грейдом повыше) специалисты допускают одни и те же ошибки.

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

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии7

Жизнь и смерть в данных

Время на прочтение10 мин
Количество просмотров7.1K

Мне тут стало интересно, а на сколько лет можно прожить больше если исключить те факторы риска, на которые можно влиять самому? Чтобы ответить на этот вопрос я взял открытые данные одного из самых масштабных исследований влияния факторов риска на смертность “Global Burden of Disease 2019” [1] и с их помощью рассчитал оценку увеличения ожидаемой продолжительности жизни при условии исключения управляемых факторов риска. Чтобы было интереснее я оформил результаты в виде дашборда куда можно зайти выбрать страну, пол, возраст и факторы риска и посмотреть результаты. Под катом подробнее о процессе обработки данных, исходники самого дашборда на питоне и конечно подробно посмотрим на графики, там интересно.

Читать далее
Всего голосов 18: ↑16 и ↓2+21
Комментарии12

Первые шаги в импульсных нейронных сетях

Уровень сложностиСредний
Время на прочтение21 мин
Количество просмотров15K

Давайте попробуем немного разобраться в теме импульсных нейронных сетей (spiking neural network, SNN). Напишем простую импульсную нейронную сеть, используя только NumPy и Pandas, для классической задачи машинного обучения с использованием кодирования рецептивными полями.

Читать далее
Всего голосов 24: ↑24 и ↓0+24
Комментарии4

Реализация функции потерь Triplet Loss в Python (функция тройных потерь)

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров7.7K

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

Читать далее
Всего голосов 10: ↑10 и ↓0+10
Комментарии3

Что произошло в мире Python за последний месяц

Время на прочтение4 мин
Количество просмотров5.8K

Привет! Раз в месяц мы в Moscow Python Podcast собираемся и обсуждаем новые релизы, PEP, заинтересовавшие нас инструменты и статьи. В апреле поговорили об исследовании экосистемы Django от JetBrains, LTS-релизе Django 4.2, релизе Pandas 2.0 и свежих PEP. Под катом — текстовая выжимка из обсуждения.

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии6

Введение в автоэнкодеры

Время на прочтение8 мин
Количество просмотров7.9K

Чем больше данных, тем лучше, но слишком большое число признаков может оказаться неэффективным в плане повышения интерпретируемости или производительности. Материалом о возможном решении от доктора Роберта Кюблера делимся к старту флагманского курса по Data Science.

Читать далее
Всего голосов 5: ↑4 и ↓1+4
Комментарии0

Подойти к айти: хочу зарабатывать и не разрабатывать

Уровень сложностиПростой
Время на прочтение10 мин
Количество просмотров33K
Когда деревья не болели ковидом, на юг улетали, в основном, птицы, а в автобусе можно было кашлять, я решил подучиться и пошёл осваивать разработку программного обеспечения на большой, серьёзный вечерний курс в оффлайне (увы, его уже нет в помине, а жаль). Мне это было нужно для более уверенной работы. В группе были три девушки и семь парней, среди них: дизайнер, которая пришла, чтобы лучше понимать разработчиков; инженер, мечтавший уйти из оборонки; менеджер, которая хотела расти на рабочем месте; 1С-ник с шестизначной зарплатой, которого манил новый стек; биолог, который хотел перейти в команду кибермедицины и т. д. В общем, только двое собирались быть разработчиками, остальные рассматривали IT как способ поднять свою ценность. При этом они откровенно хотели обойти айти, то есть разработку, проектирование, кодинг и т. д. Кстати, программистами в итоге стали четверо, а дизайнер бросила всё и уехала рехабиться на какой-то остров — сразу после курса C++. У остальных планы сбылись.

Так куда идти, если хочется в айти, но ты боишься питонов, хомяков, слонов и ненавидишь кофе?


Читать дальше →
Всего голосов 40: ↑28 и ↓12+30
Комментарии47

Особенности автоматического дифференцирования в PyTorch. Часть 2

Время на прочтение6 мин
Количество просмотров1.9K

Привет! На связи команда «БАРС Груп», и мы продолжаем разговор о фреймворке PyTorch. Это фреймворк ML для Python с открытым исходным кодом, широко применяемый для решения прикладных задач, связанных с нейросетями. Как правило, фреймворки машинного обучения часто заточены либо на удобство использования, либо на скорость. PyTorch же отличается тем, что сочетает в себе оба преимущества. Он поддерживает код как модель, упрощает отладку и согласуется с другими популярными библиотеками научных вычислений, оставаясь при этом эффективным и поддерживая аппаратные ускорители, такие как графические процессоры. При этом каждый аспект PyTorch — это обычная программа Python, находящаяся под полным контролем пользователя.

Это вторая часть статьи‑перевода от команды разработчиков PyTorch (Адама Пашке, Сэма Гросса и их единомышленников).

Читать далее, узнать более
Всего голосов 4: ↑3 и ↓1+2
Комментарии0

Алгоритмы быстрого умножения чисел: от столбика до Шенхаге-Штрассена

Уровень сложностиСредний
Время на прочтение26 мин
Количество просмотров42K

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

И уж конечно, никогда при написании a * b мы не задумываемся о том, как реализовано умножение чисел a и b в нашем языке. Какие вообще есть алгоритмы умножения? Это какая-то нетривиальная задача?

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

Скорее к формулам!
Всего голосов 173: ↑173 и ↓0+173
Комментарии30

Большие данные мертвы. Это нужно принять

Уровень сложностиСредний
Время на прочтение17 мин
Количество просмотров73K

Уже более десяти лет тот факт, что люди с трудом извлекают из своих данных полезную информацию, сбрасывают на чересчур большой размер этих данных. «Объем собираемой информации слишком велик для ваших хилых систем», — такой нам ставили диагноз. А лекарство, соответственно, заключалось в том, чтобы купить какую‑нибудь новую причудливую технологию, которая сможет работать в больших масштабах. Конечно, после того, как целевая группа по Big Data покупала новые инструменты и мигрировала с устаревших систем, компании снова обнаруживали, что у них по‑прежнему возникают проблемы с пониманием своих данных.

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

Мир в 2023 году выглядит иначе, чем когда зазвенели первые тревожные звоночки по поводу Big Data. Катаклизм обработки информации, который все предсказывали, не состоялся. Объемы данных, возможно, немного возросли, но возможности аппаратного обеспечения росли еще быстрее. Поставщики услуг все еще продвигают свои возможности масштабирования, но люди, которые сталкиваются с ними на практике, начинают задаваться вопросом, как они вообще связаны с их реальными проблемами.

А дальше будет и того интереснее.

Читать далее
Всего голосов 115: ↑110 и ↓5+140
Комментарии76

6 книг по MySQL для старта работы и погружения в технологию

Время на прочтение4 мин
Количество просмотров17K

MySQL — реляционная СУБД, использующая декларативный язык программирования SQL. Она предлагает все необходимые возможности для создания баз данных и написания серверных приложений.

В нашей подборке — 6 книг по MySQL, которые будут полезны как на старте, так и для развития навыков. Рекомендуйте свои книги в комментариях!
Читать дальше →
Всего голосов 45: ↑34 и ↓11+35
Комментарии20

Python: класс Factory, возвращающий собственных наследников

Время на прочтение4 мин
Количество просмотров3.5K

Добрый день!

Язык Python для меня не является языком программирования, который я использую в повседневной работе. Для меня более близки ООП языки программирования Java, Object Pascal. Поэтому, не холивара ради, я хочу спросить у сообщества на сколько правильно решение, которое я опишу в данной статье?

Мы все учились понемногу, чему-нибудь...
Рейтинг0
Комментарии5

Книга «40 алгоритмов, которые должен знать каждый программист на Python»

Время на прочтение6 мин
Количество просмотров48K
image Привет, Хаброжители!

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

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

Дойдя до конца, вы превратитесь в эксперта по решению реальных вычислительных задач с применением широкого спектра разнообразных алгоритмов.
Читать дальше →
Всего голосов 12: ↑10 и ↓2+11
Комментарии4

Регулярные выражения в Python от простого к сложному. Подробности, примеры, картинки, упражнения

Время на прочтение25 мин
Количество просмотров1.5M

Регулярные выражения в Python от простого к сложному




Решил я давеча моим школьникам дать задачек на регулярные выражения для изучения. А к задачкам нужна какая-нибудь теория. И стал я искать хорошие тексты на русском. Пяток сносных нашёл, но всё не то. Что-то смято, что-то упущено. У этих текстов был не только фатальный недостаток. Мало картинок, мало примеров. И почти нет разумных задач. Ну неужели поиск IP-адреса — это самая частая задача для регулярных выражений? Вот и я думаю, что нет.
Про разницу (?:...) / (...) фиг найдёшь, а без этого знания в некоторых случаях можно только страдать.

Плюс в питоне есть немало регулярных плюшек. Например, re.split может добавлять тот кусок текста, по которому был разрез, в список частей. А в re.sub можно вместо шаблона для замены передать функцию. Это — реальные вещи, которые прямо очень нужны, но никто про это не пишет.
Так и родился этот достаточно многобуквенный материал с подробностями, тонкостями, картинками и задачами.

Надеюсь, вам удастся из него извлечь что-нибудь новое и полезное, даже если вы уже в ладах с регулярками.
Читать дальше →
Всего голосов 99: ↑98 и ↓1+97
Комментарии66

Лемматизируй это быстрее (PyMorphy2, PyMystem3 и немного магии)

Время на прочтение3 мин
Количество просмотров41K
Я работаю программистом, и в том числе занимаюсь машинным обучением применительно к анализу текстов. При обработке естественного языка требуется предварительная подготовка документов, и одним из способов является лемматизация – приведение всех слов текста к их нормальным формам с учетом контекста.

Недавно мы столкнулись с проблемой больших временных затрат на этот процесс. В конкретной задаче было более 100000 документов, средняя длина которых около 1000 символов, и требовалось реализовать обработку на обычном локальном компьютере, а не на нашем сервере для вычислений. Решение на просторах интернета мы найти не смогли, но нашли его сами, и я хотел бы поделиться — продемонстрировать сравнительный анализ двух наиболее популярных библиотек по лемматизации в этой статье.


Читать дальше →
Всего голосов 8: ↑5 и ↓3+5
Комментарии14

Маленький и быстрый BERT для русского языка

Время на прочтение9 мин
Количество просмотров60K

BERT – нейросеть, способная неплохо понимать смысл текстов на человеческом языке. Впервые появившись в 2018 году, эта модель совершила переворот в компьютерной лингвистике. Базовая версия модели долго предобучается, читая миллионы текстов и постепенно осваивая язык, а потом её можно дообучить на собственной прикладной задаче, например, классификации комментариев или выделении в тексте имён, названий и адресов. Стандартная версия BERT довольно толстая: весит больше 600 мегабайт, обрабатывает предложение около 120 миллисекунд (на CPU). В этом посте я предлагаю уменьшенную версию BERT для русского языка – 45 мегабайт, 6 миллисекунд на предложение. Она была получена в результате дистилляции нескольких больших моделей. Уже есть tinybert для английского от Хуавея, есть моя уменьшалка FastText'а, а вот маленький (англо-)русский BERT, кажется, появился впервые. Но насколько он хорош?

Читать далее
Всего голосов 57: ↑57 и ↓0+57
Комментарии17

Неудачный опыт: выявление аномалий в данных методами кластеризации

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров4.4K

Неудачный опыт: выявление аномалии в новостных данных методами кластеризации

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии4

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Data Analyst, Data Scientist
Lead
Python
Git
Database