- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试使用 Sci-kit learn python 库 对一堆 url 进行分类,以确定是否存在与用户配置文件匹配的某些关键字。用户有姓名、电子邮件地址……以及分配给他们的 url。我创建了一个 txt,其中包含每个链接上每个配置文件数据匹配的结果,格式如下:
Name Email Address
0 1 0 =>Relavent
1 1 0 =>Relavent
0 1 1 =>Relavent
0 0 0 =>Not Relavent
其中 0 或 1 表示在页面上找到该属性(每行是一个网页)我如何将这些数据提供给 sci-kit,以便它可以使用它来运行分类器?我见过的所有示例都有来自预定义 sch-kit 库的数据,例如数字或虹膜,或者正在以我已有的格式生成。我只是不知道如何使用我必须提供给图书馆的数据格式
上面是一个玩具示例,我有比 3 更多的功能
最佳答案
需要的数据是numpy
array (在本例中为“矩阵”),形状为 (n_samples, n_features)
。
阅读 csv-file 的简单方法通过使用 numpy.genfromtxt
到正确的格式.另请参阅 this thread .
让 csv 文件的内容(例如当前工作目录中的 file.csv
)为:
a,b,c,target
1,1,1,0
1,0,1,0
1,1,0,1
0,0,1,1
0,1,1,0
加载它我们做
data = np.genfromtxt('file.csv', skip_header=True)
skip_header
设置为 True
,以防止读取标题列(a,b,c,target
行)。引用numpy's documentation了解更多详情。
加载数据后,您需要根据输入数据格式进行一些预处理。预处理可能类似于拆分输入和目标(分类)或将整个数据集拆分为训练集和验证集(用于交叉验证)。
为了将输入(特征矩阵)从输出(目标向量)中分离出来
features = data[:, :3]
targets = data[:, 3] # The last column is identified as the target
对于上面给定的 CSV 数据,将使用的数组如下所示:
features = array([[ 0, 1, 0],
[ 1, 1, 0],
[ 0, 1, 1],
[ 0, 0, 0]]) # shape = ( 4, 3)
targets = array([ 1, 1, 1, 0]) # shape = ( 4, )
现在这些矩阵被传递给估计器对象 fit
函数。如果您使用流行的 svm 分类器,那么</p>
>>> from sklearn.svm import LinearSVC
>>> linear_svc_model = LinearSVC()
>>> linear_svc_model.fit(X=features, y=targets)
关于python - 使用准备好的数据进行 Sci-kit 分类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21492726/
当从数学角度看待机器学习时,我们有成本函数,以减少下次预测的误差,并且我们不断优化特定算法中使用的方程的参数。 我想知道这个优化发生在库的哪里 Sci-kit learn 。没有任何函数可以完成这项工
我正在观看 Google 的机器学习视频,并完成了一个利用数据库存储有关花卉信息的程序。程序成功运行,但我很难理解结果: from scipy.spatial import distance def
我有一个 pandas DataFrame,其索引是唯一的用户标识符、对应于唯一事件的列以及值 1(参加)、0(未参加)或 NaN(未被邀请/不相关)。对于 NaN,矩阵非常稀疏:有数百个事件,大多数
我正在尝试对表单字符串中的数据帧进行编码,但收到此错误: error : '<' not supported between instances of 'str' and 'NoneType'",'o
我正在使用 sci-kit learn 的标签编码类将字符串列表列表编码为整数代码。即 [[a,b,c],[b,c,d],[c,f,z]...,[a,v,z]]] LabelEncoder 已实例化并
public void changeParams(int k, int[] A, String s){ k++; A[0]++; s += "X"; } public void
我正在从事击键生物识别认证项目。它就像是传统的基于密码的身份验证的包装器。如果密码正确,它会检查“打字节奏”,如果与用户的配置文件匹配,则给出肯定的输出。否则,给出负输出。通过映射一些在键入密码时提取
我正在尝试使用 Sci-kit learn python 库 对一堆 url 进行分类,以确定是否存在与用户配置文件匹配的某些关键字。用户有姓名、电子邮件地址……以及分配给他们的 url。我创建了一个
我的数据库中有大约 1600 篇文章,每篇文章都已预先标记为以下类别之一: Technology Science Business World Health Entertainment Sports
我正在学习英特尔架构。到目前为止,我遇到了几种类型的中断: SCI:系统控制中断,硬件用来通知操作系统 ACPI 事件的系统中断。 SCI 是一个事件的、低的、可共享的电平中断。 SMI:系统管理中断
我正在尝试安装 scikit-learn,这样它就无法访问 ATLAS(其他 BLAS 和 LAPACK 库可以)。有没有办法设置安装以便不使用 ATLAS?很抱歉这个基本问题,但我看不出有什么好的方
如何在 sci-kit learn 中使用 GridSearchCV 获得一致的答案?我假设我得到了不同的答案,因为不同的随机数导致每次运行时的折叠都不同,尽管我的理解是下面的代码应该将这个问题解决为
我有一个单独的训练和测试数据(来自加载到不同 pandas 数据帧的不同 CSV),我想使用此训练和测试数据绘制学习曲线,而不是使用交叉验证从训练集本身生成的训练和测试数据(这似乎是learning_
我正在为科学目的开发一个 c++/Qt 软件。虽然 Eigen 库为我提供了许多分析矩阵的操作,但为所有可能的操作串联设计一个图形用户界面仍然是痛苦/困难的。因此,我还在运行时与 Matlab 交换矩
我在最后使用带有 KerasClassfier 的 Sci-kit 学习管道。分类器将加载经过训练的模型进行预测。但是在将分类器添加到管道后(总共 3 个组件),我在调用 pipeline.predi
我使用 sci-kit/python 将数据与 PLS 模型进行了拟合。我注意到 Python 3.7/Sci-kit 0.20.1 的结果大约是 Python 2.7/Sci-kit 0.17 的结
我正在寻找一个计算第n个中心矩的函数(与 scipy.stats.moment 中的相同)对于我的分箱数据(在 numpy.histogram 函数之外)。 # Generate normal dis
我正在使用 printf 函数创建摄氏度到华氏度的转换表。 在我的笔记中,我发现我应该能够在 printf 的 % 之后使用 ^ 标志将输出居中。但是,当我运行该程序时,Netbeans 总是给我一条
我有一个数据集,我试图从 DNA 构成中预测数据条目属于哪种 DNA。例如,字符串 ATTAG...ACGAT 可能会转换为 EI。可能的输出为 EI、IE 或 N。可以进一步研究该数据集 here
我想对 SVC 分类器的概率输出运行网格搜索交叉验证。我特别想最小化负对数可能性。从文档来看, GridSearchCV 似乎调用了它所传递的估计器的 predict() 方法以及 的 predict
我是一名优秀的程序员,十分优秀!