📋 Собеседование в области науки о данных: 7 распространенных ошибок
Наука о данных — одна из самых быстрорастущих областей в технологической индустрии. Если вы постоянно получаете отказы после собеседований, постарайтесь выявить свои “слабые места” и поработать над ними. Данная статья вам в этом поможет.
Материал написан на основе собеседований с более чем 70 кандидатами на различные должности в области науки о данных и МО.
➡️ Читать дальше
@machinelearning_interview
Наука о данных — одна из самых быстрорастущих областей в технологической индустрии. Если вы постоянно получаете отказы после собеседований, постарайтесь выявить свои “слабые места” и поработать над ними. Данная статья вам в этом поможет.
Материал написан на основе собеседований с более чем 70 кандидатами на различные должности в области науки о данных и МО.
➡️ Читать дальше
@machinelearning_interview
16 сервисов для Создания Резюме и Профиля LinkedIn с использованием Искусственного Интеллекта. Сохрани, чтобы получить Работу Мечты
1. kickresume — На сайте лежат настоящие резюме людей, которых взяли, например, в Amazon. Используйте их в качестве шаблона.
2. copy ai — Поможет создать резюме на нейросетях. Выберите шаблон «Resume», вбейте желаемую должность, напишите о себе в свободной форме, стиль текста профессиональный и вы получите четкое описание ваших навыков разбитых по пунктам.
3. enhancv — Более 1000 примеров резюме.
4. HyreSnap — Бесплатный конструктор резюме на основе искусственного интеллекта. ИИ сделает ваше резюме максимально совместимым с описаниями вакансий.
5. resumestar io — онлайн-редактор создает современные одностраничные резюме.
6. skillroads — Конструктор резюме на базе искусственного интеллекта. ИИ знает, какие навыки необходимо добавить и какой опыт выделить.
7. hiration — Сервис оценит текущее резюме и сопроводительное письмо и предложит изменения.
8. resumA.I. — Напишет и отредактирует пункты резюме с помощью ChatGPT.
9. thisresumedoesnotexist — 1000 примеров AI резюме (на базе enhancv).
10. resumeworded — Бесплатная мгновенная обратная связь о вашем резюме и профиле LinkedIn.
11. jasper — ИИ копирайтер Jasper поможет генерировать интересные статьи в LinkedIn.
12. resumaker ai — Конструктор резюме.
13. rezi ai — Платформа для составления резюме.
14. designs ai — Разработает основу резюме, подберет подходящие цвета и шрифты. Сэкономит вам время на дизайне, а вы сосредоточитесь на демонстрации своего опыта и навыков.
15. mosaic ai — Помогает подобрать подходящие ключевые слова для резюме.
16. CVJury — Конструктор резюме, сопроводительного письма и профиля LinkedIn.
@machinelearning_interview
1. kickresume — На сайте лежат настоящие резюме людей, которых взяли, например, в Amazon. Используйте их в качестве шаблона.
2. copy ai — Поможет создать резюме на нейросетях. Выберите шаблон «Resume», вбейте желаемую должность, напишите о себе в свободной форме, стиль текста профессиональный и вы получите четкое описание ваших навыков разбитых по пунктам.
3. enhancv — Более 1000 примеров резюме.
4. HyreSnap — Бесплатный конструктор резюме на основе искусственного интеллекта. ИИ сделает ваше резюме максимально совместимым с описаниями вакансий.
5. resumestar io — онлайн-редактор создает современные одностраничные резюме.
6. skillroads — Конструктор резюме на базе искусственного интеллекта. ИИ знает, какие навыки необходимо добавить и какой опыт выделить.
7. hiration — Сервис оценит текущее резюме и сопроводительное письмо и предложит изменения.
8. resumA.I. — Напишет и отредактирует пункты резюме с помощью ChatGPT.
9. thisresumedoesnotexist — 1000 примеров AI резюме (на базе enhancv).
10. resumeworded — Бесплатная мгновенная обратная связь о вашем резюме и профиле LinkedIn.
11. jasper — ИИ копирайтер Jasper поможет генерировать интересные статьи в LinkedIn.
12. resumaker ai — Конструктор резюме.
13. rezi ai — Платформа для составления резюме.
14. designs ai — Разработает основу резюме, подберет подходящие цвета и шрифты. Сэкономит вам время на дизайне, а вы сосредоточитесь на демонстрации своего опыта и навыков.
15. mosaic ai — Помогает подобрать подходящие ключевые слова для резюме.
16. CVJury — Конструктор резюме, сопроводительного письма и профиля LinkedIn.
@machinelearning_interview
#вопросы_с_собеседований
Что такое закон больших чисел?
Это принцип теории вероятностей, который описывает результат выполнения одного и того же эксперимента множество раз.
При достаточно длительной серии экспериментов закон больших чисел гарантирует устойчивость средних значений от случайных событий. И среднее значение конечной выборки фиксированного распределения будет очень близко к математическому ожиданию выборки.
К примеру, при бросках шестигранного кубика. Чем больше бросков, тем больше среднее значение близится к математическому ожиданию 3,5.
Что такое закон больших чисел?
Это принцип теории вероятностей, который описывает результат выполнения одного и того же эксперимента множество раз.
При достаточно длительной серии экспериментов закон больших чисел гарантирует устойчивость средних значений от случайных событий. И среднее значение конечной выборки фиксированного распределения будет очень близко к математическому ожиданию выборки.
К примеру, при бросках шестигранного кубика. Чем больше бросков, тем больше среднее значение близится к математическому ожиданию 3,5.
📌 Тестовое задание по python
Мы уже создавали матрицу спирали, теперь создадим полноценный проект.
Необходимо реализовать Python-библиотеку, которая осуществляет получение квадратной матрицы (NxN) с удалённого сервера и возвращает её пользователю в виде List[int]. Этот список должен содержать результат обхода полученной матрицы по спирали: против часовой стрелки, начиная с левого верхнего угла (см. test case ниже).
Пример исходной матрицы:
Матрица гарантированно содержит целые неотрицательные числа. Форматирование границ иными символами не предполагается.
Требования к выполнению и оформлению
Библиотека содержит функцию со следующим интерфейсом:
async def get_matrix(url: str) -> List[int]:
...
Функция единственным аргументом получает URL для загрузки матрицы с сервера по протоколу HTTP(S).
Функция возвращает список, содержащий результат обхода полученной матрицы по спирали: против часовой стрелки, начиная с левого верхнего угла.
Взаимодействие с сервером должно быть реализовано асинхронно - посредством aiohttp, httpx или другого компонента на asyncio.
Библиотека должна корректно обрабатывать ошибки сервера и сетевые ошибки (5xx, Connection Timeout, Connection Refused, ...).
В дальнейшем размерность матрицы может быть изменена с сохранением форматирования. Библиотека должна сохранить свою работоспособность на квадратных матрицах другой размерности.
Решение задачи необходимо разместить на одном из публичных git-хостингов (GitHub, GitLab, Bitbucket). Можно также выслать решение в виде архива (zip, tar). Загружать библиотеку в PyPi или другие репозитории не требуется.
Проверка решения
Для самостоятельной проверки можно использовать следующий test case:
SOURCE_URL = 'https://raw.githubusercontent.com/avito-tech/python-trainee-assignment/main/matrix.txt'
def test_get_matrix():
assert asyncio.run(get_matrix(SOURCE_URL)) == TRAVERSAL
Загружайте свои решения и отправляйте ссылки в комментарии👇
@machinelearning_interview
Мы уже создавали матрицу спирали, теперь создадим полноценный проект.
Необходимо реализовать Python-библиотеку, которая осуществляет получение квадратной матрицы (NxN) с удалённого сервера и возвращает её пользователю в виде List[int]. Этот список должен содержать результат обхода полученной матрицы по спирали: против часовой стрелки, начиная с левого верхнего угла (см. test case ниже).
Пример исходной матрицы:
+-----+-----+-----+-----+
| 10 | 20 | 30 | 40 |
+-----+-----+-----+-----+
| 50 | 60 | 70 | 80 |
+-----+-----+-----+-----+
| 90 | 100 | 110 | 120 |
+-----+-----+-----+-----+
| 130 | 140 | 150 | 160 |
+-----+-----+-----+-----+
Матрица гарантированно содержит целые неотрицательные числа. Форматирование границ иными символами не предполагается.
Требования к выполнению и оформлению
Библиотека содержит функцию со следующим интерфейсом:
async def get_matrix(url: str) -> List[int]:
...
Функция единственным аргументом получает URL для загрузки матрицы с сервера по протоколу HTTP(S).
Функция возвращает список, содержащий результат обхода полученной матрицы по спирали: против часовой стрелки, начиная с левого верхнего угла.
Взаимодействие с сервером должно быть реализовано асинхронно - посредством aiohttp, httpx или другого компонента на asyncio.
Библиотека должна корректно обрабатывать ошибки сервера и сетевые ошибки (5xx, Connection Timeout, Connection Refused, ...).
В дальнейшем размерность матрицы может быть изменена с сохранением форматирования. Библиотека должна сохранить свою работоспособность на квадратных матрицах другой размерности.
Решение задачи необходимо разместить на одном из публичных git-хостингов (GitHub, GitLab, Bitbucket). Можно также выслать решение в виде архива (zip, tar). Загружать библиотеку в PyPi или другие репозитории не требуется.
Проверка решения
Для самостоятельной проверки можно использовать следующий test case:
SOURCE_URL = 'https://raw.githubusercontent.com/avito-tech/python-trainee-assignment/main/matrix.txt'
TRAVERSAL = [
10, 50, 90, 130,
140, 150, 160, 120,
80, 40, 30, 20,
60, 100, 110, 70,
]
def test_get_matrix():
assert asyncio.run(get_matrix(SOURCE_URL)) == TRAVERSAL
Загружайте свои решения и отправляйте ссылки в комментарии👇
@machinelearning_interview
Задача с кодом. Монетная кооперация
В стену вмонтирован специальный аппарат, выдающий монетки. За стеной с каждой стороны стоит человек. Оба они могут взаимодействовать с аппаратом.
Если бросить монетку в аппарат, человек, стоящий за стеной, получит 3 монетки. И наоборот.
Если оба человека будут честно тратить свои монетки, чтобы второй получил прибыль (т.е. делиться, share), оба они будут получать по 2 монетки прибыли по очереди.
Но всегда есть вероятность, что кто-то поступит эгоистично (steal): не захочет тратить свои монетки, но с радостью заберет 3 монетки прибыли, если второй поделится.
Задание
Допустим, у каждого человека есть по 3 монетки. Создайте функцию, которая будет высчитывать прибыль обоих людей. На вход функция будет принимать два списка строк. Списки будут представлять поведение этих людей (слова share и/или steal)
Примеры
balances(["share"], ["share"]) ➞ [5, 5]
# Оба человека тратят по монетке и получают по 3.
get_coin_balances(["steal"], ["share"]) ➞ [6, 2]
# Первый человек получает 3 монетки, второй тратит одну.
get_coin_balances(["steal"], ["steal"]) ➞ [3, 3]
# Никто ничего не тратит и не получает, остаются при своих.
get_coin_balances(["share", "share", "share"], ["steal", "share", "steal"]) ➞ [3, 11]
Примечания
- В «минус» никто не уйдет, так что числа всегда будут положительными.
- Слова будут передаваться в нижнем регистре.
#задача #coding
В стену вмонтирован специальный аппарат, выдающий монетки. За стеной с каждой стороны стоит человек. Оба они могут взаимодействовать с аппаратом.
Если бросить монетку в аппарат, человек, стоящий за стеной, получит 3 монетки. И наоборот.
Если оба человека будут честно тратить свои монетки, чтобы второй получил прибыль (т.е. делиться, share), оба они будут получать по 2 монетки прибыли по очереди.
Но всегда есть вероятность, что кто-то поступит эгоистично (steal): не захочет тратить свои монетки, но с радостью заберет 3 монетки прибыли, если второй поделится.
Задание
Допустим, у каждого человека есть по 3 монетки. Создайте функцию, которая будет высчитывать прибыль обоих людей. На вход функция будет принимать два списка строк. Списки будут представлять поведение этих людей (слова share и/или steal)
Примеры
balances(["share"], ["share"]) ➞ [5, 5]
# Оба человека тратят по монетке и получают по 3.
get_coin_balances(["steal"], ["share"]) ➞ [6, 2]
# Первый человек получает 3 монетки, второй тратит одну.
get_coin_balances(["steal"], ["steal"]) ➞ [3, 3]
# Никто ничего не тратит и не получает, остаются при своих.
get_coin_balances(["share", "share", "share"], ["steal", "share", "steal"]) ➞ [3, 11]
Примечания
- В «минус» никто не уйдет, так что числа всегда будут положительными.
- Слова будут передаваться в нижнем регистре.
#задача #coding
🚀Франция
https://candidat.pole-emploi.fr/espacepersonnel/
https://www.indeed.fr
https://www.monster.fr
🚀Германия
https://stellenmarkt.sueddeutsche.de/
https://www.arbeitsagentur.de/
https://www.monster.de/
https://www.horizontjobs.de/
🚀Италия
https://www.careerjet.it/
https://www.monster.it/
https://it.indeed.com/
https://www.infojobs.it/
🚀Испания
https://www.infojobs.net/
https://www.monster.es/
https://www.infoempleo.com/
🚀США
www.indeed.com
https://www.careerbuilder.com/
https://craiglist.com/
www.monster.com
https://www.vacancyopen.com/
🚀Чехия
https://www.jobs.cz/
https://www.profesia.cz/
https://www.prace.cz/
https://www.dobraprace.cz/
www.dzob.cz
🚀Польша
https://www.pracuj.pl/
https://www.jobs.pl
https://gazetapraca.pl/
www.gowork.pl
🚀Великобритания
https://www.indeed.co.uk
https://www.monster.co.uk/advertise-a-job/
https://www.cv-library.co.uk/
🚀Швеция
https://www.monster.se/
https://www.jobbsafari.se/
https://www.metrojobb.se/
🚀Австралия
https://jobsearch.gov.au
www.seek.com.au
www.careerone.com.au
🚀Венгрия
https://nofluffjobs.com/hu/
🚀Канада
www.workopolis.com
https://www.canadajobs.com
https://ca.indeed.com
https://www.monster.ca/
🚀Латвия
https://www.cv.lv/lv/
🚀Турция
https://www.yenibiris.com/
https://www.kariyer.net/
https://turkey.xpatjobs.com/
#vacancy #job
@machinelearning_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
🎲 Расскажите что такое индуктивная вероятность? Дайте определение минимальной длине описания / сообщения
Индуктивная вероятность пытается дать вероятность будущих событий на основе прошлых событий. Это основа для индуктивного мышления и математическая основа для обучения и восприятия закономерностей. Это источник знаний о мире.
Есть три источника знаний: вывод , общение и дедукция. Коммуникация передает информацию, полученную другими методами. Выведение устанавливает новые факты на основе существующих фактов. Вывод устанавливает новые факты из данных. Его основой является теорема Байеса .
Информация, описывающая мир, записывается на языке. Например, может быть выбран простой математический язык предложений. На этом языке предложения могут быть записаны в виде строк символов. Но в компьютере эти предложения можно закодировать в виде цепочек битов (единиц и нулей). Затем язык может быть закодирован так, чтобы наиболее часто используемые предложения были самыми короткими. Этот внутренний язык неявно представляет вероятности утверждений.
Бритва Оккама говорит, что «простейшая теория, согласующаяся с данными, скорее всего, верна». «Простейшая теория» интерпретируется как представление теории, написанной на этом внутреннем языке. Теория с кратчайшей кодировкой на этом внутреннем языке, скорее всего, верна.
Минимальная длина описания / сообщения
Программа с наименьшей длиной, соответствующей данным, с наибольшей вероятностью предсказывает будущие данные. Это тезис, лежащий в основе методов минимальной длины сообщения и минимальной длины описания .
На первый взгляд теорема Байеса кажется отличной от принципа минимальной длины сообщения / описания. При ближайшем рассмотрении оказывается то же самое. Теорема Байеса касается условных вероятностей и утверждает вероятность того, что событие B произойдет, если сначала произойдет событие A:
становится с точки зрения сообщения длина L,
Это означает, что если вся информация дается с описанием event, то длина информации может быть использована для определения исходной вероятности события. Таким образом, если дана информация, описывающая возникновение A, вместе с информацией, описывающей B для данного A, то была предоставлена вся информация, описывающая A и B.
@machinelearning_interview
Индуктивная вероятность пытается дать вероятность будущих событий на основе прошлых событий. Это основа для индуктивного мышления и математическая основа для обучения и восприятия закономерностей. Это источник знаний о мире.
Есть три источника знаний: вывод , общение и дедукция. Коммуникация передает информацию, полученную другими методами. Выведение устанавливает новые факты на основе существующих фактов. Вывод устанавливает новые факты из данных. Его основой является теорема Байеса .
Информация, описывающая мир, записывается на языке. Например, может быть выбран простой математический язык предложений. На этом языке предложения могут быть записаны в виде строк символов. Но в компьютере эти предложения можно закодировать в виде цепочек битов (единиц и нулей). Затем язык может быть закодирован так, чтобы наиболее часто используемые предложения были самыми короткими. Этот внутренний язык неявно представляет вероятности утверждений.
Бритва Оккама говорит, что «простейшая теория, согласующаяся с данными, скорее всего, верна». «Простейшая теория» интерпретируется как представление теории, написанной на этом внутреннем языке. Теория с кратчайшей кодировкой на этом внутреннем языке, скорее всего, верна.
Минимальная длина описания / сообщения
Программа с наименьшей длиной, соответствующей данным, с наибольшей вероятностью предсказывает будущие данные. Это тезис, лежащий в основе методов минимальной длины сообщения и минимальной длины описания .
На первый взгляд теорема Байеса кажется отличной от принципа минимальной длины сообщения / описания. При ближайшем рассмотрении оказывается то же самое. Теорема Байеса касается условных вероятностей и утверждает вероятность того, что событие B произойдет, если сначала произойдет событие A:
P (A ∧
😎 = P (B) ⋅ P (A |
😎 = P (A) ⋅ P (B | A) {\ displaystyle P (A \ land
😎 = P (B) \ cdot P (A |
😎 = P (A) \ cdot P (B | A)}
становится с точки зрения сообщения длина L,
L (A ∧
😎 = L (B) + L (A |
😎 = L (A) + L (B | A). {\ displaystyle L (A \ land
😎 = L (B) + L (A |
😎 = L (A) + L (B | A).}
Это означает, что если вся информация дается с описанием event, то длина информации может быть использована для определения исходной вероятности события. Таким образом, если дана информация, описывающая возникновение A, вместе с информацией, описывающей B для данного A, то была предоставлена вся информация, описывающая A и B.
@machinelearning_interview
Ищу ML специалиста для решения задачи компьютерного зрения
Мы компания metadreamteam.io - амбициозная команда XR разработчиков и 3Д артистов, работающая на американском рынке, которая делает проекты для всего мира! От Екомерс до real estate. От внедрения лучших решений на рынке до создания своих разработок с нуля.
Сейчас делаем свою разработку по примерке часов в режиме реального времени.
Работа удаленная. Фриланс. Оплата от $25 в час
(160 - 400 тыс руб за проект)
Если ты хочешь работать с лучшими в индустрии, делать амбициозные проекты и зарабатывать в валюте - тогда заполняй эту форму, чтобы присоединиться к нам! https://forms.gle/ovrkQDMasSBWsR538
Мы компания metadreamteam.io - амбициозная команда XR разработчиков и 3Д артистов, работающая на американском рынке, которая делает проекты для всего мира! От Екомерс до real estate. От внедрения лучших решений на рынке до создания своих разработок с нуля.
Сейчас делаем свою разработку по примерке часов в режиме реального времени.
Работа удаленная. Фриланс. Оплата от $25 в час
(160 - 400 тыс руб за проект)
Если ты хочешь работать с лучшими в индустрии, делать амбициозные проекты и зарабатывать в валюте - тогда заполняй эту форму, чтобы присоединиться к нам! https://forms.gle/ovrkQDMasSBWsR538
❔❓ Задача
Набирая номер телефона, абонент забыл две последние цифры, но помнит, что одна из них – ноль, а другая – нечётная. Найти вероятность того, что он наберёт правильный номер.
Примечание: ноль – это чётное число (делится на 2 без остатка)
Решение:сначала найдём общее количество исходов. По условию, абонент помнит, что одна из цифр – ноль, а другая цифра – нечётная. Здесь рациональнее не мудрить с комбинаторикой и воспользоваться методом прямого перечисления исходов. То есть, при оформлении решения просто записываем все возможные комбинации:
01, 03, 05, 07, 09
10, 30, 50, 70, 90
и подсчитываем их – всего: 10 исходов.
Благоприятствующий исход один: верный номер.
По классическому определению:
p =1/10 = 0.1 – вероятность того, что абонент наберёт правильный номер
Ответ: 0,1
@machinelearning_interview
Набирая номер телефона, абонент забыл две последние цифры, но помнит, что одна из них – ноль, а другая – нечётная. Найти вероятность того, что он наберёт правильный номер.
Примечание: ноль – это чётное число (делится на 2 без остатка)
Решение:
01, 03, 05, 07, 09
10, 30, 50, 70, 90
и подсчитываем их – всего: 10 исходов.
Благоприятствующий исход один: верный номер.
По классическому определению:
p
Ответ: 0,1
@machinelearning_interview
🎲 Задача. Найти вероятность того, что при бросании двух игральных костей в сумме выпадет:
а) пять очков;
б) не более четырёх очков;
в) от 3-х до 9 очков включительно.
Решение задачи .
Найдём общее количество исходов: по правилу умножения комбинаций, всего может выпасть 36 вариантов.
Иными словами, каждая грань 1-го кубика может составить упорядоченную пару с каждой гранью 2-го кубика. Условимся записывать такую пару в виде (a, b) , где a – цифра, выпавшая на 1-м кубике, b – цифра, выпавшая на 2-м кубике. Например:
(3, 5) – на первом кубике выпало 3 очка, на втором – 5 очков, сумма очков: 3 + 5 = 8;
(6, 1) – на первом кубике выпало 6 очков, на втором – 1 очко, сумма очков: 6 + 1 = 7;
(2, 2) – на обеих костях выпало 2 очка, сумма: 2 + 2 = 4.
Очевидно, что наименьшую сумму даёт пара (1, 1) , а наибольшую – две «шестёрки».
а) Рассмотрим событие: A – при бросании двух игральных костей выпадет 5 очков. Запишем и подсчитаем количество исходов, которые благоприятствуют данному событию:
(1, 4); (4, 1); (2, 3); (3, 2).
Итого: 4 благоприятствующих исхода. По классическому определению:
Р(А) = 4/36 = 1/9– искомая вероятность.
б) Рассмотрим событие: В – выпадет не более 4-х очков. То есть, либо 2, либо 3, либо 4 очка. Снова перечисляем и подсчитываем благоприятствующие комбинации, слева будем записывать суммарное количество очков, а после двоеточия – подходящие пары:
2 очка: (1; 1);
3 очка: (1; 2); (2; 1);
4 очка: (2; 2); (1; 3); (3; 1).
Итого: 6 благоприятствующих комбинаций. Таким образом:
Р(В) = 6/36 = 1/6 – вероятность того, что выпадет не более 4-х очков.
в) Рассмотрим событие: С – выпадет от 3-х до 9 очков включительно.
Здесь можно пойти прямой дорогой, но… что-то не хочется. Да, некоторые пары уже перечислены в предыдущих пунктах, но работы все равно предстоит многовато.
Как лучше поступить? В подобных случаях рациональным оказывается окольный путь. Рассмотрим противоположное событие: С1 – выпадет 2 или 10 или 11 или 12 очков.
В чём смысл? Противоположному событию благоприятствует значительно меньшее количество пар:
2 очка: (1; 1);
10 очков: (4; 6); (6; 4); (5; 5);
11 очков: (5; 6); (6; 5);
12 очков: (6; 6).
Итого: 7 благоприятствующих исходов.
По классическому определению:
Р(С1) = 7/36 – вероятность того, что выпадет меньше трёх или больше 9-ти очков.
Далее пользуемся тем, что сумма вероятностей противоположных событий равна единице:
Р(С) + Р(С1) = 1;
Р(С) = 1 - Р(С1) = 1 - 7/36 = 29/36 – вероятность того, что выпадет от 3-х до 9 очков включительно.
Особо щепетильные люди могут перечислить все 29 пар, выполнив тем самым проверку.
Ответ: а) 1/9; б) 1/6; в) 29/36.
@machinelearning_interview
а) пять очков;
б) не более четырёх очков;
в) от 3-х до 9 очков включительно.
Найдём общее количество исходов: по правилу умножения комбинаций, всего может выпасть 36 вариантов.
Иными словами, каждая грань
(3, 5) – на первом кубике выпало 3 очка, на втором – 5 очков, сумма очков: 3 + 5 = 8;
(6, 1) – на первом кубике выпало 6 очков, на втором – 1 очко, сумма очков: 6 + 1 = 7;
(2, 2) – на обеих костях выпало 2 очка, сумма: 2 + 2 = 4.
Очевидно, что наименьшую сумму даёт пара (1, 1) , а наибольшую – две «шестёрки».
а) Рассмотрим событие: A
(1, 4); (4, 1); (2, 3); (3, 2).
Итого: 4 благоприятствующих исхода. По классическому определению:
Р(А) = 4/36 = 1/9– искомая вероятность.
б) Рассмотрим событие: В – выпадет не более 4-х очков. То есть, либо 2, либо 3, либо 4 очка. Снова перечисляем и подсчитываем благоприятствующие комбинации, слева будем записывать суммарное количество очков, а после двоеточия – подходящие пары:
2 очка: (1; 1);
3 очка: (1; 2); (2; 1);
4 очка: (2; 2); (1; 3); (3; 1).
Итого: 6 благоприятствующих комбинаций.
Р(В) = 6/36 = 1/6 – вероятность того, что выпадет не более 4-х очков.
в) Рассмотрим событие: С
Здесь можно пойти прямой дорогой, но… что-то не хочется. Да, некоторые пары уже перечислены в предыдущих пунктах, но работы все равно предстоит многовато.
Как лучше поступить? В подобных случаях рациональным оказывается окольный путь. Рассмотрим противоположное событие: С1 – выпадет 2 или 10 или 11 или 12 очков.
В чём смысл?
2 очка: (1; 1);
10 очков: (4; 6); (6; 4); (5; 5);
11 очков: (5; 6); (6; 5);
12 очков: (6; 6).
Итого: 7 благоприятствующих исходов.
По классическому определению:
Р(С1) = 7/36 – вероятность того, что выпадет меньше трёх или больше 9-ти очков.
Далее пользуемся тем, что сумма вероятностей противоположных событий равна единице:
Р(С) + Р(С1) = 1;
Р(С) = 1 - Р(С1) = 1 - 7/36 = 29/36 – вероятность того, что выпадет от 3-х до 9 очков включительно.
Особо щепетильные люди могут перечислить все 29 пар, выполнив тем самым проверку.
Ответ: а) 1/9; б) 1/6; в) 29/36.
@machinelearning_interview
Решения упражнений онлайн-курса "Машинное обучение и анализ данных"
Упражнения по машинному обучению и анализу данных (ИТМО, ПИиКТ-СиППО,)
🖥 GIthub
@machinelearning_interview
Упражнения по машинному обучению и анализу данных (ИТМО, ПИиКТ-СиППО,)
@machinelearning_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Решение задач Hackaton TiNT (ITMO) machine learning February 2019 Хакатон ТИнТ (ИТМО) по машинному обучению Февраль 2019
В основном, все задания из олимпиады "Я -проффесионал" от Яндекса по анправлению Большие Данные
🖥 GIthub
@machinelearning_interview
В основном, все задания из олимпиады "Я -проффесионал" от Яндекса по анправлению Большие Данные
@machinelearning_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Связывание именованных сущностей (NEL) — это процесс обнаружения и связывания упоминаний сущностей в заданном тексте с соответствующими сущностями в целевой базе знаний. Связывание сущностей состоит из двух частей:
Распознавание именованных сущностей: NER обнаруживает и классифицирует потенциальные именованные сущности в тексте по предопределенным категориям, таким как человек, организация, местоположение, медицинский код, выражение времени и т.д.
Устранение неоднозначности : это устраняет неоднозначность каждой обнаруженной сущности, связывая ее с соответствующей сущностью в базе знаний.
Давайте посмотрим на Entity Linking в действии в следующем примере(картинка).
В предложении / тексте говорится: «Майкл Джордан — профессор машинного обучения в Калифорнийском университете в Беркли». Первый NER обнаруживает и классифицирует названные сущности Майкла Джордана и Калифорнийского университета в Беркли как человека и организацию.
Затем имеет место разрешение неоднозначности. Предположим, что в данной базе знаний есть две сущности «Майкл Джордан», профессор Калифорнийского университета в Беркли и спортсмен. Майкл Джордан в тексте связан с профессором Калифорнийского университета в Беркли, сущностью в базе знаний. Точно так же Калифорнийский университет в Беркли в тексте связан с юридическим лицом Калифорнийского университета в базе знаний.
Приложения
Связывание сущностей применяется во многих задачах обработки естественного языка. Сценарии использования можно в общих чертах разделить на поиск информации, извлечение информации и построение графов знаний, которые, в свою очередь, могут использоваться во многих системах, таких как:
▪Семантический поиск
Анализ содержания
▪Вопросно-ответные системы / чат-боты / виртуальные помощники
Все вышеупомянутые приложения требуют высокоуровневого представления текста, в котором понятия, относящиеся к приложению, отделены от текста и других не имеющих смысла данных.
Постановка задачи
Интервьюер попросил вас разработать систему связывания сущностей, которая:
▪Определяет потенциальные упоминания именованных сущностей в тексте.
▪Выполняет поиск возможных соответствующих сущностей в целевой базе знаний для устранения неоднозначности.
▪Возвращает либо наиболее подходящую соответствующую сущность, либо ноль.
Постановка проблемы переводится в следующую проблему машинного обучения:
«Имея текст и базу знаний, найдите все объекты, упомянутые в тексте (Распознать). А затем свяжите их с соответствующей правильной записью в базе знаний (Устранение неоднозначности)».
Вопросы на собеседовании для связывания сущностей
Это некоторые из вопросов, которые интервьюер может задать во время обсуждения систем связывания сущностей.
▪Как бы вы построили систему распознавания сущностей?
▪Как бы вы построили систему устранения неоднозначности?
▪Учитывая фрагмент текста, как бы вы извлекли всех людей, страны и предприятия, упомянутые в нем?
▪Как бы вы измерили производительность средства устранения неоднозначности / распознавателя объектов / компоновщика объектов?
▪Учитывая несколько средств устранения неоднозначности / распознавателей / лайнеров, как бы вы определить, какой из них лучший?
@machinelearning_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Всего представлено три задания. Описание для каждой задачи можно найти в соответствующей директории. Они оформлены в Jupyter Notebook:
Task1
Task2
Task3
Task4 (зависит от решения Task3)
При выполнении заданий необходимо описать ход своих мыслей и основные идеи, которые были использованы. Можно оформить в Jupyter Notebook или Google Colab. Нужно отправить исходный код решения задач. Крайне желательно со ссылкой на GitHub, Bitbucket, GitLab или другое хранилище репозиториев Git.
Основные критерии оценки выполнения заданий:
Код написан в едином стиле.
Соблюдены основные соглашения, принятые в сообществе. Например, PEP 8 для Python, Google C++ style и т. п. Стиль может быть разным, но весь код должен быть оформлен в едином стиле.
Насколько он кроссплатформенный.
Как организована структура проекта.
В части Docker. Насколько оптимально написана сборка с точки зрения размера образа и сколько инструкций будут выполняться в случае изменения основного кода приложения (если всё собирается заново, то это не очень хорошо). Основные моменты смотрите в документации
Желательно, чтобы код был написан на Python 3. Какие-то части могут быть написаны на других языках программирования: C, C++, CUDA C/C++.
Запуск проекта должен осуществляться достаточно просто. Если проект на Python 3, то он должен быть с файлом, в котором перечислены зависимости: requirements.txt, файл для Poetry или конфигурационный файл окружения для Anaconda.
Проекты на C/C++ должны снабжаться CMake файлом для сборки.
Мы можем запустить ваши примеры в окружении Linux Ubuntu 18.04 или 20.04, Windows 10, а также в Docker, поэтому лучше явно указывать на какой ОС предполагается запуск, если от этого зависят какие-то части в решении.
@machinelearning_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
📌 Курс «Машинное обучение» на МКН СПбГУ
Аннотация
Объемный годовой курс, в котором подробно рассматриваются модели машинного обучения.
Такой подход позволяет осознать основные принципы данной области в целом. Знание этих принципов даст возможность самостоятельно понимать механизмы функционирования более сложных современных моделей, обнаруживать пути улучшения уже существующих алгоритмов, а также адаптировать методы машинного обучения для решения нестандартных задач.
🖥 Github
@machinelearning_interview
Аннотация
Объемный годовой курс, в котором подробно рассматриваются модели машинного обучения.
Такой подход позволяет осознать основные принципы данной области в целом. Знание этих принципов даст возможность самостоятельно понимать механизмы функционирования более сложных современных моделей, обнаруживать пути улучшения уже существующих алгоритмов, а также адаптировать методы машинного обучения для решения нестандартных задач.
@machinelearning_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Как не завалить испытательный срок
Получить оффер джуну становится всё сложнее: несколько собесов, тестовое задание, интервью с техдиром или руководителем. И на каждом этапе можно получить отказ. И если всё-таки удалось получить оффер, то начинается испытательный срок, который можно завалить по самым разным причинам.
Чтобы этого избежать, бизнес-аналитик и продакт-менеджер с 10-летним стажем дал несколько рекомендаций по успешному прохождению испытательного срока:
https://devby.io/blogs/posts/good-junior
#советы
Получить оффер джуну становится всё сложнее: несколько собесов, тестовое задание, интервью с техдиром или руководителем. И на каждом этапе можно получить отказ. И если всё-таки удалось получить оффер, то начинается испытательный срок, который можно завалить по самым разным причинам.
Чтобы этого избежать, бизнес-аналитик и продакт-менеджер с 10-летним стажем дал несколько рекомендаций по успешному прохождению испытательного срока:
https://devby.io/blogs/posts/good-junior
#советы
Python_вопросы_и_ответы_на_интервью.pdf
335.4 KB
Список вопросов и ответов для подготовки перед собеседованием на Python разработчика
#python #cheatsheet #job #datascience
@machinelearning_interview
#python #cheatsheet #job #datascience
@machinelearning_interview
Вопросы с технического собеседования на позицию инженер по машинному обучению и компьютерному зрению.
🖥 Github
@machinelearning_interview
@machinelearning_interview
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Анализ данных (Data analysis)
🗣Подборка статей для подготовки к собеседованиям по машинному обучению.
1. Вопросы для собеседования по ML 1.1
2. Вопросы с собеседовании по машинному обучению uproger.
3. @machinelearning_interview - телеграм канал с разбором вопросов с собеседований мл.
4. 20 основных вопросов для собеседования по машинному обучению
5. Разберитесь в 40 популярных вопросах для собеседования по машинному обучению
6. Ресурсы для собеседования : ML/Data Science/AI Research Engineer
7. Вопросы и ответы на интервью по ML
8. A Guide To Machine Learning Interview Questions And Answers
9. 6 лучших алгоритмов машинного обучения
10. Подготовка к собеседованию по машинному обучению - алгоритмы ML
11. Машинное обучение IP - EDUREKA - Вопросы и ответы
12. 100 распространенных вопросов для интервью по ML
13. Вопросы для собеседования по машинному обучению - Криш Наик
14. Data Science Interviewer Pro By Emma Ding
15. Вопросы для собеседования по науке о данных Краткий обзор от Simplilearn
16. Наиболее часто задаваемые вопросы на собеседовании по AI/ML
17. Вопросы для собеседования по машинному обучению.
18. @python_job_interview - вопросы с собеседований python, ds.
Сохраняем себе, чтобы не потерять
@data_analysis_ml
1. Вопросы для собеседования по ML 1.1
2. Вопросы с собеседовании по машинному обучению uproger.
3. @machinelearning_interview - телеграм канал с разбором вопросов с собеседований мл.
4. 20 основных вопросов для собеседования по машинному обучению
5. Разберитесь в 40 популярных вопросах для собеседования по машинному обучению
6. Ресурсы для собеседования : ML/Data Science/AI Research Engineer
7. Вопросы и ответы на интервью по ML
8. A Guide To Machine Learning Interview Questions And Answers
9. 6 лучших алгоритмов машинного обучения
10. Подготовка к собеседованию по машинному обучению - алгоритмы ML
11. Машинное обучение IP - EDUREKA - Вопросы и ответы
12. 100 распространенных вопросов для интервью по ML
13. Вопросы для собеседования по машинному обучению - Криш Наик
14. Data Science Interviewer Pro By Emma Ding
15. Вопросы для собеседования по науке о данных Краткий обзор от Simplilearn
16. Наиболее часто задаваемые вопросы на собеседовании по AI/ML
17. Вопросы для собеседования по машинному обучению.
18. @python_job_interview - вопросы с собеседований python, ds.
Сохраняем себе, чтобы не потерять
@data_analysis_ml
🔥 19 худших ошибок на собеседованиях по науке о данных
https://www.datasciencecentral.com/17-worst-mistakes-at-data-science-job-interviews/
@machinelearning_interview
https://www.datasciencecentral.com/17-worst-mistakes-at-data-science-job-interviews/
@machinelearning_interview
Data Science Central
19 Worst Mistakes at Data Science Job Interviews
This applies to many tech job interviews. But here we provide specific advice for data scientists and other professionals with a similar background. More advice is being added regularly. Here’s the list: Not doing any research on the company prior to the…