Немного про то про сё

Автор: wayerr

Так как я немного уволился, и вскоре буду вынужден искать работу, а старые немолодые прогеры не уверен что так уж нужны. Чай не студенты. То было решено погрузиться в нейросети (с точки зрения программиста и всё такое). Дабы немного приблизиться ко всяким модным веяниям - тут и в резюме можно что-то написать и навык немного прокачается, а то на старой работе я немного заплесневел от однобразности.

Так вот для примера я решил потыкать нейросетями в книжки. Не в генерацию текста, конечно (там и навыка моего не хватит и железо нужно ого-го какое). А в задачу поиска похожих книг.

С виду задача простая - берётся список пользователей в качестве строк, список книг в качестве столбцов, а на пересечении лайки. И путём нехитрых манипуляций можно выяснить какую книгу пользователи считают похожей на какую.

Так как список лаек мне достать негде, то я взял что попалось под руку - базу данных фильмов (movielens датасет). Взял простенький пример из документации к keras и-и-и...

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

С одной стороны, скорее всего я хреново натренировал нейросеть (пробовал и линейные эмбединги и более занятные варианты). Но с другой стороны это достаточно логичная тенденция.

Смотрите: у нас есть пользователь, он прибегает на сайт и активничает на нём не всё же время, а пока есть интерес. Сколько длится интерес в среднем у пользователя? А ведь пользователя может что-то отпугнуть на сайте, или отвлечь в реальной жизни.

Это интересный вопрос статистики. Но вряд ли средний пользователь будет торчат на сайте (оценок фильмов или книг) очень долго - десять лет. Пользователей которые сидят на сайте десятками лет не так много.

Получается, что оценки одного пользователя ограничены не только по его вкусу, но ещё и по времени. А ведь большинство ещё и подвержено рекламе (или сарафану), что только усиливает популярность и так популярных произведений и повышает "похожесть" с точки зрения такой системы.

Теоретически можно попробовать подкорректировать похожесть, вводя какие-то коэффициенты с популярностью (я рассуждал как-то в блоге на эту тему). Но пока руки не дошли. Тем более, что протестировать на примере АТ подобную штуку никак не получится — базу лаек то взять негде. 

Зато на примере АТ можно попробовать взять и потренировать нейростеь на похожесть книг по описанию (и обложкам). Нетрудно заметить, что топовые книги имеют сходные описания. А значит если нейросети удастся "уловить" эту похожесть, то можно как минимум попросить у неё книги "непохожие" на топовые, но при этом похожижие на некий запрос. 

Будет ли такое работать - сказать сложно. Более того это требует создания нейросети которая принимат на вход гетерогенные данные. Что с одной стороны вполне реально, с другой несколько замысловато. Особенно если ещё и обложку учитывать (а хочется).

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

Параллельно в книге поднимались разные нескучные темы. Например, я узнал о существовании теории универсальной грамматики" (человеческого языка), коя также утверждает, что вроде как структура языка возможно заложена генетически и в мозге есть некие характерные структуры, и всё это как-то связанно. Тут же стало известно о существовании языка пирахан (на котором где-то в дебрях амазонии разговаривает одноимённое племя) и вот этот язык, вроде как не обладает рекурсией (это под сомнением), не имеет числительных. А ещё может быть закодирован музыкой или свистом. Уже из чтения про этот язык, я наткнулся на теории о том чем же отличаются коммуникативные системы животных (фактически языки животных) от человеческих и что эта грань тот ещё вопрос (особенно когда лингвисты находят очередной примитивный язык).

Эти штуки про язык - весьма интересные штуки, которые можно встроить в какую-нибудь фантастическую или фентезиную систему. Жалко только что писать из-за этого всего (и много другого) некогда.

К слову, ещё о нейросетях: недавно (месяц или два...) в новостях писали, что группа исследователей натренировала нейросеть, которая смогла по МРТ мозга распознавать слова которые думает испытуемый. Понятно, что там точность далека от идеала, а громоздкость системы поражает воображение. Но, как вы понимаете это (бесконтактный нейро интерфейс на нейросетях) тоже подходит для фантастики уже ближнего прицела.

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

Это разделение как-бы уже создаёт некие замысловатые сюжетные ситуации.

+87
281

0 комментариев, по

2 325 425 206
Наверх Вниз