Ответы пользователя по тегу IT-образование
  • Как мне правильно развиваться в первую очередь как хороший программист, а потом уже как backend python?

    Maksim_64
    @Maksim_64
    Data Analyst
    Я 2 года изучал Python (сам, без курсов).
    Думаю, что многого не знаю или упустил.

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

    Сейчас пытаюсь учить Flask, недавно закончил основы Git (очень хочу практики в команде).

    Опять таки делай проект, я бы не рекомендовал flask (fastapi вместо), но главное это сделать проект, git будет нужен если работаешь один, необязательно командой.

    В моих планах стать backend-разработчиком на Python.
    В данный момент я просто запутался, что мне изучать, что читать, где брать практику.

    Прекрасный выбор, после двух лет чтения, надо делать. Потом придет время опять почитаешь чего-нибудь.
    Ответ написан
    4 комментария
  • Как стартовать в аналитике "гуманитарию"?

    Maksim_64
    @Maksim_64
    Data Analyst
    Все "узкие" позиции для входа в IT это всегда тяжело. На такие специализации, как правило нет джунов или к ним требования и опыт и все остальное.

    1. Английский
    2. Python
    3. статистика, теория вероятности, ML стек в python.
    4. Учится по книгам.
    5. Пробоваться всюду, работу своей мечты потом, найдешь, спустя годы.
    Ответ написан
    2 комментария
  • Какие азы нужно знать перед тем как начать изучать программирование?

    Maksim_64
    @Maksim_64
    Data Analyst
    Не нужно ничего, начинай программировать. Проблемы надо решать по мере их поступления, а не придумывать их самому.

    Любой толковый учебник для начинающих , будет тебя знакомить с азами, через программирование.
    Ответ написан
    Комментировать
  • Стоит ли начинать учить программирование с Golang?

    Maksim_64
    @Maksim_64
    Data Analyst
    1. Начинать с go не нужно. Это довольно нишевый язык, по которому будет крайне тяжело найти первую работу. Обычно go специалисты, это программисты с опытом которые в определенный момент добавляют его в свое портфолио.

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

    В остальном определись не с языком, а что ты именно хочешь делать, в создании какого продукта принимать участие и под это дело подбирай язык, и не пытайся быть особенным, тебе нужен большой рынок и скромненькое местечко на этом рынке.
    Ответ написан
    5 комментариев
  • Что вы делаете, если застряли на задаче?

    Maksim_64
    @Maksim_64
    Data Analyst
    Все просто, ты взял задачу себе не по уровню, по этому и нет прогресса. Браться надо за то что для тебя выполнимо в данный момент и так шаг за шагом расти по не многу.
    Ответ написан
    Комментировать
  • Какая есть литература полезная и понятная по Data Science на русском?

    Maksim_64
    @Maksim_64
    Data Analyst
    Data Science довольно широкий термин. Насчет Deep Learning посмотри недавно советовал хорошую книгу Ну а насчет Data Science слишком широко берешь, вышеупомянутый Deep Learning относится к DS, статистические тесты, вероятностное моделирование и т.д. также относится к DS, при этом они требуют углубления в совершенно разные разделы математики.
    Ответ написан
    1 комментарий
  • Какие книги посоветуете по нейросетям?

    Maksim_64
    @Maksim_64
    Data Analyst
    Для новичков ответ очевиден, нет ничего и близко равного Deep Learning with Python, Second Edition . От инженера гугла и создателя Кeras François Chollet. Она и на русском есть, если не владеешь английским. Не много не мало гениальная книга, и доступна для людей без математического бэкграунда.
    Ответ написан
    1 комментарий
  • Где можно пройти тесты по программированию и информатике?

    Maksim_64
    @Maksim_64
    Data Analyst
    Самые сложные тесты доступные онлайн которые, лично я проходил, да и сейчас иногда прохожу когда время позволяет это hakerrank Плюсом будет на собеседованиях (иностранных) прям тест с платформы могут дать.
    Ответ написан
    Комментировать
  • Что учить дальше?

    Maksim_64
    @Maksim_64
    Data Analyst
    Твоя задача получать опыт. Опыт приходит на проектах, соответственно, учи все что необходимо для проекта. И не расплескивайся особенно как начинающий специалист. Сильный чистый python + доменные знания в области применения, и то и то оттачивается на реализованных проектах.
    Ответ написан
    Комментировать
  • Куда стоит поступать на ИИ?

    Maksim_64
    @Maksim_64
    Data Analyst
    656095ba3133d432320320.png

    ИИ - это общий термин, и не более. Так что иди туда, где сильная база программирования и математики, если где то включено ML то оно в свою очередь будет включать в себя как классические ML алгоритмы, так и нейронные сети.
    Ответ написан
    Комментировать
  • Что можно написать в дипломной работе по теме восприятие пользователем результатов прогностических систем?

    Maksim_64
    @Maksim_64
    Data Analyst
    Восприятия пользователем результатов прогностических систем


    Вообще тема мертвая, она элементарно плохо сформулирована. Как мне видится, что бы со всем этим делом справится. Тебе подойдет дашборд, при чем в качестве web приложения. Если твой язык python то стек будет такой.
    python, pandas, plotly + dash + scikit-learn / statsmodels. Я бы рекомендовал statsmodels, раз уж речь о улучшении восприятия, то работай с интерпретируемыми моделями (statsmodels много инферентной статистики предоставит).

    1. Покажи на графиках, как изменение в одном из предикторов, влияют на твой таргет.
    2. Сделай анализ важности предикторов, это тоже улучшит понимание юзера.
    3. Покажи как удалил выбросы
    4. продемонстрируй что применяя стандартизацию данных (или другую трансфомацию), сама структура данных не меняется и т.д.
    5. Вообще рассмотри толковый EDA.
    Ответ написан
    5 комментариев
  • Стоит ли читать лутца в 2023?

    Maksim_64
    @Maksim_64
    Data Analyst
    Ты должен искать тот путь который будет работать для тебя. Важно не вот книга "А" лучше чем книга "Б". А в какой момент времени (твой текущий уровень, мотивация, конечная цель, индивидуальные предпочтения и т.д.) Ты читаешь книгу "А" или книгу "Б". Может быть стоит читать эту книгу, может стоит читать статьи, может быть стоит почитать что-то в контексте применения python в той области где ты собираешься его применять и т.д. Самообразование - это не набор определенных действий почти одинаковый для всех - а твой индивидуальный путь.

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

    Я бы не искал единственную книгу, как способ обучится.
    Ответ написан
    Комментировать
  • Как и где учить математику, если вкатываешься в нейросети?

    Maksim_64
    @Maksim_64
    Data Analyst
    Ну смотри если речь о нейронных сетях именно то как таковой сложной математики там нет. Что такое нейронная сеть это последовательность слоев. Каждый слой представляет из себя нелинейную геометрическую трансформацию в многомерном пространстве. Для лучшего понимания и изучения можешь взять двумерные данные. Взять четыре точки квадрат с координатами. У тебя получится матрица A размерность (4, 2). Так что происхдит в скрытом слое.

    relu(dot(A, W) + b) - все как бы это не звучало но это ровно то что происходит внутри скрытого слоя. Мы инициализируем случайную матрицу весов размерностью которая подходит для математического умножения матриц. При математическом умножении матриц порядок важен и правило следующее количество колонок в первой матрице должно совпадать с количество рядов во второй матрице. Если матрица A у нас (4,2), то матрица весов у нас должна быть (2, любое значение) пусть будет 16 например. И результатом будет матрица (4, 16)
    Например
    A = np.array([[0,0],
                  [0,2],
                  [2,2],
                  [2,0]])
    W = np.random.uniform(-1,1,size=(2,16)
    result = np.dot(A,W)
    Здесь мы осуществили геометрическую трансформацию, мы получили представление данных в 16 мерном пространстве. Далее мы просто прибавляем также случайно инициализированный вектор b в подходящей размерности и все. Все эти трансформации линейны. Не линейность достигается функцией активации например relu то есть весь наш код будет
    import numpy as np
    
    A = np.array([[0,0],
                  [0,2],
                  [2,2],
                  [2,0]])
    W = np.random.uniform(-1,1,size=(2,16))
    b = np.zeros(16)
    result = np.dot(A,W) + b
    np.maximum(result,0)
    Все теперь у нас не линейная геометрическая трансформация. Затем посредством обратного распространения ошибки будет находится полезные геометрические трансформации, и будет происходит настройка значений (параметров модели) в наших матрицах весов (которые минимизируют loss функцию), то есть обучение модели. Это то что происходит в одном слое, последний слой там не много по другому, в зависимости от задачи и размерности которую мы хотим получить.
    Что выучить. Линейная алгебра Khan Academy. Обратное распространение ошибки осуществляется за счет подсчета градиента. Лучше начать с Single Variable Calculus курсы Calculus AP и ВС там же Khan Academy, и затем Multivariable Calculus Khan Academy. Все для нейронных сетей этого хватит, статистика как таковая для нейронных сетей на прямую не требуется, скорее для общего понимания и косвенно там выборку осуществить. Эти курсы шикарные и их достаточно для нейронных сетей. Для других алгоритмов их будет не достаточно. Ну и надо иметь ввиду, что у нас не обязательно математическое умножение тенсоров второго порядка (матриц), у нас могут быть конволюции. Пример что я привел это самый распространенный случай. Так что основы линейной алгебры, дифференцирование функции одной переменной затем многих (именно они и нужны), не пытайся сразу в дифференцирование функции многих переменных иначе не будешь понимать что к чему.
    Ответ написан
    Комментировать
  • Какой проект можно сделать, чтобы выучиться на Data Engineer?

    Maksim_64
    @Maksim_64
    Data Analyst
    Окей, я не Data Engineer, если таковые тут есть пусть меня поправят. Смысла делать какой либо проект без теоретических знаний в этой области я не вижу. Работа инженера по данным это построения пайплайнов, где стартовая позиция это сырые данные, а конечная это хранилище из которого BA/DA/DS ,будут брать эти данные.

    В зависимости от того что это за данные классические или бигдата архитектура этого пайплайна и типы хранилищ очень варьируется. И на вашем бы месте я бы смотрел в сторону Big Data Engineer потому что без него не обойтись, где классические данные там data engineering иногда весьма размыт и раскидан по разным специалистам.

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

    Ответ не претендует на истину, пусть data engineer's выскажутся.
    Ответ написан
    Комментировать
  • Что изучать после пайтона?

    Maksim_64
    @Maksim_64
    Data Analyst
    Часть первая: Английский Язык.

    Часть вторая: поставь anaconda и jupyter lab

    Часть третья: python фреймворки
    1. numpy - изучать каждый метод не нужно, нужно освоить broadcasting Это правила по которым происходят операции с массивами разной размерности. Не изучишь, не сможешь работать с нейронными сетями и много еще с чем.

    2. pandas - нужно научится понимать, как работают индексы (вся мощь но и сложность лежит в индексах особое внимание к многоуровневым индексам). Группировки объект groupby. Решайпинг, методы stack, unstack, melt и т.д. Решайпинг сложная тема, но без нее никуда.

    3. matplotlib - нужно научится работать в ооп стиле, а не в матлаб стиле.

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

    4. scikit-learn - это машинное обучение, тебе понадобится разобраться что такое оценщик (estimator) и transformer (трансформатор). Также научится пользоваться пайплайнами, объект Pipeline это для старта, естественно.

    5. statsmodels - это не много иной взгляд на машинное обучение он включает в себя инферентивную статистику. Например построив логистическую регрессию, я могу посредством этой библиотеки найти каким образом изменение на одну единицу одного из моих предикторов отражается на вероятности, так называемый маржинальный эффект. Это очень важно для бизнеса. Также A/B тесты тоже там, и многое многое другое.

    4 и 5 также учить по документации она совершенно фантастического уровня особенно для scikit-learn + очень важный плюс В этой области есть классика это книга Statistical Learning книга написана профессорами стенфорда, в мире датасаенс она очень известна. Раньше она была написана на R, я ее читал на R в свое время, так вот 2023 году этим летом вышла python edition. Книга и код доступны бесплатно. https://www.statlearning.com/
    Это уникальная книга без равных, но к ней надо быть готовым.

    Часть Четвертая: Математика
    Все что нужно есть на Khan Academy. Начни со своего уровня и вперед, математика тебе нужна вся. Особенно Calculus. Заходишь на Khan Academy и вперед проходи бесплатные курсы со своего уровня,
    Algebra 1,
    Algebra 2,
    Precalculus,
    AP/College Calculus AB
    AP/College Calculus BC
    Statistics and Probability
    AP College Statistics

    Вот эти курсы вот этом порядке, ты должен освоить, то есть в конце курса финальный тест, должен проходить играючи, и все делать на листке бумаги не читерить, сам себя обманешь. Потом книга что я указал выше, код в книге естественно в основном использует scikit-learn и statsmodels, + первые три библиотеки само собой.

    Потом придется прочитать еще пару книг по теории вероятности и статистике отдельно (со временем). Если calculus на Khan Academy на должном уровне, то вот теория вероятности и статистика слабенькая, нужно будет добавлять.

    В добавление еще SQL но поверхостно, уровень не сложных запросов и подзапросов. Все дела будут происходить в pandas.
    Ответ написан
    Комментировать
  • Какими материалами повысить экспертизу в python?

    Maksim_64
    @Maksim_64
    Data Analyst
    как по мне то книга Fluent Python 2nd Edition. Она довольно продвинутого, а местами очень продвинутого уровня. Если брать статьи то https://realpython.com/ там бывают большие очень качественные статьи. Но как главный ресурс изучения python'a с этой книгой лично для меня ничего не сравнится.
    Ответ написан
    Комментировать