В настоящее время я работаю над своим проектом в школе, и у меня есть немного необычное задание. Моя работа состоит в том, чтобы очистить данные с определенной страницы на facebook, поместить их в модель обучения, где он должен иметь 1 вход как список и выход как Int32.
Во-первых, позвольте мне кратко объяснить алгоритмы, которые я уже разработал:
- Соскоблил данные
- остановил это
- Удалены заглавные буквы, знаки препинания, смайлики и пробелы.
- Объединенные слова с одним корнем
- Подсчитано появление слов и присвоено значение счетчика каждому слову
- Выполнен расчет tf-idf для извлечения веса каждого слова в каждом сообщении Теперь у меня есть
Dictionary<String,List<double[],int>>
, который представляет
postId:[wordWeights],amountOfLikes
as
23425234_35242352:[0.027,0.031,0.009,0.01233],89
Я должен тренировать свою модель с разными постами и лайками. Для этой цели мы решили использовать библиотеку Accord.NET на C# и до сих пор анализировали свой класс простой линейной регрессии.
Во-первых, я увидел, что могу использовать OrdinaryLeastSqure и передавать ему возможные входы и выходы как
double[] input = {0.123,0.23,0.09}
double[] output = {98,0,0}
OrdinaryLeastSquares ols = new OrdinaryLeastSquares();
regression = ols.Learn(inputs, output);
Как видите, количество входов в массиве должно совпадать с количеством выходов, поэтому я заполнил его нулями. В результате я получил явно неверный вывод. Я не могу придумать правильный способ передачи моих данных в Linear Regression Class
. Я знаю, что подход с заполнением массива нулями неверен, но пока это единственное решение, которое я придумал. Я был бы признателен, если бы кто-нибудь сказал мне, как я должен использовать регрессию в этом случае, и помог бы выбрать правильный алгоритм. Ваше здоровье!