Size: a a a

AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2

2020 July 03

D•

Dan • Captain in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Привычная ситуация: заходите в соц.сеть и видите блок с аккаунтами людей, которых можете знать. Реализовать такую фичу — пример задачи Data Scientist'а.
Есть желание войти в профессию и делать крутые штуки?

Тогда онлайн-школе SkillFactory есть, что вам предложить — полноценный курс по Data Science с фокусом на практические задачи. На курсе студент сможет стать middle Data Scientist с нуля.
Вот, что вас ждет на курсе:
— Освоение базовых навыков:Python, SQL, Linux и статистика
— Machine Learning, Data Engineering
— Фокус на практику. Будем учить тому, что точно пригодится в работе
— Баланс навыков. Даем базовые знания, развиваем soft skills и учим управлению карьерой
— Портфолио на выходе. Обучаем на решении кейсов, которые вы сможете добавить в портфолио
— Помощь в трудоустройстве. Наметим карьерный трек, поможем прокачать резюме и подготовиться к собеседованию

А для участников нашего чата @bigdata_ru действует эксклюзивная скидка 40% по промокоду BIGDATA — не упустите: https://clc.to/JtDpjQ
источник
2020 July 04

СВ

Сергей Васильев... in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Переслано от Сергей Васильев...
ребят, как в керасе менять скорость обучения в зависимости от истории значений потерь? Типа, если потери как кардиограмма, то стоит уменьшить lr, а если монотонно уменьшается, но очень медленно, то хорошо бы поднажать. Видел в колбеках LearningRateScheduler и ReduceLROnPlateau, но мне кажется они не подходят для решения такой задачи, тк функция корректировки первого может принимать в качестве аргументов только эпоху и текущий lr, а второй умеет только снижать ее
источник

RB

Radion Bikmukhamedov in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Если не подходит что идёт из коробки, то можно написать свой колбэк
источник

DD

Dima Dzundza in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Сергей Васильев
Переслано от Сергей Васильев
ребят, как в керасе менять скорость обучения в зависимости от истории значений потерь? Типа, если потери как кардиограмма, то стоит уменьшить lr, а если монотонно уменьшается, но очень медленно, то хорошо бы поднажать. Видел в колбеках LearningRateScheduler и ReduceLROnPlateau, но мне кажется они не подходят для решения такой задачи, тк функция корректировки первого может принимать в качестве аргументов только эпоху и текущий lr, а второй умеет только снижать ее
По сути тебе нужно только снижать lr, так что 2 вариант тебе должен подходить
источник

D•

Dan • Captain in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
https://ryxcommar.com/2019/07/14/on-moving-from-statistics-to-machine-learning-the-final-stage-of-grief/

Для начала это прекрасно :)
— Какая разница между статистикой и машинным обучением?
— Примерно $50.000 в год

xD
источник

A

Anton in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Сергей Васильев
Переслано от Сергей Васильев
ребят, как в керасе менять скорость обучения в зависимости от истории значений потерь? Типа, если потери как кардиограмма, то стоит уменьшить lr, а если монотонно уменьшается, но очень медленно, то хорошо бы поднажать. Видел в колбеках LearningRateScheduler и ReduceLROnPlateau, но мне кажется они не подходят для решения такой задачи, тк функция корректировки первого может принимать в качестве аргументов только эпоху и текущий lr, а второй умеет только снижать ее
Самописный колбэк. Сравнивая например std в течении нескольких эпох
источник

СВ

Сергей Васильев... in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Anton
Самописный колбэк. Сравнивая например std в течении нескольких эпох
типа через хистори?
источник

A

Anton in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Callback_two = LearningRateScheduler(scheduler)
"""
 sheduler - функция для автоматического изменения шага обучения(зависит от отклонения)
 параметр epoch только для того, чтобы tf не ругался, так как sheduler это его
 (встроенная в коллбэк LearningRateScheduler) функция.
"""
a = [0.001]
def scheduler(epoch):
 std = np.array(val_mae_list[-5:]).std()
 print("Среднеквадратичное отклонение", round(std,4))
 v = 0.001
 if len(val_mae_list) < 5:
   return v
 
 if (std > 0.2):
   print("Пила, понижаем скорость")
   v=0.0001
   a.append(0.0001)
   return v

 if (std < 0.002):
   print("Плато, повышаем скорость")
   v = 0.01
   a.append(0.01)
   return v
 else: return a[-1]
источник

A

Anton in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
лови
источник

MK

Michael K. in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Сергей Васильев
Переслано от Сергей Васильев
ребят, как в керасе менять скорость обучения в зависимости от истории значений потерь? Типа, если потери как кардиограмма, то стоит уменьшить lr, а если монотонно уменьшается, но очень медленно, то хорошо бы поднажать. Видел в колбеках LearningRateScheduler и ReduceLROnPlateau, но мне кажется они не подходят для решения такой задачи, тк функция корректировки первого может принимать в качестве аргументов только эпоху и текущий lr, а второй умеет только снижать ее
Если эпоха огромная, то можно ещё вручную - model.optimizer.lr.assign(0.1

model.optimizer.learning_rate = 0.1,

Перед fit
источник

СВ

Сергей Васильев... in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Anton
Callback_two = LearningRateScheduler(scheduler)
"""
 sheduler - функция для автоматического изменения шага обучения(зависит от отклонения)
 параметр epoch только для того, чтобы tf не ругался, так как sheduler это его
 (встроенная в коллбэк LearningRateScheduler) функция.
"""
a = [0.001]
def scheduler(epoch):
 std = np.array(val_mae_list[-5:]).std()
 print("Среднеквадратичное отклонение", round(std,4))
 v = 0.001
 if len(val_mae_list) < 5:
   return v
 
 if (std > 0.2):
   print("Пила, понижаем скорость")
   v=0.0001
   a.append(0.0001)
   return v

 if (std < 0.002):
   print("Плато, повышаем скорость")
   v = 0.01
   a.append(0.01)
   return v
 else: return a[-1]
а что такое val_mae_list?
источник

MK

Michael K. in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Сергей Васильев
а что такое val_mae_list?
Тестовый сет(?)
источник

СВ

Сергей Васильев... in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Michael K.
Тестовый сет(?)
это вопрос или утверждение?
источник

MK

Michael K. in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Утверждение с уверенностью ~90% 😂
источник

A

Anton in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Сергей Васильев
а что такое val_mae_list?
Это список ошибки mae на тестовой выборке
источник

AD

Alex Dev in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
при попарном сравнение если ко-во участников не четное , что обычно делают ? )
источник

NN

No Name in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Одного посылают за пивом
источник

AD

Alex Dev in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
No Name
Одного посылают за пивом
тоже вариант был, но обидно будет если тебе этот участник не попадется , а в итоговой таблице он окажется на 1 месте , и ты такой "какого хрена у меня его не было , я бы его тоже выбрал"
источник

СВ

Сергей Васильев... in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Anton
Это список ошибки mae на тестовой выборке
а как его получить? а то я попробовал всунуть код и лист у меня не определен, ты его сам определяешь или он существует под капотом для каждого лосса?
источник

NN

No Name in AI / Big Data / Machine Learning 👮‍♂️ Protected by R2D2
Alex Dev
тоже вариант был, но обидно будет если тебе этот участник не попадется , а в итоговой таблице он окажется на 1 месте , и ты такой "какого хрена у меня его не было , я бы его тоже выбрал"
Ну сделай его синтетическим, возьми среднее по всем
источник