Dissertação

{pt_PT=Human-robot speech interaction for service robots} {} EVALUATED

{pt=Robôs de serviço têm o propósito de ajudar o humanos, realizando as mais variadas tarefas. Como o meio de comunicação mais comum entre humanos é a fala, é importante que os robôs a consigam perceber. Além disso, seria mais fácil integrar os robôs na sociedade se estes fossem capazes de compreender linguagem natural. Neste trabalho, um sistema capaz de compreender linguagem natural é desenvolvido. Este sistema pode também ser usado em robôs de serviço, só sendo preciso alterar o dataset de acordo com o conjunto de acções que o robô realizará e treinar as redes neuronais e a Support Vector Machine. Primeiramente, como as instruçoes que os robôs recebem podem conter mais do que um comando, um divisor de frases em orações é desenvolvido, usando o Parsey McParseface da Google. De seguida, diferentes métodos de criação vectores de palavras que irão entrar nas redes neuronais são comparados, sendo que os melhores resultados foram obtidos quando foram usados vectores criados usando o algoritmo GloVe. Para a detecção da intenção e detecção de argumentos, como pessoa, local e objecto, várias arquitecturas de Recurrent Neural Networks e Long Short Term Memory networks foram testadas, sendo que LSTMs obtiveram melhores resultados. Como a acção requerida pelo humano pode não estar contida no grupo de acções que o robô realiza, uma Support Vector Machine é usada para determinar se pertence ou não. Para implementar este sistema no robô um pacote de ROS foi criado usando uma máquina de estados SMACH., en=Service robots have the purpose of helping humans by performing a wide range of tasks. As the most used way of communication between humans is speech, it is important that robots are able to understand it. Moreover, it would be easier to integrate robots in society if they were able to understand natural language. In this work, a system that is able to understand natural language instructions is developed. This system can be used in service robots, by just changing the datasets for the appropriate task and training the neural networks and Support Vector Machine. Firstly, as the instructions given to robots can contain more than one command, a phrase divider is developed, using the Parsey McParseface from Google. Following, some experimentation is done concerning the word vectors that will be the input of the neural networks used, being that the best results are achieved when the vectors are developed by the GloVe algorithm. For the intent detection, detects the action requested by the command, and the slot filling, determines the arguments contained in the command, such as person, location and object, various architectures of Recurrent Neural Networks and Long Short Term Memory networks are tested, achieving LSTMs a superior accuracy. As the action requested by the human can be one that is not in the robot's domain, a Support Vector Machine is used to determine whether it is or not. To implement the system in a robot, a ROS package is created using a SMACH state machine.}
{pt=Compreensão de Linguagem Natural, Robôs de Serviço, Redes Neuronais, Detecção da intenção, Detecção de argumentos, Vectores de palavras, en=Natural Language Understanding, Service Robots, Neural Networks, Intent Detection, Slot Filling, Word Embeddings}

novembro 24, 2017, 9:0

Publicação

Obra sujeita a Direitos de Autor

Orientação

ORIENTADOR

Rodrigo Martins de Matos Ventura

Departamento de Engenharia Electrotécnica e de Computadores (DEEC)

Professor Auxiliar

ORIENTADOR

Luís Manuel Marques Custódio

Departamento de Engenharia Electrotécnica e de Computadores (DEEC)

Professor Auxiliar