变量具有功能1,在机器学习模型中预期为127

问题描述

我创建了一个ML模型来测试密码强度。数据集的形状为(669639,127),如果我通过密码/变量来测试模型,则会得到ValueError,密码具有1个功能,预期为127。因此,我尝试将密码/变量的形状调整为(1,127)。 ),但无法重整尺寸为1到(1,127)的数组。任何帮助将不胜感激,谢谢。 `#!/ usr / bin / env python

编码:utf-8

在[2]中:

import seaborn as sns
import pandas as pd
import numpy as np
import warnings
warnings.filterwarnings('ignore')

在[3]中:

data = pd.read_csv('D:\Datasets\strength.csv',',error_bad_lines=False)

在[4]中:

data

在[5]中:

data.isna().sum()

在[6]中:

data.dropna(inplace = True)

在[7]中:

data.isna().sum()

在[8]中:

sns.countplot(data['strength'])

在[9]中:

data['strength'].value_counts()

在[10]中:

password_tuple = np.array(data)

在[11]中:

import random
random.shuffle(password_tuple)

在[12]中:

X = [labels[0] for labels in password_tuple]
y = [labels[1] for labels in password_tuple]

在[13]中:

def char_tokenizer(input):
    characters = []
    for i in input:
        characters.append(i)
    return characters

在[14]中:

from sklearn.feature_extraction.text import TfidfVectorizer
tfidf = TfidfVectorizer(tokenizer = char_tokenizer)
X = tfidf.fit_transform(X)

在[15]中:

X.shape

在[16]中:

from sklearn.linear_model import LogisticRegression
logReg = LogisticRegression(penalty='l2',multi_class='ovr')
logReg.fit(X,y)

在[17]:

print(logReg.score(X,y))

在[18]中:

import joblib
joblib.dump(logReg,'LogisticRegression_model.joblib')

在[17]:

from sklearn.naive_bayes import BernoulliNB
bnb = BernoulliNB()
bnb.fit(X,y)

在[18]中:

print(bnb.score(X,y))

在[19]中:

import joblib
joblib.dump(bnb,'NaiveBayes_model.joblib')

在[20]中:

from sklearn.tree import DecisionTreeClassifier
dtc = DecisionTreeClassifier()
dtc.fit(X,y)

在[21]:

print(dtc.score(X,y))

在[22]:

import joblib
joblib.dump(logReg,'DecisionTree_model.joblib')

在[23]:

from sklearn.ensemble import RandomForestClassifier
rfc = RandomForestClassifier(n_estimators=100,max_depth=50,criterion='entropy')
rfc.fit(X,y)

在[24]中:

print(rfc.score(X,y))

在[25]:

import joblib
joblib.dump(rfc,'RandomForest_model.joblib')

在[35]中:

array =['dbswjwiqmd']
ar2 = np.array([array])
ar2.reshape(1,127)
logReg.predict(ar2)

`

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)