22

How to give assignments that require heavy computational resources? Don't. Most computionally intensive problems can be stripped down to something that's just as instructive but runnable on any normal computer. In particular, for inexact algorithms, you can generally trade off accuracy against computational cost, and often actually get still quite good ...


19

I have a couple of orthogonal suggestions. First, and you may have done this yourself, before you give any assignment you should create a reference implementation yourself and test it in the student's environment. If you did this, then just let it be a warning to others. This is true, actually, for any assignment, not just one that might run up agains ...


15

Giving students credits for a cloud service like AWS might be useful in this case. Amazon's pricing is reasonable for a cloud instance: GPU Instances - Current Generation p2.xlarge vCPUs: 4 ECUs: 12 Memory (GiB): 61 Storage (GB): EBS Only Price: $0.9 per Hour The cheapest instance (t2.nano) is priced at $0.0058 per Hour,...


13

I took both the AI and (basic) ML undergrad courses at Princeton and currently teach an AI elective at the HS level for some very bright students. I've seen some good online material from Berkeley (CS188) and MIT (6.034), and of course Stanford's ML lecture series is amazing. Russell & Norvig's textbook is basically the bible for these sorts of courses. ...


4

As a self-learner you have the extra burdens of resource selection and course design. You can lighten the load by sharing in the work of others. Find universities doing courses and research in the subject and review their course materials and source selections. For the cutting edge things, find papers that have been subjected to peer review, and are ...


4

If self-learning is a goal, you don't need to necessarily choose between resources at all. I had to self-teach a tremendous amount of material this year, and to do so, I roughly borrowed the methodology from Barry Farber's incredible How To Learn Any Language. The basic idea is to grab multiple (quality) resources of different kinds, and begin to work ...


4

I've hated the term flipped classroom since I first heard it. It was as if those young kid teachers invented a new way of teaching that us old folks could never have done. We had flipped classrooms back in the day - it was called homework. When the history teacher said "watch the debate" - flipped classroom. Reach Act IV of the play? - flipped classroom. ...


3

Most audio analysis would be done in the frequency domain. Signal (including audio) can be seen as a set of samples in the time domain, or the frequency domain. Fourier showed that any signal can be created by adding together a set of sine waves. Often it is easier to analyse a signal in the frequency domain, especially questions about frequency, such as ...


3

Yes, it requires quite a bit of mathematical knowledge, and some understanding of the different AI techniques out there (neural networks etc.). You could tell her that a good way to go about it is first choosing the form of AI she would like to learn (here you can mention neural networks). Next, she should try to learn about the mathematics behind the AI ...


3

The first two paragraphs of the Wikipedia article on Machine Learning will give you a good outline of the things you need to know. Algorithms and Data Structures are key from CS, but you also need quite a lot of things like Statistics, Mathematics, Pattern Recognition and such. It is a pretty long road if you start out only knowing how to program. It is ...


3

I suppose the design of the curriculum revolves around the goal. If the objective is to prepare students to enter the field as researchers, then the balance needs to favor the research that's active (and probably employable.) Where that fits into the AI picture as a whole is helpful. What limitations it has, and the missing pieces it doesn't solve are ...


2

It's hard to know what you really know from just your assertion that you've "learned to code and know the basics of Machine learning as well." Do you mean that you can write a script/notebook in Python/R using libraries like sklearn or tensorflow? Can you do a full ML pipeline - preprocess data, train a model, then test and evaluate it's performance (oh, and ...


2

Computers are stupid Do some role playing. Have students describe how to draw a house, they can not use house words, just geometry words: line, square, triangle, etc. Get one volunteer to take a pen to the white board, they don't know what is being described, and follow instructions (I normally take on this role first. I do what they say, but not what the ...


2

Markov Chains are great for putting out nonsense based on statistical data. However, a predictive keyboard that outputs nonsense isn't very useful. It needs much more context than a Markov Chain can produce. Such a program would base its next output entirely on the most recent entry. That said, a project to do something like the Mark V. Shaney program ...


2

I can offer some general advice as I looked into the flipped approach back when I used to teach English several years back. The Teachers Guide to Flipped Classroom is an excellent resource to begin with in terms of providing pedagogical guidance. The three cited benefits are as follows: Flipped learning keeps students more engaged. Teachers provide more ...


2

If you want to start with a single source, I would suggest the book, "Reinforcement Learning: An Introduction" by Sutton and Barto. The authors have an established history and a track record for publishing peer-reviewed articles in the field. While this book is dated, published in 1998, I have not found a better introduction to the field yet. Before you can ...


2

A very interesting way to design a curriculum would be to in 3-lesson blocks. A block deals with a specific subject. A small list of various subjects in the field of AI can be found at the bottom of the answer (I put it there because it contains information that might be confusing if not explained beforehand). The 3 lessons for each block are formatted like ...


2

Higham and Higham's Deep Learning: An Introduction for Applied Mathematicians is a fairly short introduction to neural networks that is written with mathematicians in mind. Another reference I would recommend is Shalev-Shwartz and Ben-David's Understanding Machine Learning: From Theory to Algorithms, particularly chapter 20. Both of the above approach ...


2

The online textbook Neural Networks and Deep Learning by Michael Nielsen is quite good for mathematical content. It assumes the reader understands calculus, but requires no prior knowledge of machine learning. The book's own introduction explains fairly well what the book is about: The purpose of this book is to help you master the core concepts of neural ...


1

@kaya3's comment links an excellent e-book, which describes the math in fair detail. I'll never get tired of recommending 3blue1brown's amazing video series that both motivates the problem and gives basic intuition but doesn't shortchange the math: https://www.3blue1brown.com/neural-networks


Only top voted, non community-wiki answers of a minimum length are eligible