refer to the scikit-learn documentation (stable/modules/classes htmlpart iiiunsupervised learning using tensorflow and keras representation learning and automatic feature extractionautoencodersand semisupervised learning part ivdeep unsupervised learning using tensorflow and keras restricted boltzmann machinesdeep belief networksand generative adversarial networks conventions used in this book the following typographical conventions are used in this bookitalic indicates new termsurlsemail addressesfilenamesand file extensions constant width used for program listingsas well as within paragraphs to refer to program elements such as variable or function namesdatabasesdata typesenvironment variablesstatementsand keywords constant width bold shows commands or other text that should be typed literally by the user constant width italic shows text that should be replaced with user-supplied values or by values determined by context this element signifies tip or suggestion this element signifies general note preface xvii