Ontologies in ML models

classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

Ontologies in ML models

javed khan
Hello all

I want to ask how anFor instance, we want to predict the software effort estimation using ML models and we have a dataset in ARFF format to be executed in Weka. After execution, we get some values like: Accuracy=90%. 

Can we make use of Semantic Web to increase the accuracy? It could be in any form i.e. pre-processing using (Jena) rules, make use of Ontologies etc? 

Regards

Mail priva di virus. www.avast.com

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Ontologies in ML models

Michael DeBellis-2
When you say " Can we make use of Semantic Web to increase the accuracy?" that's a really broad question. The simple answer is probably but it all depends on the domain, how the knowledge is represented, etc. 

I worked with someone recently who represented an ML model in Weka and it was easy to translate the model into an ontology because he used the Decision Tree ML algorithm. In fact it was rather trivial, all the columns in the training sets became data properties and the entire decision tree could be represented by one SWRL rule. 

In his example, we could probably increase the accuracy because once we had it represented in an ontology we could do additional kind of reasoning. In our case it was using ML to detect possibly fake accounts on Twitter. As an example of additional reasoning you could do, once you found an account that was ownedBy a User that flagged as possibly a FakeAccount you could then find all the Accounts ownedBy that same User, even if the algorithm didn't detect them your knowledge of the domain tells you that if a User has one FakeAccount chances are that others they have may also be fake. 

You could also use the Reasoner so that when an Account was flagged as a FakeAccount you could generate an explanation as to why it was flagged. 

So IMO, there is no algorithm or rote translation you can make from ML to Semantic Web to increase the accuracy but there are clearly advantages that can be gained when you integrate the two paradigms. 

Michael


On Mon, Aug 19, 2019 at 1:22 PM javed khan <[hidden email]> wrote:
Hello all

I want to ask how anFor instance, we want to predict the software effort estimation using ML models and we have a dataset in ARFF format to be executed in Weka. After execution, we get some values like: Accuracy=90%. 

Can we make use of Semantic Web to increase the accuracy? It could be in any form i.e. pre-processing using (Jena) rules, make use of Ontologies etc? 

Regards

Mail priva di virus. www.avast.com
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Ontologies in ML models

Lorenz Buehmann

Michael, I guess he's more asking for the other way around. It sounds more like you "how to use ontologies data in ML algorithms". But yeah, your answer is also interesting. By the way, when you worked  on Decision Tree -> DL I guess you're aware of the work from Heiko Paulheim? IIRC, they also used DT models and converted them to various other representations, also e.g. SHACL - and yes, it's trivial. Can make a rule, a SPARQL query, whatever. That's why DT are often considered to be human-readable and understandable.

My short answer (similar too what Michael said): too broad


the whole thing is research topic, I know a bunch of method for RDF propositionalization (for example RDF2Vec), i.e. getting vector representations out of RDF and/or OWL. Besides these approaches, Logic Neural Networks are another interesting way and hot topic I'm currently interested in. Or you can use ILP. Or ... to many options.

That said, Javed isn't that experienced in all those things, I remember him from a long discussion on the Jena mailing list about inference with Jena rules. Looks like he's still working on it.


At this point, it's also too much off-topic.


On 19.08.19 22:43, Michael DeBellis wrote:
When you say " Can we make use of Semantic Web to increase the accuracy?" that's a really broad question. The simple answer is probably but it all depends on the domain, how the knowledge is represented, etc. 

I worked with someone recently who represented an ML model in Weka and it was easy to translate the model into an ontology because he used the Decision Tree ML algorithm. In fact it was rather trivial, all the columns in the training sets became data properties and the entire decision tree could be represented by one SWRL rule. 

In his example, we could probably increase the accuracy because once we had it represented in an ontology we could do additional kind of reasoning. In our case it was using ML to detect possibly fake accounts on Twitter. As an example of additional reasoning you could do, once you found an account that was ownedBy a User that flagged as possibly a FakeAccount you could then find all the Accounts ownedBy that same User, even if the algorithm didn't detect them your knowledge of the domain tells you that if a User has one FakeAccount chances are that others they have may also be fake. 

You could also use the Reasoner so that when an Account was flagged as a FakeAccount you could generate an explanation as to why it was flagged. 

So IMO, there is no algorithm or rote translation you can make from ML to Semantic Web to increase the accuracy but there are clearly advantages that can be gained when you integrate the two paradigms. 

Michael


On Mon, Aug 19, 2019 at 1:22 PM javed khan <[hidden email]> wrote:
Hello all

I want to ask how anFor instance, we want to predict the software effort estimation using ML models and we have a dataset in ARFF format to be executed in Weka. After execution, we get some values like: Accuracy=90%. 

Can we make use of Semantic Web to increase the accuracy? It could be in any form i.e. pre-processing using (Jena) rules, make use of Ontologies etc? 

Regards

Mail priva di virus. www.avast.com
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Ontologies in ML models

Alex Shkotin
In reply to this post by javed khan
Hi,

what about to convert your "dataset in ARFF format" into OWL2 and examine your ontology in Protege? It may give some ideas about how to increase accuracy.

Alex

пн, 19 авг. 2019 г. в 23:22, javed khan <[hidden email]>:
Hello all

I want to ask how anFor instance, we want to predict the software effort estimation using ML models and we have a dataset in ARFF format to be executed in Weka. After execution, we get some values like: Accuracy=90%. 

Can we make use of Semantic Web to increase the accuracy? It could be in any form i.e. pre-processing using (Jena) rules, make use of Ontologies etc? 

Regards

Mail priva di virus. www.avast.com
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Ontologies in ML models

javed khan
Thanks to all. 

Yes Michael, one such work done is [1] which used Ontology and Decision Tree in Weka and have claimed accuracy over the traditional models.


On Tue, Aug 20, 2019 at 10:52 AM Alex Shkotin <[hidden email]> wrote:
Hi,

what about to convert your "dataset in ARFF format" into OWL2 and examine your ontology in Protege? It may give some ideas about how to increase accuracy.

Alex

пн, 19 авг. 2019 г. в 23:22, javed khan <[hidden email]>:
Hello all

I want to ask how anFor instance, we want to predict the software effort estimation using ML models and we have a dataset in ARFF format to be executed in Weka. After execution, we get some values like: Accuracy=90%. 

Can we make use of Semantic Web to increase the accuracy? It could be in any form i.e. pre-processing using (Jena) rules, make use of Ontologies etc? 

Regards

Mail priva di virus. www.avast.com
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
Reply | Threaded
Open this post in threaded view
|

Re: Ontologies in ML models

Lorenz Buehmann


Honestly, that paper is a poor example for using ontologies in ML. In fact, it doesn't make use of ontologies to learn a model, an ontology is just used to serialize the decision tree. I don't see the contribution in the paper. Using the ontology for prediction, ok ... so you load the ontology and then you have to write some weird queries in order to make use of the rule encoded in their RDF schema. Not even serializing the DT model as a set of rules makes me wondering whether the authors undterstood the benefits of ontologies and reasoning at all. Not using semantic data for training the model makes it even worse. I'm also wondering why they did some benchmarks in the paper. I mean, SPAM filter classification with standard DT, SVM, etc. contained in Weka? Why did they do this? What do they want to show here?

There is no scientific contribution at all in the paper, or I'm missing something.

just my two cents ...



On Tue, Aug 20, 2019 at 10:52 AM Alex Shkotin <[hidden email]> wrote:
Hi,

what about to convert your "dataset in ARFF format" into OWL2 and examine your ontology in Protege? It may give some ideas about how to increase accuracy.

Alex

пн, 19 авг. 2019 г. в 23:22, javed khan <[hidden email]>:
Hello all

I want to ask how anFor instance, we want to predict the software effort estimation using ML models and we have a dataset in ARFF format to be executed in Weka. After execution, we get some values like: Accuracy=90%. 

Can we make use of Semantic Web to increase the accuracy? It could be in any form i.e. pre-processing using (Jena) rules, make use of Ontologies etc? 

Regards

Mail priva di virus. www.avast.com
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user
_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user

_______________________________________________
protege-user mailing list
[hidden email]
https://mailman.stanford.edu/mailman/listinfo/protege-user