📌 Что такое RCA (root cause analysis)? Как отличить причину от корреляции? Приведите примеры.
Анализ причин (root cause analysis, RCA) – метод решения задач, используемый для выявления причин некоторого явления.
Корреляция измеряет уровень зависимости между двумя переменными, от -1 до 1. Причинно-следственная связь – это когда первое событие вызывает второе. Причинно-следственные связи учитывают только прямые зависимости, тогда как корреляция – и косвенные зависимости.
Пример
Повышение уровня преступности в Канаде совпадает с повышением продаж мороженого, то есть корреляция между ними положительна. Но это не значит, что одно является следствием другого. Просто и то, и другое происходит, когда становится теплее.
Провести анализ причинно-следственных связей можно с помощью проверки гипотез или A/B тестирования.
@machinelearning_interview
Анализ причин (root cause analysis, RCA) – метод решения задач, используемый для выявления причин некоторого явления.
Корреляция измеряет уровень зависимости между двумя переменными, от -1 до 1. Причинно-следственная связь – это когда первое событие вызывает второе. Причинно-следственные связи учитывают только прямые зависимости, тогда как корреляция – и косвенные зависимости.
Пример
Повышение уровня преступности в Канаде совпадает с повышением продаж мороженого, то есть корреляция между ними положительна. Но это не значит, что одно является следствием другого. Просто и то, и другое происходит, когда становится теплее.
Провести анализ причинно-следственных связей можно с помощью проверки гипотез или A/B тестирования.
@machinelearning_interview
🎲 Вы бросаете два шестигранных кубика. Какова вероятность, что сумма выпавших значений будет равна 4? А 8?
Выбросить 4 можно тремя комбинациями:
Выбросить
@machinelearning_interview
Выбросить 4 можно тремя комбинациями:
(1+3, 2+2, 3+1)
. Поскольку всего комбинаций 36, P(4) = 3/36 = 1/12
.Выбросить
8
можно пятью комбинациями: (2+6, 3+5, 4+4, 5+3, 6+2). P(8) = 5/36.
@machinelearning_interview
Data Science: что нужно знать для собеседования?
Data Science — является одной из самых популярных и высокооплачиваемых профессий в сфере IT. Компании полагаются на Data Science специалистов для анализа и интерпретации данных или принятия обоснованных решений, способствующих росту бизнеса.
С ростом спроса на квалифицированных специалистов конкуренция за вакансии сильно возросла и очень важно быть хорошо подготовленным. В этой статье — подборка материалов к собеседованию на Data Science Junior:
https://habr.com/ru/post/724064/
#datascience
Data Science — является одной из самых популярных и высокооплачиваемых профессий в сфере IT. Компании полагаются на Data Science специалистов для анализа и интерпретации данных или принятия обоснованных решений, способствующих росту бизнеса.
С ростом спроса на квалифицированных специалистов конкуренция за вакансии сильно возросла и очень важно быть хорошо подготовленным. В этой статье — подборка материалов к собеседованию на Data Science Junior:
https://habr.com/ru/post/724064/
#datascience
Стрессовое интервью: 8 фишек рекрутёров
А вам устраивали стрессовое собеседование? Возможно, да, но вы могли об этом не догадываться. Представляем вашему вниманию фишки, которые используют рекрутёры, чтобы проверить кандидата на прочность.
▪ Читать
@machinelearning_interview
А вам устраивали стрессовое собеседование? Возможно, да, но вы могли об этом не догадываться. Представляем вашему вниманию фишки, которые используют рекрутёры, чтобы проверить кандидата на прочность.
▪ Читать
@machinelearning_interview
📋 Собеседование в области науки о данных: 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
#советы