Как стать автором
Обновить
30
0
Maxim W @maximw

backend developer

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

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

Время на прочтение5 мин
Количество просмотров30K
Когда я только начал своё путешествие к науке о данных, я потратил много времени на то, чтобы понять, с чего начать, что я должен узнать в первую очередь и какие ресурсы должен использовать. За последние два года я узнал несколько вещей, о которых хотел знать раньше, например о том, стоит ли сначала сосредоточиться на программировании или статистике, какие ресурсы я должен использовать для изучения новых навыков, как я должен подходить к изучению этих навыков и так далее. Таким образом, эта статья написана, чтобы дать направления и идеи для тех, кто изучает Data Science.

Приятного чтения!
Всего голосов 30: ↑29 и ↓1+35
Комментарии3

Хотите стать «учёным по данным»? Тогда не начинайте с машинного обучения

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

Самое большое заблуждение начинающих data scientist'ов, или что лучше стоит делать вместо изучения машинного обучения.

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

Как мы сделали автоматический подбор похожих товаров

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

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

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

Как определить, что товары похожи? Можно сравнить характеристики, чем больше совпало, тем более похожи товары. Но это не работает так просто, к сожалению. На практике оказывается, что, как правило, почти не бывает товаров, где заполнены все характеристики. 80% — хороший результат. Во-вторых, какие-то характеристики важнее, чем другие. Например, телевизор с диагональю в 65 дюймов совершенно не похож на телевизор с диагональю 22 дюйма, хотя у обоих по 2 USB-порта. Или, другой пример, металлический корпус и алюминиевый корпус гораздо ближе друг к другу, чем к пластику, хотя это три разных значения.
Читать дальше →
Всего голосов 6: ↑6 и ↓0+6
Комментарии6

Пишем CRUD-приложение на Go с помощью Mysql, GORM, Echo, Clean Architecture

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

Начнем сначала


В этой статье будет сказ о том, как на Clean Architecture написать API с функциями CR(U)D, где в качестве БД взят Mysql, фреймворк – Echo, ORMapper – GORM.

Что делаем


API с функциями Create, Read, (Update), Delete. Обновление на самом деле реализовать особо не удалось, милости прошу попробовать самостоятельно.

Целевая аудитория


Те разработчики, которые хотят создать простой API после освоения Go.
Читать дальше →
Всего голосов 12: ↑6 и ↓6+7
Комментарии16

5 способов краулинга веб-сайта

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


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


Давайте начнем!!


Metasploit


Вспомогательный поисковый модуль Metasploit представляет собой модульный поисковый робот, который будет использоваться вместе с wmap или автономно.


use auxiliary/crawler/msfcrawler
msf auxiliary(msfcrawler) > set rhosts www.example.com
msf auxiliary(msfcrawler) > exploit

Видно, что был запущен сканер, с помощью которого можно найти скрытые файлы на любом веб-сайте, например:


  • about.php
  • jquery contact form
  • html и т. д.
Читать дальше →
Всего голосов 12: ↑8 и ↓4+10
Комментарии5

Быстрый поиск касательных и пересечений у выпуклых многоугольников

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

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


Горжусь тем, что мое решение работает очень быстро. Для внушительного количества полигонов все операции можно выполнять каждый кадр. Т.е. не надо ничего запекать и вся геометрия карты может меняться в каждом кадре.

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

Стоит ли увольнять разраба за большую и дорогую ошибку? Думаю, нет, но менеджмент хотел крови

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


В Англии все одержимы футболом. Уйма любительских команд и куча стадионов. И вот через знакомых ко мне обратился один англичанин, у которого была идея и немного денег — он попросил сделать приложение, в котором люди могли бы управлять своей любительской командой по футболу. Расставлять людей на поле, делать замены, искать игроков, заказывать стадионы и общаться в чате.

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

Поэтому я согласился на работу. И это была просто отдушина после того, что я пережил в бэкенд разработке.
Читать дальше →
Всего голосов 58: ↑38 и ↓20+31
Комментарии155

7 бесплатных книг, которые следует прочитать каждому дата-сайентисту

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


Самообразование — пожалуй, один из самых сложных путей и процессов для взрослого человека. Когда вокруг столько отвлекающих факторов, уже трудно заставить себя довести дело до конца (особенно если мотивация неочевидна). Но самообразование как эволюция — это неотъемлемый элемент жизни любого профессионала или того, кто хочет им стать. Книги в этом случае могут стать тем самым выстрелом, которым убиваются два зайца, вы и растете как специалист, и не «выпадаете из жизни». Автор материала подобрал 7 бесплатных электронных книг, которые помогут вам изучать Data Science и ML.
Читать дальше →
Всего голосов 15: ↑14 и ↓1+18
Комментарии4

Можно ли генерировать случайные числа, если мы не доверяем друг другу? Часть 2

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

Привет, Хабр!

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

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

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

Как за два месяца пройти путь от начинающего питониста до сертифицированного TensorFlow-разработчика

Время на прочтение11 мин
Количество просмотров29K
Я всё ещё помню тот день, когда сдал выпускную работу в университет. Я тогда вздохнул с облегчением, так как это означало окончание бакалавриата. Но мной скоро овладела скука. Делать было нечего, мир был охвачен пандемией. Мне очень хотелось найти новое занятие, которое избавило бы меня от безделья.



В этом материале я хочу рассказать о том, как скука от самоизоляции помогла мне стать сертифицированным TensorFlow-разработчиком менее чем за два месяца. И это — несмотря на то, что на Python я раньше не программировал. Здесь я, кроме того, дам список ссылок на материалы, которые я использовал, осваивая новую для себя сферу знаний и готовясь к сертификации.
Читать дальше →
Всего голосов 24: ↑21 и ↓3+30
Комментарии11

Как Иван ошибку в бэкенде локализовывал

Время на прочтение13 мин
Количество просмотров11K
В комментариях к одной из моих статей про базовые команды Linux shell для тестировщиков справедливо заметили, что в ней не было указано применение команд в процессе тестирования. Я подумал, что лучше поздно, чем никогда, поэтому решил рассказать историю Backend QA-инженера Вани, который столкнулся с неожиданным поведением сервиса и попытался разобраться, где именно случилась ошибка.


Читать дальше →
Всего голосов 37: ↑36 и ↓1+41
Комментарии17

Использование NLP для построения классификатора сарказма

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

В этой статье мы попробуем написать классификатор определяющий саркастические статьи используя машинное обучение и TensorFlow


Статья является переводом с Machine Learning Foundations: Part 10 — Using NLP to build a sarcasm classifier


В качестве обучающего набора данных используется датасет «Sarcasm in News Headlines» Ришаба Мишры. Это интересный набор данных, который собирает заголовки новостей из обычных источников новостей, а также еще несколько комедийных с поддельных новостных сайтов.


Набор данных представляет собой файл JSON с тремя столбцами.


  • is_sarcastic  — 1, если запись саркастическая, иначе 0
  • headline — заголовок статьи
  • article_link — URL-адрес текста статьи
Читать дальше →
Всего голосов 8: ↑5 и ↓3+4
Комментарии2

Заметки Дата Сайентиста: персональный обзор языков запросов к данным

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

Рассказываю из личного опыта, что где и когда пригодилось. Обзорно и тезисно, чтобы понятно было, что и куда можно копать дальше — но тут у меня исключительно субъективный личный опыт, у вас, может быть, все совсем по-другому.

Почему важно знать и уметь обращаться с языками запросов? По своей сути в Data Science есть несколько важнейших этапов работы и самый первый и важнейший (без него уж точно ничего работать не будет!) — это получение или извлечение данных. Чаще всего данные в каком-то виде где-то сидят и их нужно оттуда «достать». 

Языки запросов как раз и позволяют эти самые данные извлечь! И сегодня я расскажу, о тех языках запросов, которые мне пригодились и расскажу-покажу, где и как именно — зачем оно нужно для изучения.

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

  • «Стандартные» языки запросов — то, что обычно понимают, когда говорят о языке запросов, как, например, реляционная алгебра или SQL.
  • Скриптовые языки запросов: например, питоновские штучки pandas, numpy или shell scripting.
  • Языки запросов к графам знаний и графовым базам данных.

Все написанное здесь — это просто персональный опыт, что пригодилось, с описанием ситуаций и «зачем оно было нужно» — каждый может примерить, насколько подобные ситуации могут встретиться вам и попробовать подготовиться к ним заранее, разобравшись с этими языками до того, как придется их в (срочном порядке) применять на проекте или вообще попасть на проект, где они нужны.
Читать дальше →
Всего голосов 31: ↑28 и ↓3+39
Комментарии8

Как криптовалютные биржи препятствуют отмыванию средств

Время на прочтение3 мин
Количество просмотров6.7K
Ежегодно через криптовалютные биржи проходят миллионы долларов сомнительного происхождения. Зачастую они принадлежат проектам, которые впоследствии исчезают вместе со средствами пользователей. Достаточно вспомнить громкое дело PlusToken, основатели которого обманули «вкладчиков» на три миллиарда долларов. Члены команды задержаны — идет следствие, но украденные средства по-прежнему не арестованы.

Попытки регуляторов получить контроль над криптовалютными операциями не всегда эффективны. Ситуация не изменилась и после вступления в силу Пятой Директивы EC по борьбе с отмыванием денег (5AMLD). Согласно отчету аналитической фирмы Peckshield, за последние два квартала через крупнейшие криптовалютные биржи прошло 147,000 BTC (1,3 миллиарда долларов), поступивших с подозрительных адресов. В первую десятку криптобирж, принимавших эти средства, вошли Huobi, Binance, OKEx, ZB, Gate.io, Bitmex, Luno, Huobtc, Bithumb и Coinbase. В исследовании отмечается, что на долю трех ведущих торговых платформ приходится более 60% от общей суммы (88,200 BTC).
Читать дальше →
Всего голосов 9: ↑7 и ↓2+7
Комментарии8

Подборка статей о машинном обучении: кейсы, гайды и исследования за июль 2020

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


Похоже, не один наш дайджест не обходится без упоминания разработок Open AI: в июле самой обсуждаемой темой в области машинного обучения стал новый алгоритм GPT-3. Технически это не одна модель, а целое семейство, которое для удобства обобщают под единым названием. В самой крупной модели используется 175 млрд параметров, а для обучения использовался датасет размером 570 Gb, в который вошли отфильтрованные данные из архивов Common Crawl и высококачественные данные WebText2, Books1, Books2 и Wikipedia.

Здесь стоит отметить, что модель предобучена, и не требует файн тюнинга под конкретные задачи: для достижения лучших результатов рекомендуется предоставлять ей хотя бы один (one-shot) или несколько (few-shot) примеров решения задач на входе, но можно обойтись вообще без них (zero-shot). Чтобы модель сгенерировала решение задачи, достаточно описать задачу на английском языке. Принято считать, что это алгоритм генерации текстов, но уже видно, что потенциал намного богаче.
Читать дальше →
Всего голосов 9: ↑9 и ↓0+9
Комментарии2

Уязвимости PHP-фреймворков

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


10 июня компания Digital Security провела онлайн-встречу по информационной безопасности Digital Security ON AIR. Записи докладов можно посмотреть на Youtube-канале.


По материалам докладов мы выпустим цикл статей, и первая из них — об уязвимостях PHP-фреймворков уже ждет под катом.

Всего голосов 28: ↑25 и ↓3+31
Комментарии21

Подборка статей о машинном обучении: кейсы, гайды и исследования за июнь 2020

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


Здесь вас ждёт список вышедших за июнь материалов на английском языке. Все они написаны без лишнего академизма, содержат примеры кода и ссылки на непустые репозитории. Большинство упомянутых технологий находятся в открытом доступе и не требуют сверхмощного железа для тестирования.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии2

Чеклист для проекта по машинному обучению

Время на прочтение5 мин
Количество просмотров5.9K
image

В этом посте я собрал чеклист, на который я постоянно ссылаюсь, работая над комплексным проектом по машинному обучению.

Зачем мне вообще нужен чеклист?

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

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

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

Как говорит Атул Гаванде в своей книге ”The Checklist Manifesto”,
объем и сложность того, что мы знаем, превзошли нашу индивидуальную способность правильно, безопасно и надежно предоставлять свои преимущества.
Итак, позвольте мне провести вас по этому четкому и краткому списку действий, которые уменьшат вашу рабочую нагрузку и улучшат ваши результаты…

Чеклист проектов по машинному обучению

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

9 ключевых алгоритмов машинного обучения простым языком

Время на прочтение15 мин
Количество просмотров84K
Привет, Хабр! Представляю вашему вниманию перевод статьи «9 Key Machine Learning Algorithms Explained in Plain English» автора Nick McCullum.

Машинное обучение (МО) уже меняет мир. Google использует МО предлагая и показывая ответы на поисковые запросы пользователей. Netflix использует его, чтобы рекомендовать вам фильмы на вечер. А Facebook использует его, чтобы предложить вам новых друзей, которых вы можете знать.

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

Эта статья познакомит вас с фундаментальными концепциями в области машинного обучения. А конкретнее, мы обсудим основные концепции 9ти самых важных алгоритмов МО на сегодняшний день.
Читать дальше →
Всего голосов 16: ↑12 и ↓4+12
Комментарии5

Самая важная идея в Data Science

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

Советы по отделению отвлекающих факторов от полезных сведений


image

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

Люди слишком хороши в поиске закономерностей во всем. Вы сами определяете какие закономерности действительно существуют, а какие – выдуманы. Мы – существа, которые находят лицо Элвиса в картофельной чипсе. Если у вас есть соблазн приравнять закономерности к понятиям, помните, что есть три вида закономерностей:

  • Паттерны, которые существуют и в вашем наборе данных, и за его пределами.
  • Паттерны, которые существуют только в вашем наборе данных.
  • Паттерны, которые существуют только в вашем воображении (апофении).
Читать дальше →
Всего голосов 4: ↑3 и ↓1+6
Комментарии1

Информация

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

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

Специалист
Lead