{ "cells": [ { "cell_type": "code", "execution_count": 18, "id": "9314d879-5d50-4766-8a39-c8e9752066a9", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Shape: (1469598, 31)\n", "Columns: ['id', 'author', 'title', 'CreatedAt', 'permalink', 'url', 'domain', 'score', 'ups', 'downs', 'over_18', 'has_media', 'selftext', 'retrieved_on', 'num_comments', 'gilded', 'edited', 'time_edited', 'subreddit_type', 'subreddit_id', 'subreddit_subscribers', 'name', 'is_self', 'stickied', 'quarantine', 'error', 'subreddit', 'Month', 'Year', 'Day', 'subreddit_hash']\n", "\n", "Years: [np.int64(2020), np.int64(2021), np.int64(2022), np.int64(2023), np.int64(2024)]\n", "Subreddits: ['adhd', 'adhdwomen', 'audhdwomen', 'autism', 'autisminwomen', 'autisticadults', 'autisticwithadhd']\n", "Shape: (17551619, 20)\n", "Columns: ['id', 'link_id', 'parent_id', 'CreatedAt', 'author', 'ups', 'downs', 'score', 'edited', 'time_edited', 'subreddit_type', 'subreddit_id', 'stickied', 'is_submitter', 'body', 'error', 'subreddit', 'Month', 'Year', 'Day']\n", "\n", "Years: [np.int64(2020), np.int64(2021), np.int64(2022), np.int64(2023), np.int64(2024)]\n", "Subreddits: ['adhd', 'adhdwomen', 'audhdwomen', 'autism', 'autisminwomen', 'autisticadults', 'autisticwithadhd']\n" ] } ], "source": [ "# ── Libraries & Data Loading ─────────────────────────────────────────\n", "import html\n", "import re\n", "import pandas as pd\n", "import numpy as np\n", "\n", "# comments = pd.read_csv(\"comments_2020_2025.csv\")\n", "posts = pd.read_csv(\"submissions_2020_2025.csv\")\n", "\n", "print(f\"Shape: {posts.shape}\")\n", "print(f\"Columns: {posts.columns.tolist()}\")\n", "print(f\"\\nYears: {sorted(posts['Year'].unique())}\")\n", "print(f\"Subreddits: {sorted(posts['subreddit'].unique())}\")\n", "\n", "print(f\"Shape: {comments.shape}\")\n", "print(f\"Columns: {comments.columns.tolist()}\")\n", "print(f\"\\nYears: {sorted(comments['Year'].unique())}\")\n", "print(f\"Subreddits: {sorted(comments['subreddit'].unique())}\")" ] }, { "cell_type": "code", "execution_count": 19, "id": "38698ed1-95db-40cc-b8ca-97b86feeb8ea", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Sampled posts: 100,000\n", "Matched comments: 1,193,523\n", "Total rows: 1,293,523\n" ] } ], "source": [ "# ── PILOT VERSION ONLY: Sample posts and comments ──────────────────────────────────────────────────────────────\n", "posts_sample = posts.sample(n=100_000, random_state=42)\n", "\n", "# ── Keep only comments linked to sampled posts ────────────────────────────────\n", "sampled_post_ids = set(posts_sample['id'])\n", "comments_sample = comments[\n", " comments['link_id'].str.replace(r'^t3_', '', regex=True).isin(sampled_post_ids)\n", "]\n", "\n", "print(f\"Sampled posts: {len(posts_sample):,}\")\n", "print(f\"Matched comments: {len(comments_sample):,}\")\n", "print(f\"Total rows: {len(posts_sample) + len(comments_sample):,}\")" ] }, { "cell_type": "code", "execution_count": 37, "id": "0a16ff90-c3a7-4bc3-8308-e89dabbe7f1c", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Posts after cleaning: 64,986 / 100,000\n", "Comments after cleaning: 1,153,674 / 1,193,523\n", "\n", "Unified table shape: (1218660, 9)\n", "Type breakdown:\n", "type\n", "comment 1153674\n", "post 64986\n", "Name: count, dtype: int64\n", "\n", "Subreddits: ['adhd', 'adhdwomen', 'audhdwomen', 'autism', 'autisminwomen', 'autisticadults', 'autisticwithadhd']\n", "Years: [np.int64(2020), np.int64(2021), np.int64(2022), np.int64(2023), np.int64(2024)]\n", "Rows after keyword filter: 210,403 / 844,401\n", "\n", "Type breakdown:\n", "type\n", "comment 174886\n", "post 35517\n", "Name: count, dtype: int64\n", "\n", "Subreddits:\n", "subreddit\n", "adhd 85625\n", "autism 53293\n", "adhdwomen 34679\n", "autisminwomen 23000\n", "autisticadults 7386\n", "autisticwithadhd 4176\n", "audhdwomen 2244\n", "Name: count, dtype: int64\n" ] } ], "source": [ "# ── Filter & Clean and Build Unified Posts/Comments Table ─────────────────────\n", "# ── Clean posts ───────────────────────────────────────────────────────────────\n", "posts_clean = posts_sample[\n", " ~posts_sample['selftext'].str.match(r'^\\[deleted\\]', na=False) &\n", " ~posts_sample['selftext'].str.match(r'^\\[removed\\]', na=False) &\n", " (posts_sample['selftext'].str.strip() != '') &\n", " posts_sample['selftext'].notna()\n", "].copy()\n", "\n", "print(f\"Posts after cleaning: {len(posts_clean):,} / {len(posts_sample):,}\")\n", "\n", "# ── Clean comments ────────────────────────────────────────────────────────────\n", "comments_clean = comments_sample[\n", " ~comments_sample['body'].str.match(r'^\\[deleted\\]', na=False) &\n", " ~comments_sample['body'].str.match(r'^\\[removed\\]', na=False) &\n", " (comments_sample['body'].str.strip() != '') &\n", " comments_sample['body'].notna()\n", "].copy()\n", "\n", "print(f\"Comments after cleaning: {len(comments_clean):,} / {len(comments_sample):,}\")\n", "\n", "# ── Standardize columns before stacking ──────────────────────────────────────\n", "posts_unified = posts_clean.assign(\n", " type = 'post',\n", " text = posts_clean['title'] + '. ' + posts_clean['selftext'],\n", " post_id = posts_clean['id'],\n", ")[['post_id', 'type', 'text', 'subreddit', 'Year', 'Month', 'Day', 'score', 'author']]\n", "\n", "comments_clean['post_id'] = comments_clean['link_id'].str.replace(r'^t3_', '', regex=True)\n", "comments_unified = comments_clean.assign(\n", " type = 'comment',\n", " text = comments_clean['body'],\n", ")[['post_id', 'type', 'text', 'subreddit', 'Year', 'Month', 'Day', 'score', 'author']]\n", "\n", "# ── Stack into unified table ──────────────────────────────────────────────────\n", "unified = pd.concat([posts_unified, comments_unified], ignore_index=True)\n", "\n", "print(f\"\\nUnified table shape: {unified.shape}\")\n", "print(f\"Type breakdown:\\n{unified['type'].value_counts()}\")\n", "print(f\"\\nSubreddits: {sorted(unified['subreddit'].unique())}\")\n", "print(f\"Years: {sorted(unified['Year'].unique())}\")" ] }, { "cell_type": "code", "execution_count": 48, "id": "8bdbab70-7690-4450-b7f5-de1f9d6676b3", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Rows after word count filter (>=20 words): 844,401 / 1,218,660\n", "\n", "Type breakdown after filter:\n", "type\n", "comment 780505\n", "post 63896\n", "Name: count, dtype: int64\n", "\n", "Word count distribution:\n", "count 1.218660e+06\n", "mean 6.518086e+01\n", "std 8.848047e+01\n", "min 0.000000e+00\n", "25% 1.500000e+01\n", "50% 3.800000e+01\n", "75% 8.100000e+01\n", "max 5.958000e+03\n", "Name: word_count, dtype: float64\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
typetextprocessed_textword_count
342319commentI responded to your comment, but this sub has so many rules and regulations that the links to one of the best sites for ADHD got bannedI responded to your comment, but this sub has so many rules and regulations that the links to one of the best sites for ADHD got banned27
606487commentYes! When I started Wellbutrin I two weeks of totally bizarre, obscure side effects, from full body muscle spasms to bursting into tears. Luckily they went away!Yes! When I started Wellbutrin I two weeks of totally bizarre, obscure side effects, from full body muscle spasms to bursting into tears. Luckily they went away!27
549619commentit shifts every now and then, sometimes I feel more manly and sometimes more girly, but I always feel like im made of both. Now that I look more androgynous I feel more confident in my body and I refer to myself as \"boygirl\" 🤷‍♀️it shifts every now and then, sometimes I feel more manly and sometimes more girly, but I always feel like im made of both. Now that I look more androgynous I feel more confident in my body and I refer to myself as \"boygirl\" 🤷‍♀️45
\n", "
" ], "text/plain": [ " type \\\n", "342319 comment \n", "606487 comment \n", "549619 comment \n", "\n", " text \\\n", "342319 I responded to your comment, but this sub has so many rules and regulations that the links to one of the best sites for ADHD got banned \n", "606487 Yes! When I started Wellbutrin I two weeks of totally bizarre, obscure side effects, from full body muscle spasms to bursting into tears. Luckily they went away! \n", "549619 it shifts every now and then, sometimes I feel more manly and sometimes more girly, but I always feel like im made of both. Now that I look more androgynous I feel more confident in my body and I refer to myself as \"boygirl\" 🤷‍♀️ \n", "\n", " processed_text \\\n", "342319 I responded to your comment, but this sub has so many rules and regulations that the links to one of the best sites for ADHD got banned \n", "606487 Yes! When I started Wellbutrin I two weeks of totally bizarre, obscure side effects, from full body muscle spasms to bursting into tears. Luckily they went away! \n", "549619 it shifts every now and then, sometimes I feel more manly and sometimes more girly, but I always feel like im made of both. Now that I look more androgynous I feel more confident in my body and I refer to myself as \"boygirl\" 🤷‍♀️ \n", "\n", " word_count \n", "342319 27 \n", "606487 27 \n", "549619 45 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# ── Minimal Text Processing ───────────────────────────────────────────────────\n", "\n", "def process_text(text):\n", " \"\"\"Minimally process Reddit text for VADER, BERTopic, and word embeddings.\n", " Removes usernames, subreddit mentions, HTML entities, and links.\n", " Keeps punctuation and case for sentence transformers / VADER.\n", " \"\"\"\n", " if not isinstance(text, str):\n", " return ''\n", " # Handle double-encoded HTML entities (e.g. ​)\n", " text = html.unescape(text)\n", " text = html.unescape(text)\n", " # Remove Reddit usernames and subreddit mentions\n", " text = re.sub(r'/?u/\\w{2,}', '', text)\n", " text = re.sub(r'/?r/\\w{2,}', '', text)\n", " # Remove links — markdown first, then raw URLs\n", " text = re.sub(r'\\[(.*?)\\]\\((.*?)\\)', r'\\1', text)\n", " text = re.sub(r'https?://\\S+', '', text)\n", " # Remove extra whitespace\n", " text = re.sub(r'\\s+', ' ', text).strip()\n", " return text\n", "\n", "# ── Apply to unified table ────────────────────────────────────────────────────\n", "unified['processed_text'] = unified['text'].apply(process_text)\n", "\n", "# ── Minimum word count filter (for BERTopic) ─────────────────────────────────\n", "MIN_WORDS = 20\n", "unified['word_count'] = unified['processed_text'].str.split().str.len()\n", "unified_filtered = unified[unified['word_count'] >= MIN_WORDS].copy()\n", "\n", "print(f\"Rows after word count filter (>={MIN_WORDS} words): {len(unified_filtered):,} / {len(unified):,}\")\n", "print(f\"\\nType breakdown after filter:\")\n", "print(unified_filtered['type'].value_counts())\n", "print(f\"\\nWord count distribution:\")\n", "print(unified['word_count'].describe())\n", "\n", "# ── Sanity check ──────────────────────────────────────────────────────────────\n", "pd.set_option('display.max_colwidth', None)\n", "display(unified_filtered[['type', 'text', 'processed_text', 'word_count']].sample(3))\n", "pd.reset_option('display.max_colwidth')" ] }, { "cell_type": "code", "execution_count": 49, "id": "a72de2f3-6cc0-4191-90bc-69f563b2d01d", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Rows after keyword filter: 208,990 / 844,401\n", "\n", "Type breakdown:\n", "type\n", "comment 173616\n", "post 35374\n", "Name: count, dtype: int64\n", "\n", "Subreddits:\n", "subreddit\n", "adhd 84587\n", "autism 53276\n", "adhdwomen 34359\n", "autisminwomen 22983\n", "autisticadults 7381\n", "autisticwithadhd 4167\n", "audhdwomen 2237\n", "Name: count, dtype: int64\n", "Total excluded: 635,411\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
typesubreddittext
808711commentautismWell yes. In theory it would be in nice. The reality is we have countries where children are literally being killed because of hunger. But glad some countries take into account this
699852commentadhdCould be why you have this major overstimulation by people in general....you were often cornered into getting talked at that was inappropriate for a child without being able to escape or excuse yourself. You sense people just using to to try to fulfil their unmet needs when you aren't the appropriate person to do that.
332739commentautisticadultsI often feel no interest in joining conversations unless they seem more relevant subject (more than just personal interests) instead of just random chit chat.
421373commentautisminwomenOMG I feel your frustration so much. \\n\\nThis is what I have always felt in work scenarios. Like \"why is it ok when they do it? If I do anything similar it is unacceptable?!\"\\n\\nStill don't know the answer to that question for the workplace but regarding morality - morality is one of the toughest areas to study in psychology.\\n\\nMorality is VERY much subjective and even in cultures with a lot of underlying common rules (eg catholic countries where stealing and cheating are clear sins), there's a lot of grey areas and flexibility.\\n\\nI don't have any reading resources besides  specialized scientific journals but I recommend researching this area of study. It baffles most psychologists.
273833commentautismFor me it's because they have a horrendous texture and on top of that, their texture also varies between the same vegetable and often even between bites of the same thing, so it's hugely unpredictable and that drives me crazy \\n\\nAs an example of that, I'll eat almost any vegetable if they're on \"mashed\" texture (and I mean super soft and no lumps), but give me any of those a little more hard boiled and you'll be able to watch me die inside with each bite
609573commentadhdHi /u/bleak-bleh and thanks for posting on /r/ADHD! If you haven't already, please take a minute to [read our rules](https://reddit.com/r/adhd/about/rules) and check out our list of official megathreads [here](https://www.reddit.com/r/ADHD/comments/nu534w/official_list_of_radhd_megathreads_please_check/). If your post fits into one of them, please resubmit your post as a reply to the relevant megathread instead. Thanks!\\n\\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/ADHD) if you have any questions or concerns.*
46121postadhdRitalin day after elvanse?. So unfortunately due to the stupidity of my parents binning my prescription for my elvanse I’m now left without, luckily I had some amfexa left over that I was able to take this morning to get me through but now my only option is to take some medikinet tomorrow morning which I managed to get from a friend who doesn’t use them anymore, my question is will I be safe taking them? Having taken elvanse 50mg the day before is there any interactions or is it just straight up not safe too do? Thanks in advance.
964512commentautismhttps://www.amazon.com/Unmasking-Autism-Discovering-Faces-Neurodiversity-ebook/dp/B098PXH8CK/ref=mp_s_a_1_1?adgrpid=152958443944&gclid=CjwKCAjwpayjBhAnEiwA-7ena5Skcu-XV8RRwngVHTBqEr1aRwz7ZHiZpk_rt63cqqPzhGyKrntNzhoCJ-4QAvD_BwE&hvadid=648394813386&hvdev=m&hvlocphy=9051831&hvnetw=g&hvqmt=e&hvrand=8748794630975441935&hvtargid=kwd-1960053428854&hydadcr=15152_13523060&keywords=book+unmasking+autism&qid=1684775188&sr=8-1\\n\\n Very good book. It is helping me a lot in this journey. Recently diagnosed at 34 last mnth. Psychologist told me to read it
87956commentadhdIt seems that is not working for you, I took adderall for a year and recently stopped due to the shortage. I never had really bad withdrawals… mostly just me being super sleepy and I did had bad depression and mood swings but never something physical or really worrying in comparison with other meds I took. However, if you’re starting, That seems like a really high dose for you… when I started I was at 10 and then went up
122605commentautismI'm 30 and I've shaved my beard 4 times in my life... And literally the only reason I did was for job interviews.\\n\\nI look terrible without a beard and beards are cool.\\n\\nThe last time I shaved was the summer of 2019.\\n\\nI hate that people are like \"shave your beard and get a hair cut before a interview so you look nice\"... Clearly they don't know what I look like without a beard and short hair... I'm trying to get a job, not make people wish they didn't have to see me.
\n", "
" ], "text/plain": [ " type subreddit \\\n", "808711 comment autism \n", "699852 comment adhd \n", "332739 comment autisticadults \n", "421373 comment autisminwomen \n", "273833 comment autism \n", "609573 comment adhd \n", "46121 post adhd \n", "964512 comment autism \n", "87956 comment adhd \n", "122605 comment autism \n", "\n", " text \n", "808711 Well yes. In theory it would be in nice. The reality is we have countries where children are literally being killed because of hunger. But glad some countries take into account this \n", "699852 Could be why you have this major overstimulation by people in general....you were often cornered into getting talked at that was inappropriate for a child without being able to escape or excuse yourself. You sense people just using to to try to fulfil their unmet needs when you aren't the appropriate person to do that. \n", "332739 I often feel no interest in joining conversations unless they seem more relevant subject (more than just personal interests) instead of just random chit chat. \n", "421373 OMG I feel your frustration so much. \\n\\nThis is what I have always felt in work scenarios. Like \"why is it ok when they do it? If I do anything similar it is unacceptable?!\"\\n\\nStill don't know the answer to that question for the workplace but regarding morality - morality is one of the toughest areas to study in psychology.\\n\\nMorality is VERY much subjective and even in cultures with a lot of underlying common rules (eg catholic countries where stealing and cheating are clear sins), there's a lot of grey areas and flexibility.\\n\\nI don't have any reading resources besides specialized scientific journals but I recommend researching this area of study. It baffles most psychologists. \n", "273833 For me it's because they have a horrendous texture and on top of that, their texture also varies between the same vegetable and often even between bites of the same thing, so it's hugely unpredictable and that drives me crazy \\n\\nAs an example of that, I'll eat almost any vegetable if they're on \"mashed\" texture (and I mean super soft and no lumps), but give me any of those a little more hard boiled and you'll be able to watch me die inside with each bite \n", "609573 Hi /u/bleak-bleh and thanks for posting on /r/ADHD! If you haven't already, please take a minute to [read our rules](https://reddit.com/r/adhd/about/rules) and check out our list of official megathreads [here](https://www.reddit.com/r/ADHD/comments/nu534w/official_list_of_radhd_megathreads_please_check/). If your post fits into one of them, please resubmit your post as a reply to the relevant megathread instead. Thanks!\\n\\n*I am a bot, and this action was performed automatically. Please [contact the moderators of this subreddit](/message/compose/?to=/r/ADHD) if you have any questions or concerns.* \n", "46121 Ritalin day after elvanse?. So unfortunately due to the stupidity of my parents binning my prescription for my elvanse I’m now left without, luckily I had some amfexa left over that I was able to take this morning to get me through but now my only option is to take some medikinet tomorrow morning which I managed to get from a friend who doesn’t use them anymore, my question is will I be safe taking them? Having taken elvanse 50mg the day before is there any interactions or is it just straight up not safe too do? Thanks in advance. \n", "964512 https://www.amazon.com/Unmasking-Autism-Discovering-Faces-Neurodiversity-ebook/dp/B098PXH8CK/ref=mp_s_a_1_1?adgrpid=152958443944&gclid=CjwKCAjwpayjBhAnEiwA-7ena5Skcu-XV8RRwngVHTBqEr1aRwz7ZHiZpk_rt63cqqPzhGyKrntNzhoCJ-4QAvD_BwE&hvadid=648394813386&hvdev=m&hvlocphy=9051831&hvnetw=g&hvqmt=e&hvrand=8748794630975441935&hvtargid=kwd-1960053428854&hydadcr=15152_13523060&keywords=book+unmasking+autism&qid=1684775188&sr=8-1\\n\\n Very good book. It is helping me a lot in this journey. Recently diagnosed at 34 last mnth. Psychologist told me to read it \n", "87956 It seems that is not working for you, I took adderall for a year and recently stopped due to the shortage. I never had really bad withdrawals… mostly just me being super sleepy and I did had bad depression and mood swings but never something physical or really worrying in comparison with other meds I took. However, if you’re starting, That seems like a really high dose for you… when I started I was at 10 and then went up \n", "122605 I'm 30 and I've shaved my beard 4 times in my life... And literally the only reason I did was for job interviews.\\n\\nI look terrible without a beard and beards are cool.\\n\\nThe last time I shaved was the summer of 2019.\\n\\nI hate that people are like \"shave your beard and get a hair cut before a interview so you look nice\"... Clearly they don't know what I look like without a beard and short hair... I'm trying to get a job, not make people wish they didn't have to see me. " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# ── Filter to Neurodivergence-Relevant Rows ─────────────────────────\n", "# Keep only rows that mention neurodivergence-related terms\n", "# Runs after word count filter (Cell 3) to ensure minimum text length first\n", "\n", "keywords = [\n", " # Core terms\n", " 'adhd', 'ahdh',\n", " 'autism', 'autistic', 'austism', 'autisim',\n", " 'audhd', 'asd', 'aspergers', 'asperger',\n", " 'neurodivergent', 'neurodivergence', 'neurodiversity'\n", "]\n", "\n", "pattern = '|'.join(r'\\b' + kw + r'\\b' for kw in keywords)\n", "\n", "mask = unified_filtered['processed_text'].str.lower().str.contains(\n", " pattern, regex=True, na=False\n", ")\n", "unified_relevant = unified_filtered[mask].copy()\n", "\n", "print(f\"Rows after keyword filter: {len(unified_relevant):,} / {len(unified_filtered):,}\")\n", "print(f\"\\nType breakdown:\")\n", "print(unified_relevant['type'].value_counts())\n", "print(f\"\\nSubreddits:\")\n", "print(unified_relevant['subreddit'].value_counts())\n", "\n", "# ── Sanity check: sample of excluded rows ────────────────────────────────────\n", "excluded = unified_filtered[~mask].copy()\n", "print(f\"Total excluded: {len(excluded):,}\")\n", "\n", "pd.set_option('display.max_colwidth', None)\n", "display(excluded[['type', 'subreddit', 'text']].sample(10, random_state=42))\n", "pd.reset_option('display.max_colwidth')" ] }, { "cell_type": "code", "execution_count": 51, "id": "31285095-3bf5-4b69-b8ec-fde249513475", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
typetextprocessed_textprocessed_text_embeddings
72263commentI love my Google home!! i haven't used it in months bc I have to reset it lol but when I used it it was lovely. we have a ton of them lying around bc yk at some point they were literally giving the damn things away. \\n\\ni use the routines to remind me of certain things as well. i also appreciate being able to play music or certain sounds whenever I need them. \"hey Google, play ocean sounds\" whenever i need it and it's wonderful. especially helps when i need to look something up but don't wanna open my phone bc I get distracted pretty easily lol.\\n\\nso happy u found something that works for u :) knowing our adhd brains, u may have to switch it up a bit every once in awhile but the google home is super helpful to me, too. go you!!I love my Google home!! i haven't used it in months bc I have to reset it lol but when I used it it was lovely. we have a ton of them lying around bc yk at some point they were literally giving the damn things away. i use the routines to remind me of certain things as well. i also appreciate being able to play music or certain sounds whenever I need them. \"hey Google, play ocean sounds\" whenever i need it and it's wonderful. especially helps when i need to look something up but don't wanna open my phone bc I get distracted pretty easily lol. so happy u found something that works for u :) knowing our adhd brains, u may have to switch it up a bit every once in awhile but the google home is super helpful to me, too. go you!!i love my google home i havent used it in months bc i have to reset it lol but when i used it it was lovely we have a ton of them lying around bc yk at some point they were literally giving the damn things away i use the routines to remind me of certain things as well i also appreciate being able to play music or certain sounds whenever i need them hey google play ocean sounds whenever i need it and its wonderful especially helps when i need to look something up but dont wanna open my phone bc i get distracted pretty easily lol so happy u found something that works for u knowing our adhd brains u may have to switch it up a bit every once in awhile but the google home is super helpful to me too go you
511678commentI really feel your frustration and congratulations on your diagnosis. The meds changed my life LITERALLY. I received a late diagnoses as well, 2 years ago I’m 32 now and it was like I’d been missing something my whole life. I cried for weeks lol mainly due to not wanting “meds” but they work so I got over it. Feel all your feelings and be easy on yourself as it is definitely a journey. Consider working with another clinical professional to help with the emotional aspect and setting up your life to work with your ADHD brain.I really feel your frustration and congratulations on your diagnosis. The meds changed my life LITERALLY. I received a late diagnoses as well, 2 years ago I’m 32 now and it was like I’d been missing something my whole life. I cried for weeks lol mainly due to not wanting “meds” but they work so I got over it. Feel all your feelings and be easy on yourself as it is definitely a journey. Consider working with another clinical professional to help with the emotional aspect and setting up your life to work with your ADHD brain.i really feel your frustration and congratulations on your diagnosis the meds changed my life literally i received a late diagnoses as well 2 years ago im 32 now and it was like id been missing something my whole life i cried for weeks lol mainly due to not wanting meds but they work so i got over it feel all your feelings and be easy on yourself as it is definitely a journey consider working with another clinical professional to help with the emotional aspect and setting up your life to work with your adhd brain
318020commentA good starting point. I don't use the app, nor Facebook and only came across the possibility when I hit a video on YouTube that describes it. \\n\\nI always thought ADHD was an issue with poorly behaving kids and an excuse for piss poor enabling parenting. Then I got educated. \\n\\nAt this point I'm more than pissed, more like enraged that I have essentially wasted half my adult life, burned bridges, ruined every opportunity I've had, gotten into horrible student loan debt and been a drag on my wife for our entire marriage thinking I was a fn lazy loser with no motivation or self control. I was essentially close to suicide( i had a plan and was ready) when I learned what I had was legit and not my fault. The fact I am as functional as I am is a friggen miracle and essentially saved my life. \\n\\nSo yeah.....these asses on Tiktok who want excuses to be hip and part of the adhd clik because it's Koooool can piss off. I'd never curse this on anyone.A good starting point. I don't use the app, nor Facebook and only came across the possibility when I hit a video on YouTube that describes it. I always thought ADHD was an issue with poorly behaving kids and an excuse for piss poor enabling parenting. Then I got educated. At this point I'm more than pissed, more like enraged that I have essentially wasted half my adult life, burned bridges, ruined every opportunity I've had, gotten into horrible student loan debt and been a drag on my wife for our entire marriage thinking I was a fn lazy loser with no motivation or self control. I was essentially close to suicide( i had a plan and was ready) when I learned what I had was legit and not my fault. The fact I am as functional as I am is a friggen miracle and essentially saved my life. So yeah.....these asses on Tiktok who want excuses to be hip and part of the adhd clik because it's Koooool can piss off. I'd never curse this on anyone.a good starting point i dont use the app nor facebook and only came across the possibility when i hit a video on youtube that describes it i always thought adhd was an issue with poorly behaving kids and an excuse for piss poor enabling parenting then i got educated at this point im more than pissed more like enraged that i have essentially wasted half my adult life burned bridges ruined every opportunity ive had gotten into horrible student loan debt and been a drag on my wife for our entire marriage thinking i was a fn lazy loser with no motivation or self control i was essentially close to suicide i had a plan and was ready when i learned what i had was legit and not my fault the fact i am as functional as i am is a friggen miracle and essentially saved my life so yeahthese asses on tiktok who want excuses to be hip and part of the adhd clik because its koooool can piss off id never curse this on anyone
\n", "
" ], "text/plain": [ " type \\\n", "72263 comment \n", "511678 comment \n", "318020 comment \n", "\n", " text \\\n", "72263 I love my Google home!! i haven't used it in months bc I have to reset it lol but when I used it it was lovely. we have a ton of them lying around bc yk at some point they were literally giving the damn things away. \\n\\ni use the routines to remind me of certain things as well. i also appreciate being able to play music or certain sounds whenever I need them. \"hey Google, play ocean sounds\" whenever i need it and it's wonderful. especially helps when i need to look something up but don't wanna open my phone bc I get distracted pretty easily lol.\\n\\nso happy u found something that works for u :) knowing our adhd brains, u may have to switch it up a bit every once in awhile but the google home is super helpful to me, too. go you!! \n", "511678 I really feel your frustration and congratulations on your diagnosis. The meds changed my life LITERALLY. I received a late diagnoses as well, 2 years ago I’m 32 now and it was like I’d been missing something my whole life. I cried for weeks lol mainly due to not wanting “meds” but they work so I got over it. Feel all your feelings and be easy on yourself as it is definitely a journey. Consider working with another clinical professional to help with the emotional aspect and setting up your life to work with your ADHD brain. \n", "318020 A good starting point. I don't use the app, nor Facebook and only came across the possibility when I hit a video on YouTube that describes it. \\n\\nI always thought ADHD was an issue with poorly behaving kids and an excuse for piss poor enabling parenting. Then I got educated. \\n\\nAt this point I'm more than pissed, more like enraged that I have essentially wasted half my adult life, burned bridges, ruined every opportunity I've had, gotten into horrible student loan debt and been a drag on my wife for our entire marriage thinking I was a fn lazy loser with no motivation or self control. I was essentially close to suicide( i had a plan and was ready) when I learned what I had was legit and not my fault. The fact I am as functional as I am is a friggen miracle and essentially saved my life. \\n\\nSo yeah.....these asses on Tiktok who want excuses to be hip and part of the adhd clik because it's Koooool can piss off. I'd never curse this on anyone. \n", "\n", " processed_text \\\n", "72263 I love my Google home!! i haven't used it in months bc I have to reset it lol but when I used it it was lovely. we have a ton of them lying around bc yk at some point they were literally giving the damn things away. i use the routines to remind me of certain things as well. i also appreciate being able to play music or certain sounds whenever I need them. \"hey Google, play ocean sounds\" whenever i need it and it's wonderful. especially helps when i need to look something up but don't wanna open my phone bc I get distracted pretty easily lol. so happy u found something that works for u :) knowing our adhd brains, u may have to switch it up a bit every once in awhile but the google home is super helpful to me, too. go you!! \n", "511678 I really feel your frustration and congratulations on your diagnosis. The meds changed my life LITERALLY. I received a late diagnoses as well, 2 years ago I’m 32 now and it was like I’d been missing something my whole life. I cried for weeks lol mainly due to not wanting “meds” but they work so I got over it. Feel all your feelings and be easy on yourself as it is definitely a journey. Consider working with another clinical professional to help with the emotional aspect and setting up your life to work with your ADHD brain. \n", "318020 A good starting point. I don't use the app, nor Facebook and only came across the possibility when I hit a video on YouTube that describes it. I always thought ADHD was an issue with poorly behaving kids and an excuse for piss poor enabling parenting. Then I got educated. At this point I'm more than pissed, more like enraged that I have essentially wasted half my adult life, burned bridges, ruined every opportunity I've had, gotten into horrible student loan debt and been a drag on my wife for our entire marriage thinking I was a fn lazy loser with no motivation or self control. I was essentially close to suicide( i had a plan and was ready) when I learned what I had was legit and not my fault. The fact I am as functional as I am is a friggen miracle and essentially saved my life. So yeah.....these asses on Tiktok who want excuses to be hip and part of the adhd clik because it's Koooool can piss off. I'd never curse this on anyone. \n", "\n", " processed_text_embeddings \n", "72263 i love my google home i havent used it in months bc i have to reset it lol but when i used it it was lovely we have a ton of them lying around bc yk at some point they were literally giving the damn things away i use the routines to remind me of certain things as well i also appreciate being able to play music or certain sounds whenever i need them hey google play ocean sounds whenever i need it and its wonderful especially helps when i need to look something up but dont wanna open my phone bc i get distracted pretty easily lol so happy u found something that works for u knowing our adhd brains u may have to switch it up a bit every once in awhile but the google home is super helpful to me too go you \n", "511678 i really feel your frustration and congratulations on your diagnosis the meds changed my life literally i received a late diagnoses as well 2 years ago im 32 now and it was like id been missing something my whole life i cried for weeks lol mainly due to not wanting meds but they work so i got over it feel all your feelings and be easy on yourself as it is definitely a journey consider working with another clinical professional to help with the emotional aspect and setting up your life to work with your adhd brain \n", "318020 a good starting point i dont use the app nor facebook and only came across the possibility when i hit a video on youtube that describes it i always thought adhd was an issue with poorly behaving kids and an excuse for piss poor enabling parenting then i got educated at this point im more than pissed more like enraged that i have essentially wasted half my adult life burned bridges ruined every opportunity ive had gotten into horrible student loan debt and been a drag on my wife for our entire marriage thinking i was a fn lazy loser with no motivation or self control i was essentially close to suicide i had a plan and was ready when i learned what i had was legit and not my fault the fact i am as functional as i am is a friggen miracle and essentially saved my life so yeahthese asses on tiktok who want excuses to be hip and part of the adhd clik because its koooool can piss off id never curse this on anyone " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "Total rows: 208,990\n", "Type breakdown:\n", "type\n", "comment 173616\n", "post 35374\n", "Name: count, dtype: int64\n", "\n", "Sample sentence tokens: [['meds', 'hello', 'i', 'was', 'recently', 'diagnosed', 'with', 'adhd', 'last', 'march', 'age', '2122', 'nowand', 'i', 'am', 'thinking', 'of', 'starting', 'medicine', 'i', 'dont', 'want', 'adderall', 'as', 'my', 'family', 'has', 'a', 'history', 'of', 'addiction', 'i', 'also', 'feel', 'guilty', 'everyone', 'is', 'telling', 'me', 'ive', 'lived', 'this', 'long', 'without', 'meds', 'why', 'start', 'now', 'but', 'i', 'feel', 'like', 'my', 'adhd', 'is', 'out', 'of', 'control']]\n" ] } ], "source": [ "# ── Word Embedding Preprocessing ─────────────────────────────────────\n", "# Prepares tokenized sentences for Word2Vec training (Nelson/Kozlowski approach)\n", "# Embeddings need lowercase + no punctuation\n", "import nltk\n", "import string\n", "nltk.download('punkt_tab', quiet=True)\n", "\n", "def process_text_embeddings(text):\n", " \"\"\"\n", " Preprocess Reddit text for Word2Vec training.\n", " More aggressive than process_text: lowercase, remove punctuation, tokenize.\n", " Run AFTER process_text (URLs, usernames etc. already stripped).\n", " \"\"\"\n", " if not isinstance(text, str) or text == '':\n", " return ''\n", " # Lowercase\n", " text = text.lower()\n", " # Remove emojis and other unicode symbols\n", " text = text.encode('ascii', 'ignore').decode('ascii')\n", " # Replace em-dashes and newlines with spaces\n", " text = re.sub(r'—|–|\\n', ' ', text)\n", " # Replace slashes with spaces (e.g. \"ADHD/autism\" → \"ADHD autism\")\n", " text = re.sub(r'/', ' ', text)\n", " # Remove curly/smart quotes\n", " text = re.sub(r'[\\u2018\\u2019\\u201c\\u201d]', '', text)\n", " # Remove ASCII punctuation\n", " text = text.translate(str.maketrans('', '', string.punctuation))\n", " # Collapse whitespace\n", " text = re.sub(r'\\s+', ' ', text).strip()\n", " return text\n", "\n", "def tokenize_to_sentences(text):\n", " \"\"\"Split processed text into sentences using Punkt, return list of token lists.\"\"\"\n", " if not isinstance(text, str) or text == '':\n", " return []\n", " sentences = nltk.sent_tokenize(text)\n", " return [s.split() for s in sentences if s.strip()]\n", "\n", "# ── Apply to unified filtered table ──────────────────────────────────────────\n", "unified_relevant['processed_text_embeddings'] = (\n", " unified_relevant['processed_text']\n", " .apply(process_text_embeddings)\n", ")\n", "\n", "unified_relevant['sentences'] = (\n", " unified_relevant['processed_text_embeddings']\n", " .apply(tokenize_to_sentences)\n", ")\n", "\n", "# ── Sanity check ──────────────────────────────────────────────────────────────\n", "pd.set_option('display.max_colwidth', None)\n", "display(unified_relevant[['type', 'text', 'processed_text', 'processed_text_embeddings']].sample(3))\n", "pd.reset_option('display.max_colwidth')\n", "\n", "print(f\"\\nTotal rows: {len(unified_relevant):,}\")\n", "print(f\"Type breakdown:\\n{unified_relevant['type'].value_counts()}\")\n", "print(f\"\\nSample sentence tokens: {unified_relevant['sentences'].iloc[0][:2]}\")" ] }, { "cell_type": "code", "execution_count": 52, "id": "63cf2f39-5945-4413-b981-0b5d4e1f1c05", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Total rows: 208,990\n", "Avg sentences per row: 1.0\n", "Estimated total sentences: 208,990\n" ] } ], "source": [ "# ── Train Word2Vec ────────────────────────────────────────────────────\n", "import logging\n", "from gensim.models import Word2Vec\n", "\n", "logging.basicConfig(\n", " format=\"%(asctime)s : %(levelname)s : %(message)s\",\n", " level=logging.INFO\n", ")\n", "\n", "class RedditSentences:\n", " \"\"\"\n", " Streams tokenized sentences from the unified posts+comments dataframe.\n", " Each sentence is a list of token strings, matching the CorpusSentences\n", " interface from the DocSouth project.\n", " \"\"\"\n", " def __init__(self, df, col='sentences'):\n", " self.df = df\n", " self.col = col\n", "\n", " def __iter__(self):\n", " for sent_list in self.df[self.col]:\n", " for sent in sent_list:\n", " if sent:\n", " yield sent\n", "\n", "# ── Quick corpus size estimate ────────────────────────────────────────────────\n", "total_rows = len(unified_relevant)\n", "avg_sentences = unified_relevant['sentences'].apply(len).mean()\n", "print(f\"Total rows: {total_rows:,}\")\n", "print(f\"Avg sentences per row: {avg_sentences:.1f}\")\n", "print(f\"Estimated total sentences: {total_rows * avg_sentences:,.0f}\")" ] }, { "cell_type": "code", "execution_count": 53, "id": "2ebe049f-fd06-4e0e-8428-1d7ee9796478", "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "2026-05-29 23:11:13,212 : INFO : collecting all words and their counts\n", "2026-05-29 23:11:13,216 : INFO : PROGRESS: at sentence #0, processed 0 words, keeping 0 word types\n", "2026-05-29 23:11:13,369 : INFO : PROGRESS: at sentence #10000, processed 2283165 words, keeping 33962 word types\n", "2026-05-29 23:11:13,529 : INFO : PROGRESS: at sentence #20000, processed 4563486 words, keeping 47335 word types\n", "2026-05-29 23:11:13,680 : INFO : PROGRESS: at sentence #30000, processed 6856240 words, keeping 58191 word types\n", "2026-05-29 23:11:13,801 : INFO : PROGRESS: at sentence #40000, processed 8656752 words, keeping 65223 word types\n", "2026-05-29 23:11:13,891 : INFO : PROGRESS: at sentence #50000, processed 9855139 words, keeping 70137 word types\n", "2026-05-29 23:11:13,970 : INFO : PROGRESS: at sentence #60000, processed 11032611 words, keeping 75119 word types\n", "2026-05-29 23:11:14,050 : INFO : PROGRESS: at sentence #70000, processed 12216764 words, keeping 79186 word types\n", "2026-05-29 23:11:14,129 : INFO : PROGRESS: at sentence #80000, processed 13457293 words, keeping 83351 word types\n", "2026-05-29 23:11:14,211 : INFO : PROGRESS: at sentence #90000, processed 14619987 words, keeping 87296 word types\n", "2026-05-29 23:11:14,300 : INFO : PROGRESS: at sentence #100000, processed 15826465 words, keeping 90896 word types\n", "2026-05-29 23:11:14,393 : INFO : PROGRESS: at sentence #110000, processed 17100216 words, keeping 94751 word types\n", "2026-05-29 23:11:14,487 : INFO : PROGRESS: at sentence #120000, processed 18338823 words, keeping 98642 word types\n", "2026-05-29 23:11:14,569 : INFO : PROGRESS: at sentence #130000, processed 19515053 words, keeping 102379 word types\n", "2026-05-29 23:11:14,660 : INFO : PROGRESS: at sentence #140000, processed 20734143 words, keeping 105579 word types\n", "2026-05-29 23:11:14,741 : INFO : PROGRESS: at sentence #150000, processed 21926406 words, keeping 109024 word types\n", "2026-05-29 23:11:14,834 : INFO : PROGRESS: at sentence #160000, processed 23226311 words, keeping 112074 word types\n", "2026-05-29 23:11:14,921 : INFO : PROGRESS: at sentence #170000, processed 24411570 words, keeping 115278 word types\n", "2026-05-29 23:11:15,006 : INFO : PROGRESS: at sentence #180000, processed 25565287 words, keeping 118614 word types\n", "2026-05-29 23:11:15,108 : INFO : PROGRESS: at sentence #190000, processed 26862117 words, keeping 121679 word types\n", "2026-05-29 23:11:15,200 : INFO : PROGRESS: at sentence #200000, processed 28118659 words, keeping 124791 word types\n", "2026-05-29 23:11:15,279 : INFO : collected 127618 word types from a corpus of 29189443 raw words and 208990 sentences\n", "2026-05-29 23:11:15,280 : INFO : Creating a fresh vocabulary\n", "2026-05-29 23:11:15,321 : INFO : Word2Vec lifecycle event {'msg': 'effective_min_count=10 retains 24965 unique words (19.56% of original 127618, drops 102653)', 'datetime': '2026-05-29T23:11:15.321933', 'gensim': '4.4.0', 'python': '3.13.12 (v3.13.12:1cbe4818347, Feb 3 2026, 13:36:53) [Clang 16.0.0 (clang-1600.0.26.6)]', 'platform': 'macOS-26.2-arm64-arm-64bit-Mach-O', 'event': 'prepare_vocab'}\n", "2026-05-29 23:11:15,322 : INFO : Word2Vec lifecycle event {'msg': 'effective_min_count=10 leaves 28992203 word corpus (99.32% of original 29189443, drops 197240)', 'datetime': '2026-05-29T23:11:15.322313', 'gensim': '4.4.0', 'python': '3.13.12 (v3.13.12:1cbe4818347, Feb 3 2026, 13:36:53) [Clang 16.0.0 (clang-1600.0.26.6)]', 'platform': 'macOS-26.2-arm64-arm-64bit-Mach-O', 'event': 'prepare_vocab'}\n", "2026-05-29 23:11:15,346 : INFO : deleting the raw counts dictionary of 127618 items\n", "2026-05-29 23:11:15,348 : INFO : sample=0.001 downsamples 58 most-common words\n", "2026-05-29 23:11:15,348 : INFO : Word2Vec lifecycle event {'msg': 'downsampling leaves estimated 21380841.388909828 word corpus (73.7%% of prior 28992203)', 'datetime': '2026-05-29T23:11:15.348356', 'gensim': '4.4.0', 'python': '3.13.12 (v3.13.12:1cbe4818347, Feb 3 2026, 13:36:53) [Clang 16.0.0 (clang-1600.0.26.6)]', 'platform': 'macOS-26.2-arm64-arm-64bit-Mach-O', 'event': 'prepare_vocab'}\n", "2026-05-29 23:11:15,401 : INFO : estimated required memory for 24965 words and 100 dimensions: 32454500 bytes\n", "2026-05-29 23:11:15,401 : INFO : resetting layer weights\n", "2026-05-29 23:11:15,474 : INFO : Word2Vec lifecycle event {'update': False, 'trim_rule': 'None', 'datetime': '2026-05-29T23:11:15.473999', 'gensim': '4.4.0', 'python': '3.13.12 (v3.13.12:1cbe4818347, Feb 3 2026, 13:36:53) [Clang 16.0.0 (clang-1600.0.26.6)]', 'platform': 'macOS-26.2-arm64-arm-64bit-Mach-O', 'event': 'build_vocab'}\n", "2026-05-29 23:11:15,474 : INFO : Word2Vec lifecycle event {'msg': 'training model with 4 workers on 24965 vocabulary and 100 features, using sg=1 hs=0 sample=0.001 negative=5 window=5 shrink_windows=True', 'datetime': '2026-05-29T23:11:15.474223', 'gensim': '4.4.0', 'python': '3.13.12 (v3.13.12:1cbe4818347, Feb 3 2026, 13:36:53) [Clang 16.0.0 (clang-1600.0.26.6)]', 'platform': 'macOS-26.2-arm64-arm-64bit-Mach-O', 'event': 'train'}\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:16,477 : INFO : EPOCH 0 - PROGRESS: at 4.31% examples, 1490347 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:17,482 : INFO : EPOCH 0 - PROGRESS: at 8.35% examples, 1443889 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:18,484 : INFO : EPOCH 0 - PROGRESS: at 11.98% examples, 1388100 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:19,485 : INFO : EPOCH 0 - PROGRESS: at 15.61% examples, 1350810 words/s, in_qsize 7, out_qsize 0\n", "2026-05-29 23:11:20,491 : INFO : EPOCH 0 - PROGRESS: at 22.24% examples, 1373538 words/s, in_qsize 7, out_qsize 0\n", "2026-05-29 23:11:21,499 : INFO : EPOCH 0 - PROGRESS: at 30.66% examples, 1392763 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:22,512 : INFO : EPOCH 0 - PROGRESS: at 38.80% examples, 1412649 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:23,514 : INFO : EPOCH 0 - PROGRESS: at 47.29% examples, 1427842 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:24,519 : INFO : EPOCH 0 - PROGRESS: at 55.25% examples, 1440190 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:25,520 : INFO : EPOCH 0 - PROGRESS: at 63.58% examples, 1447429 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:26,530 : INFO : EPOCH 0 - PROGRESS: at 71.75% examples, 1451743 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:27,530 : INFO : EPOCH 0 - PROGRESS: at 79.43% examples, 1454989 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:28,534 : INFO : EPOCH 0 - PROGRESS: at 87.79% examples, 1459402 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:29,539 : INFO : EPOCH 0 - PROGRESS: at 95.56% examples, 1462851 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:30,062 : INFO : EPOCH 0: training on 29189443 raw words (21381867 effective words) took 14.6s, 1465923 effective words/s\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:31,071 : INFO : EPOCH 1 - PROGRESS: at 4.39% examples, 1515995 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:32,076 : INFO : EPOCH 1 - PROGRESS: at 8.84% examples, 1524582 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:33,080 : INFO : EPOCH 1 - PROGRESS: at 13.19% examples, 1524997 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:34,082 : INFO : EPOCH 1 - PROGRESS: at 18.18% examples, 1528652 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:35,086 : INFO : EPOCH 1 - PROGRESS: at 26.65% examples, 1533033 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:36,091 : INFO : EPOCH 1 - PROGRESS: at 35.24% examples, 1534637 words/s, in_qsize 8, out_qsize 0\n", "2026-05-29 23:11:37,096 : INFO : EPOCH 1 - PROGRESS: at 43.73% examples, 1536161 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:38,101 : INFO : EPOCH 1 - PROGRESS: at 51.87% examples, 1537202 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:39,108 : INFO : EPOCH 1 - PROGRESS: at 60.24% examples, 1538340 words/s, in_qsize 7, out_qsize 0\n", "2026-05-29 23:11:40,110 : INFO : EPOCH 1 - PROGRESS: at 68.06% examples, 1530803 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:41,113 : INFO : EPOCH 1 - PROGRESS: at 76.10% examples, 1530134 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:42,122 : INFO : EPOCH 1 - PROGRESS: at 84.66% examples, 1531646 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:43,128 : INFO : EPOCH 1 - PROGRESS: at 92.70% examples, 1532321 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:44,053 : INFO : EPOCH 1: training on 29189443 raw words (21383624 effective words) took 14.0s, 1528482 effective words/s\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:45,060 : INFO : EPOCH 2 - PROGRESS: at 4.20% examples, 1448158 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:46,062 : INFO : EPOCH 2 - PROGRESS: at 8.59% examples, 1485426 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:47,063 : INFO : EPOCH 2 - PROGRESS: at 12.94% examples, 1499295 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:48,072 : INFO : EPOCH 2 - PROGRESS: at 17.68% examples, 1501910 words/s, in_qsize 7, out_qsize 0\n", "2026-05-29 23:11:49,073 : INFO : EPOCH 2 - PROGRESS: at 25.99% examples, 1508128 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:50,079 : INFO : EPOCH 2 - PROGRESS: at 34.52% examples, 1513779 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:51,080 : INFO : EPOCH 2 - PROGRESS: at 42.88% examples, 1516066 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:52,086 : INFO : EPOCH 2 - PROGRESS: at 51.16% examples, 1519258 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:53,088 : INFO : EPOCH 2 - PROGRESS: at 59.24% examples, 1520707 words/s, in_qsize 7, out_qsize 0\n", "2026-05-29 23:11:54,093 : INFO : EPOCH 2 - PROGRESS: at 67.50% examples, 1522438 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:55,095 : INFO : EPOCH 2 - PROGRESS: at 75.63% examples, 1522708 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:56,097 : INFO : EPOCH 2 - PROGRESS: at 83.65% examples, 1520350 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:57,098 : INFO : EPOCH 2 - PROGRESS: at 91.72% examples, 1520891 words/s, in_qsize 7, out_qsize 0\n", "2026-05-29 23:11:58,096 : INFO : EPOCH 2: training on 29189443 raw words (21382028 effective words) took 14.0s, 1522711 effective words/s\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:11:59,106 : INFO : EPOCH 3 - PROGRESS: at 4.39% examples, 1515101 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:00,106 : INFO : EPOCH 3 - PROGRESS: at 8.82% examples, 1524441 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:01,106 : INFO : EPOCH 3 - PROGRESS: at 13.17% examples, 1526496 words/s, in_qsize 8, out_qsize 0\n", "2026-05-29 23:12:02,110 : INFO : EPOCH 3 - PROGRESS: at 18.15% examples, 1529067 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:03,117 : INFO : EPOCH 3 - PROGRESS: at 26.61% examples, 1532480 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:04,120 : INFO : EPOCH 3 - PROGRESS: at 35.20% examples, 1534862 words/s, in_qsize 7, out_qsize 0\n", "2026-05-29 23:12:05,122 : INFO : EPOCH 3 - PROGRESS: at 43.69% examples, 1537084 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:06,126 : INFO : EPOCH 3 - PROGRESS: at 51.85% examples, 1538074 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:07,127 : INFO : EPOCH 3 - PROGRESS: at 60.16% examples, 1539386 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:08,134 : INFO : EPOCH 3 - PROGRESS: at 68.57% examples, 1539630 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:09,135 : INFO : EPOCH 3 - PROGRESS: at 76.54% examples, 1540358 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:10,139 : INFO : EPOCH 3 - PROGRESS: at 85.12% examples, 1540984 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:11,152 : INFO : EPOCH 3 - PROGRESS: at 93.22% examples, 1540198 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:11,984 : INFO : EPOCH 3: training on 29189443 raw words (21382782 effective words) took 13.9s, 1539748 effective words/s\n", "2026-05-29 23:12:12,990 : INFO : EPOCH 4 - PROGRESS: at 4.36% examples, 1504770 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:13,992 : INFO : EPOCH 4 - PROGRESS: at 8.54% examples, 1479036 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:15,008 : INFO : EPOCH 4 - PROGRESS: at 12.38% examples, 1425768 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:16,008 : INFO : EPOCH 4 - PROGRESS: at 16.30% examples, 1405815 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:17,008 : INFO : EPOCH 4 - PROGRESS: at 23.61% examples, 1420024 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:18,013 : INFO : EPOCH 4 - PROGRESS: at 32.13% examples, 1434481 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:19,019 : INFO : EPOCH 4 - PROGRESS: at 39.96% examples, 1440470 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:20,028 : INFO : EPOCH 4 - PROGRESS: at 48.36% examples, 1451140 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:21,028 : INFO : EPOCH 4 - PROGRESS: at 56.08% examples, 1455089 words/s, in_qsize 7, out_qsize 0\n", "2026-05-29 23:12:22,029 : INFO : EPOCH 4 - PROGRESS: at 64.42% examples, 1463558 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:23,035 : INFO : EPOCH 4 - PROGRESS: at 71.71% examples, 1451220 words/s, in_qsize 7, out_qsize 0\n", "2026-05-29 23:12:24,044 : INFO : EPOCH 4 - PROGRESS: at 79.28% examples, 1451667 words/s, in_qsize 8, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:25,056 : INFO : EPOCH 4 - PROGRESS: at 87.10% examples, 1446591 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:26,064 : INFO : EPOCH 4 - PROGRESS: at 94.61% examples, 1447571 words/s, in_qsize 7, out_qsize 0\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "Exception ignored in: 'gensim.models.word2vec_inner.our_dot_float'\n", "2026-05-29 23:12:26,802 : INFO : EPOCH 4: training on 29189443 raw words (21378518 effective words) took 14.8s, 1442860 effective words/s\n", "2026-05-29 23:12:26,802 : INFO : Word2Vec lifecycle event {'msg': 'training on 145947215 raw words (106908819 effective words) took 71.3s, 1498825 effective words/s', 'datetime': '2026-05-29T23:12:26.802887', 'gensim': '4.4.0', 'python': '3.13.12 (v3.13.12:1cbe4818347, Feb 3 2026, 13:36:53) [Clang 16.0.0 (clang-1600.0.26.6)]', 'platform': 'macOS-26.2-arm64-arm-64bit-Mach-O', 'event': 'train'}\n", "2026-05-29 23:12:26,803 : INFO : Word2Vec lifecycle event {'params': 'Word2Vec', 'datetime': '2026-05-29T23:12:26.803132', 'gensim': '4.4.0', 'python': '3.13.12 (v3.13.12:1cbe4818347, Feb 3 2026, 13:36:53) [Clang 16.0.0 (clang-1600.0.26.6)]', 'platform': 'macOS-26.2-arm64-arm-64bit-Mach-O', 'event': 'created'}\n", "2026-05-29 23:12:26,805 : INFO : Word2Vec lifecycle event {'fname_or_handle': 'word2vec_reddit_pilot.model', 'separately': 'None', 'sep_limit': 10485760, 'ignore': frozenset(), 'datetime': '2026-05-29T23:12:26.805029', 'gensim': '4.4.0', 'python': '3.13.12 (v3.13.12:1cbe4818347, Feb 3 2026, 13:36:53) [Clang 16.0.0 (clang-1600.0.26.6)]', 'platform': 'macOS-26.2-arm64-arm-64bit-Mach-O', 'event': 'saving'}\n", "2026-05-29 23:12:26,806 : INFO : not storing attribute cum_table\n", "2026-05-29 23:12:26,890 : INFO : saved word2vec_reddit_pilot.model\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "Training complete!\n", "Vocabulary size: 24,965 words\n", "Saved: word2vec_reddit_pilot.model\n", "\n", "Most similar to 'adhd':\n", " ahdh 0.7640\n", " autism 0.6743\n", " asd 0.6311\n", " bpd2 0.6235\n", " audhd 0.6221\n", "\n", "Most similar to 'autism':\n", " asd 0.8503\n", " autisim 0.7926\n", " neurodivergence 0.7776\n", " austism 0.7523\n", " autsim 0.7383\n", "\n", "Most similar to 'diagnosis':\n", " dx 0.7713\n", " reassessment 0.7031\n", " diagnoses 0.7002\n", " evaluation 0.6898\n", " diag 0.6863\n", "\n", "Most similar to 'medication':\n", " meds 0.7204\n", " stimulant 0.6528\n", " stimulants 0.6419\n", " medications 0.6373\n", " med 0.6359\n", "\n", "Most similar to 'anxiety':\n", " depression 0.9052\n", " gad 0.7882\n", " agoraphobia 0.7703\n", " treatmentresistant 0.7680\n", " ocd 0.7641\n", "\n", "Most similar to 'masking':\n", " masked 0.7657\n", " mask 0.7327\n", " camouflaging 0.6863\n", " compensating 0.6736\n", " mirroring 0.6302\n" ] } ], "source": [ "# ── Train Word2Vec (pilot) ───────────────────────────────────────────\n", "# Pilot run on 1.2M unified posts+comments sample\n", "# TODO: Rerun on full dataset before interpreting dimension results substantively\n", "\n", "params = dict(\n", " sg = 1, # skip-gram (same as Nelson)\n", " window = 5, # context window (+/- 5 words)\n", " vector_size = 100, # 100 dimensions\n", " min_count = 10, # drop words appearing fewer than 10 times\n", " epochs = 5, # passes over corpus\n", " alpha = 0.025, # initial learning rate\n", " workers = 4, # parallel CPU threads\n", ")\n", "\n", "sentences = RedditSentences(unified_relevant)\n", "model = Word2Vec(sentences=sentences, **params)\n", "\n", "print(f\"\\nTraining complete!\")\n", "print(f\"Vocabulary size: {len(model.wv):,} words\")\n", "\n", "# ── Save model ────────────────────────────────────────────────────────────────\n", "model.save(\"word2vec_reddit_pilot.model\")\n", "print(\"Saved: word2vec_reddit_pilot.model\")\n", "\n", "# ── Quick sanity check ────────────────────────────────────────────────────────\n", "probe_words = ['adhd', 'autism', 'diagnosis', 'medication', 'anxiety', 'masking']\n", "for word in probe_words:\n", " if word in model.wv:\n", " similar = model.wv.most_similar(word, topn=5)\n", " print(f\"\\nMost similar to '{word}':\")\n", " for w, score in similar:\n", " print(f\" {w:<20} {score:.4f}\")\n", " else:\n", " print(f\"\\n'{word}' not in vocabulary (below min_count or not in corpus)\")" ] }, { "cell_type": "code", "execution_count": 55, "id": "89731b01-11d9-4b8e-a563-e438a2009d87", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "Most similar to 'medical':\n", " personnel 0.6608\n", " establishment 0.6478\n", " allied 0.6455\n", " malpractice 0.6340\n", " professionals 0.6329\n", "\n", "Most similar to 'disease':\n", " degenerative 0.7869\n", " condition 0.7671\n", " illness 0.7504\n", " cancer 0.7466\n", " neurodegenerative 0.7265\n", "\n", "Most similar to 'cure':\n", " curing 0.7052\n", " cured 0.6811\n", " fixall 0.6768\n", " curable 0.6710\n", " fix 0.6451\n", "\n", "Most similar to 'treat':\n", " treating 0.7015\n", " treats 0.6568\n", " demonize 0.6365\n", " treated 0.6226\n", " rediagnose 0.6061\n", "\n", "Most similar to 'medication':\n", " meds 0.7204\n", " stimulant 0.6528\n", " stimulants 0.6419\n", " medications 0.6373\n", " med 0.6359\n", "\n", "Most similar to 'sick':\n", " tired 0.7760\n", " unwell 0.7316\n", " exhausted 0.6626\n", " hungover 0.6490\n", " bloated 0.6448\n", "\n", "Most similar to 'mind':\n", " head 0.6450\n", " brain 0.6099\n", " minds 0.5831\n", " toughts 0.5694\n", " thoughts 0.5651\n", "\n", "Most similar to 'body':\n", " bodys 0.7187\n", " muscles 0.6816\n", " brain 0.6793\n", " adapts 0.6479\n", " organs 0.6364\n", "\n", "Most similar to 'psychiatric':\n", " neuropsychiatric 0.6805\n", " mentalhealth 0.6691\n", " hospitalisation 0.6644\n", " diagnostic 0.6637\n", " maladies 0.6530\n" ] } ], "source": [ "# ── Explore social and medical model of disability candidates ─────────────────────────────\n", "social_model_seeds = ['barriers', 'support', 'accessibility', 'accommodation', 'ableism', \n", " 'belonging', 'disabled', 'systemic', 'inclusion', \n", " 'marginalized', 'structural', 'acceptance', 'identity', 'social']\n", "\n", "medical_model_seeds = ['medical', 'disease', 'cure', 'treat', 'medication', 'sick', 'mind', 'body', 'psychiatric']\n", "\n", "for word in medical_model_seeds:\n", " if word in model.wv:\n", " similar = model.wv.most_similar(word, topn=5)\n", " print(f\"\\nMost similar to '{word}':\")\n", " for w, score in similar:\n", " print(f\" {w:<20} {score:.4f}\")\n", " else:\n", " print(f\"\\n'{word}' not in vocabulary\")" ] }, { "cell_type": "code", "execution_count": 58, "id": "842724df-20c7-4265-b177-dfab1bf7255a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Morality: 40/66 words in vocabulary\n", " Missing: ['righteousness', 'unrighteousness', 'unrighteous', 'righteously', 'moralism', 'moralisation', 'moralizing', 'upstanding', 'unprincipled', 'principled', 'blameless', 'exemplary', 'doctrine', 'trustworthiness', 'idealisation', 'idealize', 'praiseworthy', 'laudable', 'wrongdoer', 'immorality', 'immorally', 'offensiveness', 'transgress', 'transgression', 'transgressor', 'transgressive']\n", "Medical: 34/38 words in vocabulary\n", " Missing: ['curative', 'medicative', 'insalubrious', 'pharmaceutics']\n", "Social model: 37/40 words in vocabulary\n", " Missing: ['inequities', 'inequity', 'inaccessibility']\n", "\n", "Score distributions:\n", " score_morality score_medical score_social_model\n", "count 208990.000000 208990.000000 208990.000000\n", "mean 0.670282 0.629806 0.572214\n", "std 0.045301 0.046601 0.054704\n", "min 0.363705 0.358439 0.269695\n", "25% 0.642220 0.597295 0.535822\n", "50% 0.669554 0.626061 0.571787\n", "75% 0.700402 0.658585 0.605633\n", "max 0.827053 0.861307 0.817295\n", "\n", "── Top 10 by score_morality ──\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
typesubredditprocessed_textscore_morality
1208219commentautismYou do not have to respect a person’s beliefs to still respect their personhood. Deadnaming a trans person is transphobic regardless of who the trans person is. And similarly, questioning an autism diagnosis for no reason other than disliking the person is ableism. You are not tolerating intolerance by respecting a person’s identity. You can still be intolerant of intolerance.0.827053
1152513commentautisminwomenAlso that the “sense of justice” is actually just rigid thinking, and isn’t necessarily positive or good. An autistic nazi has a “strong sense of justice”, their idea of justice is simply different to what you or I have. Being excessively rigid isn’t a positive thing because then you’re at risk of being rather immoral or unkind in the pursuit of following your own moral code.0.826736
136261commentautismThis is the inevitable result of making descriptors more broad and bland. What they probably mean by neurodivergent is “really stupid” but there’s no politically correct way to express that anymore.0.826057
639686commentautismStill, the rulers agree that autism is a blight on humanity, and that freeform neural development is bad for that reason. So they deem \"autistics\", as they arbitrarily brand them, \"non-sentient\", \"mindless\", \"burdens\", \"dangerous\", \"evil\"…whatever sixth pejorative is worse than \"evil\", in an attempt to arbitrarily shape humanity in their image.0.824583
996174commentautismThere has been a study that indicates that Autistic people adhere to their moral/ethical codes even when unobserved (probably wording this inaccurately) which is uncommon in neurotypicals. Anecdotally, my husband (also autistic) has very strong personal morals/ethics that extend to his special interests in JEDI (Justice, Equity, Diversity, and Inclusion.) I also have a special interest in disability rights. That said, our personal morals and ethics may differ considerably from those of NTs (example: Autistics have higher expression of LGBTQIA+ and polyamory than neurotypicals, which many NTs would describe as \"immoral.\") Hope that helps.0.824577
367476commentautismNo. No fictional character (particularly ones written by NTs) will ever be autistic. But it is perfectly valid to imagine them as so for personal self validation and assurance0.823856
641332commentautismYou are a victim of abuse though. Let's say that she can't be *institutionally* racist. She can still do and say things meant to disparage your race, to YOU specifically. Lacking institutional power doesn't make individual actions hurt less. She knew enough about autism, your own socio-political belief system, and (American) racial identity and discourse to weaponise all of those things against you. You're conflating individual and institutional power. You existed whilst being white and male. You may have inadvertently done sexist or racist shit during your relationship, but I am focusing here on what you have written specifically. \"You are white and male\" is not an Uno reverse card when it comes to abuse - you might have an obligation to be aware of the privilege you carry, but that doesn't excuse her abusive behaviour against you. Meanwhile, she is weaponising your autism against you by playing into (what seems like) a strongly held sense of justice, and relatively black-and-white thinking. **That is ableism**.0.823849
585514commentautisminwomenAs per Rule #4: No discrimination, ableism, perpetuating negative stereotypes of autism or disability. No misogynistic, homophobic, transphobic, racist, or sexist comments will be tolerated. Disliking children bc they cause sensory overload is not bigoted and it’s ableist to espouse such a rhetoric.0.823524
1010096commentautismAre they autistic themselves? It sounds like they might be and have just been fed ableist nonsense by neurotypicals to the point this had become their viewpoint. Either that, or just an allistic jerk trying to dictate what terms means they have no experience with or understanding of. Either way this is super close minded, they did not deserve any upvotes and you did not deserve downvotes, whatever this community it, it seems extremely toxic. Everyone's hiding behind yellow profile pic guy's nonsense statement and no one's hearing out your well written thought out replies. Absolutely sickening. Let's ostracize the one openly autistic person even more because they clearly know nothing about their own life and feelings /satire. Disgusting ableist nonsense, this.0.823519
272370commentautismIMO, it's not eugenics. Eugenics isn't just \"people shouldn't be born with harmful genes\", eugenics is an entire ideology that thinks people can be objectively ranked in terms of superiority, and it thinks that this determines someone's moral worth. It thinks \"inferior people\" should be forcibly sterilized, that if they get pregnant they should be forced into abortions, that only superior people should have access to social services, that superior and inferior people shouldn't mix. Eugenicists think autistic babies shouldn't exist specifically because they think autistic people are morally inferior and degenerate. They think autistic people shouldn't get to choose to have children. Even though it is sometimes informed by eugenics, you making a choice about your own body is not itself eugenics. I'm tired of people calling for restrictions on the bodily autonomy of women and birthing people just because they don't understand what eugenics is.0.822100
\n", "
" ], "text/plain": [ " type subreddit \\\n", "1208219 comment autism \n", "1152513 comment autisminwomen \n", "136261 comment autism \n", "639686 comment autism \n", "996174 comment autism \n", "367476 comment autism \n", "641332 comment autism \n", "585514 comment autisminwomen \n", "1010096 comment autism \n", "272370 comment autism \n", "\n", " processed_text \\\n", "1208219 You do not have to respect a person’s beliefs to still respect their personhood. Deadnaming a trans person is transphobic regardless of who the trans person is. And similarly, questioning an autism diagnosis for no reason other than disliking the person is ableism. You are not tolerating intolerance by respecting a person’s identity. You can still be intolerant of intolerance. \n", "1152513 Also that the “sense of justice” is actually just rigid thinking, and isn’t necessarily positive or good. An autistic nazi has a “strong sense of justice”, their idea of justice is simply different to what you or I have. Being excessively rigid isn’t a positive thing because then you’re at risk of being rather immoral or unkind in the pursuit of following your own moral code. \n", "136261 This is the inevitable result of making descriptors more broad and bland. What they probably mean by neurodivergent is “really stupid” but there’s no politically correct way to express that anymore. \n", "639686 Still, the rulers agree that autism is a blight on humanity, and that freeform neural development is bad for that reason. So they deem \"autistics\", as they arbitrarily brand them, \"non-sentient\", \"mindless\", \"burdens\", \"dangerous\", \"evil\"…whatever sixth pejorative is worse than \"evil\", in an attempt to arbitrarily shape humanity in their image. \n", "996174 There has been a study that indicates that Autistic people adhere to their moral/ethical codes even when unobserved (probably wording this inaccurately) which is uncommon in neurotypicals. Anecdotally, my husband (also autistic) has very strong personal morals/ethics that extend to his special interests in JEDI (Justice, Equity, Diversity, and Inclusion.) I also have a special interest in disability rights. That said, our personal morals and ethics may differ considerably from those of NTs (example: Autistics have higher expression of LGBTQIA+ and polyamory than neurotypicals, which many NTs would describe as \"immoral.\") Hope that helps. \n", "367476 No. No fictional character (particularly ones written by NTs) will ever be autistic. But it is perfectly valid to imagine them as so for personal self validation and assurance \n", "641332 You are a victim of abuse though. Let's say that she can't be *institutionally* racist. She can still do and say things meant to disparage your race, to YOU specifically. Lacking institutional power doesn't make individual actions hurt less. She knew enough about autism, your own socio-political belief system, and (American) racial identity and discourse to weaponise all of those things against you. You're conflating individual and institutional power. You existed whilst being white and male. You may have inadvertently done sexist or racist shit during your relationship, but I am focusing here on what you have written specifically. \"You are white and male\" is not an Uno reverse card when it comes to abuse - you might have an obligation to be aware of the privilege you carry, but that doesn't excuse her abusive behaviour against you. Meanwhile, she is weaponising your autism against you by playing into (what seems like) a strongly held sense of justice, and relatively black-and-white thinking. **That is ableism**. \n", "585514 As per Rule #4: No discrimination, ableism, perpetuating negative stereotypes of autism or disability. No misogynistic, homophobic, transphobic, racist, or sexist comments will be tolerated. Disliking children bc they cause sensory overload is not bigoted and it’s ableist to espouse such a rhetoric. \n", "1010096 Are they autistic themselves? It sounds like they might be and have just been fed ableist nonsense by neurotypicals to the point this had become their viewpoint. Either that, or just an allistic jerk trying to dictate what terms means they have no experience with or understanding of. Either way this is super close minded, they did not deserve any upvotes and you did not deserve downvotes, whatever this community it, it seems extremely toxic. Everyone's hiding behind yellow profile pic guy's nonsense statement and no one's hearing out your well written thought out replies. Absolutely sickening. Let's ostracize the one openly autistic person even more because they clearly know nothing about their own life and feelings /satire. Disgusting ableist nonsense, this. \n", "272370 IMO, it's not eugenics. Eugenics isn't just \"people shouldn't be born with harmful genes\", eugenics is an entire ideology that thinks people can be objectively ranked in terms of superiority, and it thinks that this determines someone's moral worth. It thinks \"inferior people\" should be forcibly sterilized, that if they get pregnant they should be forced into abortions, that only superior people should have access to social services, that superior and inferior people shouldn't mix. Eugenicists think autistic babies shouldn't exist specifically because they think autistic people are morally inferior and degenerate. They think autistic people shouldn't get to choose to have children. Even though it is sometimes informed by eugenics, you making a choice about your own body is not itself eugenics. I'm tired of people calling for restrictions on the bodily autonomy of women and birthing people just because they don't understand what eugenics is. \n", "\n", " score_morality \n", "1208219 0.827053 \n", "1152513 0.826736 \n", "136261 0.826057 \n", "639686 0.824583 \n", "996174 0.824577 \n", "367476 0.823856 \n", "641332 0.823849 \n", "585514 0.823524 \n", "1010096 0.823519 \n", "272370 0.822100 " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "── Top 10 by score_medical ──\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
typesubredditprocessed_textscore_medical
1030287commentautisminwomenIirc, B12 deficiency can cause depression, but if a person is that deficient, the treatment route is injection, not pills. It for sure is a scam if it claims to cure bipolar, schizophrenia & autism.0.861307
976579commentautisminwomenAs per Rule #6: We are unable to provide diagnoses or medical advice. There is no medication to treat autism. There are medications to treat comorbid conditions, however autism itself is not treated/cured by medication.0.856723
978761commentautisticwithadhdreferences: References: org/10.1007/s40120-022-00392-2 Molecular Characterisation of the Mechanism of Action of Stimulant Drugs Lisdexamfetamine and Methylphenidate on ADHD Neurobiology: A Review ADHD symptoms in neurometabolic diseases: Underlying mechanisms and clinical implications \"Folate–Methionine Cycle Disruptions in ASD Patients and Possible Interventions: A Systematic Review\" Methylenetetrahydrofolate reductase and psychiatric diseases B Vitamins and the Brain: Mechanisms, Dose and Efficacy—A Review Neurodivergence & Comorbidities Along the BH4 Pathway | Improving Outcome in Infantile Autism with Folate Receptor Autoimmunity and Nutritional Derangements: A Self-Controlled Trial The Key Role of Purine Metabolism in the Folate-Dependent Phenotype of Autism Spectrum Disorders: An In Silico Analysis Inborn Errors of Metabolism Associated With Autism Spectrum Disorders: Approaches to Intervention Consensus guideline for the diagnosis and treatment of tetrahydrobiopterin (BH4) deficiencies 10.3389/fnins.2018.00019 Comparison of Treatment for Metabolic Disorders Associated with Autism:Reanalysis of Three Clinical Trials 10.1002/aur.2330 A Metabolomics Approach to Screening for Autism Risk in the Children's Autism Metabolome Project0.856060
978782commentautisticwithadhdYou should head over to if you want to debate this. Consensus guideline for the diagnosis and treatment of tetrahydrobiopterin (BH4) deficiencies B Vitamins and the Brain: Mechanisms, Dose and Efficacy—A Review ADHD symptoms in neurometabolic diseases: Underlying mechanisms and clinical implications Folate–Methionine Cycle Disruptions in ASD Patients and Possible Interventions: A Systematic Review Methylenetetrahydrofolate reductase and psychiatric diseases0.851475
40935postadhdFDA Approves Generic Vyvanse. In response to the ongoing shortage of ADHD medications, the U.S. Food and Drug Administration (FDA) has approved several generic versions of Vyvanse (lisdexamfetamine dimesylate) for the treatment of attention-deficit/hyperactivity disorder in people 6 years and older. Vyvanse is available in capsules and chewable tablets, according to the FDA’s announcement. Dr. Barry K. Herman, a board-certified psychiatrist and the chief medical officer for Mentavi Health, a mental health assessment provider in Grand Rapids, Michigan, is hopeful that these new generic drugs will help address the persistent ADHD medication shortage.0.848675
464401commentadhdIt's entirely possible. Vyvanse is listed as a treatment for Binge eating disorder. Other ADHD Stimulants are used to treat narcolepsy.0.846501
454642commentadhdThe summary of findings: > **Findings** > The syndrome we now call ADHD has been described in the medical literature since 1775. 1–13 > When made by a licensed clinician, the diagnosis of ADHD is well-defined and valid at all ages, even in the presence of other psychiatric disorders, which is common. 14–19 > ADHD is more common in males and occurs in 5.9 % of youth and 2.5 % of adults. It has been found in studies from Europe, Scandinavia, Australia, Asia, the Middle East, South America, and North America. 20–25 > ADHD is rarely caused by a single genetic or environmental risk factor but most cases of ADHD are caused by the combined effects of many genetic and environmental risks each having a very small effect. 26–62 > People with ADHD often show impaired performance on psychological tests of brain functioning, but these tests cannot be used to diagnose ADHD. 63–70 > Neuroimaging studies find small differences in the structure and functioning of the brain between people with and without ADHD. These differences cannot be used to diagnose ADHD. 71–77 > People with ADHD are at increased risk for obesity, asthma, allergies, diabetes mellitus, hypertension, sleep problems, psoriasis, epilepsy, sexually transmitted infections, abnormalities of the eye, immune disorders, and metabolic disorders. 78–100 > People with ADHD are at increased risk for low quality of life, substance use disorders, accidental injuries, educational underachievement, unemployment, gambling, teenage pregnancy, difficulties socializing, delinquency, suicide, and premature death. 101–136 > Studies of economic burden show that ADHD costs society hundreds of billions of dollars each year, worldwide. 137–147 > Regulatory agencies around the world have determined that several medications are safe and effective for reducing the symptoms of ADHD as shown by randomized controlled clinical trials. 148–157 > Treatment with ADHD medications reduces accidental injuries, traumatic brain injury, substance abuse, cigarette smoking, educational underachievement, bone fractures, sexually transmitted infections, depression, suicide, criminal activity and teenage pregnancy. 158–177 > The adverse effects of medications for ADHD are typically mild and can be addressed by changing the dose or the medication. 178–188 > The stimulant medications for ADHD are more effective than non-stimulant medications but are also more likely to be diverted, misused, and abused. 189–194 > Non-medication treatments for ADHD are less effective than medication treatments for ADHD symptoms, but are frequently useful to help problems that remain after medication has been optimized. 195–2080.842192
864825commentadhdwomenSo I’ve done some googling to see how ADHD is classified by different health providers, organisations, charities etc. and here are the terms I’ve found: ADHD is a… - condition (ADAA, NHS, condition) - neurodevelopmental mental health condition (ADHD Aware says this is what ADHD is classified as but that “experts and drs are moving towards” understanding it as a “strictly neurodevelopmental condition”) - neurodevelopmental condition (ADHD Aware) - mental health condition (ADHD UK, Your Health in Mind) - behavioural condition (American Psychological Association) - disorder (CAMH Canada) - mental disorder (since it’s part of DSM-5) - neurodevelopmental disorder (ICD-11, DSM-5, Cleveland Clinic, the CDC, American Psychiatric Association) - developmental disorder (Priory) - behaviour disorder (Johns Hopkins Medicine) - behavioural and emotional disorder (ICD-10) - psychiatric disorder (Child Mind Institute) - mental health disorder (Mayo Clinic) - mental illness (CMHA British Columbia, Understood) - pattern of behaviours (Royal College of Psychiatrists) - group of behavioural symptoms (NHS Inform Scotland) - learning difficulty caused by a neurobehavioural disorder (Foundation for People with Learning Disabilities) These are not my opinions so don’t come for me if you don’t agree lol. As for whether it’s a disability, it differs from person to person. Disability is something that is separate from the actual classification of a disorde/condition. So ADHD is a neurodevelopmental disorder (as classified by ICD-11 and DSM-5) and for some it’s also a disability.0.841872
1134955commentadhdHe probably meant untreatedseep apnea. Medical causes of symptoms need to be ruled out before assessing for adhd. As do other psychiatric disorders like depression anxiety, substance use0.839393
796280commentautismAh, it is an Antipsycotic and treats schizophrenia, bipolar disorder, and irritability caused by autism. There are only 2 FDA certificated ASD meds: Risperidone (Risperdal) and Aripiprazole (Abilify).0.838771
\n", "
" ], "text/plain": [ " type subreddit \\\n", "1030287 comment autisminwomen \n", "976579 comment autisminwomen \n", "978761 comment autisticwithadhd \n", "978782 comment autisticwithadhd \n", "40935 post adhd \n", "464401 comment adhd \n", "454642 comment adhd \n", "864825 comment adhdwomen \n", "1134955 comment adhd \n", "796280 comment autism \n", "\n", " processed_text \\\n", "1030287 Iirc, B12 deficiency can cause depression, but if a person is that deficient, the treatment route is injection, not pills. It for sure is a scam if it claims to cure bipolar, schizophrenia & autism. \n", "976579 As per Rule #6: We are unable to provide diagnoses or medical advice. There is no medication to treat autism. There are medications to treat comorbid conditions, however autism itself is not treated/cured by medication. \n", "978761 references: References: org/10.1007/s40120-022-00392-2 Molecular Characterisation of the Mechanism of Action of Stimulant Drugs Lisdexamfetamine and Methylphenidate on ADHD Neurobiology: A Review ADHD symptoms in neurometabolic diseases: Underlying mechanisms and clinical implications \"Folate–Methionine Cycle Disruptions in ASD Patients and Possible Interventions: A Systematic Review\" Methylenetetrahydrofolate reductase and psychiatric diseases B Vitamins and the Brain: Mechanisms, Dose and Efficacy—A Review Neurodivergence & Comorbidities Along the BH4 Pathway | Improving Outcome in Infantile Autism with Folate Receptor Autoimmunity and Nutritional Derangements: A Self-Controlled Trial The Key Role of Purine Metabolism in the Folate-Dependent Phenotype of Autism Spectrum Disorders: An In Silico Analysis Inborn Errors of Metabolism Associated With Autism Spectrum Disorders: Approaches to Intervention Consensus guideline for the diagnosis and treatment of tetrahydrobiopterin (BH4) deficiencies 10.3389/fnins.2018.00019 Comparison of Treatment for Metabolic Disorders Associated with Autism:Reanalysis of Three Clinical Trials 10.1002/aur.2330 A Metabolomics Approach to Screening for Autism Risk in the Children's Autism Metabolome Project \n", "978782 You should head over to if you want to debate this. Consensus guideline for the diagnosis and treatment of tetrahydrobiopterin (BH4) deficiencies B Vitamins and the Brain: Mechanisms, Dose and Efficacy—A Review ADHD symptoms in neurometabolic diseases: Underlying mechanisms and clinical implications Folate–Methionine Cycle Disruptions in ASD Patients and Possible Interventions: A Systematic Review Methylenetetrahydrofolate reductase and psychiatric diseases \n", "40935 FDA Approves Generic Vyvanse. In response to the ongoing shortage of ADHD medications, the U.S. Food and Drug Administration (FDA) has approved several generic versions of Vyvanse (lisdexamfetamine dimesylate) for the treatment of attention-deficit/hyperactivity disorder in people 6 years and older. Vyvanse is available in capsules and chewable tablets, according to the FDA’s announcement. Dr. Barry K. Herman, a board-certified psychiatrist and the chief medical officer for Mentavi Health, a mental health assessment provider in Grand Rapids, Michigan, is hopeful that these new generic drugs will help address the persistent ADHD medication shortage. \n", "464401 It's entirely possible. Vyvanse is listed as a treatment for Binge eating disorder. Other ADHD Stimulants are used to treat narcolepsy. \n", "454642 The summary of findings: > **Findings** > The syndrome we now call ADHD has been described in the medical literature since 1775. 1–13 > When made by a licensed clinician, the diagnosis of ADHD is well-defined and valid at all ages, even in the presence of other psychiatric disorders, which is common. 14–19 > ADHD is more common in males and occurs in 5.9 % of youth and 2.5 % of adults. It has been found in studies from Europe, Scandinavia, Australia, Asia, the Middle East, South America, and North America. 20–25 > ADHD is rarely caused by a single genetic or environmental risk factor but most cases of ADHD are caused by the combined effects of many genetic and environmental risks each having a very small effect. 26–62 > People with ADHD often show impaired performance on psychological tests of brain functioning, but these tests cannot be used to diagnose ADHD. 63–70 > Neuroimaging studies find small differences in the structure and functioning of the brain between people with and without ADHD. These differences cannot be used to diagnose ADHD. 71–77 > People with ADHD are at increased risk for obesity, asthma, allergies, diabetes mellitus, hypertension, sleep problems, psoriasis, epilepsy, sexually transmitted infections, abnormalities of the eye, immune disorders, and metabolic disorders. 78–100 > People with ADHD are at increased risk for low quality of life, substance use disorders, accidental injuries, educational underachievement, unemployment, gambling, teenage pregnancy, difficulties socializing, delinquency, suicide, and premature death. 101–136 > Studies of economic burden show that ADHD costs society hundreds of billions of dollars each year, worldwide. 137–147 > Regulatory agencies around the world have determined that several medications are safe and effective for reducing the symptoms of ADHD as shown by randomized controlled clinical trials. 148–157 > Treatment with ADHD medications reduces accidental injuries, traumatic brain injury, substance abuse, cigarette smoking, educational underachievement, bone fractures, sexually transmitted infections, depression, suicide, criminal activity and teenage pregnancy. 158–177 > The adverse effects of medications for ADHD are typically mild and can be addressed by changing the dose or the medication. 178–188 > The stimulant medications for ADHD are more effective than non-stimulant medications but are also more likely to be diverted, misused, and abused. 189–194 > Non-medication treatments for ADHD are less effective than medication treatments for ADHD symptoms, but are frequently useful to help problems that remain after medication has been optimized. 195–208 \n", "864825 So I’ve done some googling to see how ADHD is classified by different health providers, organisations, charities etc. and here are the terms I’ve found: ADHD is a… - condition (ADAA, NHS, condition) - neurodevelopmental mental health condition (ADHD Aware says this is what ADHD is classified as but that “experts and drs are moving towards” understanding it as a “strictly neurodevelopmental condition”) - neurodevelopmental condition (ADHD Aware) - mental health condition (ADHD UK, Your Health in Mind) - behavioural condition (American Psychological Association) - disorder (CAMH Canada) - mental disorder (since it’s part of DSM-5) - neurodevelopmental disorder (ICD-11, DSM-5, Cleveland Clinic, the CDC, American Psychiatric Association) - developmental disorder (Priory) - behaviour disorder (Johns Hopkins Medicine) - behavioural and emotional disorder (ICD-10) - psychiatric disorder (Child Mind Institute) - mental health disorder (Mayo Clinic) - mental illness (CMHA British Columbia, Understood) - pattern of behaviours (Royal College of Psychiatrists) - group of behavioural symptoms (NHS Inform Scotland) - learning difficulty caused by a neurobehavioural disorder (Foundation for People with Learning Disabilities) These are not my opinions so don’t come for me if you don’t agree lol. As for whether it’s a disability, it differs from person to person. Disability is something that is separate from the actual classification of a disorde/condition. So ADHD is a neurodevelopmental disorder (as classified by ICD-11 and DSM-5) and for some it’s also a disability. \n", "1134955 He probably meant untreatedseep apnea. Medical causes of symptoms need to be ruled out before assessing for adhd. As do other psychiatric disorders like depression anxiety, substance use \n", "796280 Ah, it is an Antipsycotic and treats schizophrenia, bipolar disorder, and irritability caused by autism. There are only 2 FDA certificated ASD meds: Risperidone (Risperdal) and Aripiprazole (Abilify). \n", "\n", " score_medical \n", "1030287 0.861307 \n", "976579 0.856723 \n", "978761 0.856060 \n", "978782 0.851475 \n", "40935 0.848675 \n", "464401 0.846501 \n", "454642 0.842192 \n", "864825 0.841872 \n", "1134955 0.839393 \n", "796280 0.838771 " ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "── Top 10 by score_social_model ──\n" ] }, { "data": { "text/html": [ "
\n", "\n", "\n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", " \n", "
typesubredditprocessed_textscore_social_model
585511commentautisminwomenAs per Rule #4: No discrimination, ableism, perpetuating negative stereotypes of autism or disability. No misogynistic, homophobic, transphobic, racist, or sexist comments will be tolerated. Comparing disliking children bc they cause you sensory overload to racism trivializes racism and the actual dangers and discrimination POC face in society.0.817295
585507commentautisminwomenAs per Rule #4: No discrimination, ableism, perpetuating negative stereotypes of autism or disability. No misogynistic, homophobic, transphobic, racist, or sexist comments will be tolerated. Comparing disliking children bc they cause sensory overload to racism trivializes racism and the danger and discrimination POC face from society.0.816675
1080557commentautisminwomenDepending on where you live, there are autism advocacy groups that are lobbying against policies that harm autists. In the states, The Autistic Self-Advocacy Network may be helpful. The way we change existing abusive practices is by taking it to the government and fighting for our rights.0.815974
794599commentautismLegally protected accommodations, government funded services relating to autism (social groups, vocational services, ect) piece of mind, therapy and medication to pinpoint one’s symptoms, ect0.814435
350981commentautismThis is bad advice. Disclosing Autism as a disability offers additional, and necessary protections in the workplace. Not diagnosing leaves you vulnerable.0.809238
73968commentautisticadultsAutistic people currently have legal rights and protections under the ADA, and you’re willingly allowing the court to deny you those protections. You’re currently denying yourself equal rights and protections out of fear over the possibility your rights will be denied in the future. It’s a confusing argument.0.805892
710813commentautisminwomenLive in Australia. We recently implemented a large scale disability support system called the NDIS (National Disability Insurance Scheme). Works like insurance for disability services except the government pays. So I'm able to access psychology, occupational therapy, speech pathology, and support workers all covered under the NDIS. It has its flaws as any disability system does but it's a step in the right direction in terms of universal disability support. In terms of Autism specifically, that differs from service to service. Some specialise in Autism whereas others just service all disability types. In terms of diagnostic services, our healthcare system (medicare) usually doesn't cover Autism assessments. For children there are community based services that offer low/no cost allied health assessments for eligible families. When you get the right assessment report though you are eligible for the NDIS.0.804397
1116132commentautisminwomenPlease make sure the mod team you assemble is as diverse as this community! Especially in terms of race and support needs, as BIPOC and higher support needs individuals are often excluded from online autistic spaces0.803959
1071505commentautisminwomenAutistic people aren’t exempt from being racist, ableist, sexist, homophobic, transphobic, etc. We all have a responsibility to unpack our biases.0.798955
950951commentautismwire all funds to list of non profits that do represent autistic ke ASAN and others that even if not centered on autistic people do advocacy on key areas for autistic people like non verbal communication, inclusive education or avoiding general inhumane treatments.0.797403
\n", "
" ], "text/plain": [ " type subreddit \\\n", "585511 comment autisminwomen \n", "585507 comment autisminwomen \n", "1080557 comment autisminwomen \n", "794599 comment autism \n", "350981 comment autism \n", "73968 comment autisticadults \n", "710813 comment autisminwomen \n", "1116132 comment autisminwomen \n", "1071505 comment autisminwomen \n", "950951 comment autism \n", "\n", " processed_text \\\n", "585511 As per Rule #4: No discrimination, ableism, perpetuating negative stereotypes of autism or disability. No misogynistic, homophobic, transphobic, racist, or sexist comments will be tolerated. Comparing disliking children bc they cause you sensory overload to racism trivializes racism and the actual dangers and discrimination POC face in society. \n", "585507 As per Rule #4: No discrimination, ableism, perpetuating negative stereotypes of autism or disability. No misogynistic, homophobic, transphobic, racist, or sexist comments will be tolerated. Comparing disliking children bc they cause sensory overload to racism trivializes racism and the danger and discrimination POC face from society. \n", "1080557 Depending on where you live, there are autism advocacy groups that are lobbying against policies that harm autists. In the states, The Autistic Self-Advocacy Network may be helpful. The way we change existing abusive practices is by taking it to the government and fighting for our rights. \n", "794599 Legally protected accommodations, government funded services relating to autism (social groups, vocational services, ect) piece of mind, therapy and medication to pinpoint one’s symptoms, ect \n", "350981 This is bad advice. Disclosing Autism as a disability offers additional, and necessary protections in the workplace. Not diagnosing leaves you vulnerable. \n", "73968 Autistic people currently have legal rights and protections under the ADA, and you’re willingly allowing the court to deny you those protections. You’re currently denying yourself equal rights and protections out of fear over the possibility your rights will be denied in the future. It’s a confusing argument. \n", "710813 Live in Australia. We recently implemented a large scale disability support system called the NDIS (National Disability Insurance Scheme). Works like insurance for disability services except the government pays. So I'm able to access psychology, occupational therapy, speech pathology, and support workers all covered under the NDIS. It has its flaws as any disability system does but it's a step in the right direction in terms of universal disability support. In terms of Autism specifically, that differs from service to service. Some specialise in Autism whereas others just service all disability types. In terms of diagnostic services, our healthcare system (medicare) usually doesn't cover Autism assessments. For children there are community based services that offer low/no cost allied health assessments for eligible families. When you get the right assessment report though you are eligible for the NDIS. \n", "1116132 Please make sure the mod team you assemble is as diverse as this community! Especially in terms of race and support needs, as BIPOC and higher support needs individuals are often excluded from online autistic spaces \n", "1071505 Autistic people aren’t exempt from being racist, ableist, sexist, homophobic, transphobic, etc. We all have a responsibility to unpack our biases. \n", "950951 wire all funds to list of non profits that do represent autistic ke ASAN and others that even if not centered on autistic people do advocacy on key areas for autistic people like non verbal communication, inclusive education or avoiding general inhumane treatments. \n", "\n", " score_social_model \n", "585511 0.817295 \n", "585507 0.816675 \n", "1080557 0.815974 \n", "794599 0.814435 \n", "350981 0.809238 \n", "73968 0.805892 \n", "710813 0.804397 \n", "1116132 0.803959 \n", "1071505 0.798955 \n", "950951 0.797403 " ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "# ── Build Dimensions & Score Comments ─────────────────────────────────\n", "# One-pole approach (Nelson): average synonym vectors into a single dimension vector,\n", "# then score each row via cosine similarity to that pole.\n", "wv = model.wv\n", "\n", "# ── Seed word lists ───────────────────────────────────────────────────────────\n", "\n", "morality_words = [\n", " # From paper\n", " 'righteous', 'righteousness', 'unrighteousness', 'unrighteous', 'righteously',\n", " 'moral', 'moralistic', 'moralism', 'moralisation', 'moralizing', 'morality',\n", " 'morals', 'ethical', 'ethically', 'ethics', 'valued', 'value', 'upstanding',\n", " 'good', 'goodness', 'unprincipled', 'principle', 'principled', 'blameless',\n", " 'exemplary', 'lesson', 'canon', 'doctrine', 'noble', 'worth', 'worthlessness',\n", " 'worthy', 'trustworthy', 'trustworthiness', 'worthless', 'ideal', 'idealistic',\n", " 'idealisation', 'idealize', 'praiseworthy', 'commendable', 'character', 'proper',\n", " 'laudable', 'correct', 'wrong', 'wrongdoer', 'wrongdoing', 'wrongly', 'wrongful',\n", " 'evil', 'immoral', 'immorality', 'immorally', 'bad', 'offend', 'offending',\n", " 'offender', 'offensive', 'offensively', 'offensiveness', 'inoffensive',\n", " 'transgress', 'transgression', 'transgressor', 'transgressive'\n", "]\n", "\n", "medical_words = [\n", " # From paper\n", " 'medical', 'medicinal', 'pharmaceutical', 'therapeutic', 'curative',\n", " 'pathological', 'medicated', 'medicative', 'insalubrious', 'unhealthy',\n", " 'healthy', 'pharmaceutics',\n", " # From seed word exploration\n", " 'healthcare', 'mentalhealth', 'illness', 'condition', 'disease', 'diseases',\n", " 'degenerative', 'autoimmune', 'congenital',\n", " 'cure', 'cured', 'curable', 'curing', 'incurable',\n", " 'treatment', 'treating', 'treated',\n", " 'medication', 'medications', 'meds', 'med', 'stimulant', 'stimulants',\n", " 'psychiatric', 'psychiatry', 'neuropsychiatric',\n", "]\n", "\n", "social_model_words = [\n", " 'barrier', 'barriers', 'obstacles', 'hurdles', 'roadblocks',\n", " 'accessibility', 'accessible', 'inaccessible', 'assistive',\n", " 'accommodation', 'accommodations', 'accomodation', 'accomodations',\n", " 'ableism', 'ablism', 'ableist', 'abelism',\n", " 'inclusion', 'inclusivity', 'inclusive', 'exclusion', 'excluded',\n", " 'marginalized', 'marginalised', 'oppressed', 'disenfranchised',\n", " 'systemic', 'institutional', 'inequities', 'inequality', 'inequity',\n", " 'discrimination', 'injustice', 'unsupported', 'underserved',\n", " 'selfadvocacy', 'advocacy', 'activism',\n", " 'access', 'inaccessibility',\n", "]\n", "\n", "# ── Build dimension vectors ───────────────────────────────────────────────────\n", "\n", "def build_dimension(wv, word_list, label):\n", " \"\"\"Average in-vocabulary seed word vectors into a single dimension vector.\"\"\"\n", " valid = [w for w in word_list if w in wv]\n", " missing = [w for w in word_list if w not in wv]\n", " print(f\"{label}: {len(valid)}/{len(word_list)} words in vocabulary\")\n", " if missing:\n", " print(f\" Missing: {missing}\")\n", " vecs = np.array([wv[w] for w in valid])\n", " dim = np.mean(vecs, axis=0)\n", " return dim / np.linalg.norm(dim)\n", "\n", "morality_dim = build_dimension(wv, morality_words, \"Morality\")\n", "medical_dim = build_dimension(wv, medical_words, \"Medical\")\n", "social_model_dim = build_dimension(wv, social_model_words, \"Social model\")\n", "\n", "# ── Score each row ────────────────────────────────────────────────────────────\n", "\n", "def comment_vector(text, wv):\n", " \"\"\"Average word vectors for all in-vocabulary tokens in a row.\"\"\"\n", " tokens = text.lower().split()\n", " vecs = [wv[t] for t in tokens if t in wv]\n", " if not vecs:\n", " return None\n", " return np.mean(vecs, axis=0)\n", "\n", "def cosine_sim(a, b):\n", " \"\"\"Cosine similarity between two vectors.\"\"\"\n", " return float(np.dot(a, b) / (np.linalg.norm(a) * np.linalg.norm(b)))\n", "\n", "def score_row(text, wv, dim_vec):\n", " \"\"\"Return cosine similarity of row to dimension, or NaN if no vocab overlap.\"\"\"\n", " vec = comment_vector(text, wv)\n", " if vec is None:\n", " return np.nan\n", " return cosine_sim(vec, dim_vec)\n", "\n", "unified_relevant['score_morality'] = unified_relevant['processed_text_embeddings'].apply(\n", " lambda t: score_row(t, wv, morality_dim))\n", "unified_relevant['score_medical'] = unified_relevant['processed_text_embeddings'].apply(\n", " lambda t: score_row(t, wv, medical_dim))\n", "unified_relevant['score_social_model'] = unified_relevant['processed_text_embeddings'].apply(\n", " lambda t: score_row(t, wv, social_model_dim))\n", "\n", "# ── Score distributions ───────────────────────────────────────────────────────\n", "print(\"\\nScore distributions:\")\n", "print(unified_relevant[['score_morality', 'score_medical', 'score_social_model']].describe())\n", "\n", "# ── Top 3 rows per dimension for validation ───────────────────────────────────\n", "for dim in ['score_morality', 'score_medical', 'score_social_model']:\n", " print(f\"\\n── Top 10 by {dim} ──\")\n", " pd.set_option('display.max_colwidth', None)\n", " display(unified_relevant.nlargest(10, dim)[['type', 'subreddit', 'processed_text', dim]])\n", " pd.reset_option('display.max_colwidth')" ] }, { "cell_type": "code", "execution_count": 59, "id": "db6eec8e-64f3-4e71-bce5-929203a1b0e5", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "── Mean scores by gender community ──\n", " score_morality score_medical score_social_model\n", "gender_community \n", "general 0.6714 0.6336 0.5728\n", "women 0.6674 0.6203 0.5707\n", "\n", "── Mean scores by neurodivergence type ──\n", " score_morality score_medical score_social_model\n", "nd_type \n", "adhd 0.6560 0.6336 0.5576\n", "audhd 0.6716 0.6320 0.5755\n", "autism 0.6904 0.6242 0.5927\n", "\n", "── Mean scores by subreddit ──\n", " score_morality score_medical score_social_model\n", "subreddit \n", "adhd 0.6559 0.6390 0.5557\n", "adhdwomen 0.6564 0.6205 0.5624\n", "audhdwomen 0.6714 0.6273 0.5727\n", "autism 0.6937 0.6258 0.5965\n", "autisminwomen 0.6835 0.6193 0.5829\n", "autisticadults 0.6886 0.6281 0.5957\n", "autisticwithadhd 0.6717 0.6345 0.5771\n", "\n", "── Row counts by group ──\n", "gender_community nd_type\n", "general adhd 84587\n", " audhd 4167\n", " autism 60657\n", "women adhd 34359\n", " audhd 2237\n", " autism 22983\n", "dtype: int64\n" ] } ], "source": [ "# ── Create Group Variables & Descriptive Analysis ─────────────────────\n", "\n", "# ── Code gender community ─────────────────────────────────────────────────────\n", "womens_subreddits = ['adhdwomen', 'autisminwomen', 'audhdwomen']\n", "\n", "unified_relevant['gender_community'] = unified_relevant['subreddit'].apply(\n", " lambda x: 'women' if x in womens_subreddits else 'general'\n", ")\n", "\n", "# ── Code neurodivergence type ─────────────────────────────────────────────────\n", "nd_type_map = {\n", " 'adhd': 'adhd',\n", " 'adhdwomen': 'adhd',\n", " 'autism': 'autism',\n", " 'autisminwomen': 'autism',\n", " 'autisticadults': 'autism',\n", " 'autisticwithadhd': 'audhd',\n", " 'audhdwomen': 'audhd',\n", "}\n", "\n", "unified_relevant['nd_type'] = unified_relevant['subreddit'].map(nd_type_map)\n", "\n", "# ── Descriptive stats by gender community ────────────────────────────────────\n", "print(\"── Mean scores by gender community ──\")\n", "print(unified_relevant.groupby('gender_community')[\n", " ['score_morality', 'score_medical', 'score_social_model']\n", "].mean().round(4))\n", "\n", "print(\"\\n── Mean scores by neurodivergence type ──\")\n", "print(unified_relevant.groupby('nd_type')[\n", " ['score_morality', 'score_medical', 'score_social_model']\n", "].mean().round(4))\n", "\n", "print(\"\\n── Mean scores by subreddit ──\")\n", "print(unified_relevant.groupby('subreddit')[\n", " ['score_morality', 'score_medical', 'score_social_model']\n", "].mean().round(4))\n", "\n", "print(\"\\n── Row counts by group ──\")\n", "print(unified_relevant.groupby(['gender_community', 'nd_type']).size())" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.13.12" } }, "nbformat": 4, "nbformat_minor": 5 }