首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用于点产品分类的Python库

用于点产品分类的Python库
EN

Stack Overflow用户
提问于 2022-10-24 17:31:45
回答 1查看 30关注 0票数 -2

我有以下python py413 o代码:

代码语言:javascript
复制
A1 = "101000001111"
A2 = "110000010101"
B2 = "000111010000"
B2 = "000110100000"
# TODO get X = [x1, x2, ..., x12]
assert(A1 * X > .5)
assert(A2 * X > .5)
assert(B1 * X < .5)
assert(B2 * X < .5)

这基本上是一种基于回归的分类。

0.5是我的门槛,但如何得到X?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-10-24 19:16:04

  1. ,你需要找到12个系数。您可以尝试使用LinearRegression

LogisticRegression

  1. 当你有线性系数时,你可以使用np.dot@运算符得到一个点乘积。

示例:

代码语言:javascript
复制
import numpy as np
from sklearn.linear_model import LogisticRegression

A1 = "101000001111"
A2 = "110000010101"
B1 = "000111010000"
B2 = "000110100000"

A1 = np.array(list(A1), np.float32)
A2 = np.array(list(A2), np.float32)
B1 = np.array(list(B1), np.float32)
B2 = np.array(list(B2), np.float32)

X = np.array((A1, A2, B1, B2))
y = np.array([1, 1, 0, 0])
w = model = LogisticRegression(fit_intercept=False).fit(X, y).coef_.flatten()

print(A1.dot(w))
print(A2.dot(w))
print(B1.dot(w))
print(B2.dot(w))

assert A1 @ w > 0.5
assert A2 @ w > 0.5
assert B1 @ w < 0.5
assert B2 @ w < 0.5

结果:

代码语言:javascript
复制
1.7993630995882384
1.5032155788245702
-1.0190643734998346
-1.0385501901808816
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74184767

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档