我正在做我的人脸检测和识别工作,我想实时检测人脸,
但是到了训练的时候,要花很长的时间来训练
数据有没有可能减少训练的时间数据谁都能帮上忙
我把这个问题解决了
“”“
def train(train_dir, model_save_path=None, n_neighbors=None, knn_algo='ball_tree', verbose=False):
X = []
y = []
# Loop through each person in the training set
for class_dir in tqdm(os.l
练习KNN和我只是有一个关于预处理的查询,因为我知道KNN不适用于分类特性。
我已经读到了一种热编码(虚拟变量),如果我应用到下面的数据集中,它实际上将是我的列数量的两倍。
然而,这是否需要。在整个数据集中,简单地将y替换为0,将n替换为1,会有效吗?
target Q1 Q2 Q3
Wealthy y y y
Wealthy n y y
Poor y y y
Poor n y n
我想找到一种方法来确定我的knn算法中实际使用了哪些邻居,这样我就可以更深入地研究与我的特征相似的数据行。
以下是一个数据集的示例,我将其拆分为用于预测模型的训练集和测试集:
Player PER VORP WS
Fabricio Oberto 11.9 1.0 4.1
Eddie Johnson 16.5 1.7 4.8
Tim Legler 15.9 2.0 6.8
Ersan Ilyasova 14.3 0.7 3.8
Kevin Love 25.4 3.5 10.0
T
因此,我一直在一组数据上使用KNN,在train_test_split阶段的random_state =4。尽管使用了随机状态,但每次输出的准确率、分类报告、预测等都是不同的。想知道为什么会这样?
这里是数据的头部:(根据all_time_runs和顺序预测位置)
order position all_time_runs
0 10 NO BAT 1304
1 2 CAN BAT 7396
2 3 NO BAT 6938
3 6 CAN BAT 4903
4
除了这个之外,我还实验了使用和包对基准数据集进行无监督的异常检测任务的KNN算法,得到了不同的结果!
*****************************************************************KNN from PYOD lib
/usr/local/lib/python3.7/dist-packages/pyod/models/base.py:413: UserWarning: y should not be presented in unsupervised learning.
"y should not be presented in u
我建立了一个knn分类模型。不幸的是,我的模型有超过80%的准确性,我想得到一个更好的结果。我能要些小费吗?也许我用了太多的预测器?
我的数据=
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.preprocessing import MinMaxScaler
from sklearn.neighbors import KNeighborsClassifier
from sklearn.metrics import confusion_matrix, accuracy_