遇见数据集

khursanirevo/multiturn_ks_embedded

收藏
Hugging Face2026-04-09 更新2026-04-12 收录
官方服务:

资源简介:

--- license: cc-by-4.0 task_categories: - automatic-speech-recognition language: - en - ms - zh - ru - id - ar - ja - ko multilinguality: - highly_multilingual size_categories: - 10K<n<100K --- # khursanirevo/multiturn_ks_embedded ## Dataset Description Multiturn dialogue dataset with **embedded audio** and multi-language transcripts from 3 YouTube videos. ### Features - **Audio**: Embedded stereo audio (WAV format, bytes embedded directly in dataset) - **Segments**: Speaker turn-level annotations with timestamps for English and Malay - **Multi-language**: Transcripts in 9 languages (en, ms, zh-Hans, zh-Hant, ru, id, ar, ja, ko) - **Video ID**: YouTube video identifier for each chunk - **Chunking**: 30-second chunks with 0.5s overlap - **Self-contained**: No external audio files needed ### Columns - `audio`: Embedded stereo audio as bytes (WAV, 24kHz) - `video_id`: YouTube video identifier - `sentence`: Full transcript for the chunk (English) - `segments_en`: JSON list of English speaker turns with speaker, start, end, text fields - `segments_ms`: JSON list of Malay speaker turns with speaker, start, end, text fields - `total_speakers`: Number of speakers in chunk (typically 2) - `sentence_ms`, `sentence_en`, etc.: Transcripts in each language ### Usage ```python from datasets import load_dataset import json import io import soundfile as sf # Load dataset dataset = load_dataset("khursanirevo/multiturn_ks_embedded") # Access a chunk chunk = dataset[0] # Load embedded audio audio_bytes = chunk["audio"] buffer = io.BytesIO(audio_bytes) audio, sample_rate = sf.read(buffer) print(f"Audio shape: {audio.shape}") print(f"Sample rate: {sample_rate}") print(f"Duration: {len(audio)/sample_rate:.1f}s") # Access speaker turns video_id = chunk["video_id"] segments_en = json.loads(chunk["segments_en"]) segments_ms = json.loads(chunk["segments_ms"]) print(f"From video: {video_id}") print(f"\nEnglish segments:") for seg in segments_en[:3]: speaker = seg['speaker'] start = seg['start'] end = seg['end'] text = seg['text'][:60] print(f" Speaker {speaker} ({start}s-{end}s): {text}...") ``` ### Audio Format Audio is embedded as WAV bytes in the dataset: - **Format**: WAV (PCM) - **Sample rate**: 24kHz - **Channels**: 2 (stereo, speaker separation) - **Bit depth**: 32-bit float - **Size**: ~2-2.5MB per 30-second chunk ### Speaker Detection Speakers are detected using RMS energy analysis: - Channel 0 (left): Speaker 0 - Channel 1 (right): Speaker 1 ### Languages Supported languages: - English (en) - Malay (ms) - Chinese Simplified (zh-Hans) - Chinese Traditional (zh-Hant) - Russian (ru) - Indonesian (id) - Arabic (ar) - Japanese (ja) - Korean (ko) ### Dataset Statistics - Total videos: 3 - Total chunks: 496 - Max chunk duration: 30s - Overlap: 0.5s - Audio: Embedded (self-contained) ## Source Created from YouTube videos with dialogue separation using DialogueSidon model. ## License CC-BY-4.0

--- 许可协议:CC-BY-4.0 任务类别: - 自动语音识别(automatic-speech-recognition) 支持语言: - 英语(en) - 马来语(ms) - 中文(zh) - 俄语(ru) - 印尼语(id) - 阿拉伯语(ar) - 日语(ja) - 韩语(ko) 多语言属性: - 高度多语言(highly_multilingual) 数据规模分类: - 10000 < 样本数 < 100000 --- # khursanirevo/multiturn_ks_embedded ## 数据集描述 本数据集为源自3条YouTube视频的多轮对话数据集,包含嵌入音频与多语言转录文本。 ### 数据集特性 - **音频**:嵌入的立体声音频(WAV格式,音频字节直接内嵌于数据集内) - **分段标注**:针对英语与马来语的说话人轮次标注,附带时间戳信息 - **多语言支持**:涵盖9种语言的转录文本(en、ms、zh-Hans、zh-Hant、ru、id、ar、ja、ko) - **视频ID**:每个数据块对应的YouTube视频标识符 - **数据分块**:采用30秒长度的分块策略,分块间存在0.5秒的重叠时长 - **自包含性**:无需依赖外部音频文件即可使用 ### 数据字段说明 - `audio`:以字节形式存储的嵌入立体声音频(WAV格式,采样率24kHz) - `video_id`:YouTube视频标识符 - `sentence`:当前数据块的完整转录文本(英语) - `segments_en`:包含英语说话人轮次的JSON列表,字段包括`speaker`(说话人标识)、`start`(起始时间)、`end`(结束时间)、`text`(文本内容) - `segments_ms`:包含马来语说话人轮次的JSON列表,字段同上 - `total_speakers`:当前数据块中的说话人总数(通常为2人) - `sentence_ms`、`sentence_en`等:对应各语言的转录文本 ### 使用方法 以下为使用该数据集的Python代码示例: python from datasets import load_dataset import json import io import soundfile as sf # 加载数据集 dataset = load_dataset("khursanirevo/multiturn_ks_embedded") # 获取单个数据块 chunk = dataset[0] # 加载嵌入音频 audio_bytes = chunk["audio"] buffer = io.BytesIO(audio_bytes) audio, sample_rate = sf.read(buffer) print(f"音频形状:{audio.shape}") print(f"采样率:{sample_rate}") print(f"时长:{len(audio)/sample_rate:.1f}s") # 获取说话人轮次信息 video_id = chunk["video_id"] segments_en = json.loads(chunk["segments_en"]) segments_ms = json.loads(chunk["segments_ms"]) print(f"所属视频:{video_id}") print(f" 英语说话人轮次:") for seg in segments_en[:3]: speaker = seg['speaker'] start = seg['start'] end = seg['end'] text = seg['text'][:60] print(f" 说话人{speaker}({start}s-{end}s):{text}...") ### 音频格式规范 数据集内的音频以WAV(PCM)字节形式内嵌,具体参数如下: - **格式**:WAV(脉冲编码调制,PCM) - **采样率**:24kHz - **声道数**:2(立体声,用于实现说话人分离) - **位深度**:32位浮点型 - **单块存储大小**:每30秒数据块约占用2-2.5MB存储空间 ### 说话人识别规则 说话人通过RMS能量分析进行识别分配: - 左声道(声道0):对应说话人0 - 右声道(声道1):对应说话人1 ### 支持语言列表 - 英语(en) - 马来语(ms) - 简体中文(zh-Hans) - 繁体中文(zh-Hant) - 俄语(ru) - 印尼语(id) - 阿拉伯语(ar) - 日语(ja) - 韩语(ko) ### 数据集统计信息 - 总视频数:3条 - 总数据块数:496个 - 单数据块最大时长:30秒 - 分块重叠时长:0.5秒 - 音频存储方式:内嵌于数据集内(自包含) ### 数据集来源 本数据集源自3条YouTube视频,使用DialogueSidon模型完成对话分离处理。 ### 许可协议 CC-BY-4.0(知识共享署名4.0许可)

提供机构:
khursanirevo
二维码
社区交流群
二维码
科研交流群
商业服务