Компьютерные психологические тесты.

Программирование, Хакинг, Безопасность, Софт, Железо, а также всё связанное с компьютерами
Ответить
Аватара пользователя
BDK
Сообщения: 3665
Зарегистрирован: 17 май 2015, 23:27
Откуда: Беларусь
Благодарил (а): 152 раза
Поблагодарили: 388 раз
Контактная информация:

Компьютерные психологические тесты.

Сообщение BDK »

Есть возможность достаточно просто сделать компьютерный психологический тест на нейронных сетях.

Суть очень проста:

1.Сначала нужно составить список неких признаков которые мы можем наблюдать у людей.
2.Затем нужно составить список психологических типов и характеристик людей.
3.Затем нужно взять некоторое количество людей и во первых отметить какие признаки из 1-го пункта в них наблюдаются, во вторых к каким психологическим типам мы этих людей относим и какими психологическими характеристиками наделяем. Все это в виде таблицы загоняется в компьютер.
4.Программа обрабатывает эту таблицу специальным образом и выдает нейронную сеть, которая может распознавать психотипы и психологические характеристики людей по их наблюдаемым признакам.

К наблюдаемым признакам можно отнести всё что угодно что можно явно наблюдать - например употребляет ли человек те или иные речевые обороты, ведет себя миролюбиво и или агрессивно в той или иной ситуации, использует те или иные смайлики, использует часто или редко те или иные слова, пишет большие или маленькие сообщения, допускает много или мало грамматических ошибок и т.д. Таких признаков желательно придумать как можно больше и самых разнообразных - это повышает точность распознавания.

К психотипам и характеристикам можно отнести любые конечные типы по которым мы желаем оценивать человека - например хороший или плохой, или например подходящий или не подходящий, истеричный, спокойный, умный, глупый и т.д. Можно так же взять какие либо категории из психологии. Характеристики нужно брать те которые нас интересуют.

После того как мы получим нейронную сеть она будет распознавать соответственно по признакам к каком типу относится человек. То есть по таким признакам как употребляет ли человек те или иные речевые обороты, ведет себя миролюбиво и или агрессивно в той или иной ситуации, использует те или иные смайлики, использует часто или редко те или иные слова, пишет большие или маленькие сообщения, допускает много или мало грамматических ошибок и т.д. нейронная сеть будет оценивать - хороший это человек или плохой, подходящий или нет, истеричный ли, спокойный ли, умный ли или глупый и т.д.
Аватара пользователя
BDK
Сообщения: 3665
Зарегистрирован: 17 май 2015, 23:27
Откуда: Беларусь
Благодарил (а): 152 раза
Поблагодарили: 388 раз
Контактная информация:

Re: Компьютерные психологические тесты.

Сообщение BDK »

Было бы интересно попробовать прикрутить такую нейронную сеть к форуму в качестве эксперимента. Не обязательно для отсева участников. Можно например просто сделать это в занимательной форме - например в статусе каждого участника выводить характеристики распознанные нейронной сетью. И эти статусы будут автоматически изменяться в зависимости от поведения самого участника.
Dora
Сообщения: 1005
Зарегистрирован: 17 янв 2016, 23:18
Благодарил (а): 146 раз
Поблагодарили: 111 раз

Re: Компьютерные психологические тесты.

Сообщение Dora »

DK, если проект осуществится, дайте знать, а...? очень любопытно будет узнать свой "проходной балл"...:)
Аватара пользователя
BDK
Сообщения: 3665
Зарегистрирован: 17 май 2015, 23:27
Откуда: Беларусь
Благодарил (а): 152 раза
Поблагодарили: 388 раз
Контактная информация:

Re: Компьютерные психологические тесты.

Сообщение BDK »

Да это даже не проект. На большой проект нет времени. Это скорей занятная интересная задачка.

И я специально описал как примерно это работает чтобы стало понятно - программа не оценивает а РАСПОЗНАЁТ. В чем разница? Разница в том что здесь не компьютер оценивает людей а мы оцениваем людей при обучении компьютера, а уже компьютер просто обучается оценивать так же как мы. То есть он копирует (с некоторой степенью точности) наш способ оценки. То есть я хочу чтобы было понятно - у компьютера нет собственного мнения и он конечно не понимает что такое хорошо и что такое плохо, что такое адекватный и неадекватный человек - он просто обучается распознавать что мы бы назвали плохим или хорошим, адекватным или не адекватным.

Чтобы было понятней - помнится был такой мультик - там баба яга что-то стряпала на кухне. И вот она что-то там месила в кастрюле а потом начинала там тесто какое-то замешивать а то что она месила в кастрюле - продолжало меситься само по себе, потом она еще там на какую-то другую работу переключилась а тесто продолжало меситься само. Вот здесь очень похожая ситуация - компьютер просто обучается делать похоже как мы и затем может продолжать делать это уже автоматически - то есть при обучении компьютера мы сначала ему как бы показываем как мы оцениваем психологические характеристики людей - а компьютер улавливливает закономерность и продолжает делать очень похоже дальше уже автоматически. Причем у него очень неплохо получается улавливать очень такие неясные и нечеткие закономерности - как раз подобные психологии. В точных областях несколько похуже.
Аватара пользователя
BDK
Сообщения: 3665
Зарегистрирован: 17 май 2015, 23:27
Откуда: Беларусь
Благодарил (а): 152 раза
Поблагодарили: 388 раз
Контактная информация:

Re: Компьютерные психологические тесты.

Сообщение BDK »

А сам метод очень простой. Я потому и предложил что реализация там элементарная. На PHP можно было бы вписать в движок форума. Это могло бы иметь вид одной небольшой функции реализующей нейронную сеть. Функция буквально в несколько строчек. В неё только нужно будет подставлять собственно сеть в виде массива чисел. Ну а эти массивы чисел я мог бы посчитать и выложить в виде файлов.

Для Андрея могу расписать какого вида должна быть функция.
Аватара пользователя
BDK
Сообщения: 3665
Зарегистрирован: 17 май 2015, 23:27
Откуда: Беларусь
Благодарил (а): 152 раза
Поблагодарили: 388 раз
Контактная информация:

Re: Компьютерные психологические тесты.

Сообщение BDK »

Нейрон - это функция вида:

z=k1*p1+k2*p2+k3*p3+...+kn*pn

где k1,k2,k3...kn - собственно весовые коэффициенты нейронной сети.
p1,p2,p3...pn - признаки, могут принимать значения 0 и 1 для случая четкой логики либо от 0 до 1 для случая нечеткой. Смысл значений признаков прост 0 - значит признак не наблюдается, 1 - значит признак наблюдается. Для нечеткой логики возможны еще и промежуточные значения (типа наблюдается но неясно - на 60% например).

Z- это собственно решение принятое нейроном. Его можно интерпретировать по разному. Например можно принять что если Z>0 то класс распознан как присутствующий иначе как отсутствующий.

И таких нейронов столько сколько классов.

Классы - это собственно в нашем случае психологические характеристики. Например классов может быть всего два - "подходящий участник форума" и "не подходящий участник форума" и собственно после распознавания по одному из этих классов Z будет больше нуля а по другому меньше.

Ну можно конечно придумать классов и побольше разных. Сколько классов столько нейронов, то есть для распознавания одного класса нужен один нейрон.

То есть тупо подставляем в функцию весовые коэффициенты, значения наблюдаемых и не наблюдаемых признаков и получаем на выходе значение Z больше или меньше нуля - что будет означать забанить или оставить участника :). Ну или в случае других классов - вердикт о какой то характеристике участника - присуща она ему или нет.
=====

То как нейрон распознаёт определяется весовыми коэффициентами. Для вычисления этих весовых коэффициентов на основе обучающих данных у меня есть специальная программа - то есть я могу их посчитать и выслать в виде файла. В движке форума их считать не нужно.
Аватара пользователя
BDK
Сообщения: 3665
Зарегистрирован: 17 май 2015, 23:27
Откуда: Беларусь
Благодарил (а): 152 раза
Поблагодарили: 388 раз
Контактная информация:

Re: Компьютерные психологические тесты.

Сообщение BDK »

При обучении нейронной сети понадобится участие экспертной группы :) То есть участников форума. Участие будет иметь такой вид - будет список некоторого количества людей, экспертной группе нужно по каждому человеку поставить птички напротив психологических характеристик - обладает этими характеристиками данный человек или нет. Список людей по которым мы будем выставлять характеристики можно взять например из открытых источников - разного рода известные личности.

Эти оценки проставленные экспертной группой я загоню в компьютер и программа посчитает нейронную сеть, которую я в виде файла вышлю Андрею чтобы он вписал её в функцию описанную в предыдущих сообщениях.
Ответить