2006 год, зима.Работаю в ООО «Топ-книга» то-ли менеджером распределительной логистики (распределяли товар по нашим магазинам), толь начальником этого отдела, уж не помню. Направление: открытки, игрушки и т.п.Вся ИТ система :) работала в «Шопсах», это такие Excel файлы с перечнем товаров, приходом и расходом. Все увязано формулами и макросами. Из-за ограничения тогдашнего экселя в 256 столбцов, файлы приходилось часто менять, заводить новые. И соответственно с тем уровнем аналитики и ИТ, формирование заявок в магазины конечно базировалось на их продажах/остатках, но в общем все делалось на глаз.Пример:«Продалось за месяц 5 красных мишек (осталось 2), давай закинем 3 красных и 4 желтых (красные кончились)… вроде хорошо пошли, а желтые это почти красные.» (На светофоре моргающий желтый, это почти зеленый J.)Или«Мало что-то видов открыток «С днем рождения бабушке»... накинем еще щепотку»Небольшое отступление.Такое тыканье пальцем в небо меня то же не устраивало и в результате была сделана EPR система на базе тех же Excel файлов… Да… да! EPR система (автоматическое формирование заявок в магазины + заявок на склад от поставщиков) была сделана в Экселе с макросами. Но попозже напишу как там все было.Вот и смотря на всю эту пестроту перед глазами.Возник в голове вопрос…?Когда менеджер делает заявку со склада в магазин новых позиций, то хотелось бы знать, как они будут продаваться.Но!Когда менеджер по закупу, заказывает у производителя товар, то хотелось бы +- знать, как он будет продаваться. И это даже важнее!И знать, как будет продаваться товар, нужно в виде цифры!Т.е. предполагать, Как будет продаваться товар, до его закупа у поставщика.Без экспертной оценки человеком.Не слабое такое желание :)В ту пору ввели такое понятие как коэффициент оборачиваемости. Т.е. отношение продаж в неделю к запасам в неделях. К= «Продажи в неделю»/ «Запас в неделях»Сам он показывал фактически товарный запас, а его динамика о «продаваемости» и о перекосах поставок/продаж конечно.Товарный запас, насколько помню, устанавливался не более 12-16 недель.(Если подумать с сегодняшнего времени, это дикость. Но логистика доставки тогда была такая логистика + видимо на верху было видней.)«К» считался в штуках, а не в рублях.Возникла гипотеза.Клиент ходит по магазину, ищет товар…Наш товар «цепляет только за глаз». Да, тебе нужна открытка или игрушка +- известного вида-содержания, но купишь то, что тебе понравилось.Стало быть, надо как то понять, что нравится людям.Поскольку под рукой была база данных об истории продаж около 50.000 или 80.000 позиций + их фото. Возникла мысль как то все это обработать и посмотреть.Копаясь в интернете, опять наткнулся на нейронные сети.Нашел простенькую программу NeuroPro 0.25, от какого-то института Российского.Покрутил ее, покопался...Возникло два вопроса.1. На что смотреть в картинках товара?2. В каком виде представить коэфф. оборачиваемости? Да я решил, что нейросеть должна выдавать прогноз по коэфф. оборачиваемости.Поехали.«На что смотреть в картинках?»Решил разбить картинку на 9 квадратов.В каждом квадрате усредняется цвет, попиксельно складываются его цифровые значения и делятся на кол-во пикселей. В итоге получается изображение из квадратов в оттенках серого.Т.е. на одну позицию товара получаем список из 9и значений цвета (цифры условные).1691528224413143194151132432360406324136.. и т.д.«В каком виде представить коэфф. оборачиваемости?»С помощью функции рациональная сигмоида F(x)=x/([x]+a) значения коэфф. оборачиваемости были засунуты в интервал 0…1.Обработка картинки велась в макросе в Excel… ну не программист я :). В чем разобрался, то и пользовал. Да в то время, в общем то многое работало так или иначе в Excel.По итогу получил базу, как сейчас говорят датасет из 50.000 или 80.000 (за давностью лет не помню) соответствий. «Девять чисел характеризующих картинку» и «Числа в пределах 0…1 характеризующих как хорошо эта позиция продается»В программе NeuroPro была создана трехслойная нейросеть в 9-ю входами и одним выходом.Некоторое время я ее крутил всяко разно, изменяя коэффициенты, веса нейронов, количество в слоях и т.д.В итоге, было взято около 10.000 обучающих примеров и сеть была на этом наборе обучена.Из запаса взяты несколько тысяч проверочных примеров. Сеть выдала прогноз по оборачиваемости товара, я его сравнил с фактом и получил достоверность прогноза 76%, для допуска +-0,1.Т.е. мог предсказывать «продаваемость» товара по дробной шкале от 0 до 1 (0- плохие продажи, 1-это супер продажи). На прогноз (да и на обучающие данные) накладывались конечно ошибки.Запас не всегда поддерживался в нужном объеме.+Качество картинок порой было не оч. хорошее.+В идеале конечно, надо было брать данные по конкретному региону/магазину (предпочтения могут быть разными).Все это делалось после работы и заняло коло двух месяцев. К сожалению, далее экспериментальных проб дело не пошло, начальство не поняло, что это дает. Обращался и в сами издательства, но и там не поняли.Да... надо было конечно с генеральным говорить, благо все в одном здании и довольно все демократично было.А может было еще не время?