What is “social”?

We have many ideas of what it means for something to be considered “social”: social roles, social behaviors, personality traits, emotions, ways of interacting, faces, people, animals… maybe even networks of fungi! It’s unclear how all of these various “socially-relevant” things hang together. Do we view social roles as a different kind of social than personality traits or emotions?

This study attempts to characterize words from three different data sets of social concepts (social roles, emotions, behavioral states) by their relative distances in a semantic similarity space.

word_list <- read_csv("file_lists/social_words_list.csv")
## Rows: 167 Columns: 2
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr (2): word, dataset
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
word_list <- word_list[order(word_list$word),]

Data was collected from 40 adults in the UK between the ages of 50 and 100. They performed 260 trials each, with 10 check trials, 50 validation trials that everyone shared, and 200 randomly-generated trials.

2D embedding…

embs <- read_csv("embeddings/2d_30kep_social_words_cleaned.csv") %>% select('0', '1')
## New names:
## Rows: 167 Columns: 3
## ── Column specification
## ──────────────────────────────────────────────────────── Delimiter: "," dbl
## (3): ...1, 0, 1
## ℹ Use `spec()` to retrieve the full column specification for this data. ℹ
## Specify the column types or set `show_col_types = FALSE` to quiet this message.
## • `` -> `...1`
names(embs) <- c("x", "y")
embs$words <- word_list$word
embs$dataset <- word_list$dataset

ggplot(embs, aes(x = x, y = y, label = words, color = dataset)) +
  geom_text(size = 5) +  # Adjust size as needed
  labs(title = "Social Words")

3d embedding…

embs <- read_csv("embeddings/3d_30kep_social_words_cleaned.csv") %>% select('0', '1', '2')
## New names:
## Rows: 167 Columns: 4
## ── Column specification
## ──────────────────────────────────────────────────────── Delimiter: "," dbl
## (4): ...1, 0, 1, 2
## ℹ Use `spec()` to retrieve the full column specification for this data. ℹ
## Specify the column types or set `show_col_types = FALSE` to quiet this message.
## • `` -> `...1`
names(embs) <- c("x", "y", "z")
embs$words <- word_list$word
embs$dataset <- word_list$dataset

plot_ly(embs, x = ~x, y = ~y, z = ~z, text = ~words, type = 'scatter3d', mode = 'text', color = ~dataset)

5D embedding…

embs_5d <- read_csv("embeddings/5d_30kep_social_words_cleaned.csv") %>% select("0", "1", "2", "3", "4")
## New names:
## Rows: 167 Columns: 6
## ── Column specification
## ──────────────────────────────────────────────────────── Delimiter: "," dbl
## (6): ...1, 0, 1, 2, 3, 4
## ℹ Use `spec()` to retrieve the full column specification for this data. ℹ
## Specify the column types or set `show_col_types = FALSE` to quiet this message.
## • `` -> `...1`
names(embs_5d) <- c("a", "b", "c", "d", "e")
#embs_5d$word <- word_list$word
dist_5d <- embs_5d %>% as.matrix() %>% dist() %>% as.matrix() %>% as.data.frame()
write_csv(x = dist_5d, file = "social_word_5d_distances.csv")