background preloader

Probabilistic Graphical Models

Probabilistic Graphical Models
About the Course What are Probabilistic Graphical Models? Uncertainty is unavoidable in real-world applications: we can almost never predict with certainty what will happen in the future, and even in the present and the past, many important aspects of the world are not observed with certainty. Probability theory gives us the basic foundation to model our beliefs about the different possible states of the world, and to update these beliefs as new evidence is obtained. These beliefs can be combined with individual preferences to help guide our actions, and even in selecting which observations to make. While probability theory has existed since the 17th century, our ability to use it effectively on large problems involving many inter-related variables is fairly recent, and is due largely to the development of a framework known as Probabilistic Graphical Models (PGMs). Course Syllabus Topics covered include: Introduction and Overview. The slides for the whole class can be found here.

Natural Language Processing Information Theory Coursera.org Machine learning is the science of getting computers to act without being explicitly programmed. In the past decade, machine learning has given us self-driving cars, practical speech recognition, effective web search, and a vastly improved understanding of the human genome. Machine learning is so pervasive today that you probably use it dozens of times a day without knowing it. Many researchers also think it is the best way to make progress towards human-level AI. In this class, you will learn about the most effective machine learning techniques, and gain practice implementing them and getting them to work for yourself. More importantly, you'll learn about not only the theoretical underpinnings of learning, but also gain the practical know-how needed to quickly and powerfully apply these techniques to new problems. This course provides a broad introduction to machine learning, datamining, and statistical pattern recognition.

The Best Way to Learn Rails I come from a PHP background, but these days, I'm a full-time Rails developer. The difficulty for most people who make the switch lies in the learning curve that’s involved. Once you've become proficient in a language or framework, switching to a new one feels like an unnecessary (and time-consuming) challenge. However, learning Ruby and Rails is actually pretty easy! It's an incredibly powerful framework, and has a huge community pushing it along. So that begs the question: what's the best way to learn Rails? This article details a full lesson plan that will get you up and running in no time! You might think learning Ruby is the most important step, and this is probably the part where everyone stops learning and just sticks with their current framework. Work through the Try Ruby exercises. The most recommended tool for dipping into Ruby's syntax is the Try Ruby website. Once you’ve worked through these exercises a couple of times, you'll have a solid base. Great! Railscasts: A must!

Machine Learning Creative Programming for Digital Media & Mobile Apps About the Course This course will teach you how to develop and apply programming skills to creative work. This is an important skill within the development of creative mobile applications, digital music and video games. It will teach technical skills needed to write software that make use of images, audio and graphics, and will concentrate on the application of these skills to creative projects. Course Syllabus Week 1: Introduction: sonic painter Week 2: Interactive D/VJ app Week 3: Music player and sensor controlled visualiser Week 4: Game with physical modelling and synthesis Week 5: APIs accessing and processing social media data Week 6: Music machine Recommended Background Most students are expected to have some background in programming and/or computer science, and some experience of (possibly extra curricular) creative work. Suggested Readings There is no required reading. Course Format

Python for the Web The theme music for this blog post is: Air - Playground Love. Python is the best language in the world for interacting with the web, and I'm going to show you why. This article will give an extremely high level overview of how to use python for the web. There are many ways you can interact with the web using python, and this post will cover all of them. This includes python web scraping, interacting with APIs (Application Programming Interfaces) and running your own python web site using python server software. There are many ways to do all these things in python, but I'm going to show you how to do it the right way using the most modern techniques. Interacting with Websites and APIs Using Python The single best package for interacting with the web using Python is 'Requests' by Kenneth Reitz. First, you'll need to install it. Once you have pip installed, run: pip install requests And now you have Requests installed! The two methods you'll need the most are GET and POST. That's it! Hooray!

Computer Science 101 UPDATE: we're doing a live, updated MOOC of this course at stanford-online July-2014 (not this Coursera version). See here: CS101 teaches the essential ideas of Computer Science for a zero-prior-experience audience. Computers can appear very complicated, but in reality, computers work within just a few, simple patterns. CS101 demystifies and brings those patterns to life, which is useful for anyone using computers today. In CS101, students play and experiment with short bits of "computer code" to bring to life to the power and limitations of computers. Here is another video Nick created for this class.

Coding the Matrix: Linear Algebra through Computer Science Applications About the Course When you take a digital photo with your phone or transform the image in Photoshop, when you play a video game or watch a movie with digital effects, when you do a web search or make a phone call, you are using technologies that build upon linear algebra. Linear algebra provides concepts that are crucial to many areas of computer science, including graphics, image processing, cryptography, machine learning, computer vision, optimization, graph algorithms, quantum computation, computational biology, information retrieval and web search. Linear algebra in turn is built on two basic elements, the matrix and the vector. In this class, you will learn the concepts and methods of linear algebra, and how to use them to think about problems arising in computer science. Recommended Background You should be an experienced programmer. You are not expected to have any background in linear algebra. Suggested Readings Coding the Matrix is an optional companion textbook.

Efficient JavaScript Traditionally, a Web page would not contain much scripting, or at least, not much that would affect the performance of that Web page. However, as Web pages become more like applications, the performance of scripts is having a bigger effect. With more and more applications being developed using Web technologies, improving the performance of scripts is becoming increasingly important. With a desktop application, a compiler is normally used to convert the source into the final binary. Browsers are fairly good at achieving this, and Opera has one of the fastest scripting engines of any current browser. This article will show several simple changes that can be made to improve the performance of your Web applications. Quick Tips ECMAScript Document loading ECMAScript Avoid using eval or the Function constructor Each time eval or the Function constructor is called on a string representing source code, the script engine must start the machinery that converts the source code to executable code.

Computer Security YUI3 « Triptych YUI3 is a modern javascript library that allows you to build cross-browser applications without having to worry about all of the issues you might run into with low level javascript coding. It provides a library of utilities as well as a host of best practices for web development. Needless to say I’m a big fan of YUI and I’ve written several articles about it over the past year or so. Here’s a list of those for your reference.Introduction to YUI: YUI Hidden Gems: Make it with YUI: Build a Simple Ticker in YUI Other YUI Articles: YUI Articles from around the web: YUI3 Quick Tip: Adding Your Own Awesome There are still many articles even of my own blog I’ve not listed here as of yet (so busy!)

Related: