ChadGPT: Caregiver helper for autism dynamics – a Generative Personalized Teammate

Autism spectrum disorder (ASD) affects 1 in every 36 children, including my brother Chad. Individuals with ASD as well as their loved ones and caregivers often struggle with communication, especially if the individual with ASD is non-verbal. Struggling to understand a loved one’s needs can take an enormous toll on a family as resources and support for children with ASD can be scarce. However, with the rapid improvement of artificially intelligent (AI) systems and the increasing amounts of available data through medical records, behavioral reports, pictures, videos, and the Internet of things, AI could provide a non-trivial amount of relief. For example, large language models (LLMs) supported with retrieval-augmented generation (RAG) could serve as a knowledgebase of personalized information for an individual with ASD. This knowledgebase can document years of behavioral patterns, preferences, and signs of distress that could take weeks, months, and even years for new caregivers to learn through experience. Thus, while there is little research on how LLMs can help individuals with ASD, the limited amount of it suggests that it can improve barriers with communication (Jang, Moharana, Carrington, & Begel, 2024) (Iannone & Giansanti, 2024).

ChadGPT stands for Caregiver helper for autism dynamics – a Generative Personalized Teammate. As the name suggests, it is designed to help caregivers understand their loved one or client with ASD better. As a prototype, it is a RAG application that is built using Llama3.1-8b, Pinecone, and Docker (inspired by the Cerebras example on the inference docs), and leverages Cerebras’s superior inference time compute, which could be vital for making real-time decisions in emergency situations. The system uses PyPDFLoader for processing documents, Cerebras's llama3.1-8b model to provide caregivers advice and instructions, and searches Pinecone to find the most relevant information chunks. A Pinecone and Cerebras API key are needed to run the system and are entered in a sidebar panel.

In its prototype phase, caregivers just need to import a document or set of documents that contain information regarding their client’s medical needs, behavioral patterns, hobbies, preferences, and even anecdotal experiences. While it is still in the prototype stage and relies on text retrieval and generation, the ultimate form of ChadGPT could potentially be multi-modal. By combining an up-to-date foundational knowledgebase with live video and audio, real-time behavioral, emotional, and physiological analysis is possible. While the realization of this kind of technology is still distant, the foundational RAG-augmented LLM will be a core component in the final design.

ChadGPT GitHub Repo

Bibliography

Iannone, A., & Giansanti, D. (2024). Breaking Barriers—The Intersection of AI and Assistive Technology in Autism Care: A Narrative Review. PubMed. https://pmc.ncbi.nlm.nih.gov/articles/PMC10817661/

Jang, J., Moharana, S., Carrington, P., & Begel, A. (2024). "It's the only thing I can trust": Envisioning Large Language Model Use by Autistic Workers for Communication Assistance. arXiv. https://arxiv.org/html/2403.03297v1

 Pictures of Me and Chad ~2005-2006 and in 2024

The Distracted Mind

I’m scatter-brained right now. In the past week, I’ve reviewed concepts from quantum mechanics, artificial intelligence, fluid dynamics, biomechanics, quantitative finance, computer programming, numerical analysis, novel writing, and chess; my poor brain can’t keep track of it all! It is why I’m writing now. Writing helps slow down my mind when it feels as if it’s moving at the speed of light. I try to give each word I write the attention it deserves, and in doing so, the swarm of thoughts must slow to a trickle. Deep breaths after each sentence also help.

 

It feels as if there is too much to learn, and not enough time. While this has always been true, it feels even more true today in 2024 than ever before in human history. We have so many distractions to choose from. From our phones, tablets, and computers, there are millions of apps, videos, articles ready to eat up some of the 86,400 seconds that make up our day. Not only are they there, but I am aware that they are there. That awareness itself consumes some of the finite amount of energy available for me to spend. Ignorance is bliss is now making more sense with each passing day.

 

What is the solution? Do I merge with AI? Get an implant in my brain to increase my functional capacity to memorize and learn? I sure hope not. At least not yet. Would merging with AI take away the joy of learning, or increase it exponentially? Is the joy of learning derived by cutting through the struggle of ignorance in your previous state? It certainly feels that way to me, but maybe because it is the only way I’ve known how to learn. The amount of available information to learn is growing every day, and my ability to learn it all remains stagnant, and will decline as I age. Maybe that’s the issue. The thought that it is even possible to learn it all. It’s not. At least until we merge with AI maybe. Until then, I think the best I or anyone like me can do is to accept the limitations of the human brain. Choose your battles wisely. Don’t overload yourself with too many topics. Pick a few at a time and focus intently. It sounds nice in theory but will be much more difficult to implement in practice. I know myself too well. Even still, I will try to reduce my cognitive load. Distraction is omnipresent nowadays, and I need to be able to focus if I’m going to learn even a small fraction of all the knowledge I want to learn by the time I’m no longer here.

My 2023 Learning Journey in Review

On this last day of 2023, I want to reflect on my learning journey this year. As the adage goes, "The end of one journey is the beginning of the next". In June 2023, I not only finished my PhD in Physics from the University of California, Irvine with the culmination of my thesis on the dynamical mass measurements of supermassive black holes, but I also started a new and independent learning journey.

Admittedly, this journey was motivated by the desire (more so the need) to get a job. I decided academia was not for me, and one of the main reasons was the constraints it placed on my ability to learn (being unable to get a postdoc was also a big reason). Sure, I learned to a depth where I became a supposed expert on my dissertation topic, but during the past 6 years I felt there were many other topics of interest I had to forego learning to complete my PhD. Reading the same types of papers on the same concepts for 5+ years had made me too narrow. I personally feel that I thrive when I get to engage with many different ideas and topics, as opposed to sticking with just one or a few. Then, I found Coursera (I promise I am not sponsored by them; I swear!).

Coursera to me was a return to a mode of learning I was familiar with and that I enjoyed: Online video courses. You see, I attribute much of my success in academic environments to my vast consumption of YouTube educators during YouTube’s infancy. To me, watching creators like KhanAcademy, PatrickJMT, Doc Schuster, and many others in high school made learning FUN. I could go at my own pace, pause when I needed time to absorb things, and rewatch their videos as many times as I needed to finally make the topic stick in my brain. I am not and have never been someone who quickly absorbs new material. For example, it took me 3 separate course (2 in high school, 1 in college) that featured Newtonian Mechanics before I felt I truly “got it” and felt confident enough to switch my major to Physics. I remember watching PatrickJMT and KhanAcademy for hours the night before Math exams in college and having it pay academic dividends.

After 6 months of using it, I can say with confidence that Coursera has made learning fun for me again. I started with the magnificent Machine Learning (ML) Specialization course taught by Andrew Ng, one of Coursera’s Co-Founders, and a titan in the ML community, since I felt that deepening my knowledge in this area would be important for the current times that we live in. This course did not disappoint. I would even go as far to say that I would not have the job I have now if I did not take this course. The ML Specialization course was like a new source of food for my brain, which had been strictly on a supermassive black hole diet for several years. And, as an object in motion tends to stay in motion without an external force to slow it down, I felt that with my PhD behind me, there were no external forces (aka academic obligations) to slow my new learning journey’s momentum.

Learning has and will always be a solace for me. I especially needed it this year. Many of you reading may not know this, but my 2023 was additionally complicated with health issues that started in May and persisted through both the Summer and Fall seasons. Now, as we approach a New Year, I am happy to say these issues have largely been resolved, though I remain diligent to this day in making sure these issues do not return. To distract me from the daily pains I felt over the course of several months, I started other Coursera courses to help keep my mind occupied on novel and fascinating ideas, as well as develop new skills. This was preferable than allowing it to wander and focusing on the despair that often accompanied my pain.

As 2023 ends, I want to use this post as a way for me to look back and say, “Wow, I did all of that in half a year?!”. I also want to use this post to encourage people to actively seek out the joy that comes with learning. Whether it is a new skill like computer programming, learning a recipe for a certain dish you have always been curious to try, or nailing a skateboarding trick that has tripped you up in the past, please embrace the challenge it poses! Most importantly, have fun with the process, as even when it feels we are lost, it is through the joy of discovery that we truly find ourselves.

Coursera Courses I’ve Taken in 2023:

1. Machine Learning Specialization by DeepLearning.AI + Stanford University

2. IBM Data Science Specialization

3. Remote Sensing Image Acquisition, Analysis, and Applications by UNSW Sydney

4. Introduction to High-Performance and Parallel Computing by University of Colorado, Boulder

5. Natural Language Processing on Google Cloud by Google

6. Introduction to Git and GitHub by Google

7. Financial Markets by Yale University  

"Think Like a Data Scientist": Chapter 2 Summary

Chapter 2: Setting goals by asking good questions

The second chapter of Think Like a Data Scientist is all about asking good questions in data science projects. Good questions help clarify subtleties in data science projects and help identify potential future pitfalls and roadblocks. The answers to these questions help data scientists devise plans in anticipation of these roadblocks, and give them multiple plans of attack against the problem. In my mind, it sounds like a game of chess or a big branching decision tree filled with “If this, then that, but if instead this, then instead THAT!”. That’s my attempt at simplifying the concepts at least.

There are two main sources that must be questioned: the customer, and the data itself. The customer is the individual or organization who is paying you to do the data science project. Customers could be businesses, academics, government agencies, or individuals within those organizations. Regardless, it is imperative to ask the customer good questions because they have the domain-specific knowledge. Perhaps you’re a data scientist working in finance, and your customer is an investment banker trying to use data to make good investments, or perhaps your customer is a botanist asking you to design a plant-identifying algorithm. Who knows? Regardless, there is a good chance as a data scientist that you will not have the domain-specific knowledge to the problem. Asking good questions to the customer such as what they expect to see in the final product or report, or what they think will be the most valuable pieces of data to examine, is vital.

Interrogating data is also part of the job. Before getting started on a data science project, it is incredibly important to know what exactly your data consists of. This means knowing what format it is in, what information it contains, and importantly, can it answer the question you’re being asked to answer? Also, it’s important to highlight that good questions are concrete in their assumptions. By concrete, this means the assumptions are both well-defined and testable. Having assumptions that are ill-defined and non-falsifiable is often a recipe for disaster. Some questions that you might ask as a data scientist, generally speaking, may involve questions regarding the statistical properties of the dataset (Can I assume normality? Are the data points independent of each other?, etc).

Lastly, a data science project should have a set of goals in mind from the start. The three key questions to ask when coming up with goals are:

  1. What’s possible?

  2. What’s valuable?

  3. What’s efficient?

As discussed in the Chapter 1 summary, uncertainty is the name of the game when it comes to data science. It may not be clear if a goal is possible at the start without first asking and answering some good questions. In terms of value, it is worth discussing with the customer what you think would add value to the final deliverable product. For example, if the product is a web application for customers, what would it look like/what features would it provide/what would customers find helpful? Finally, efficiency is defined as the following equation:

$$ Efficiency = \frac{Value}{Effort} \times Possibility $$

as in, the overall efficiency in achieving a goal is the ratio of the amount of value it delivers to the amount of effort it required to achieve, multiplied by the probability of achieving the goal. These three components all play a role in the efficiency of a project, and data scientists often need to make decisions whether the value a goal delivers is worth the effort or if it’s even possible in the first place.

That’s it for my summary on Chapter 2 of Think Like a Data Scientist by Dr. Brian Godsey! I’ll be reading Chapter 3 soon and will write a blog post about it soon!

The Job Hunt Begins + "Think Like a Data Scientist": Chapter 1 Summary

Preface

As I enter the “post-PhD phase” of my life as I like to call it, I have been on the hunt for my next job (Bye, Academia!). Now, I know it’s a joke at this point that STEM PhDs (particularly Physics PhDs like myself), who don’t go into academia try to jump ship into Data Science, but who can blame us? It’s new and exciting, the US Bureau of Labor Statistics predicted a 36% growth in the number of jobs between 2021-2031, it pays extremely well (US median salary of $101,000 in 2021 also from the U.S. Bureau of Labor Statistics), and a Harvard Business Review article from 2012 says it’s the “Sexiest Job of the 21st Century”. I will admit, though, I am a bit sad to relinquish my “Astrophysicist” job title so soon after getting my PhD, but alas…

To help me with my attempt at a transition into Data Science, I started reading the book, “Think Like a Data Scientist” by Dr. Brian Godsey. Now, reading is one thing, but understanding and communicating what you read is another. To help me with the latter two actions, I thought it would be a fun little side project to summarize the book in my own words, chapter-by-chapter to help retain the information I read, so without further ado, let’s begin the summary!

Chapter 1: Philosophies of Data Science

The opening chapter of the book introduces some key philosophies when working as a data scientist, as well as the roles data scientists play within a company or organization. Dr. Godsey states that the greatest asset of a data scientist is awareness. This is particularly important when solving problems that possess many uncertainties. Data scientists need to be able to foresee potential problems before they occur by considering multiple solutions to a problem and assessing the relative strengths and weaknesses of each approach. Knowing where potential road blocks will occur is especially important when it comes to planning for all the challenges a data science problem will have.

A section of this chapter covers the differences between a software developer and a data scientist. While there are commonalities between the two positions, they play different roles in an organization. As the title implies, software developers, develop software (Wow, who would have guessed?) and systems that typically have well-defined components, whereas data scientists typically have to work with systems or processes that aren’t necessarily well-defined (which is why they have to be good at dealing with uncertainty). Software developers typically have specific programs, code libraries, and proper documentation for most of the tools they use, whereas data scientists sometimes have to design their own tools from scratch, without necessarily clear guidance, though thankfully with the advent of open-source software, many data scientists share the tools they build on platforms like GitHub.

The priorities of a data scientist are as follows:

  1. Knowledge: Know the data and the problem you’re trying to solve as well as possible.

  2. Technology: Software is a tool. Don’t let it dictate solution to the problem unless absolutely necessary.

  3. Opinions: Intuition and wishful thinking should only be used as guides to theories that can be falsified and tested, and should not be the sole focus of the project.

Dr. Godsey recommends that IF you were to violate this hierarchy, you should only do so knowingly and for good reason (such as if you’re racing against a time/resource constraint, and thus you need to use the available technology to solve the problem as opposed to building a new tool)

DOCUMENT your code! Don’t be like Kyle who writes code and forgets how it works several months later because he didn’t properly comment it. Also, unlike Kyle, adhere to good coding standards and practices such as PEP8 for Python. To be fair, Kyle or I, didn’t know about any of these things when learning how to program in Python, so the bad habits were implanted from the get-go, but I promise that I will be better!

Use Version Control! It is incredibly important in large data science projects, especially when working within a team. Learn how to use tools such as git and GitHub to keep a record of the all the changes you’ve made to your code.

If you’ve read this far, thanks for reading this summary of Chapter 1! Stay tuned for more summaries to come!

I Was a Writing Minor Once

2023 marks 10 years since I started my journey in higher education. As an undergraduate at the University of California, Merced, I initially started out as a mechanical engineering major. Given my increased interest in both math and physics during the last two years of high school, it was a practical choice. Yet, after a few weeks of interacting with other engineering majors, it soon became apparent that we did not have a lot in common. While tinkering on car engines, building robots that fight, and flying remote-controlled drones were all interesting in their own way, I was captivated by more abstract topics like Euler’s identity and Schrodinger’s cat. It was from this realization that by the end of my first year, I had abandoned any notion of becoming a mechanical engineer and promptly switched my major to physics in hopes of becoming a theoretical physicist (not that that panned out either).

 

My sophomore year saw another dramatic change in academic pursuits. I started the year by declaring a minor in Writing. As a high school student, I had enjoyed writing essays in my English and History classes and had hoped to bring somewhat of a balance to my now STEM-heavy education. I also was partially inspired to do this to follow in the steps of my grandfather (now deceased) who was a journalist by training and had written for Filipino newspapers in both the Philippines and the United States and had covered the Vietnam War on site. Initially, I had grown to like my writing classes very much. I always felt my writing was a bit stale and flavorless (perhaps you who read this agree?) in comparison to my high school peers, and thought it was starting to blossom into something one might even call eloquent. I recently took a glance at some old writing assignments during this period and found I had started writing fiction about a serial killer (I watched way too many TV crime shows in middle school and high school), and a fictional story starring the great mathematician Leonhard Euler (so much for a break from STEM). It was fun to write creatively and let my imagination roam. A seemingly infinite number of ideas and stories, from fantastical to unexotic could come to life with the click of my keyboard. All appeared well, as I had finally settled what my academic major and minor would be, or so I thought.

 

If you wanted to know why I ended up switching my minor from Writing to Applied Mathematics, the only explanation I can provide is, “the heart wants what it wants”. At some point in my writing classes, I found myself growing bored, and as a way of entertaining myself, I would start scribbling down and solving math equations in my notebook. The joy of solving a mathematical problem was a feeling that not even my enjoyment of writing could parallel. The writing classes at that point also required us to perform, in my opinion, tedious exercises that I did not see value in. In hindsight, I probably should have just been a better writing student by bearing through the monotony, but that 19-year-old version of me had other plans. He wanted to go all-in on physics and math, and so that brief period as a Writing minor came to an end.

 

Is there a lesson to all of this? Maybe it’s to not give up on something so easily. Or maybe it’s to go with your gut. Would my life be dramatically more different if I didn’t switch my minor? I’ll never know for sure. I do know, however; that having the Applied Math minor reinforced a lot of the physics I learned and served me well when the mathematics got “turned up to 11” in my graduate physics courses. In the end, the person we are is simply the product (Or maybe the sum? Can a mathematician get back to me on this?) of the decisions and indecisions in our respective lives. Perhaps, in another life, I stuck with the Writing minor and used that in tandem with my physics major to become a science writer for a magazine immediately after I graduated UC Merced. Or maybe I ended up becoming a best-selling science-fiction novelist (not likely)! Regardless of what I could have been, I just try to accept who I currently am: an ever-changing human in an ever-changing world, just trying his best to navigate the journey that is his life.

Still Alive

1352 days. That’s how long it’s been since I last blogged, and a lot has changed since then. Not just with me, but with the entire world. Since the last time I wrote, there has been:

  • a worldwide pandemic featuring an entity called the coronavirus, which killed millions across the world

  • government ordered lockdowns in multiple nations across the world to prevent virus transmissions

  • a change in the US presidency

  • multiple vaccine doses developed to protect us against the coronavirus

    and a lot more that I’m too tired and frazzled to write about. It has also been more than 3 years of my PhD since my last blog post! As of this writing, I am supposedly only 7 months away from commencement at UCI where I will be receiving my PhD in Physics. It’s crazy to think that this much time has passed. I hope to get back into writing, whatever that means. I guess it means not waiting > 3 years to make a blog post. That, I think I can accomplish. Oh gosh, I’ll be 30 within the next 3 years. That’s a terrifying thought.

    Anyways, thanks to anyone who read through this scattered post, just thought should know I’m still alive.

End of the Quarter Thoughts

Hello again, I know it’s been quite some time since my last post (~4 months)! Graduate school has been keeping me super busy as usual, and so much has happened since November, I just wish I could get it all out in this one post, but knowing myself, I don’t think that will be likely. Do you ever want to do something but never do because you feel like you want it to be perfect and you’ll do it once you’re sure you have enough time to dedicate to it? Yeah, well, that’s me with a lot of things, but I especially with my blog. It’s those dang perfectionist tendencies of mine that seem to ruin a lot of good ideas for me. I’ve wanted to make more blog posts and YouTube videos, and yet I have this nagging feeling that they need to be absolutely perfect before release. The problem is, that they’ll never quite be that, even with extra time. I think that’s one of the things that hold me back, the fear of doing/being imperfect at something. I think it would do me some good to just, as Nike says, “Just Do it”. Too many times I come up with thoughts and ideas that I would love to see come to fruition, only to get lost to the myriad of “I don’t want to put it out there if it’s not perfect”, or “Yes, but do I REALLY have the time to dedicate to this?” Most of the time, I’d say the answer to the 2nd question is actually yes, but I just have yet to find a way to manage my time on doing side projects and hobbies. I understand as a graduate student that school and research need to be my top priorities, but I think it’s important for me to make time for the things that I like to do such as reading, writing, making YouTube videos, blog posts, etc. While I may not be able to dedicate as much time per day to them as I might my schoolwork, I think that having the diligence and patience to dedicate a little time every day or even every now and then will go a long way.

Pre-Veteran's Day Weekend Reflection

It’s been a strange quarter. As some of you may know, I’ve been dealing with a leg injury that dates back to July (torn joint cartilage that required surgery), and I’m still getting physical therapy twice a week to help strengthen my left leg. On one hand, I’m grateful that I have been recovering, and that I should be fully recovered in a few more months, but on the other, it feels as though this process has been testing my patience. Being a former athlete and a semi-regular gym attendee at UCI, it’s hard to go 4+ months of relative physical inactivity. No jumping, running, shooting hoops, strength training at the gym, you name it. I guess since I’m inching my way closer to recovery, I’m getting that itch to start doing stuff again like before, but at the same time, I feel as if those aspirations are still in the distant future.

I thought it might be worthwhile to reflect on my second year as a graduate student so far. It feel much less hectic than my first. As a graduate student researcher (GSR) at UCI, I don’t have to be a teaching assistant, which was my occupation all last year. I’m still wrapping my head around how I was able to pull off taking 2-3 classes while TA-ing simultaneously last year, but it was a different time with a different set of circumstances I suppose. I remember as an undergraduate wondering what it would be like reaching the point where my research would overtake my classwork as my top responsibility. I was nervous, as although I did do research as an undergraduate, it never was my top priority. Getting good grades and working my job at the time were, and research was something I would try to make time for but not stress over (well for the most part). Now, as a second year graduate student, research definitely feels like my main priority. Although it can be hard at times, I can safely say that I am enjoying the process of developing a Python-based model to estimate black hole masses. Each day presents a new puzzle to solve and new lines of cone to debug. I celebrate little victories when things go right, (such as when my code actually runs), and try not to dwell on the parts that stump me. I think that’s the fun part: constantly trying to solve problems. It’s like a little puzzle that’s presented to me, and my task is to solve it before long. Funnily enough, when my advisor gives me instructions on how to perform certain tasks, they at first sound very complicated, but with enough research and hard work, the solution reveals itself in time.

Now, with the 3 day weekend approaching, I’m going to try and relax a little bit, gather my bearings, and prepare myself to make a push towards completing an important step of my modeling code before Thanksgiving.

Hello World!

It is with great pleasure that I can finally say I have my website up! I had thought about creating a website as an undergraduate and as a first-year graduate student, but unfortunately I didn’t have the time (and perhaps the patience) to learn how to code in HTML or learn how to use other website platforms such as WordPress, Google Sites, or BlogSpot. Nonetheless, I heard about SquareSpace and deemed that its ease of use was worth the price (plus I got a student discount).

I’m hoping this website can serve as a place where I can share my thoughts, advice, and experiences as both a current graduate student and beyond. There is a part of me that wishes I had done this sooner, but as the old saying goes, “Better late that never!”.