На прошлой неделе я начал принимать Fast.ai Практическое машинное обучение для кодировщиков курс.
Я научился построить современный классификатор изображения примерно за час, что было удивительным! Затем я начал пытаться применить то, что я узнал для своих собственных проектов. Вот что случилось.
Проект № 1 – Адценчик Thumbnail YouTube
Моя первая попытка проекта состояла в том, чтобы построить классификатор, который мог бы судить о качестве миниатюр видео на YouTube.
Что -то подобное было бы так круто! Представьте себе, что вы можете подключить миниатюру для вашего недавно созданного видео на YouTube и вернуть рекомендации о том, как вы можете его улучшить.
В качестве первого шага я попытался построить классификатор, который мог бы распознать хорошие миниатюры.
Я собрал кучу миниатюр на YouTube и оценил, сколько просмотров в день получают видео. Я назвал видео как получение «Менее 100 просмотров в день» и «Более 100 просмотров в день» и попытался посмотреть, насколько точной была полученная модель.
У меня было ощущение, что этот тест не сработает очень хорошо … Есть много факторов, кроме миниатюры, которые влияют на количество взглядов (# последователей + слава YouTuber) И я не был неправ. Выступление было мрачным.
Модель подумала, что эта миниатюра получит менее 100 просмотров.
Это имеет смысл, хотя … Вероятно, это так, что миниатюры (хотя и важны) не имеют огромного значения.
Честно говоря, вы держу пари, вы могли бы сделать действительно хорошую модель для прогнозирования количества представлений. Просто регресс с подсчетом вида против подписчиков, и вы хороши. Вот почему профессионалы на YouTube всегда говорят «как и подписаться»!
Итак, проект потерпел неудачу?
Точно нет! Весь смысл работы (на данном этапе) состоит в том, чтобы выяснить, какое машинное обучение способно + пройти шаги, необходимые для обучения модели. Я определенно сделал все это.
Этот проект научил меня Meachanics of Deep Leraning + Я начал получать более интуитивно понятное ощущение того, какие проблемы у меня будет успешная модель или бороться … в данном случае модель боролась, потому что у нее не было информации, которой она должна была сделать. здравый смысл.
Проект № 2 – детектор китайского языка
Моя вторая попытка вызвала создание модели, которая может слушать людей, говорящих, и классифицировать звук как «английский» или «китайский».
Для этого я взял аудиофайлы (которые хранят аудиоданные как «временные ряды» амплитуд-время)… и преобразовали их амплитуду со временем в спектрограммы (изображения частот, присутствующих в звуке во времени).
Это ->
Был преобразован в это ->
Гипотеза заключалась в том, что модель машинного обучения сможет узнать различия между английскими и китайскими аудиофайлами и сможет выбрать, какой из них был …
Производительность модели в этом проекте была интересной. Это довольно хорошо справился с классификацией файлов, которые были частью первоначального обучающего набора.
Но когда это на самом деле стало предсказать образцы того, что я говорил на мандарин, это было довольно ужасно.
По сути, обучение и тестирование этой модели были … разочаровывающими.
Есть так много переменных, которые могут вызвать проблемы для такой модели.
- Исходное кодирование аудиофайла
- Чистые аудиофайлы или нет
- Обработка аудиофайлов в спектрограммы
- На каких функциях модель поднимается – (есть ли у меня конкретные вокальные характеристики, которые будут означать, что модель всегда выбирает английский для меня ???)
Список можно продолжать.
После некоторого исследования я узнал, что CNN (сверточные нереальные сети) могут быть не лучшей сетью, которая применяется к такой проблеме, поскольку данные на изображениях более повторяются, чем фиксированные.
Я Нашли некоторых исследователей, которым удалось решить эту проблему, используя RNNS (Нейронная сеть, в которой сеть основывает его прогноз на данных, которые поступили из предыдущей части данных) вместо CNN. Эти сети хороши для подобных задач, потому что сеть скажет… », учитывая, что я только что увидел эту форму, следующая форма должна быть… бла, если бы это был английский».
Поэтому я думаю, что решение этой проблемы немного за пределами моего нынешнего уровня квалификации, но я не сдаюсь! Я поставлю это на заднюю горелку и снова заберу его, когда узнаю немного больше.
Так что же я узнал из этого проекта?
- Многое о обработке сигнала и Быстрое преобразование Фурье (самый удивительный и крутой математический инструмент)
- Что CNN борются, когда образец им просят классифицировать, не ясна и очевидно
- Что я бы, вероятно, учился быстрее, если бы я работал с наборами данных и проблемами, где я вижу ответы других людей (может быть, конкурсы?)
Сделав шаг назад, зачем узнать об этом?
Честно говоря, после недели работы с этой технологией я поражен!
Я еще не вижу точно Как Этот материал изменит мир Но я не сомневаюсь, что это изменится … все.
Я держу пари, что с немного большим опытом я смогу создать несколько полезных инструментов. Посмотрим. Пока это определенно интересно, и я буду держать вас в курсе, так как узнаю больше.
Оригинал: “https://dev.to/schlende/my-first-two-deep-learning-projects-454p”