我有一个(大 ~ 100 万个)Scala Spark DataFrame,其中包含以下数据:
id,score
1,0.956
2,0.977
3,0.855
4,0.866
...
Run Code Online (Sandbox Code Playgroud)
如何将分数离散/四舍五入到最接近的 0.05 小数位?
预期结果:
id,score
1,0.95
2,1.00
3,0.85
4,0.85
...
Run Code Online (Sandbox Code Playgroud)
希望避免使用 UDF 来最大化性能。
我有一组包含 50 个特征(c1、c2、c3 ...)的数据,行数超过 80k。
每行包含标准化数值(范围 0-1)。它实际上是一个标准化的虚拟变量,其中一些行只有很少的特征,3-4(即如果没有值则分配0)。大多数行大约有 10-20 个特征。
我使用 KMeans 对数据进行聚类,结果总是产生一个包含大量成员的集群。经过分析,我注意到少于 4 个特征的行往往会聚集在一起,这不是我想要的。
有没有办法平衡集群?
python cluster-analysis k-means data-science feature-engineering
我是Keras / TF /深度学习的新手,我正在尝试建立模型来预测房价。
我有一些功能X(浴室数量等)和目标Y(大约$ 300,000至$ 800,000)
在将其拟合到模型之前,我曾使用sklearn的Standard Scaler来标准化Y。
这是我的Keras模型:
def build_model():
model = Sequential()
model.add(Dense(36, input_dim=36, activation='relu'))
model.add(Dense(18, input_dim=36, activation='relu'))
model.add(Dense(1, activation='sigmoid'))
model.compile(loss='mse', optimizer='sgd', metrics=['mae','mse'])
return model
Run Code Online (Sandbox Code Playgroud)
我在尝试解释结果时遇到了麻烦-0.617454319755的MSE是什么意思?
我是否必须对这个数字进行逆变换,然后对结果求平方,得到741.55美元的错误率?
math.sqrt(sc.inverse_transform([mse]))
Run Code Online (Sandbox Code Playgroud)
我为刚开始听起来很傻而道歉!
regression machine-learning normalization scikit-learn keras
我有一个半结构化的数据集,每一行都属于一个用户:
id, skills
0,"java, python, sql"
1,"java, python, spark, html"
2, "business management, communication"
Run Code Online (Sandbox Code Playgroud)
之所以半结构化是因为只能从580个唯一值的列表中选择以下技能。
我的目标是聚集用户,或根据相似的技能组找到相似的用户。我尝试使用Word2Vec模型,该模型为识别相似的技能组提供了很好的结果-例如。
model.most_similar(["Data Science"])
Run Code Online (Sandbox Code Playgroud)
给我 -
[('Data Mining', 0.9249375462532043),
('Data Visualization', 0.9111810922622681),
('Big Data', 0.8253220319747925),...
Run Code Online (Sandbox Code Playgroud)
这为我提供了一个很好的模型,用于识别个人技能而不是技能组。如何利用Word2Vec模型提供的向量来成功地对相似用户的组进行聚类?
python ×2
apache-spark ×1
concurrency ×1
data-mining ×1
data-science ×1
dataframe ×1
k-means ×1
keras ×1
nlp ×1
regression ×1
scala ×1
scikit-learn ×1
word2vec ×1