情况:我已经为我的IE用户编写了一个ActiveX控件,效果很好.我构建.ocx,CAB,签名,并将其放在带有EMBED标记的站点上.用户加载页面,黄色栏显示询问他们是否要安装它:他们所要做的就是点击它,然后我们就关闭了.
现在我需要建立对FF,Chrome和Safari(在Mac上)的支持.根据我的研究,NPAPI就是这样做的方式,Firebreath应该让它变得更容易.但从我所读到的,部署并不那么容易.Windows用户必须在DLL上运行"regsvr32"(我的网络用户实际上都不会这样做).我不知道在Mac上会发生什么.我相信用户必须将其复制到/ Library/Internet\Plugins /这样的目录,这也是一个非首发的部署.Firefox用户可以下载/运行.xpi.Chrome应该运行.crx.
有没有人有这方面的经验?你如何为其他三大浏览器做一个易于用户运行的NPAPI插件部署?
我正在为网页编写分类器,所以我有多种数字特征,我也想对文本进行分类.我正在使用词袋方法将文本转换为(大)数字向量.代码最终是这样的:
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.feature_extraction.text import TfidfTransformer
import numpy as np
numerical_features = [
[1, 0],
[1, 1],
[0, 0],
[0, 1]
]
corpus = [
'This is the first document.',
'This is the second second document.',
'And the third one',
'Is this the first document?',
]
bag_of_words_vectorizer = CountVectorizer(min_df=1)
X = bag_of_words_vectorizer.fit_transform(corpus)
words_counts = X.toarray()
tfidf_transformer = TfidfTransformer()
tfidf = tfidf_transformer.fit_transform(words_counts)
bag_of_words_vectorizer.get_feature_names()
combinedFeatures = np.hstack([numerical_features, tfidf.toarray()])
Run Code Online (Sandbox Code Playgroud)
这有效,但我很关心准确性.请注意,有4个对象,只有两个数字特征.即使是最简单的文本也会产生具有九个特征的向量(因为语料库中有九个不同的单词).显然,对于真实文本,将会有数百个或数千个不同的单词,因此最终的特征向量将是<10个数字特征但是> 1000个单词的特征向量.
因此,分类器(SVM)不会将数字特征上的单词加权100到1倍吗?如果是这样,我该如何补偿以确保单词包的数量与数字特征的权重相等?