我有csv中的原始数据,与具有公司名称的列名称w1相同。用于ML字符串匹配的神经网络RNN算法
w1
abcd reit pvt ltd
abcd reit private ltd
ac abcd pte limited
abcd reit pvt ltd
abcd singapore private limited company
abcd reit pvt ltd company
abcd reit private limited company
abcd reit private limited
abcd reit private ltd
abcd pte limited
abcd reit pvt ltd company
abcd singapore private limited company
abcd reit pvt ltd company
abcd reit private limited company
我正在写一个神经网络ML程序,它将自行学习以识别类似的公司名称。只使用ML算法如神经网络,RNN等
我创建了一个列标签来归类属于同一组的相似名称,以便我的数据集变成。
w1 label
abcd reit pvt ltd 1
abcd reit private ltd 1
ac abcd pte limited 2
abcd reit pvt ltd 1
abcd singapore private limited company 3
abcd reit pvt ltd company 1
abcd reit private limited company 1
abcd reit private limited 1
abcd reit private ltd 1
abcd pte limited 1
abcd reit pvt ltd company 1
abcd singapore private limited company 3
abcd reit pvt ltd company 1
abcd reit private limited company 1
我创建哈希矩阵,但我不能这个矩阵馈送到神经网络。
附上了我的代码
library(readxl)
data <- read_excel("~/data.xlsx")
data1<-as.data.frame(data)
library(FeatureHashing)
library(Matrix)
############### split data test train
library(caTools)
set.seed(101)
data2<-as.data.frame(data1)
# Create Split (any column is fine)
split = sample.split(data2$label, SplitRatio = 0.70)
# Split based off of split Boolean Vector
train = subset(data2, split == TRUE)
print(head(train,1))
test = subset(data2, split == FALSE)
hash.size(train)
d1<- hashed.model.matrix(label~ split(w1, delim= " "),
data = train, hash.size = 16, signed.hash = FALSE ,
create.mapping = TRUE)
这里我有问题,因为我不知道如何将这种D1哈希矩阵当我运行输入这个哈希矩阵的神经网络,我得到错误送入neuralnet ,
####### test hash input to neural net
nn <- neuralnet(
label~w1,
data=train, hidden=2, err.fct="sse",
linear.output=TRUE)
predicted.nn.values <- compute(nn,test[1:1])
plot(nn)
是否有任何其他方式做到这一点,而且我不知道如何将这种D1哈希矩阵送入神经网络
训练数据集有多大?模型的输入是什么?我假设它会以2个公司的字符串表示形式出现,并且网络的输出结果可能是相同的? – shark8me
培训数据集包含公司名称的1000条记录,无论是像pvt ltd这样的缩写,还是完整的,我的目标是以最佳概率匹配两个公司名称 – avinash
是的,你是正确的概率匹配,,但只使用机器学习技术 – avinash