Thursday, February 16, 2017

On Track

So we started block 3 last week. So far, I'm not doing a great job of keeping up with this blog, but I'm not too surprised.

It's difficult to know where exactly I'm heading. There's a lot of opportunities, but it's a little hard to tell which will pay off the most. Our program is structured with three different types of research tracks:
Agents, which focuses on agent-based programming and the logical structure and function of agents;
Cognitive modeling, which focuses on modeling behavior in order to understand intelligence, cognition, neurology, etc.;
Linguistics and logic, which focuses on the role of reasoning and language in intelligence and communication.

One might think that the agents track would be the most fruitful in terms of AI careers and applications, but also the most difficult for individuals without a programming background. I decided to go with cognitive modeling, since that is most relevant to my previous education, but I also took (and am taking) the agents-track courses in addition. I was surprised to find that there was actually more programming (using R) in my cognitive modeling coursework than in my agents coursework, which instead consisted entirely of logics and the history thereof. For the first part of last block, the agents course was actually incredibly boring, but the latter half began to get a little more interesting, and in the end I feel like I learned a fair deal...but still have little clue how to go about programming an agent.

Thus, we're still in limbo. I would like to learn more about programming, data, and agent systems, but I'm not sure how I'll accomplish that with enough competence to be employable in those areas by the time I graduate.

Won't stop me from trying, though.

I'm interested in and plan to tackle areas of experimental research in psychology or neurology, gaming and game creation, and other somewhat open areas like ethics in AI or emotional systems. It's not exactly the most concise list of potential paths, but I think there're opportunities still open that'll make themselves clearer with time. I would love to do things that would synthesis tech with altruism, like games or AR for improving mental health or even therapy options, or working to create ethical policies for use of AI. I would also like to do research, but I'm a bit wary of that path--I feel strongly that research should be beneficial and not just blindly consumeristic, and I feel at times that research done purely in academic settings can be a little blind to the strides and needs of the non-academic world. But, I would not be at all opposed to embracing good opportunities in those areas.

This block, I'm taking a class in experimentation in psychology and linguistics (with a focus on ways to collect and handle data through channels like Ibex Farm and R), and a class on multi-agent systems, which I suspect will also be more theoretical than technical, but hopefully still informative. I am also auditing a class on coursera for programming with python, mostly as a refresher--by the end of the year (or maybe even by the end of the summer), I'd like to be proficient enough to handle the language creatively. If all goes well, python and R will both have a place in my skillset and resume.

Time to keep discovering and working hard!

Saturday, January 21, 2017

Where to go from here

Any field of study has a rich and complex backlog of history and influences. While the subject itself might seem like a independent area with its own trajectory and interests, becoming familiar with it usually reveals a trail of inspirations and catalysts from many other seemingly-different fields--no idea materializes in a vacuum. Understanding the foundation of a subject thus becomes much more interesting...but also much more complicated.

In the case of AI, learning the background has been kind of hard to pin down, if only because the field is so young. It's not that there isn't a lot of clear influences--the opposite, in fact. It seems like the field is still defining itself and pulling inspiration from a number of places. Compared to, say, biology or physics or even computer science itself, there doesn't seem to be a defining era, an identity born from many decades of cobbling together concepts and brilliant minds--it feels instead like resources are still being gathered and major foci discussed. There isn't a sort of advantage of hindsight, at least from my perspective.

It could also be, of course, that I am not in the optimal spot for clarity. I didn't enter through the channel of a bachelors in CS, so it could be that I missed out on some of the foundational concepts. Instead, we're learning about the philosophical and ethical issues, about the problems with formal logics and linguistic semantics that are occurring to the present day, about the feedback to and from the fields of psychology and neurology. It seems like many of the concepts we're covering is not just computer science, but how computer science alone could not handle the task of creating intelligence with the tools they've made for other applications. Earlier attempts to answers the question of "how to create a rational agent" ended in a wall of limitations, both in terms of computational resources and infinite logical possibilities--more thought and research seemed to reveal that perhaps, pure logic that disregarded human "irrationality" doesn't seem to work as well as it sounds when dealing with a fast-paced, irrational world. The drawing-board has been revisited many times and from many angles, and a balance is still yet to be fully agreed upon.

From an individual perspective, jumping into the deep end of "where to go from here" certainly makes it difficult to find a useful niche. It feels like there are many branching paths, and any of them could be fruitful just as any of them could be a dead-end. There are many opportunities, but few of them seem available to someone who isn't pretty well up-to-speed with many different areas of contention. The question then is: does one devote time and resources to a global understanding of the current state of the field, or does one choose to pursue mastery over a distinct branch within? What is the optimal balance? While I'd love to focus more on the former, the approach of thesis-time is looming, and one cannot study without results forever. In a little over half a year, I'll have to contribute to this mass of information in this rapidly-developing field.

It's hard to make a choice like that when you feel like you know basically nothing. But little by little, learning about the history and the way logics have changed and the leaps that have been made in modeling...I think I'm making some progress, at least.