Разминка для ума. Список рекомендованных файлов #753510


#0 by Dorzh
Итак, исходные данные. Есть таблица загрузок всех файлов за несколько лет: ID файла, дата-время, пользователь. Надо пользователю выдать рекомендации на базе этой таблицы после того, как он скачал очередной файл. Необходимо получить 10 id рекомендованных файлов. Как составить оптимальный запрос или серию запросов? Заодно посмотрим, остались тут программисты или нет.
#1 by Dorzh
Дело, естественно, происходит на Инфостарт.
#2 by donoteat
" ID файла, дата-время, пользователь. " и что это за бодяга ? как на основе этого гов...на составить какую-то рекомендацию ?
#3 by Злопчинский
Смотреть в сторону "что чаще всего покупают вместе с таким товаром" "Пользователи которые качали такой файл как и вы качали также файлы" Ну и статус юзверя наверно важен Незачем булгахтерк предлагать инструменты разработчика
#4 by donoteat
выбрать всех пользователей с условием по id этого файла посмотреть у кого больше закачек и выбрать временной диапазон внутри которого происходили закачки, после уже выбрать рекомендованные файлы не обязательно в таком случае, что наберется все 10 но зато популярные получите.
#5 by Dorzh
Статус не важен, важно статистика, что скачивали. Это примерно как Apple Music тебе предлагают послушать музыку на базе того, что ты уже послушал.
#6 by donoteat
а так все таки есть еще параметры какие-то ? а не холодные данные типа id data user
#7 by RomanYS
для каждой пары файлов посчитать скачавших пользователей, для каждого пользователя подобрать "самые парные" файлы
#8 by Dorzh
больше данных нет. Остальные данные можно взять из своего опыта работы с ИС.
#9 by donoteat
"для каждой пары файлов посчитать скачавших пользователей, для каждого пользователя подобрать "самые парные" файлы" и что будет ? долго искать придется... dorzh давай в студию кусок своего лога или таблица, что у тебя там... только дай побольше что бы можно было как-то замерить скорость обработки...
#10 by Dorzh
здесь очень много допущений. какой диапазон? сколько файлов? id date user какой запрос то? пускай в синтаксисе SQL и в 1С хотя бы
#11 by Dorzh
таблица id date user что еще надо то?
#12 by donoteat
дай данные, проверим. у меня где-то под рукой sqllite. Запрос на ней попробую запилить т.к.  синтаксис приближен к общепринятому.
#13 by donoteat
а да пох сейчас сделаю сам,
#14 by Dorzh
Для примера, вот кусок лога 6828996    17.09.2015 14:53:04    Закрытие ошибок партионного учета    Анализ ошибок партионного учета или Закат солнца вручную    Да    Akvals 6828994    17.09.2015 14:51:56    ТТН    Внешние печатные формы ТОРГ-12, Счет-Фактура, 1-Т и ТТН для УТ 11    Да    tiger 6828993    17.09.2015 14:51:32    Архив с обработкой и xsd схеммой    Redmine - библиотека для интеграции с 1с    Да    shtyk80 6828992    17.09.2015 14:51:26    1-Т    Внешние печатные формы ТОРГ-12, Счет-Фактура, 1-Т и ТТН для УТ 11    Да    tiger 6828991    17.09.2015 14:50:39    ОбработатьДанныеПервичныхДокументов.epf    Заполнение регистра сведений "ДанныеПервичныхДокументов"    Да    Lizi603 6828990    17.09.2015 14:50:22    Внешний отчет    Внешний отчет по наличию счетов-фактур выданных    Да    serg999 6828989    17.09.2015 14:49:55    ПочасовыеПродажиЧекККМ.erf    Почасовой анализ продаж по чекам ККМ    Да    IBRAGIM551 6828988    17.09.2015 14:49:34    Выгрузка и загрузка данных XML с отбором    Выгрузка и загрузка данных XML 8.3 с отбором    Да    Neco 6828987    17.09.2015 14:48:52    Просмотреть подписки на события для объектов метаданных    Подписки на события объектов Метаданных    Да    serg999 6828986    17.09.2015 14:48:44    ВыгрузкаЗагрузкаJSON_1.2.1.epf (8.3+)    Универсальная выгрузка/загрузка данных для отличающихся конфигураций (JSON, Такси+ОФ)    Да    sarh 6828985    17.09.2015 14:48:41    УНФ_СФ_ВЫДАННАЯ_2012_1137_    Внешняя печатная форма Счет-фактура для УНФ 1.4    Да    Eurosoft 6828984    17.09.2015 14:48:24    Акт выполненных работ (оказанных услуг)    Акт выполненных работ (оказанных услуг) для Управления небольшой фирмой, ред. 1.4    Да    Eurosoft 6828983    17.09.2015 14:46:06    Сравнение остатков регистров учета ТМЦ    Сравнение остатков регистров учета ТМЦ    Да    Akvals 6828982    17.09.2015 14:43:01    Обработка расхождений по партиям(УУ)    Корректировка партий по управленческому учету в соответствии с остатками товаров на складах (УПП, возможно УТ)    Да    Akvals 6828981    17.09.2015 14:42:23    Различие партий и остатков по оптовым складам    1С8.1 УТ, УПП Различие партий товаров и остатков по складам    Да    Akvals 6828980    17.09.2015 14:42:02    Акт сверки взаиморасчетов по нескольким договорам.erf    Акт сверки взаиморасчетов по нескольким договорам    Да    18101986 6828979    17.09.2015 14:41:39    Загрузка товаров с Яндекс.Маркет    Загрузка товаров с Яндекс.Маркет    Да    agro23 6828978    17.09.2015 14:41:33    ГрупповаяОбработкаЗаменаПоРеквизиту    Групповая Обработка Справочников И Документов (v.3.4) - замена реквизита выражением, удаление объектов - новая версия    Да    Sadir 6828977    17.09.2015 14:41:22    Перенос данных из УТ 10.3 в УТ 11    Перенос данных из УТ 10.3 в УТ 11.1    Да    selinserg
#15 by Garykom
мне нравится, настоящий ба...бизнесмен бесплатно хочет чтобы проблему решили... да еще и сами навязывали... а методы то какие ;) "Заодно посмотрим, остались тут программисты или нет."
#16 by Garykom
сразу вижу 2 метода: 1-й на основании анализа наименований файлов 2-й на основе скачиваний других пользователей
#17 by Смотрящий
Бюджет какой ?
#18 by Dorzh
Наименования надо JOIN вытаскивать. В таблице только ID записи, ID файла, ID юзера и Date в unix формате.
#19 by Dorzh
Сколько надо?
#20 by Jump
На базе этой таблицы составить рекомендацию сложно. Разве что анализировать имя файла, но релевантность будет низкая. Чтобы выдавать нормальные рекомендации, надо в первую очередь анализировать самого пользователя - что он качал, что он читал, и систематизировать эту информацию. Т.е например пользователь такой_то интересуется тэгами - администрирование, 7,7, бухгалтерией. Потом нужно систематизировать все файлы - к чему они относятся, и рекомендовать пользователю только те файлы что предположительно лежат в сфере его интересов. Плюс надо учитывать время - информация постоянно меняется и теряет актуальность.
#21 by Garykom
пройтись однажды по названиям файлов и с ID файла что то замутить хеширование какое к примеру
#22 by Garykom
но начать можно с простейшего "с этим файлом скачивают еще обычно..." т.е. сделать пересечения групп скачанных одним пользователем файлов далее рейтинг и будет еще табличка где для каждого ID файла будут N (глубина вложенности) ID других файлов сопоставлены
#23 by Dorzh
теги есть в публикациях, есть рубрикаторы, есть куча дополнителных классификаторов, на базе них мы строим рекомендации внутри публикации. Но это редакторы вручную разносили. Они могут ошибиться, тегов не хватает, мир более разнообразен.Наименования не полные, некорректные. Все это надо отбросить. Нужен анализ чисто по поведению пользователя. Грубо у нас есть масса не структурных элементов, но среди них пользователь нашел то, что ему нужно, иначе бы он не скачал. На базе этой информации надо дать рекомендации новому пользователю.
#24 by Pers0naGrata
#25 by Смотрящий
20
#26 by Garykom
+ но все равно это нужно заранее/периодически делать на лету полный анализ не успеть сделать: 1. Пользователь скачал файл с ID1 2. Ищем всех пользователей которые скачали этот же файл 3. Смотрим все файлы которые они скачали, каждому файлу в индекс и +1 если пользователь его скачал 4. Сортируем индекс по убыванию 5. Берем нужное число файлов первых
#27 by Garykom
там усложненный вариант с дробными коэффициентами
#28 by Dorzh
Вот именно, сейчас мы попали в "банановую ловушку"
#29 by Dorzh
Будет тогда рекомендован "банан"
#30 by Pers0naGrata
Там же написано как ее преодолеть.
#31 by Dorzh
спасибо, полезная статья!
#32 by Garykom
выкидываем бананы (файлы которые качают все и так) и все ))
#33 by Фокусник
"Заодно посмотрим, остались тут программисты или нет." В штате ООО "Инфостарт" поищите ;)
#34 by Dorzh
пока предложили бананы, это лучше чем ничего, но этого недостаточно
#35 by Dorzh
будем искать где только возможно, в любом случае от более точных рекомендаций все будут в выигрыше
#36 by Garykom
попробовать корреляционный анализ сделать точками зависимость каждого файла от другого причем числовые ID файлов заюзать и далее для каждого файла будут "ближайшие соседи"
#37 by donoteat
много букв в общем я хз как там топ выбрать есть короче сделал так данные свои вбил так что вот. Дрянь конечно полная получилась ... insert можно не смотреть... сразу вниз до запросов. DROP TABLE ShitFromDorzh; CREATE TABLE ShitFromDorzh (id INTEGER PRIMARY KEY, item_id TEXT, downloadDate DATETIME, userName TEXT); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828996', DATETIME('2015-09-17 14:44:41'), "vasya"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('1324321312313232131', DATETIME('2015-09-17 14:44:42'), "dsasya"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828994', DATETIME('2015-09-17 14:44:43'), "vadhfghasya"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828993', DATETIME('2015-09-17 14:44:44'), "vasydsa"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('1324321312313232131', DATETIME('2015-09-17 14:44:45'), "vasydads"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828991', DATETIME('2015-09-17 14:44:46'), "vasyaddd"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828990', DATETIME('2015-09-17 14:44:47'), "vasyddssa"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828989', DATETIME('2015-09-17 14:44:48'), "vasyddsw2sda"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828988', DATETIME('2015-09-17 14:44:49'), "vashgfhya1"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('1324321312313232131', DATETIME('2015-09-17 14:47:11'), "vahgfsya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828986', DATETIME('2015-09-17 14:47:12'), "vasya3"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828985', DATETIME('2015-09-17 14:47:12'), "vasya4"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828984', DATETIME('2015-09-17 14:47:14'), "vasya5"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828983', DATETIME('2015-09-17 14:47:15'), "vasyhga6"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828982', DATETIME('2015-09-17 14:47:44'), "vasya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828981', DATETIME('2015-09-17 14:47:47'), "vasya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828980', DATETIME('now'), "vasya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828979', DATETIME('now'), "vasyadd2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828978', DATETIME('now'), "vaddsya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828977', DATETIME('now'), "vasya11"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('1324321312313232131', DATETIME('now'), "vasya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828975', DATETIME('now'), "vasya7"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828974', DATETIME('now'), "va11sydda2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828973', DATETIME('now'), "vasya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('1324321312313232131', DATETIME('now'), "vasya6"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828971', DATETIME('now'), "vasya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828921', DATETIME('now'), "vas33ya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6828911', DATETIME('now'), "vasya26"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('68289281', DATETIME('now'), "vasya5"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('1324321312313232131', DATETIME('now'), "vasya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('68282981', DATETIME('now'), "vasya1"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('1324321312313232131', DATETIME('now'), "vasya2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('68222118981', DATETIME('now'), "vasysda2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('68221118981', DATETIME('now'), "vasyhga2"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('6822228981', DATETIME('now'), "vafsya3"); INSERT INTO ShitFromDorzh (item_id, downloadDate, userName) VALUES ('68289225481', DATETIME('now'), "vasya3"); SELECT * FROM ShitFromDorzh; SELECT item_id FROM ( SELECT * FROM ( SELECT userName FROM ShitFromDorzh WHERE item_id = '1324321312313232131' AND downloadDate <= datetime('now') AND downloadDate >= datetime('now', '-12 months')) as lastData JOIN ShitFromDorzh AS Shit ON Shit.userName = lastData.userName) WHERE item_id != '1324321312313232131' GROUP BY item_id;
#38 by donoteat
вот скриншот , что бы у себя не запускать
#39 by donoteat
внизу отобранные значения
#40 by itlikbez
В данном случае самым оптимальным будет ГСЧ, с небольшой настройкой распределения по времени (так, чтобы более свежее предлагалось с большей вероятностью).
#41 by Лодырь
Хэштеги скаченных разработок нам разумеется доступны?
#42 by Dorzh
можно вытащить
#43 by Лодырь
Тогда, имхо, достаточно стандартная задача (не для 1Сников). Для ума тут особо нечего. Просто нужен хороший полноценный проект по созданию рекомендательной системы.
#44 by 13_Mult
Это подойдет
#45 by Dorzh
Для решения этой задачи Сергею уже написал
#46 by Dorzh
Но теги могут быть ошибочные, неполные, на совести автора и редактора. Они не дают правильной картины.
#47 by Лодырь
Никто не спорит, но это лучше чем семантический анализ названия разработки. Для функции похожести теги явно выглядят преимущественно.
#48 by Dorzh
Название разработки тоже может быть неполное. Только из текста разработки и комментариев пользователь понимает, что это то, что ему нужно. И принимает решение о загрузке файла. Публикации, которые он смотрел и не скачал наоборот надо вычесть, так как он понял, что они ему не подходят для решения его задачи. В идеале мы должны ему предложить файл предугадав его желания. Теги могут помочь с определением платформы, конфигурации. В принципе, при каждой загрузке мы можем складывать в его профиль данные о платформе и конфигурации, и потом уже накладывать фильтр на выборку, даже если мы пренебрегаем проблемой "холодного старта".
#49 by Лодырь
Холодный старт решается введением 2 рекомендателей: 1. специально для этого пользователя, с учетом его предпочтений. 2. исходя из общей популярности решений (например количество скачиваний или лайков с увеличением веса свежих публикаций) В таком случае, при отсутствии рекомендаций от 1го рекомендателя, мы просто получим список рекомендаций от 2го. При наличии же личных рекомендаций, можно смешать рекомендации 1го с топовыми рекомендациями 2го. Возвращаясь, к тому что надо вычитать публикации которые не скачались и добавлять которые качались. Ну это вы исходите из странной предпосылки, что человек получив 1 раз инструмент для решения его задачи, будет качать другой инструмент для этой же задачи Зачем? он ее уже решил. Тут вообще есть некий парадокс, потому что качать инструменты для решения хорошо известной задачи пользователь врядли будет, скорее ему потребуется чтото новое. А вот смотреть статьи по любимой тематике - будет.
#50 by Dorzh
Что-то активности мало, призовой фонд надо объявить
#51 by Лефмихалыч
я бы почитал мануал про АнализДанных, а потом применил бы все начинатанное, чтобы велосипедов не изобретать.
#52 by Лодырь
мануала маловато будет ) даже вот такого курса будет достаточно лишь для того чтобы начать ориентироваться в предмете
#53 by rs_trade
я вот тоже что то не понял на основе чего рекомендацию давать. должны быть еще колонки с данными для анализа.
#54 by Лефмихалыч
подозреваю - на основе "с этим товаром часто берут еще и вот эту херню"
#55 by Лефмихалыч
я больше, чем уверен, что большая книга "профразработка" мало того, что дает достаточно информации для того, чтобы разобраться в сабже, но и задача там такая же прямо на страницах взята и решена.
#56 by Гёдза
По какому критерию рекомендовать уже было? или в этом и есть вопрос?
#57 by Гёдза
У программ обычно не бывает: вместе с этой обработкой скачивают и вот эту
#58 by ДенисЧ
бывает
#59 by Гёдза
Так если у всех банан, а у него еще нет, то рекомендовать банан в первую очередь нужно
#60 by Лефмихалыч
как раз вот эта парадигма, в отличие от этой , на софт-то и не распространяется, как по мне.
#61 by Лефмихалыч
хотя можно проверить же. Написать пукающую обработку и выложить на главной. Почему пукающую? Потому, что такой точно ни на инфостарте, ни на втором сайте с обработками еще нет.
#62 by Domovoi
Главное сделайте появление этой фигни только после установки галочки в профиле и чтоб по умолчанию этого не было:)
#63 by Гёдза
что за второй сайт?
#64 by Ненавижу 1С
во, по мотивам изобрел тоже самое: Рекомендуемый клиенту товар, который он ранее не покупал. Корзина покупателя – ассортимент товара, который покупал клиент. Коэффициент схожести клиентов – количество товарных позиций, присутствующих в обеих корзинах двух покупателей. Показатель приоритетности товара для клиента – сумма коэффициентов схожести этого и всех остальных клиентов, покупавших этот товар. Рекомендуемый клиенту товар – товары с наибольшим показателем приоритетности, которые ранее клиент не покупал.
#65 by Гёдза
Это ты изобрел
#66 by ЧеловекДуши
Индексы и только индексы спасу "отца демократии"... А вообще странный подход, накидать в кучу Хлам, и потом думать, как его теперь смотреть :) ... Обычно думал, что придумывают структуру данных, для оптимального просмотра и собирания статистики. Готовят промежуточные данные для быстрой статистики.
#67 by gigi789
а зачем вы всем рассказали, что я у вас обработку скачивал, все больше ни ногой.
#68 by ЧеловекДуши
Для этого нужны класификаторы товара. Код, номер да хоть что-то, но то что может понять машина, а не человек :)
#69 by ЧеловекДуши
Да нечего, я не скачивал, нам этого не нать :)
#70 by Лефмихалыч
лысый такой
#71 by Смотрящий
Генератором идеи, в данном случае, выступает не г-н Цыденов.
#72 by Dorzh
Да, не осталось здесь программистов
#73 by Злопчинский
Наконецто саппорт обратил внимание на то что надо всю эту кучу мусора файлового разгрести хоть както
#74 by Dorzh
уже разгребли 30тыс публикаций, 4 редактора работали и сортировали весь год. Но редакторы это люди, им свойственно ошибаться. Здесь же мы хотим построить анализ без человеческого фактора, а на базе поведения пользователя. Это совершенно другой подход. Потому что публикация 'обмен из УТ в ТИС через xml', относится к обмену, к УТ, к ТиС и к XML. Что искал пользователь? Надо анализировать. Что ему предложить?
#75 by Принт
Ммммм. Посмотреть что качают другие, скачавшие этот файл, убрать уже скачанное данным юзером, отсортировать по частоте. Домешать самые частоскачиваемые, если нет 10-ти.
#76 by Dorzh
выкинуть бананы нельзя, их очень много. Примерно такую картину мы видим сейчас, с алгоритмом рекомендации банана: При скачке любого файла, анализируя, кто качал, что они качали в топ 10, исключая, что уже качал. С этим файлом также скачивают: Подсистема "Инструменты разработчика" v3.41 Универсальный журнал документов для 1С 8.1, 8.2 и 8.3 (3.20.1.8) Универсальная консоль отчетов Обработка для тестирования внешних печатных форм для конфигураций 1С: Предприятия 8.2/8.3 с использованием БСП (Управляемое приложение) (версия 1.2.9) Запросник [8.2] Управляемая консоль запросов (только управляемые формы) Установка автоматического архивир ования д ля 1С 8.1 и 8.2 (4.0.4.2) Интерактивная оборотно-сальдовая ведомость 2.0 Пример генерации штрих-кода для документов, справочников и его расшифровка Хххххххххх - раскраска кода 1С:Предприятия и Delphi (5.8.1.2) С небольшими вариациями повторяется.
#77 by Garykom
Если хочется то эта задача нерешаема в принципе. Потому что пользователь сначала одно хотел, потом другое, затем скачал вообще 3-ю случайную вещь. Нужно как то разделять что и зачем ищем. Нечто вроде того что яндекс, гугл и прочие поисковики используют. Чтобы понять что хочет (но не может сказать/объяснить словами нормально) пользователь. Просто смотря переходы и время проведенное на ссылке. Т.е. да нужно минусовать файлы на описания (с картинками) которых перешли но не стали качать. Разделять по времени скачивания (то что пользователь качал год/месяц назад это наверно не тоже самое). Вообщем классическая задача для нейронных сетей и прочих нечетких алгоритмов. Еще можно все таки использовать на основе вектор-признаков
#78 by Garykom
+ Да и если использовать последний метод то "с этим обычно заодно качают" будет лишь одним из признаков, не самым важным. Не лучше ли сделать на ресурсе удобный функционал для работы консультантов? С которыми можно пообщаться онлайн и они зададут уточняющие вопросы и на основе посоветуют. Нечто вроде специализированного по каталогу ИС
#79 by Dorzh
не пались, мистяне не качают файлы с ИС
#80 by Dorzh
+ точнее - качают, но стесняются этого
#81 by Принт
>Т.е. да нужно минусовать файлы на описания (с картинками) которых перешли но не стали качать. Разделять по времени скачивания (то что пользователь качал год/месяц назад это наверно не тоже самое). Почему эти файлы хуже тех, которые даже не глянули?
#82 by Принт
Попытки думать за рой до добра не доводят.
#83 by Garykom
ищу выгрузку из УТ11 в БП3... чем мне поможет выгрузка из УТ10.2 в БП2 ? которую пользователь(ли) тоже скачивали только давно
#84 by Принт
я с планшета - неудобно. В цитате захватил лишнего.
#85 by Смотрящий
А сколько редактор за работу получает ?
#86 by Принт
тем не менее, лучше целиком ориентироваться на реальные скачивания.
#87 by Принт
Еще имеет смысл в выборку домешивать случайные публикации, кроме явно провальных.
#88 by Сияющий в темноте
Не хре у пользователей стадный инстинкт вырабатывать я понимаю что вам выгодно чтобы больше качали НХЛ при вашем решении пользователи будут качать ненужную фигню причём тем больше чем больше ещё скачают нужно делать четкие рамки тематики и предлагать аналогичные по тематике решения чтобы если пользователь что то ищет он находил все подходящее максимально удобно и не забываем что люди решают несколько задач одновременно получится что всем будут предлагаться файлы которые кто то скачивал но никак не относящиеся к данной задаче
#89 by romix
Публикатор может выработать свои рекомендации по "См. также".
#90 by BrainDamage
Критерий отбора этих 10 файлов то какой?
#91 by vhl
Подфорумом ошибся. Надо было в JOB и ценник назначать, а так на халяву прокатиться не получится.
Тэги: Математика и алгоритмы
Ответить:
Комментарии доступны только авторизированным пользователям
Back to top