Have I started too late to get into a good graduate program?

I started my first year of undergrad as a neuroscience major at an ok school, then transferred to a better academic school where I took courses for a biochem/math major fall semester - for all three semesters, my gpa was 3.7 or above. Fourth semester, I did not know what I wanted to do and was struggling with personal problems. I wound up taking 6 courses (not including labs), all of which were considered very difficult classes, and I withdrew (passing) from one (linear algebra) - I wound up getting a 2.95, and a C+ in one class, bringing my gpa way down.

Obviously that was a really bad semester for me, but now I have a much more focused view of what I want to be studying and I would like to go to grad school for computer science. I am planning on completing a major in math and a coordinate major in computer science. Right now my math gpa is something around a 3.8, and I am hoping to take linear algebra in the fall and get an A to possibly take some weight off of the withdrawal…

I would like to know if my chances of getting into a reputable (and maybe even a top) graduate program focusing on AI or machine learning, and what I would need to do besides obviously getting higher grades in my last half of undergrad.

Your change in majors is normal. Most students change their majors.

I think that the main thing is to get top grades from here on. I would avoid taking six classes at once. My guess is that you will be fine, but it has been a long time since I went to graduate school (I did get into a good program with one C in an in-major class).

It might be helpful to get involved in some research or obtain some work experience. What have you done outside of the classroom?

Right now I’ve been working part time jobs, as I can’t really afford unpaid things right now and I haven’t been able to get a paid internship, although I’m hoping that will change as I take classes/have more experience in the field - I’ve been learning programming languages/skills on my own as well (which is also what I did before taking any computer science classes) and was allowed to skip some prerequisites because of it

If you want to attend a good (especially top) grad school you HAVE to have research experience.