Ответы пользователя по тегу Машинное обучение
  • Как определить похожесть комплектации автомобиля?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я предполагал представить каждую запись в датасете как вектор, и посчитать косинусную схожесть между векторами.

    Косинусная здесь не подходит. Косинус учитывает вес каждого параметра. Например слова "шалаш" и "кабан"
    содержат по 2 буквы "а" и это делает возможным введение косинусной метрики для дистанции двух слов.

    У тебя автомобили содержат просто булевы признаки. Например тип_двигателя_дизель = true.
    И сравнивать тебе выгоднее просто векторы такого вида { 1.0, 0.0, 1.0, 0.0 .... },
    Тут дистанция хемминга была бы проще и вернее.

    По поводу объема двигателя и года выпуска - решай сам. Но при численном сравнении
    у тебя возникнет дилемма крокодила. Типа крокодил более зеленый чем плоский? Или наоборот.
    Грубо говоря какой из параметров будет иметь БОЛЬШИЙ вес в при операциях сравнения.
    Ответ написан
    Комментировать
  • Существуют ли нейросети для воксельных 3D-объектов?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Давным давно, когда еще не было такого огульного использования нейросетей, как сегодня,
    я читал про преобразование Радона. Оно позволяет по одной проекции восстановить
    больше измерений наблюдаемого объекта. Например как в томографе.

    Но для того чтоб восстановление было точным - надо много раз поворачивать камеру и снимать
    наблюдаемый объект с разных углов.

    В класическом варианте Радон описан как одномерная функция y=f(x) но для твоего варианта
    надо просто дать больше измерений на вход (фоток). И камеру крутить тебе надо не
    по кругу как в томографе а со всех всевозможных углов по Эйлеру. На выходе будут вещественные
    вокселы. (они будут все завсечены но с разной интенсивностью). Какие-то сильнее и какие-то слабее.
    И если прогнать их через трешолд то получится вполне себе точная 3Д модель.
    Ответ написан
  • Есть ли ИИ для бизнеса, которая может собирать информацию по компании (ОКВЭД, выручка) из интернета?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Это называется сбор сведений. К ИИ не имеет никакого отношения.
    Ответ написан
    Комментировать
  • Какие простые, "бытовые" задачи подходят для изучения машинного обучения?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Машинное обучение (ML) это над-множество задач типа классификация, регрессия, кластеризация
    и детектирование аномалий.
    В последнее время очень часто идет подмена понятий и вместо ML
    задач все время подсовывают нейронные сети, хотя они закрывают некое под-множество этих
    же задач.

    Вы совершенно правильно ставите вопрос говоря
    Но зачем мне инструмент машинное обучение если я и сам могу сравнить все исходные массивы, и найти тот, что совпадает?


    В этом есть инженерная мысль - решать задачи подходящим инструментом. И если ВАША задача решается
    методами базовой линейной алгебры (скалярное произведение векторов)
    или мат-статистики то и решайте ее так как удобно.

    Сама по себе идея например применять нейронные сети не плоха, но с точки зрения экономического расчета
    может быть полностью провальной ведь для хорошей НС - вам надо купить хостинг у гугла с процессорами
    тензоров например
    . А зачем это делать если вы и так решаете вашу задачу просто линейной логикой
    (набором if-else)?
    Ответ написан
    3 комментария
  • Как найти дубликаты новостей, полученных из разных источников?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Так-же как и в индексировании документов. Строится некое векторное представление документа.
    И потом похожие векторы - указывают на одинаковые (99.9%) документы. Методик векторизации
    много. В основном это токенизация слов и свертывание их к хешу.
    Ответ написан
  • Как преобразовать текст (эмбеддинги) в вектор фиксированной длинны?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Посмотри как в Spark/Databricks работает HashingTF https://spark.apache.org/docs/3.5.0/ml-features.ht...

    И еще посмотри ссылки от Feature Hashing https://en.wikipedia.org/wiki/Feature_hashing
    Ответ написан
  • Возможно ли обучить ии играть в 3д шутеры?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В геймдеве нету проблем сделать умного бота. И ИИ здесь вобщем-то не при делах. Бот на обычной линейной логике вполне себе симулирует интеллект. Я общался недавно на эту тему с одним тех-лидом. Он говорит - что в целом для игры это не нужно ИИ. Заказчик не видит никакого резона. Игрок щас пошел глупый. Ленивый. И иногда ему надо наоборот понизить планку требований. И сделать игру комфортной. Грубо говоря бот должен быть просто пушечным мясом. И это - хороший бот.
    Ответ написан
    Комментировать
  • Какая библиотека быстрее- tensorflow,pytoch,keras,matlab?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Matlab - это старое десктопное приложение. Оно создавалось для работы на конкретной рабочей станции
    (десктоп) и скорее всего не сможет использовать ресурсы облака или кластера. По оставшимся
    библиотекам tensorflow,pytoch,keras я не знаю. Я-бы почитал их стек технологий. Возможно они совместно
    используют общие библиотеки и тогда вопрос надо переформулировать или свести к общим зависимостям.

    Но в целом когда говорят о скорости - вопрос звучит обычно так - параллелится ли в облаке алгоритм и
    параллелятся ли данные
    . Если да - то только ваш кошелек ограничивает скорость.
    Ответ написан
  • Можно ли предсказывать несколько признаков одной моделью нейронной сети?

    mayton2019
    @mayton2019
    Bigdata Engineer
    А сколько стран и сколько марок? Ну допустим стран 10 и марок 20. Декартово произведение
    по ним дает 200 выходов. Но нам столько не надо. Объективно их меньше.

    Я-бы обучал не сочетания всех со всеми а конкретные пары { country, model } которые есть в выборке. Я думаю
    что их будет не много.
    Ответ написан
    Комментировать
  • Разработка ИИ для настольной карточной игры. Обучение?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Мне кажется что дешевле игру запрограммировать чем обучать ей бота.

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

    mayton2019
    @mayton2019
    Bigdata Engineer
    Данная задача решается с помощью анализа Фурье. Ну по крайней мере в науке и технике
    методу Фурье всегда доверяют поиск периодов и фаз на сигнале.

    А по составу спектра уже смотрят какие примеси есть. Например Чистый синус будет иметь один пик
    в части основной гармоники. Прямоугольные периодические импульсы - нечетные гармоники убывающие
    по определенному затуханию.

    Спектр представляет собой вектор комплексных чисел. Где есть частота и комплексная амплитуда.
    И вот этот спектр уже можно подавать на вход нейросети.

    Линию вида y=kx+b можно представить как очень низкую частоту (инфразвук) с большим периодом.
    Впрочем возможность детектировать такой инфразвук будет заложена у вас в самом методе Фурье.
    С какой частоты начнете анализ - то и получите.
    Ответ написан
  • Какие есть стандартные наборы данных для тестирования и сравнения нейронных сетей?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Если зайти в вики по ключевому слову MNIST - можно найти наборы для распознавания рукописного ввода. И еще от самой странчки MNIST еще 2 ссылки идут на аналогичные тестовые сеты.

    +UPD

    https://en.wikipedia.org/wiki/MNIST_database
    https://www.kaggle.com/datasets
    Ответ написан
    3 комментария
  • Как точность нейронной сети зависит от функции активации?

    mayton2019
    @mayton2019
    Bigdata Engineer
    В процессе обучения сигмоид очень важен т.к. он обеспечивает сходимость алгоритма. Направление грубо говоря.

    Насчет рабочего режима модели я не скажу. Но вроде-как нейросети очень толерантны к элементной базе. В 20м веке считалось что нейроны вообще нужно строить не на софте а в виде транзисторной логики. Или на биологических элементах (уж каких я не знаю).

    Практически если у тебя уже есть софт и модель то замена одно функции на другую в коде это дело одной
    минуты. Лямбду заменить. Или еще один класс унаследовать.
    Ответ написан
  • Почему моя нейросеть по распознованию цифр MNIST не работает?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Несколько соображений. Я думаю что для решения MNIST задач никакие огромные числа не нужны.
    НС идеологически способны работать на малом диапазоне плавающей точки. И функции активации
    (если таковые есть) обычно этому способствуют.

    Numpy в данном случае имеет преимущество вовсе не в больших числах а в операциях над векторами и матрицами.

    С твоей ситуацией низкого перформанса никто разбираться не будет. Нет ошибки - и нет ответа.
    Если медленная скорость - ищи гиперпараметр η (греческая буква) - он регулирует скоросить.
    алгортмов обратного распространения ошибки. (В разной литературе он может и по другому называться)

    Учись по курсам. Потому что учить тебя нейросетям здесь бесплатно точно никто не будет. И это
    технически невозможно в формате ответов.
    Ответ написан
  • Используют ли при обучении нейронных сетей генетические алгоритмы?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я думаю да. Более того. Если нас попросят перечислить конкретные алгоритмы генетики - то
    оказывается что мы ничего назвать не можем. ГА - это даже не алгоритм а это просто подход
    к селекции чего либо. Например когда вы выбираете в магазине железа себе материнку и
    проц и видяшку - вы решаете ГА. Вы выбираете. Делаете кроссовер (из двух удачных конфигураций
    берете части) и делаете мутации (берете и что-то меняете). И в конце выбираете по цене
    и по индексу бенчмарка что-то себе приятное. Лучшая хромосома.

    Тоже самое при обучении. Какую топологию сети взять? Сверточные. Больцманы. Хопфилда.
    Сколько скрытых слоёв? Какую функцию активации? Это все селекция и кросс и мутация.
    Тоесть вы будете как Мичурин среди яблонь ходить и выбирать лучшие образчики конфигураций
    чтоб совокупить их и родить новую сеть-мутанта.
    Ответ написан
  • В чем причина неэффективного обучения DQN-агента посредством python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Я не смотрел код. Но могу предположить следующее. Возможно сеть пытается выучить наизусть все
    пути ведущие к победе. Их порядка 8 тысяч.

    Нужно ввести в сеть искусственные подсказки. Как в шахматах пару функций оценки позиции которые
    говорят хорошая позиция или плохая получается на данном ходе. Например 2 крестика в ряд - это плюс один
    к хорошей позиции. С учетом возможности поставить крестик в свободное место.

    Я думаю даже в альфа-зеро такие вводили. Например учет камней.
    Ответ написан
    4 комментария
  • Как реализовать классификатор на датасете рукописных цифр?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Эффективность идеи зависит тоже от того в каком виде представлены данные. Если рукописные цифры - это квадратные картинки (как в наборе MNIST) то тогда решается просто. Считай расстояние Хемминга для всех картинок ко всем. Там где расстояние будет минимально - найден кластер картинок. Или класс символов похожих на букву. Далее можешь искать среднее. Завести вещественные значения для кластера. (Тут кстати тебя надо спросить у тебя 1-битные изображения или GrayScale?)

    Если цифры еще не размечены на атласе картинок и тебе предстоит еще и найти их место-положение - то это
    задача уровня FineReader/Tesseract. Это посложнее будет и идей и методов там сразу еще +10 штук.

    Поэтому опиши как выглядят исходные данные. Понял да? Идей целый вагон. Только не заставляй распылятся на пустяки.
    Ответ написан
  • Как обучить ИИ по своим данным?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Зачем транзисторы? Нужна сверх-задача.
    Например.

    Загрузил туда все данные по котировкам - и завтра разбогател.
    Или загрузил всю историю литературы - и завтра стал литературным гением.
    Или загрузил всю науку за последние 20 веков - и стал новым Ноббелевским лауреатом.

    Зачем унижаете возможности GPT?
    Ответ написан
    Комментировать
  • Как на основе данных с камеры, отправлять их в бд (python)?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Для отправки данных с камеры в базу данных в Python, вы можете использовать следующий подход:
    1. Получите данные с камеры: Используйте библиотеку OpenCV для получения данных с камеры. Вы можете использовать метод cv2.VideoCapture() для получения кадров с камеры.
    2. Подключитесь к базе данных: Используйте библиотеку Python для работы с базами данных, такую как sqlite3 или pymysql. Вы можете использовать метод connect() для подключения к базе данных и создания объекта подключения.
    3. Создайте таблицу в базе данных: Используйте SQL-запросы для создания таблицы в базе данных. Например, если вы используете SQLite, то можете создать таблицу следующим образом
    import sqlite3
    
    conn = sqlite3.connect('database.db')
    c = conn.cursor()
    
    c.execute('''CREATE TABLE frames
                 (frame BLOB)''')

    Вставьте данные в таблицу: Используйте SQL-запросы для вставки данных в таблицу. Например, если вы используете SQLite, то можете вставить данные следующим образом:
    import sqlite3
    
    conn = sqlite3.connect('database.db')
    c = conn.cursor()
    
    frame_data = # полученные данные с камеры
    c.execute("INSERT INTO frames VALUES (?)", (frame_data,))

    Закройте соединение с базой данных: Используйте метод commit() для сохранения изменений в базе данных, а затем метод close() для закрытия соединения.
    import sqlite3
    
    conn = sqlite3.connect('database.db')
    c = conn.cursor()
    
    frame_data = # полученные данные с камеры
    c.execute("INSERT INTO frames VALUES (?)", (frame_data,))
    conn.commit()
    
    conn.close()


    Это основной подход к отправке данных с камеры в базу данных в Python. Однако, конечный результат может отличаться в зависимости от ваших требований и используемой базы данных.

    Ответ написан
    5 комментариев
  • Как реализовать распознавание объектов на python?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Raspberry Pi - это игрушка для энтузиастов. Если вы на разработку модели потратили тера-флопы облаков с TPU то нет смысла такую модель запускать на детской конфигурации. Тем более что речь идет о рельсах. Это железная дорога. А железная дорога вполне себе способна оплатить нормальный десктоп. И я никогда не поверю в какую-то здесь в данном случае экономию.
    Ответ написан