У меня есть этот набор данных, которые мне нужно использовать для тренировки (fit
) в мой machine learning
алгоритм:Какой лучший алгоритм обучения машинам для изучения scikit-learn для разных размеров данных обучения?
data= [
{'timestamp': '1406025645732', 'datatype': 'mass', 'fat': '0.348', 'lean': '0.06'},
{'timestamp': '1406025645776', 'datatype': 'body', 'value': 122.0, 'location': 'nose'},
{'timestamp': '1406025645793', 'datatype': 'mass', 'fat': '0.32', 'lean': '0.04'},
{'timestamp': '1406025645810', 'datatype': 'mass', 'fat': '0.308', 'lean': '0.1'},
{'timestamp': '1406027645916', 'datatype': 'body', 'value': 6.0, 'location': 'eye'},
{'timestamp': '1406025645949', 'datatype': 'mass', 'fat': '0.312', 'lean': '0.052'},
{'timestamp': '1406025645966', 'datatype': 'mass', 'fat': '0.32', 'lean': '0.032'},
{'timestamp': '1406025645983', 'datatype': 'mass', 'fat': '0.28', 'lean': '0.06'},
{'timestamp': '1406025646000', 'datatype': 'gender', 'value': '0.3096', 'size': '7.0'}
]
У меня есть образец данных, который содержит 3 типа данных:
body
mass
gender
Число выборок на типы данных является случайным (т.е. , иногда может иметь 10 образцов mass
и 1 из gender
. Или у меня могло бы быть 300 образцов mass
и 20 из body
).
В любом случае, я хотел бы иметь тренировочный набор с такими несогласованными данными.
Возможно ли это?
Какой должен быть лучший алгоритм обучения scikit-learn для этого?
- Логистическая регрессия?
- Наивный Байес?
- k-Nearest Neighbor?
- Классификация и деревья регрессии?
- Поддержка векторных машин?
Вот пример кода, но я не знаю следующий путь для достижения этого.
Просьба сообщить мне, какой шаг я должен выполнить, или, может быть, какой-то учебник, где я могу узнать и вставить здесь решение для этого.
from sklearn import tree
from sklearn.externals import joblib
import pandas
import numpy
import pylab
# this is one traning set for Abel
features = [
{'timestamp': '1406025645732', 'datatype': 'mass', 'fat': '0.348', 'lean': '0.06'},
{'timestamp': '1406025645776', 'datatype': 'body', 'value': 122.0, 'location': 'nose'},
{'timestamp': '1406025645793', 'datatype': 'mass', 'fat': '0.32', 'lean': '0.04'},
{'timestamp': '1406025645810', 'datatype': 'mass', 'fat': '0.308', 'lean': '0.1'},
{'timestamp': '1406027645916', 'datatype': 'body', 'value': 6.0, 'location': 'eye'},
{'timestamp': '1406025645949', 'datatype': 'mass', 'fat': '0.312', 'lean': '0.052'},
{'timestamp': '1406025645966', 'datatype': 'mass', 'fat': '0.32', 'lean': '0.032'},
{'timestamp': '1406025645983', 'datatype': 'mass', 'fat': '0.28', 'lean': '0.06'},
{'timestamp': '1406025646000', 'datatype': 'gender', 'value': '0.3096', 'size': '7.0'}
]
# 0 for Abel, 1 for Jasminne
labels = [0]
# Here I train the model with the above arrays
clf = tree.DecisionTreeClassifier()
clf = clf.fit(features, labels) # crashes here due to the use of a dict, instead of an array
joblib.dump(clf, 'model.pkl')
Большое спасибо.
Какая ваша цель? вы пытаетесь предсказать тип данных из функций? или заданный тип данных, пытаетесь ли вы предсказать переменную (например, учитывая, что 'dataype =" mass "', предсказывать 'fat')? – tttthomasssss