Итак, у меня есть набор данных 20000x4, где в 4 столбцах есть строки.Первая - это описание, а остальные три - категории, последняя - та, которую я хочу предсказать.Я маркировал каждое слово первого столбца и сохранял его в словаре с соответствующим значением Int, а другие столбцы изменил на числовые значения.Теперь у меня возникли проблемы с пониманием того, как передать эти данные в модель Flux.
Согласно документации, я должен использовать « набор данных для обучения (обычно набор входов x и целевых выходов y) ».В примере он разделяет данные x и y .Но как я могу сделать это с помощью словаря плюс два числовых столбца?
Редактировать:
Вот минимальный пример того, что у меня есть сейчас:
using WordTokenizers
using DataFrames
dataframe = DataFrame(Description = ["It has pointy ears", "It has round ears"], Size = ["Big", "Small"], Color = ["Black", "Yellow"], Category = ["Dog", "Cat"])
dict_x = Dict{String, Int64}()
dict_y = Dict{String, Int64}()
function words_to_numbers(data, column, dict)
i = 1
for row in range(1, stop=size(data, 1))
array_of_words = tokenize(data[row, column])
for (index, word) in enumerate(array_of_words)
if haskey(dict, word)
continue
else
dict[word] = i
i += 1
end
end
end
end
function categories_to_numbers(data, column, dict)
i = 1
for row in range(1, stop=size(data, 1))
if haskey(dict, data[row, column])
continue
else
dict[data[row, column]] = i
i += 1
end
end
end
words_to_numbers(dataframe, 1, dict_x)
categories_to_numbers(dataframe, 4, dict_y)
Iхочу использовать dict_x и dict_y в качестве входных и выходных данных для модели Flux