# Value error in an embedding layer

I am new to deep learning and I am trying to build a book recommender system using embedding layers. I use one layer for the book and one for the user.

I am having trouble with fitting the model. More specifically, when I try to feed the first layer with the books' ISBN list I get back the " ValueError : could not convert string to float: '087584877X' ".

Note that a book's ISBN ( as '087584877X' for example ) is either a sequence of numbers or a sequence of letters and numbers. The second category seems to be the problematic one.

I dont get why it should convert the string to float. I though that what the network does is to assign each string to a new integer regardless of the structure of the string.

Here is my code for the books embedding layer :

book_input = Input(shape=(1,))

book_embedding = Embedding(input_dim = n_books+1, output_dim = 4)(book_input)