跳转至

认知心理学实验指南

序言

本实验指南仅提供部分的示例代码,以及关于实验数据分析的思路,具体的语言组织以及整体排版请由实验者自行完成。

本文全部实验数据的指示全在汇总表下进行。

实验一

实验一为斯特鲁普效应,相关的资料见维基百科斯特鲁普效应。斯特鲁布效应描述了语义干扰现象以及语义辅导现象,这是我们进行的若干实验的共同主题。

你需要分析的数据或许包括表格中的 color(字样颜色), word(文字内容), response2.corr(是否正确)以及 response2.rt(反应时)列。

正向分析

假如说实验结果与斯特鲁普效应相同,则可以根据维基百科内容进行分析,无需过多的讲解。

反向分析

假如说实验结果与斯特鲁普效应不同,则可以根据反向分析的思路进行分析。

其中包括以下几个角度:

  • 按键不熟悉:因为按键与颜色的不熟悉可能导致按错或者反应时过长。
  • 语义不明确:英文语义对于中文语境下的被试不敏感。
  • 实验顺序固定。

实验二

实验二为 SART(Sustained Attention to Response Task,持续注意反应任务)实验。其通常用于评估注意力的持续性和抑制控制能力。

SART 参与者需要对大多数数字出快速按键反应,但对特定的目标数字(例如数字3)不做反应。这种设置要求参与者在大多数时间内保持反应,但在看到目标数字时必须抑制反应,并且出于对注意力持续性的评估,实验会持续一段较长的时间。

你需要分析的数据或许包括表格中的 isGo(是否需要按键), responseTaskResponse.corr(是否正确)以及 responseTaskResponse.rt(反应时)列。

正向分析

假如说与实验预期相符,可以从注意力随时间的衰减进行分析。包括反应时的上升以及正确率的下降。如有出现高错误率等情况可以着重分析。

反向分析

假如说与实验预期不相符,可以从反向分析的思路进行分析。

其中包括以下几个角度:

  • 实验时间太短:实验时间太短,被试的注意力不能充分的下降。
  • 被试的特殊性:被试本身可能注意力较为集中。

实验三

实验三为 Posner Cueing Task,与实验一类似,同样是语义辅导以及语义误导相关的实验。

其中被试要求按下方向键,对应屏幕中变为绿色的方块,同时屏幕中心会存在方向键的引导,引导可能是有效的也可能是无效的,也可能不存在引导。

你需要分析的数据或许包括表格中的 condition(为引导/误导/无), posnerInput.corr(是否正确)以及 posnerInput.rt(反应时)列。

正向分析

这种实验的设计构成了一种经典的对照组/Positive/Negative 的设计,假如说实验结果与预期相符,同样从语义引导以及语义干扰的角度进行分析即可,并可以强调相较于实验一增加的对照组可以更好的描述语义引导以及语义干扰的作用。

反向分析

假如说与预期现象不符,则可以通过以下的方向进行分析,其中包括:

  • 引导不明确:引导存在的时间过短,被试无法捕捉引导。
  • 被试未按照实验要求进行试验:一种实验方法是将注意力集中在一侧,这样无需受到引导的干扰。

实验四

实验四为音调的引导实验,同样按照语义引导的表述逻辑,这次不再是单纯的视觉,而是进行了视觉-听觉多模态的设计。

被试被要求在左右的大量图案中找到被要求寻找的图案同时声音引导会指示/误导图案的方向。

你需要分析的数据或许包括表格中的 correct2, correct3, correct4, correct5(答案方向), sound2, sound3, sound4, sound5(声音方向), key_resp_16.corr, key_resp_16.rt, key_resp_19.corr, key_resp_19.rt, key_resp_6.corr, key_resp_6.rt, key_resp_13.corr 以及 key_resp_13.rt(是否正确与反应时)列。

正向分析

假如说与预期的结果相一致,则依然通过语义引导的角度进行分析,值得注意的是,同样可以分析的因素包括音调的高低以及两侧图案的数量对于正确率和反应时的影响。

反向分析

假如说与预期的结果不一致,则可以通过以下的方向进行分析,其中包括:

  • 引导不明确:引导存在的时间过短,或收音设备问题,导致音频的引导不明显。
  • 被试未按照实验要求进行试验:一种实验方法是将注意力集中在一侧,这样无需受到引导的干扰,将注意力关注在一侧,一侧有则有,无则另一侧有,屏蔽音频引导。

实验五

实验五为音频干扰对识别准确率的影响,其中会在 High 以及 Low 的 tone 中掺入 Background。分辨连续的三个音调为 High 还是 Low。预期实验结果为,随 Background 增多,音调的识别准确率下降。

你需要分析的数据或许包括表格中的 Tonekind(音调种类,0 为 Background,1 为 Low,2 为 High), resp.corr(是否正确)以及 resp.rt(反应时)列。

正向分析

假如说与预期实验结果相同,则使用常规的正向分析即可,其重点在于 Background 的增多引入的识别困难。

反向分析

假如说与预期实验结果不同,则可以通过以下的方向进行分析,其中包括:

  • 实验说明的不清晰:实验并未说明清晰 Background 为超高音调的声音,类似内容可能导致被试将 Background 误认为 High。
  • 声音差异的明显性:声音之间的差异明显,将其进行区分过于简单。
  • 声音持续的时间不合理:声音持续的时间过短,导致被试无法捕捉到/记忆声音。

实验六

实验六为 SIFI 实验。通过 Beep 引导被试辨识 Flash 的数量。其中 Beep 的数量与 Flash 的数量不一定相同,因此可能造成语义引导以及语义误导。

程序需要自己设计,不难理解,程序的设计包括以下的内容:

  • 随机一个 Flash 数量。
  • 随机一个 Beep 数量。
  • 根据 Beep 数量随机一个 Beep 音频。
  • 播放 Flash。
  • 播放 Beep。
  • 等待按键。
  • 收集数据

一个或许存在的简陋程序如下,可以运行,但是并不好用,可以人为添加一些更改,如两次实验间的停顿,闪光出现在上下方而非中间,以及对于数据录入的优雅格式化:

from psychopy import visual, core, event, sound, logging
import os
import random
import csv

# 设置文件路径
stimuli_path = '你的路径'

# 创建窗口
win = visual.Window([800, 600], color='black', units='norm')

# 创建闪光刺激
flash = visual.Rect(win, width=0.2, height=0.2, fillColor='white')

# 定义音频文件列表
audio_files = {
    0: ['silence.wav'],
    1: ['1_beep_20dur.wav', '1_beep_30dur.wav'],
    2: ['50_SOA_10dur.wav', '50_SOA_20dur.wav', '50_SOA_30dur.wav']
}

# 准备声音文件
sounds = {beep: [(file, sound.Sound(os.path.join(stimuli_path, file))) for file in files] for beep, files in audio_files.items()}

# 创建日志文件
log_file = 'experiment_log.csv'
with open(log_file, mode='w', newline='') as file:
    writer = csv.writer(file)
    writer.writerow(['flash_count', 'beep_count', 'file_name', 'correct', 'reaction_time'])

# 实验循环
for trial in range(100):  # 假设进行10次实验
    flash_count = random.randint(1, 2)  # 随机闪烁次数
    beep_count = random.randint(0, 2)  # 随机beep次数

    # 随机选择音频文件
    audio_file_name, audio_file = random.choice(sounds[beep_count])

    # 显示闪光
    for _ in range(flash_count):
        flash.draw()
        win.flip()
        core.wait(0.1)  # 每个闪光持续100毫秒
        win.flip()
        core.wait(0.1)  # 闪光之间的间隔

    # 播放声音
    audio_file.play()

    # 记录反应时间
    reaction_clock = core.Clock()
    keys = event.waitKeys(keyList=['1', '2'], timeStamped=reaction_clock)

    # 判断是否正确
    if keys:
        key_pressed = int(keys[0][0])  # 获取按键值(1 或 2)
        correct = (key_pressed == flash_count)  # 判断按键值是否与闪光次数相同
        reaction_time = keys[0][1] if correct else -1
    else:
        correct = False
        reaction_time = -1

    # 写入日志
    with open(log_file, mode='a', newline='') as file:
        writer = csv.writer(file)
        writer.writerow([flash_count, beep_count, audio_file_name, correct, reaction_time])

# 关闭窗口
win.close()
core.quit()

正向分析

正向分析依旧可以按照语义引导与语义误导的内容进行分析,同时可以分析包括 Frequency/SOA/Duration 对于结果的影响。

反向分析

假如说结果与预期不同,则可以通过以下的方向进行分析,其中包括:

  • 闪光设计的不合理:如面积/持续时间/位置,分别导致被试无法识别/记忆闪光以及注意力更容易集中。
  • 被试的特殊性:被试可能不倾向于接收音频引导。

作图

全篇的实验作图可以包括以下内容:

  • 柱状图:比较不同条件设计下的平均反应时以及准确率。
  • 折线图:反映如随时间变化的反应时与准确率(如实验二)。
  • 直方图+kde:反映反应时的分布情况。

全篇作图的代码不进行提供,可以自行 GPT

结语

以上就是认知心理学实验指南的全部内容了,全片内容写作仓促,希望可以帮到读者。本指南主要从实验分析的角度进行分析,是建立在读者已经具有了实验数据的基础上,笔者不擅长/本文不涉及与DEBUG相关的内容,相关内容请前往互联网查阅或询问 GPT

认知心理学实验指南的建立旨在为读者提供一种理解认知心理学实验现象的途径,并对于实验报告的完成起到辅导作用,若有帮助,欢迎将本指南添加到实验报告的引用/结尾部分。认知心理学实验通过编写程序的方式让学生上手操作并参与心理学实验的设计编写与实验,是了解认知心理学的重要途径,希望大家从中学到有益的内容。

共勉。