给定n个原始URL,我希望能够通过以下方式对它们进行分类:新闻,博客,照片和视频.
例如,如果链接将用户定向到照片,是否足以说原始链接包含图像的文件扩展名,以便能够将原始URL分类为照片?
至于视频,博客和新闻,似乎还不足以拥有一组将原始URL分类的域(如http://www.youtube.com).
可以通过检查网络内容来完成分类吗?或者是否有任何开源工具?
我正在用Python编写一个ETL脚本,用于获取CSV文件中的数据,验证和清理数据,以及根据某些规则对每一行进行分类或分类,最后将其加载到postgresql数据库中.
数据看起来像这样(简化):
ColA, ColB, Timestamp, Timestamp, Journaltext, AmountA, AmountB
每行都是金融交易.我想要做的是根据一些规则对交易进行分类或分类.规则基本上是与Journaltext列中的文本匹配的正则表达式.
所以我想做的是这样的:
transactions = []
for row in rows:
t = Transaction(category=classify(row.journaltext))
transactions.append(t)
我不确定如何有效地编写classify()函数.
这就是分类规则的工作原理:
好.那么如何在Python中表示这些类别和相应的规则呢?
我非常感谢你的意见.即使你无法提供完整的解决方案.任何暗示我朝着正确方向发展的事情都会很棒.谢谢.
我使用naiveBayes(e1071 http://en.wikibooks.org/wiki/Data_Mining_Algorithms_In_R/Classification/Na%C3%AFve_Bayes)对我的数据集进行分类(Classification class:"class"0/1).这是我做的:
library(e1071)
arrhythmia <- read.csv(file="/home/.../arrhythmia.csv", head=TRUE, sep=",")
#devide into training and test data 70:30
trainingIndex <- createDataPartition(arrhythmia$class, p=.7, list=F)
arrhythmia.training <- arrhythmia[trainingIndex,]
arrhythmia.testing <- arrhythmia[-trainingIndex,]
nb.classifier <- naiveBayes(class ~ ., data = arrhythmia.training)
predict(nb.classifier,arrhythmia.testing[,-260])
Run Code Online (Sandbox Code Playgroud)
分类器不起作用,这是我得到的:
> predict(nb.classifier,arrhythmia.testing[,-260])
factor(0)
Levels:
> str(arrhythmia.training)
'data.frame': 293 obs. of 260 variables:
$ age : int 75 55 13 40 44 50 62 54 30 46 ...
$ sex : int 0 0 0 1 0 1 0 1 0 1 ... …Run Code Online (Sandbox Code Playgroud) 我想用scikit-learn模块实现一个KNeighborsClassifier(http://scikit-learn.org/dev/modules/generated/sklearn.neighbors.KNeighborsClassifier.html)
我从我的图像中检索坚固性,伸长率和Humoments功能.我如何准备这些数据进行培训和验证?我必须为从我的图像中检索到的每个对象创建一个包含3个特征[Hm,e,s]的列表(从1个图像中有更多对象)?
我读了这个例子(http://scikit-learn.org/dev/modules/generated/sklearn.neighbors.KNeighborsClassifier.html):
X = [[0], [1], [2], [3]]
y = [0, 0, 1, 1]
from sklearn.neighbors import KNeighborsClassifier
neigh = KNeighborsClassifier(n_neighbors=3)
neigh.fit(X, y)
print(neigh.predict([[1.1]]))
print(neigh.predict_proba([[0.9]]))
Run Code Online (Sandbox Code Playgroud)
X和y是2个特征?
samples = [[0., 0., 0.], [0., .5, 0.], [1., 1., .5]]
from sklearn.neighbors import NearestNeighbors
neigh = NearestNeighbors(n_neighbors=1)
neigh.fit(samples)
print(neigh.kneighbors([1., 1., 1.]))
Run Code Online (Sandbox Code Playgroud)
为什么在第一个例子中使用X和y并现在采样?
python classification machine-learning nearest-neighbor scikit-learn
我试图根据他们的情绪将推文分为三类(买入,持有,卖出).我正在使用R和e1071包.
我有两个数据框:一个训练集和一组新推文,需要预测情绪.
训练集数据框:
+--------------------------------------------------+
**text | sentiment**
*this stock is a good buy* | Buy
*markets crash in tokyo* | Sell
*everybody excited about new products* | Hold
+--------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)
现在我想使用推文文本trainingset[,2]和情绪类别来训练模型 trainingset[,4].
classifier<-naiveBayes(trainingset[,2],as.factor(trainingset[,4]), laplace=1)
Run Code Online (Sandbox Code Playgroud)
用分析查看分类器的元素
classifier$tables$x
我发现条件概率是计算出来的.每一条有关买入,持有和卖出的推文都有不同的概率.太好了.
但是当我预测训练集时:
predict(classifier, trainingset[,2], type="raw")
我得到的分类仅基于先验概率,这意味着每条推文都被归类为Hold(因为"Hold"在情绪中占有最大份额).所以每条推文都有相同的买入,持有和卖出概率:
+--------------------------------------------------+
**Id | Buy | Hold | Sell**
1 |0.25 | 0.5 | 0.25
2 |0.25 | 0.5 | 0.25
3 |0.25 | 0.5 | 0.25
.. |..... | .... | ...
N |0.25 …Run Code Online (Sandbox Code Playgroud) 如何从mahout执行图像分类?如何将图像转换为mahout分类算法接受的形式?是否有任何入门代码?请分享一些入门教程.mahout是图像分类的好库吗?
我正在使用scikit的Random Forest实现:
sklearn.ensemble.RandomForestClassifier(n_estimators=100,
max_features="auto",
max_depth=10)
Run Code Online (Sandbox Code Playgroud)
调用之后rf.fit(...),进程的内存使用量增加了80MB,或者每棵树增加了0.8MB(我还尝试了许多其他类似结果的设置.我使用top和psutil监视内存使用情况)
深度为10的二叉树最多应该有一个2^11-1 = 2047元素,这些元素都可以存储在一个密集的数组中,这样程序员就可以轻松地找到任何给定元素的父元素和子元素.
每个元素都需要分割和截止中使用的特征的索引,或6-16个字节,具体取决于程序员的经济程度.在我的情况下,这转化为每棵树0.01-0.03MB.
为什么scikit的实现使用20-60x的内存来存储随机森林的树?
classification machine-learning decision-tree random-forest scikit-learn
我在R中创建了一个决策树模型.目标变量是Salary,我们试图根据其他输入变量来预测一个人的工资是高于还是低于50k
df<-salary.data
train = sample(1:nrow(df), nrow(df)/2)
train = sample(1:nrow(df), size=0.2*nrow(df))
test = - train
training_data = df[train, ]
testing_data = df[test, ]
fit <- rpart(training_data$INCOME ~ ., method="class", data=training_data)##generate tree
testing_data$predictionsOutput = predict(fit, newdata=testing_data, type="class")##make prediction
Run Code Online (Sandbox Code Playgroud)
之后,我尝试通过执行以下操作创建增益图表
# Gain Chart
pred <- prediction(testing_data$predictionsOutput, testing_data$INCOME)
gain <- performance(pred,"tpr","fpr")
plot(gain, col="orange", lwd=2)
Run Code Online (Sandbox Code Playgroud)
通过查看引用,我无法理解如何使用ROCR包通过使用"预测"功能来构建图表.这仅适用于二进制目标变量吗?我收到的错误是"预测格式无效"
任何帮助都将非常感谢帮助我为上述模型构建增益图表.谢谢!!
AGE EMPLOYER DEGREE MSTATUS JOBTYPE SEX C.GAIN C.LOSS HOURS
1 39 State-gov Bachelors Never-married Adm-clerical Male 2174 0 40
2 50 Self-emp-not-inc Bachelors Married-civ-spouse Exec-managerial Male 0 0 …Run Code Online (Sandbox Code Playgroud) 试图改善我的聊天应用程序:
使用我的域中的先前(预处理)聊天交互,我构建了一个工具,为用户提供给定聊天上下文的5种可能的话语,例如:
Raw:"嗨,约翰."
上下文:嗨[[USER_NAME]]
话语:[嗨,你好,你好,你好,再次问好你好]
当然,结果并不总是相关的,例如:
Raw:"嗨,约翰.你好吗?我很好,你在办公室吗?"
背景:嗨[[USER_NAME]]你怎么样我在办公室你很好
话语:[是,不,你好,我是,你好,你好 ]
我使用Elasticsearch与TF/IDF相似性模型和索引结构如下:
{
"_index": "engagements",
"_type": "context",
"_id": "48",
"_score": 1,
"_source": {
"context": "hi [[USER_NAME]] how are you i am fine are you in the office",
"utterance": "Yes I am"
}
}
Run Code Online (Sandbox Code Playgroud)
问题:我肯定知道,对于上下文"hi [[USER_NAME]]你怎么样我很好你在办公室"说话"是的我是"是相关的,但是"是","否"也是相关的因为他们出现在类似的背景下.
尝试使用这个优秀的视频,作为一个起点
问:如果我所知道的(根据我的原始数据)只是一个真实的话语,我怎样才能衡量精确度和召回率?
我是TensorFlow的新手.我正在使用自己的数据集进行二进制分类.但是我不知道如何计算准确度.有人可以帮我这么做吗?
我的分类器有5个卷积层,后面是2个完全连接的层.最终的FC层的输出维度为2,我使用过:
prob = tf.nn.softmax(classification_features, name="output")
Run Code Online (Sandbox Code Playgroud) classification ×10
r ×3
python ×2
scikit-learn ×2
chat ×1
convolution ×1
etl ×1
mahout ×1
open-source ×1
regex ×1
rstudio ×1
taxonomy ×1
tensorflow ×1
text-mining ×1
tf-idf ×1
url ×1
web-content ×1