• Как посчитать корреляцию вектора и матрицы?

    @dmshar
    А как вам такой вопрос в голову пришел? Просто интересно. Вед корреляция - это по сути подобие двух объектов. А какое может быть подобие у вектора и матрицы, если даже размерность у них разная. Может вы что-то другое на самом деле имеете ввиду, да только терминов правильных не выучили? Вот и спрашиваю, откуда задача-то появилась? Может поймем, что на самом деле вам надо.
    Ответ написан
    Комментировать
  • Как написать аналогичный код на Python?

    @dmshar
    Есть модуль time. В нем есть весьма полезные для ваших целей функции: time.time() - получение текущего (системного времени) и time.sleep() - приостановка выполнения процесса на заданный интервал времени. Комбинируя эти функции можно и таймаут сделать, и привязывать выполнение к заданному моменту и много чего еще. Документация по модулю тут:
    https://docs.python.org/3/library/time.html
    Ответ написан
    Комментировать
  • С чего начать изучение программирования?

    @dmshar
    А нескромный вопрос - информатику вы в школе уже изучали? Я не знаю, в каком классе ее начинают изучать, поэтому если нет - берем учебник, и начинаем читать. Потом уже, понимая хоть примерно как работает компьютер, начинаем углубляться в языки программирования. Не уверен что С++ да и Python, кстати, тоже - подойдут для 7 класса. Там есть что попроще, какой нибудь Scratch - специально для начального обучения детей 10-14 лет.
    Но если вот очень хочется побыстрее стать взрослым, и изучать "настоящий" язык программирования - то можно взять вот эту книгу
    Бриггс, Джейсон. Python для детей. Самоучитель по...
    По крайней мере там пытаются ориентироваться на детей.
    Ответ написан
  • Как распознать объект по его геометрии?

    @dmshar
    Странно. Похоже, что "много статей" вы просмотрели, но не изучали? Или как?
    "как сказать программе, что листик дерева - это листок, а не что-то другое?" - вы про первоначальную разметку что-либо слышали? Вот так и сказать - сидят 20 тысяч китайцев и размечают вручную рисуночки - "вот это листик, а вот это цветочек, а вот это автомобильчик, а вот это песик" и заносят эту информацию в базу данных вместе с картинкой. Потом на этом размеченном датасете проводят обучение алгоритма распознавания, а уж потом он начинает работать на новых, неведомых ему ранее рисунках.
    Другое дело, что есть более "продвинутые методы разметки", но во первых, их применение очень ограничено, а вот вторых - вы же спрашиваете про основы. А они вот такие, как я описал.
    Ответ написан
  • Хотелось бы узнать мнение профессионалов по данному курсу?

    @dmshar
    Лет десять назад я бы дополнил ответ уважаемого Сергей Горностаев примерно так "а вот способен он стать программистом или нет - можно узнать только после того, как покажет чего он достиг за указанное время". Но вот сегодня я прихожу к выводу, что существует метод узнать это с самого начала, еще до всякого обучения. Если человек любой вопрос - на какие курсы пойти, какие книги читать, какой язык программирования учить, оценить те или иные источники, "с чего начать мое обучение", "что читать после того, как я прочитал вот такую книгу" и пр. - привык не самому искать ответы, а в первую очередь бежать на форум - то с 99.999% вероятностью программистом ему не стать, ну или не стать программистом чуть выше плинтусового уровня. Грустно - но факт.
    Ответ написан
    2 комментария
  • Какие книги по нейросетям, ИИ, и Маш.Обучнию лучшие?

    @dmshar
    Маленький совет как для новичка. Если начинаешь изучать что-то новое для себя, надо не "самую лучшую" книгу по теме искать, а самую понятную. Что далеко не одно и то-же.
    И да, книги которые вы привели в вопросе, они вполне понятные, так что читайте. Только учтите, что на то, что-бы въехать в эту тему надо столько времени, что вряд ли какой-нибудь вменяемый заказчик согласиться ждать.
    Ответ написан
  • Что учитывать при линейной регрессии?

    @dmshar
    О чем вообще идет речь? Если об одномерной регрессии, то выбор наиболее сильно коррелированной пары позволяет потом значение одной переменной (выбранной в качестве целевой) наиболее точно предсказывать по значениям второй (выбранной в качестве независимой). Чем выше корреляция - том точнее будет результат предсказания. Соответственно если корреляция между независимой и зависимой переменной равна или близка нулю, то смысла строить регрессионную модель вообще нет от слова совсем.
    Если речь идет о многомерной регрессии, то потом к этой паре можно добавлять еще переменных, примерно по той-же логике - чем больше корреляция между переменной и целевой переменной - тем выше точность.
    Но есть исключение. Если у вас в качестве кандидатов на независимые переменные рассматриваются несколько переменных которые сильно коррелированы между собой, тогда смысла их всех включать в результирующее уравнение регрессии нет, так как точность прибавиться весьма слабо а вот сложность самого уравнения - вырастет существенно. Поэтому из СИЛЬНОкоррелировнных независимых переменных выбирают одну и с ней работают дальше.
    Но и тут есть свои нюансы. Например, если зависимая переменная зависит от произведения (или отношения) нескольких независимых. Но это уже совсем другая история.
    Ответ написан
  • Нужна ли математика в Data science?

    @dmshar
    Вот это звучит несколько странно :"а так же могу написать код. Так вот вопрос такой: если я знаю как она работает и для чего она нужна, зачем мне знать какая у нее формула " А как же вы пишете код для линейной регрессии, если на знаете, что там за формула? Или вы под "могу написать код" понимаете вызов метода из scikit-learn ? Ну так знание параметров функции и умение ее вызвать еще не делают из человека специалиста по машинному обучению. Хотя многие думают что это не так. Только вот после же первой встречи с реальными данными их апломба почему-то становиться на много меньше.
    А вообще-то математика в Data Science это то-же что и анатомия в медицине. Может-ли врач считаться врачем, если он не знает анатомии, а умеет только выписывать рецепты лекарств? Вы бы хотели лечиться у такого врача? Именно фундамент отличает серьезного разработчика от Незнайки, который думал, что он все знает и умеет. Фундамент долго, упорно, и даже нужно закладывается. Но вот потом позволяет быстро расти.
    Вот для этого и надо знать математику и статистику, которые лежат в основе Dara Scince. Что бы не остаться на всю жизнь Незнайкой.
    Ответ написан
  • Как подготовить windows ПК для локальных расчетов Нейросетей с JupiterNotebook?

    @dmshar
    Не знаю, у меня уже пару лет, каждый год примерно 50-60 студентов 2-го курса устанавливают все это "с нуля". Практически - самостоятельно, может быть за все время 2-3 человека обратились за помощью. Просто берут стандартный пакет Anaconda, в который по умолчанию входят и Python, и Spyder, и Jupiter и все, что нужно на пару лет вперед для изучения Machine Learning, включая нейросети. Все ставиться абсолютно автоматически, по умолчанию, в нужной последовательности, в самом актуальной конфигурации. И никаких танцев и размышлений "что за чем".
    Так что если все делать аккуратно - то все там просто.
    Что касается " Jupiter с других устройств по ЛС/Wi-Fi." - то теоретически ответ "да, можно". Если сумеете поднять web-сервер и организовать раздачу. Только вот что-то мне подсказывает по вашему вопросу, что для этого вам мягко говоря придется еще очень много чего предварительно изучить. Ну, вы поняли.
    Ответ написан
    Комментировать
  • SerpentAI выдаёт ошибку при создании датасета. Что делать?

    @dmshar
    Вы документацию читали? Там же четко английским по белому написано:
    "If you run into any errors, open an issue in the Issues tab and I'll see what I can do. But try googling first. You'll probably find answers from people that know more than me."
    Вы пробовали сделать то, что вам советуют? Ну например, нагууглили, что "the NumPy object type 'O' is created when the NumPy array itself has mixed element types (e.g. np.int8 and np.float32)" ? Вот и ищите, где и какие данные вы неправильно задаете, путая их типы.
    Ответ написан
  • Код сломался просто так?

    @dmshar
    Вы верите в чудеса? Я - нет. И "просто так" ломаются только игрушки у маленьких детей. Если написано "No such file or directory" - то это значит только то, что этот файл в вашей рабочей директории не найден. Другими словами - "не стоит" у вас именно этот файл в указанной директории. Точка.
    А вот причин может быть несколько - ошибка в имени файла, измененная рабочая директория, вы просто не заметили и случайно удалили ваш файл и т.д. Поэтому - проверьте внимательно, где "стоит" ваш файл и пропишите для начала полный путь к нему в операторе. И проверьте, не изменили вы рабочую директорию (например, в настройках вашей IDE) или еще веселее - не изменяете ли вы ее динамически, в ходе выполнения скрипта.
    Ответ написан
  • Как правильно определить, какое число итераций необходимо?

    @dmshar
    А двавайте велосипед не выдумывать. Есть такой раздел вычислительной науки. "Теория алгоритмов" называется. Он-то как раз и занимается тем, что объясняет, как оценить вычислительную сложность алгоритмов, в том числе ОЦЕНИВАЕТ, сколько циклов, операций сравнения и пр. требуется для того или иного алгоритма.
    Просто после вопроса " единственный вариант - сравнивать список "до" итерации и "после". Но в таком случае, не будет ли затраты на подобные сравнения "затратнее" холостых циклов?" становиться понятным, что тут не на конкретный вопрос отвечать надо, а с азов начинать. Ведь и то что это "единственный способ", и про то что сравнение можно сравнивать с холостым циклом - про все это говориться в Теории алгоритмов. Причем как правило - с самого начала.
    Ответ написан
    Комментировать
  • Где брать инфу о ботах для веб игр?

    @dmshar
    Мы же понятия не имеем, кто вы, что вы, что уже знаете и умеете. Судя по вопросу - в программировании вы новичек. Тогда ответ один и он очевиден:
    Учитесь программировать. С этого и начинайте. Начните c Python.
    После этого сможете писать и боты, и игры, а может у вас хватит таланта и чем-то более серьезным заняться.
    Вопрос про "узконаправленные курсы" по программированию чего-то там на этом сайте уже выглядит как издевательство. Его задают по три раза в неделю. Поэтому если действительно надо - дайте себе труд (а не нам задание) найти эту информацию на этом самом сайте.
    Ответ написан
  • Как оценить эффективность функции потерь для практических задач?

    @dmshar
    Вопрос некорректно сформулирован. Вернее - он сформулирован так, что ответить на него однозначно нельзя.
    Потому-что на вопрос "Посоветуйте пожалуйста источники или литературу, что можно посмотреть по этой теме." - любой учебник по Machine Learning обязательно содержит хотя бы одну главу на эту тему.
    А вот далее все зависит от ваших целей и задачи - а про этого мы без вас узнать ничего не можем
    Если вы "Пробовала разные метрики" - это уже хорошо. Но вот непонятно, что вас смутило при этом. Почему возник вопрос? Что осталось непонятным?
    Потому как в разных задачах помимо указанных вами (и еще ряда аналогичных) метрик используются и другие подходы, начиная от тривиальных ошибок I/II рода до AUC и ROC-кривых. А есть еще всякие информационное критерии Акаике, Байеса, Шварца и пр. И у каждого своя сфера применения и использования.
    Главная проблема исследователя в области Data Sсience и Machine Learning лежит не в знании всяких методов - в данном случае метрик. Хотя и это немаловажно. А именно в умении "перевести" проблемы с языка прикладной области на язык математики перед применением инструментов, и в умении интерпретировать полученные результаты после их применения.
    Поэтому для того, что-бы вам что-то конкретное советовать - надо понимать вашу конкретную задачу. "Предсказать количество пользователей" - это не цель, это просто некоторая учебная задача. Если это так, то и метод оценки вам должен быть задан. А вот если это реальная аналитическая проблема - тогда уже надо углубляться в проблему: зачем вы эти данные собираетесь предсказывать, что дальше делать с этими предсказаниями, как важны для вас ошибки и какие ошибки и т.д.
    Так что увы, или уточняйте проблему, или самостоятельно копайте информацию по любым источникам, а лучше - книгам.
    Ответ написан
    2 комментария
  • Что почитать про интернет?

    @dmshar
    Боюсь, что стать бэкенд разработчиком без элементарного навыка самостоятельного информационного поиска - практически нереально. Поэтому - совет номер один: займитесь приобретением устойчивого навыка поиска в Гуугл. Начните хотя-бы с этого самого сайта. Тут ваш вопрос повторяется каждые две недели. Вот последний:
    https://qna.habr.com/q/1207724
    А вот это - выпадает как правило в первой тройке Гуугл запроса:
    https://linkmeup.ru/blog/1188/
    Ответ написан
    Комментировать
  • Как создать пустой файл в питон во время работы программы?

    @dmshar
    Файл создается не тогда, когда программа завершает работу, а тогда когда отрабатывает метод close().
    Это легко увидеть, если сделать маленький эксперимент:

    import time
    from datetime import datetime
    print(datetime.now(),flush=True)   
    file = open("ABC","w+")
    print(datetime.now(),flush=True)   
    file.close()
    print(datetime.now(),flush=True)   
    time.sleep(90)


    Теперь смотрим скрин зкрана. Видно, что процесс не закончен (он уснул по sleep и проснется через полторы минуты, т.е. в 20: 37:.... , красный квадратик внизу справа подтверждает, что процесс активен ), а файл уже создан.

    634c421515c53615750301.png
    Ответ написан
    Комментировать
  • Как передать из функции в другую переменную не вызывая ее?

    @dmshar
    А зачем в функции значение переменной если вы ее (функцию) не вызываете? Не вызываете - значит она (функция) выполняться не будет. Так зачем ей это значение?

    А вообще-то есть ТРИ способа передачи переменных:
    1. Через указание параметра.
    2. Через глобальную переменную (не рекомендуется).
    3. Через внешнее хранилище информации - файл, БД и пр.

    Ничего другого человечество не придумало. Вот и выбирайте.
    Ответ написан
    Комментировать
  • Как обойти бинарное дерево?

    @dmshar
    Вообще-то, если "У родителя (цифры 2) 3 потомка...." то это как бы не бинарное дерево.
    А вот "по id элемента можно было узнавать родителей/потомков" - можно в одном специальном случае, который называется бинарное сортирующее дерево и используется, в частности, в алгоритме пирамидальной сортировки.
    Ответ написан
    Комментировать
  • Нужен алгоритм победы по процентам, как это сделать?

    @dmshar
    Да все еще проще, причем алгоритмически.
    Генерируется случайное число S, равномерно распределенное в диапазоне от 1 до 800.
    Если S<=100 то победа первого игрока.
    Иначе победа второго игрока.

    Ровно три строчки кода.
    P.S. кстати, при заданных значениях задача может еще упроститься. Числа могут быть от 1 до 8. Победа первого, если выпадает 1. В противном случае - победа второго. При достаточно большом количестве повторов вероятности в "полной" и "сокращенной" задачах совпадут. Пруф ищите в курсе теории вероятностей.
    Ответ написан
    3 комментария
  • Какие нейронки подойдут дял обработки человеческих тел/лиц?

    @dmshar
    Готовый сюжет для фильма ужасов: "нейронка, обрабатывающая человеческое тело".
    Ответ написан
    Комментировать