我有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