Наткнулся на 1.5Gb датасет русскоязычных текстов для задачи классификации детская/взрослая литература. Там же приложена статья авторов с архива, где они пишут - "We also found that some features used to determine text difficulty positively affect the quality of age-based classification". Часто оценка сложности чтения текста представляет собой линейную комбинацию различных статистик текста и их отношений (среднее число слогов в слове, среднее число слов в предложении и т.д.) Почему бы не сделать еще один индекс удобочитаемости просто как классификатор детской/взрослой литературы? Без эмбедингов и только линейная модель. Я использовал spaCy (c модулем русского языка ru_core_news_lg). Оказалось достаточно пометить какие из токенов в предложении являются стоп-словам (is_stop), пунктуацией (is_punct), словами с заглавной буквой (is_noscript), посчитать долю глухих согласных от длины слова (prop. of voiceless cons. in a word), количество и долю гласных в слове (count/prop. of vowels in a word), количество звонких согласных в слове (count of voiced cons. in a word).
Дальше от этого берутся базовые статистики по каждому предложению, следом еще один слой статистик поверх предыдущих для каждого текста и из этого складывается линейная модель. Я ограничил формулу пятью слагаемыми, что бы она влезла в картинку и не выглядела слишком страшно. Даже с пятью слагаемыми линейка распознаёт взрослую и детскую литературу на тесте с точностью 0.76 (AUC = 0.83) и на картинке можно увидеть распределение этого кастомного индекса читабельности по каждому из типов литературы. Чем выше индекс, тем выше шанс, что текст детский и его легче читать.
Формулу сразу не просто интерпретировать, но кажется чем больше пунктуации, тем сложнее текст для чтения, а вот разнообразие стоп-слов и слов с заглавной буквой (имена и названия) наоборот упрощают чтение, как дисперсия слов с глухими согласными.
Датасет взят тут -> https://www.kaggle.com/oldaandozerskaya/fiction-corpus-for-agebased-text-classification
Формулу сразу не просто интерпретировать, но кажется чем больше пунктуации, тем сложнее текст для чтения, а вот разнообразие стоп-слов и слов с заглавной буквой (имена и названия) наоборот упрощают чтение, как дисперсия слов с глухими согласными.
Датасет взят тут -> https://www.kaggle.com/oldaandozerskaya/fiction-corpus-for-agebased-text-classification
Kaggle
RusAge: Corpus for Age-Based Text Classification
Russian fiction books' previews with age rating labels.
Выше я как-то писал про индийскую кухню, сегодня продолжение темы о еде. Сайт Food.com. Более полумиллиона рецептов по множеству категорий блюд с подробным описанием состава каждого из них. Среди характеристик описания: Calories (калории), Carbohydrate Content (содержание углеводов), Cholesterol Content (содержание холестерина), Cooking Time (время готовки), Fat Content (жирность), Fiber Content (содержание клетчатки), Preparation Time (время подготовки), Protein Content (содержание белка), Recipe Servings (количество порций), Saturated Fat Content (содержание насыщенных жиров), Sodium Content (содержание натрия), Sugar Content (содержание сахара).
Этого достаточно что бы предсказать любую из существующих категорий блюд с помощью простого лог.рега. с хорошим качеством. Из полученных линеек я извлек важность каждой характеристики и составил матрицу [категории_блюд x важность_фичей] дальше это отправляется в PCA. Интересно, что первые два вектора PCA разложения описывают более 54% дисперсии этой матрицы. На картинках можно видеть как меняются важности перечисленных фичей по осям PCA для ряда категорий блюд, а также между близлежащими категориями интуитивно прослеживается сходство. Положительный importance означает что увеличивая соответсвующую характеристику мы лучше можем предсказать конкретную категорию блюда, отрицательный наоборот - точность угадывания конкретной категории возрастает, если уменьшать данную фичу.
Датасет взят тут -> https://www.kaggle.com/irkaal/foodcom-recipes-and-reviews
Датасет взят тут -> https://www.kaggle.com/irkaal/foodcom-recipes-and-reviews
Kaggle
Food.com - Recipes and Reviews
Data on over 500,000 recipes and 1,400,000 reviews from Food.com
Открыл для себя правило - размер датасета обратно пропорционален потраченному на него времени. Увидел маленькую табличку с 239 видами мороженного (239 строк) от 4 брендов (Ben & Jerry's, Breyers, Haagen-Dazs, Talenti), с более чем сотней колонок - ингредиенты состава мороженного, и средней оценкой пользователей с сайтов брендов. Первая мысль - попробовать все возможные идеи анализа которые смог вспомнить, ведь датасет маленький и все будет работать быстро. Этот процесс обманчиво затягивает. Месяц периодических подходов к табличке заканчивается почти тем же, чем и начинался.
Бинарная часть датасета (состав мороженного), сжатая с помощью логистического PCA, прекрасно показывает что бренды сильно различаются по используемым ингредиентам. Так Ben & Jerry's можно почти со 100% идентифицировать по сочетанию жидкого сахара и каррагинана, Breyers чаще остальных использует камедь и сыворотки (и имеет худшие отзывы), Haagen-Dazs предпочитает использовать яичные желтки, гуару и также жидкий сахар, а Talenti - декстрозу (глюкоза полученная из кукурузы) и бобы рожкового дерева. Один из ключевых факторов хороших отзывов - содержание мальтита (подсластитель из крахмала), а вот другой подсластитель - ацесульфам всегда ведет к снижению оценок пользователей.
Датасет взят тут -> https://www.kaggle.com/tysonpo/ice-cream-dataset
Датасет взят тут -> https://www.kaggle.com/tysonpo/ice-cream-dataset
Kaggle
Ice Cream Dataset
Flavors and reviews from Ben & Jerry's, Häagen-Dazs, and more
Скоро состоится вручение статуэток Оскар. В прошлом году, проведя анализ претендентов и победителей главной награды Академии киноискусств за прошедшие 20 лет, я предложил один из вариантов предсказания победителя по проходящим перед вручением Оскара менее заметным кинопремиям. Настало время сделать прогноз и дождаться результатов. И так, в номинации Best Picture участвуют: 'Девушка, подающая надежды', 'Звук металла', 'Земля кочевников', 'Иуда и чёрный Мессия', 'Манк', 'Минари', 'Отец', 'Суд над чикагской семеркой'.
Forwarded from Data Funk
У тебя получалось угадать какой фильм станет лучшим на очередной премии Оскар? Часто решение по главной награде Академии киноискусств многих удивляет, но это только если не обращать внимание на предшествующие кинопремии, проходящие за 1-2 месяца до главного события мира кино. Например номинация Best Picture от Phoenix Critics Circle, PCC Award из Аризоны за свои 7 лет существования совпала 5 раз с Лучшим фильмом Оскар. Не так уж и плохо, правда? Ниже ты увидишь премии и других ассоциаций кинокритиков. Просто сложи числа тех номинаций где уже выйграл твой любимый фильм, и если результат превысил 100 баллов то у него есть не плохие шансы забрать главную статуэтку Академии киноискусств. Начиная с 2000 года эта формула взяла 20 победителей из 21 прошедших, предложив 28 претендентов.
Датасет взят тут -> https://www.kaggle.com/iwooloowi/film-awards-imdb
Датасет взят тут -> https://www.kaggle.com/iwooloowi/film-awards-imdb