使用文本特征训练估计器
Train an estimator with text features
我有一个像这样的标记训练数据集
X = [tag, design_version, runtime, error_msg], Y = 'PASS'/'FAIL'
'tag' = string
'design_version' = string
'runtime' = number
'error_msg' = string
还有更多我可以访问但为简洁起见未在此处列出的功能(字符串、数字)。数据实际上是模拟的一组属性,标签是模拟是通过还是失败。我想用这些输入训练一个估算器;并使其在一组新属性上预测 'PASS' 或 'FAIL'。
我一直在阅读 Working with Text Data with sklearn。但不太清楚如何结合使用文本和数字特征来适应估计器。用什么算法等等
任何指点都会很有帮助!
你要把字符串类型的数据转换成数字。有不同的方法,如单热编码、标签编码、tf-idf 等。这些方法取决于你的数据如何工作,但首先你可以二值化你的 Y 值,如果通过它的 1,如果你失败这是 0.
scikit-learn 提供了一个名为 FeatureUnion which allows to combine several feature extraction methods (i.e. concatenate feature vectors produced by them). There is a tutorial 的实用程序 class,用于介绍如何组合不同的特征类型。基本上,您可以这样做:
fe = FeatureUnion([
('tag', Pipeline([
('selector', ItemSelector(key='tag')),
('tfidf', TfidfVectorizer(ngram_range=(3,5), analyzer='char'))),
])),
('runtime', # ...transformer for runtime feature
# ... etc
])
(ItemSelector 是教程中定义的自定义class)。
我有一个像这样的标记训练数据集
X = [tag, design_version, runtime, error_msg], Y = 'PASS'/'FAIL'
'tag' = string
'design_version' = string
'runtime' = number
'error_msg' = string
还有更多我可以访问但为简洁起见未在此处列出的功能(字符串、数字)。数据实际上是模拟的一组属性,标签是模拟是通过还是失败。我想用这些输入训练一个估算器;并使其在一组新属性上预测 'PASS' 或 'FAIL'。
我一直在阅读 Working with Text Data with sklearn。但不太清楚如何结合使用文本和数字特征来适应估计器。用什么算法等等
任何指点都会很有帮助!
你要把字符串类型的数据转换成数字。有不同的方法,如单热编码、标签编码、tf-idf 等。这些方法取决于你的数据如何工作,但首先你可以二值化你的 Y 值,如果通过它的 1,如果你失败这是 0.
scikit-learn 提供了一个名为 FeatureUnion which allows to combine several feature extraction methods (i.e. concatenate feature vectors produced by them). There is a tutorial 的实用程序 class,用于介绍如何组合不同的特征类型。基本上,您可以这样做:
fe = FeatureUnion([
('tag', Pipeline([
('selector', ItemSelector(key='tag')),
('tfidf', TfidfVectorizer(ngram_range=(3,5), analyzer='char'))),
])),
('runtime', # ...transformer for runtime feature
# ... etc
])
(ItemSelector 是教程中定义的自定义class)。