What is AI in Computer Science?

Comparing Schools and Universities: Should I go to Duke or UC Berkeley if I'm interested in AI and I want to double major in computer science and applied mathematics?

  • Update: I chose Duke! I'm interested in the field of AI and plan to double major in Computer Science and Applied Mathematics, which indicates UC Berkeley would be the obvious choice. Furthermore, the location (weather, proximity to Silicon Valley, proximity to home) is definitely better for Berkeley. However, I found the atmosphere, environment, and general experience of Duke to be quite a bit better--I can really see myself going to Duke. Also, tech companies recruit from both schools (Silicon Valley vs. Research Triangle)--I'm not sure if Silicon Valley is such a huge draw for Berkeley. In addition, I'm also a fairly heavy autodidact. I imagine that, wherever I go, I will be teaching myself using MOOCs, MIT OCW, http://intelligence.org/courses/, and textbooks--so I'm not sure that "quality of CS education" would be an extremely relevant point to me. Another point is that my advanced credits would put me at junior standing at Berkeley (and mostly go to waste at Duke), which would mitigate much of the problem of signing up for classes at a large public university. I'm also thinking about but not sure on grad school in CS, so I imagine the research strength/professors of Berkeley may play a role in my decision. Financially, they are essentially the same. Which one should I choose?

  • Answer:

    I'm a Computer Science and Math double major at Duke, am also interested in AI, and am happy to answer any questions if you PM me, but here are some thoughts about Duke. In general I don't think this choice is obvious at all at the undergrad level, but it would be a different story for grad school. Great AI faculty: Duke actually has some really great CS faculty working in AI: http://www.cs.duke.edu/people/faculty/?csid=1612 (computational game theory), http://www.cs.duke.edu/people/faculty/?csid=920 (computer vision), http://www.cs.duke.edu/people/faculty/?csid=442 (classic AI), http://www.cs.duke.edu/people/faculty/?csid=917 (computational genomics), http://www.cs.duke.edu/people/faculty/?csid=1611 (computational biology/chemistry). Also many great http://www.gatsby.ucl.ac.uk/~heller/ in the Stats department. You can easily take classes, do research, and attend talks with them. Access to faculty: The Duke CS department is much smaller than Berkeley's, so it will be much easier to build relationships with and even do research with basically any professor in the department you'd like. For example, I took a class with Vincent Conitzer on computational game theory during my sophomore year, and I've gotten the chance to do research with him for the past 3 semesters and write a thesis and some publications. Also, they care about the undergrads. Small classes: Along with a smaller department, your classes are small after the intro ones. This helps you get to know faculty and the rest of the CS students. Tech recruitment: Lots of tech companies recruit heavily at Duke—probably most common are Microsoft, Google, and Facebook. I also know Dukies who have worked/interned at Dropbox, Box, Quora, Square, Airbnb, Twitter, LinkedIn, Palantir; the list goes on. I've interned at Quora and Microsoft and will work full time at Square, (though Quora and Square were not directly through Duke recruiting). Berkeley also obviously has great recruiting. An upside to Duke is that you aren't competing with as many people (since the department is smaller), so the recruiting environment is less cut-throat and it's easy to get interviews with companies on campus. Major requirements: Berkeley looks like it has a lot of http://www.eecs.berkeley.edu/csugrad/index.shtml#upperdiv: I count 17 courses there including prereqs. Duke only has 11, plus 3 electives in a related discipline (which are covered by your Math major). This gives you much more flexibility in your schedule. Study abroad: The CS department is really flexible with study abroad, and in general I think about 40% of Duke students study abroad. You can get CS courses approved in almost any country you'd want to study abroad, and if not the major is flexible so it would be easy to take a semester off from CS too. Grading: I've heard that the Berkeley workload and grading systems are difficult. You can work that much at Duke if you wanted, but you wouldn't have to. The averages in CS (not math, though...) courses seem to be pretty high, and the courseload is very reasonable. Well-rounded student body: Duke is strong in many areas in addition to CS and Math. If you change your mind about your major, whatever you choose to study will have a strong department. In general I think Duke is more difficult to get into than Berkeley, so the student body is smart and motivated across the board. As a CS and Math major too, here's what I took to fulfill the majors: Computer Science: Data Structures and Algorithms, Computer Architecture, Design and Analysis of Algorithms, Computational Microecnomics, Operating Systems, Machine Learning, CS elective taken abroad, and 3 independent studies Math: Multivariable Calculus, Linear Algebra, Probability, Statistics, Combinatorics, Real Analysis, Numerical Analysis, Mathematical Finance, Abstract Algebra Related (Stat/Econ): Statistical Modeling, Computational Methods in Social Sciences, Regression Analysis, Intro Economics, Microeconomics, Macroeconomics There are also a ton of positives to going to Duke in general, outside of CS/Math: Social life: Duke is a really, really fun place to be. There's a really vibrant Greek scene if you're into that, and a ton of other social groups if you don't want to go Greek. Students here work hard but also in general like to have fun, and there are a lot of opportunities for that. Weather: It's warm and sunny for a large portion of the year. Sports: Amazing basketball team and others too—Lacrosse, Tennis, etc. Going to basketball games is really fun, and there's a ton of school spirit here. Diversity: Berkeley is a public university in California—a large portion of the students are going to be from California. I would guess Duke is more diverse, in terms of across the US and elsewhere—racially, socioeconomically, etc. Beautiful campus: I mean, have you seen it? Also to your point about advanced credits making you a junior at Berkeley: This isn't really true because most of your classes will be CS and Math anyway, in which case most people probably took the AP CS and Math exams as well, so you'd just be skipping the first 1-2 prereqs in each. Everyone still needs to take the core CS and Math classes, so these classes would still be big at Berkeley. From the requirements pages it looks like you'll need ~25 CS and Math classes combined, and at Duke you only need to take 32 classes total, so you'll probably take about the same number of classes at both.

Melissa Dalis at Quora Visit the source

Was this solution helpful to you?

Other answers

Berkeley is a great choice. Academics Academically, both the applied math and CS departments are obviously top-notch. It's one of the best schools for most sub-fields of CS, which definitely includes AI, machine learning, NLP, computer vision... etc. Apart from the research, there is also a focus on education: Stuart Russell is one of the authors of Artificial Intelligence: A Modern Approach, which is probably the standard text on AI, and several people here developed an introductory AI curriculum with a set of projects that's now used by a whole bunch of other universities including, I believe, Stanford. Berkeley has some great options for undergraduate research. You get to work on interesting projects, often directly with professors. There are a lot of connections with industry which you might find very interesting: for example, the project I was working on interested Samsung and Qualcomm, and I got to meet with some Samsung executives, which was pretty cool. I think pretty much every single large tech company works closely with projects and labs at Berkeley, although I don't know much about AI specifically. If you're curious, I wrote about my here on Quora. It was definitely great! I doubt you'd find anything similar at any other school except probably MIT. And since we're in California and the department is quite well-funded, there's some nice perks like research retreats at Squaw Valley :). (It's a high-end ski resort in Tahoe.) Since the Berkeley department is so strong, it also has close connections with various industry research labs. It's probably easier to get a research internship somewhere like Mozilla Research or Nokia Research through Berkeley: I know people who have done the former, and I talked to someone from Nokia Research although I didn't really consider going. Academically, you simply can't go wrong both in terms of classes, other CS students, professors and research. I don't know much about AI specifically, but I wrote about some of the other research that's going on at Berkeley: . It's worth a look to get a good idea of the sorts of incredible things people are working on. Apart from CS, almost every other department at Berkeley is in the http://www.berkeley.edu/about/nrc-rank.shtml . It gets dinged in some overall rankings for being large, public and a bit less selective, but it really emerges as one of the very top schools if you look past that. My impression is that it's also better-known internationally than Duke. Many people I've met in Europe as well as my relatives in Russia have all heard of it, often in surprising detail. This might be nice (although hardly crucial) if you're ever going to live abroad after graduating. You won't be wanting for breadth! Industry Apart from research, Berkeley has a lot of industry presence from tech companies looking for interns and employees. I think that pretty much everyone from the Silicon Valley recruits here, from small startups to Google et al. One recent development is that VC firms have started recruiting for their portfolio companies; I had the chance to consider a whole bunch of different startups through A16Z and Greylock, for example. Since the VC firms are all close by (in the South Bay), you can also go to events they host—for example, I went to a very well-run hackathon at A16Z recently, which was great. One thing that many people underestimate is how much physical proximity matters for early stage startups. It's incredibly easy to talk to tiny startups (< 10 people!) when you're at Berkeley, since most of them are just a short train ride away. Sophomore year, I worked part-time at a startup in SF, which was an incredible experience both for seeing programming in practice and for getting a good feel for startups and business concerns in general. It's a great practical counterpoint to what I was learning in classes. Also, just by living near SF, I've met a ton of different people in the startup community. I've gone to various meetups outside of school that attract lots of founders and early employees, something that's going to be rare anywhere but here. If I ever go on to start a company, I think I'm in a better position than I would have been anywhere outside the Bay Area. Basically, as far as everything to do with the tech industry, Berkeley is pretty much the best school except probably for Stanford. On the other hand, I suspect Duke seems more action regarding the finance industry. Finance companies do recruit at Berkeley, but not super heavily. They also get drowned out by the ridiculous number of normal tech companies that recruit. That said, I still got a nice internship at Jane Street, which is a good trading firm—and I wasn't even the only Berkeley intern! Location As I've already mentioned, Berkeley's location really helps for working with the tech industry. Everything is close by. Since there are so many programmers and CS people outside of Berkeley, you can go to all sorts of great events beyond what the CS department offers. For example, I recently helped start a meetup about type theory, and we had 30-40 people show up to each meeting—without advertising it heavily! These were mostly industry programmers, although there were some students too. I really doubt that could happen in too many other places. And, of course, it's California. If you like nature, it's one of the best places to be. If you don't, well, you'll probably learn to like it ;). Here's a shot from a trail that's within a 5 minute walk of the Berkeley campus: The domed building is part of the LBNL. I took this picture when I randomly decided to go on a hike—no planning needed! Popping down to SF is just a ~30 minute Bart ride away: I found a random public pier that had a good vantage point for photographing the city. The campus itself is also beautiful. The Doe library and the campanile. Picture from http://en.wikipedia.org/wiki/File:UCBerkeleyCampus.jpg. I think California, and the Bay Area in particular, is one of the best places to live in the whole world. It's beautiful, it's active, it's laid-back... it's incredible. Closing Thoughts While Berkeley probably is less diverse geographically—a lot of people from California—it is one of the most diverse top universities economically. Using Pell grants as a proxy, it's the most diverse out of the top 25 following UCLA: http://colleges.usnews.rankingsandreviews.com/best-colleges/rankings/national-universities/economic-diversity-among-top-ranked-schools. It's a large school and, since CS is a popular major, some CS classes are really large. On the other hand, since the EECS department is very large, there is a strong selection of classes, most of which are offered every semester. It's easy to find more obscure classes which are not very big, especially if you take some graduate classes. For example, I took a seminar about program synthesis which was relatively small and very discussion-oriented. I suspect there is only a handful of schools in the world that ever had a similar offering! (Program synthesis as a research field has only been getting more popular lately, and it's still pretty specialized.) The Berkeley department is less theoretical than schools like Harvard or Chicago. (I don't know where Duke stands because I don't know much about their CS department at all.) The CS department is part of the college of engineering, and has really close ties to EE. In fact, EECS is a single department! So it's very easy to take classes and do research at the intersection of the two. Berkeley has a strong startup community. If you want to start a company, there is some infrastructure in place including a startup accelerator. There are also a bunch of YC alumni—I know several personally. Even professors start companies, often spinning their research out commercially. It's a major part of the culture, although not nearly as much as Stanford. Ultimately, I think Berkeley is simply one of the best places to learn CS, full stop. It's hard to replicate the experience anywhere else.

Tikhon Jelvis

I'm not going to weigh in on most dimensions, since people below have done a great job of that -- and I also have little experience with Duke. You need to have a holistic view in choosing a school, and I won't pretend I know which decision is right for you. The one point I know quite a bit about which you should keep in mind, as someone who wants to go to grad school, is that research is absolutely key to admissions in a top department. Without it you'd need to be Good Will Hunting levels of audodidactic to get noticed by a top-tier AI PhD program. With regards to the number of top AI professors, I'm afraid there's truly no comparison: go to any major AI/ML/Vision/NLP/Robotics conference and you will see far more coming out of Berkeley than Duke. Of course very brilliant people go to both places: Tomasi is a great example of someone who is absolutely on the same level of any Cal prof. But if you're trying to maximize the likelihood that a project you are interested in will be done by a prof who likes you and whose prestige can get you into a top grad school, I think it's a foregone conclusion. Also, don't discount the correlation between physical proximity to Sillicon Valley and the likelihood that you'll get sucked into a startup. It sounds silly, but it matters quite a bit that you're a 50 minute drive away from Sand Hill as opposed to a 5 hour flight.

Stephen Miller

Very interesting question, I think I can add some insights here. Context first: I went to Berkeley for my PhD and did fairly well by most standards.  As I was looking for faculty jobs, I interviewed with (and got an offer) from Duke CS.  As a result, I learned a lot about Duke's CS dept and faculty.  I eventually decided to go to UCSB CS, but it was a very very very difficult decision. Short answer: I would lean towards Duke. Here are a number of considerations. First, student body quality. I strongly believe that you are more heavily influenced by your peers than the faculty during your undergrad years.  Melissa described in her answer nice comparisons between the courseloads and class sizes.  But aside from those, I think the opportunity to learn from your peers is paramount.  And as I have said in other answers, I believe the key difference between a private (almost ivy) school like Duke and a larger, top ranked public univ (Berkeley), is consistency of quality students.  I have known some superb Berkeley undergraduates who would blow away many Ivy leaguers.  But compared to the larger student body, they are a small top group. In contrast at the ivies (and Duke is pretty much in that group though not an official Ivy), the quality is incredibly consistent. Nearly every student is outstanding in every respect, simply because they had to be in order to gain admission.  So learning from a smaller group of top students as your peers in my mind is preferable to learning from a larger group, some of whom are the same quality of top students. Second, as much as I admire and deeply respect nearly the entire UCB CS faculty, the UC system has suffered significantly in the last few years in budget cuts and support from the state.  UCB and the CS department have weathered the storm amazingly well, but there is still impact.  For starters, I think class sizes are a real problem, and it is relatively easy to get lost in what has become a massive CS department (EECS really, but CS division).  I think finding time with the top faculty is likely very difficult, and getting access to undergraduate research opportunities is much harder (simply because it's harder to stand out in large classes).  The opposite is true at Duke.  I think the department is growing nicely, in critical areas like data mining and ML, and is still small enough to be very nimble. There should be research opportunities abound for undergraduates, and class sizes are quite small. Third, proximity to silicon valley.  I actually think you're underestimating the impact of location for Berkeley. I would lean heavily towards berkeley for this. As significant as it is, research triangle is nothing compared to silicon valley.  When was the last hot startup you heard hailing from NC? Nope. This goes to UCB easily.  If you want to do a startup or join one after graduation, UCB. Fourth, academic reputation.  UCB is hands down the best public university in the country.  But Duke has steadily increased in reputation over the years. I think it used to be mid to high teens in US News when I was choosing colleges, but is now right up there with the top schools (and many ivies). Another thing goes for Duke is that the student population is small.  You'll stand out with a Duke degree, much more than a UCB undergrad degree, simply because there are less of them around.  Add that to the amazing alumni network that Duke has, and this factor leans heavily for Duke. So, those are things that I considered for this question.  PS. I would strongly caution against the "I'm really smart and I'm going to learn everything myself" attitude.  Nearly every top student has that mentality coming in, and they usually find out very quickly just how competitive these top schools are.  Make no mistake, you'll be competing against your peers to stand out, for internships, for GPA, for graduation honors, for research opportunities.  Any complacency will be a big negative in today's competitive atmosphere.  And really, if you're going to spend $20K+/year to go to a top school, why would you not exploit every single resource there?  You can take moocs when you graduate, just like other millions of people who didn't have the opportunity to attend Duke or Berkeley.  And trust me, you'll learn much more from your peers than from MOOCs; they are a poor substitute for real learning.  If classrooms and the university experience were that easily replaced, they would have disappeared after the arrival of textbooks. EDIT: I forgot your detail about wanting to study AI. Michael Jordan at Berkeley is, well, the Michael Jordan of AI. You would certainly want to work with him. But while you may be able to get some time with him as an ugrad (I doubt it, he already has a glut of grad students eager to work with him), I think the best path is to do great ugrad research with the new faculty Duke hired in ML and bigdata (they're very good, maybe Michael Jordan's in the making), and then go to Berkeley for your PhD.

Ben Y. Zhao

Definitely go to Berkeley, if only for the sole reason of your AP credits. At my alma mater the University of Michigan, I entered with a bunch of AP credits and started taking senior-level and graduate-level courses by the end of my sophomore year. This really gives you a head start on research and really you stand out. AI requires a lot of advanced classes; a simple undergraduate degree isn't going to cut it for any sort of interesting AI work.

Dan Zhang

Writing in primarily to correct the comments that Duke is "significantly" more selective than Cal. Statistically, both admit nearly the exact same percentage (this year Cal admitted 17%, as Duke did last year). Also surprised at the number of people who are saying Duke is more prestigious. Maybe it's a regional bias issue, but as someone who was born and raised in CA, and now works in Silicon Valley, I've certainly never gotten that impression (especially in engineering). My sense was always that they were essentially peers. Just because a school is more expensive does not mean it is more selective or prestigious. (I did not attend either school FYI)

Anonymous

Be at the best place you can possibly be at any point in your career to open up future opportunities. I respect the duke faculty but berkeley's strength in statistical machine learning and particularly the strong overlap between cs and stat makes Berkeley the place to be. The only downside is that we have been so successful in this area over the last few years that every school is trying to hire our faculty away, with more success in stat thanin cs, at least so far.

Randy Howard Katz

a2a. These are both excellent schools for the many reasons already noted. If you know what specific aspects of the major are of interest, you can look into the respective professors and their labs to see which school has more focus on your area of interest. Unless there's a clear advantage in focus, I would vote for Cal because of proximity to the Silicon Valley. You will have access to a much more broad range of AI opportunities by being in the Bay Area.

Jacque Swartz

The only difference between top universities is the faculty, students and alumni. Both schools will give you access to the next step which is probably a job or graduate school. If the cost of the schools, the amount of student debt, is the same, there is no economic advantage; however, if the cost is different, is the extra cost justified? I suggest that you look at the academic AI details for http://www.cs.duke.edu/research/artificial/ and  http://www.eecs.berkeley.edu/Research/Areas/AI/. Assuming the cost is the same, what program offers you more? If you are looking for the next step of graduate school, compare rankings in  http://grad-schools.usnews.rankingsandreviews.com/best-graduate-schools/top-science-schools/artificial-intelligence-rankings. Which school do you think will give you an advantage?

J. Lee Anthony

I would say UC Berkeley, mainly because you are closer to the heart of the technological world. Chances are you will make friends and learn from people who will end up in the valley.

Mark Dhas

Just Added Q & A:

Find solution

For every problem there is a solution! Proved by Solucija.

  • Got an issue and looking for advice?

  • Ask Solucija to search every corner of the Web for help.

  • Get workable solutions and helpful tips in a moment.

Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.