一直以来都是听别人说,AI怎么怎么厉害,尤其在做科研方面,从实验到论文。虽然也在一些常见任务上经常使用AI,但是系统完整的体验,尤其面向一个具体的较大规模科研任务,AI是否可以提供足够的支撑,我还从未有过经验。今年暑假,我得空尝试了下。一开始,先不说结论,先开始。这是一个比较大的任务。有大约50多万篇文献数据,每篇论文都给出了标题、摘要等基本信息,我想通过一些可视化手段全面展示这些文献相关研究内容的主题变迁。首先需要处理数据。原始数据过于庞杂,而且都是自然语句,不便于分析和展示,我想对其进行关键词抽取。第一个提示词:你是一名研究图书情报学科的专家,掌握较好的深度学习和自然语言处理技能,现在有一份几十万条的论文数据,具体各个字段为:doi,title,authors,organizations,abstract,keywords,english_title,english_abstract,english_keywords,classification_number,publish_date,online_publish_date,pages,journal_title,issn,year_issue,column_name,detail_url,crawled_at比如这是一条对应的记录:10.11925/infotech.2096-3467.2024.0259,融合古籍信息的中医药知识图谱推理研究,韩青; 周晓英,浙江中医药大学医学技术与信息工程学院 杭州 310053; 中国人民大学信息资源管理学院 北京 100872,"[目的]针对中医药知识图谱存在结构稀疏、语义信息利用不足等问题,将中医古籍文本作为实体描述信息引入表示学习模型,以提升知识图谱推理性能.[方法]以《伤寒论》398条条文为语料,通过人工标注与自动抽取相结合的方式构建经方知识图谱,并将《伤寒论》及《金匮要略》中与实体相关的条文作为实体描述语料输入预训练语言模型.在TransE、DistMult、ComplEx、SimplE等基线模型上分别融合静态BERT表示(BERT-Static)和端到端微调BERT表示(BERT-Dynamic)进行知识图谱推理实验.[结果]在经方知识图谱上,融合古籍信息后的推理模型在MRR、Hits@1、Hits@3、Hits@10等指标上的性能均明显优于对应的基线模型.从绝对数值看,MRR 由 0.062~0.089提升至0.257~0.270,Hits@10 由 0.148~0.181 提升至 0.513~0.547.文本长度消融实验表明:当BERT输入长度由16增加至96个中文字符时,模型性能持续提升;但超过96个中文字符后性能提升不再显著,而训练时间近似线性增长.[局限]本研究实验数据主要来源于《伤寒论》及《金匮要略》相关条文,知识图谱规模相对有限;方法上仅考虑实体描述信息与结构三元组的联合表示,未纳入关系路径与规则推理等结构增强信息.[结论]将中医古籍文本作为实体描述信息并与预训练语言模型结合,能够有效增强中医药知识表示能力,显著提升中医药知识图谱推理性能.",中医药; 中医古籍; 知识图谱推理; 预训练语言模型; 经方知识图谱; 表示学习,Knowledge Graph Reasoning for Traditional Chinese Medicine Enhanced by Classical Texts,"[Objective]This study introduces classical traditional Chinese medicine(TCM)texts as entity descriptions into representation learning models to improve knowledge graph reasoning performance,addressing the problems of structural sparsity and insufficient utilization of semantic information in TCM knowledge graphs.[Methods]A classical formula knowledge graph was constructed using 398 clauses from Shanghan Lun as the primary corpus,combining manual annotation and automatic extraction in a hybrid process.Relevant passages from Shanghan Lun and Jinkui Yaolue,associated with the graph's entities,were used as textual descriptions and were encoded using a pre-trained language model.Knowledge graph reasoning experiments were conducted by integrating static BERT representations(BERT-Static)and fine-tuned BERT representations(BERT-Dynamic)with several baseline models,including TransE,DistMult,ComplEx,and SimplE.[Results]On the Jingfang knowledge graph,the reasoning models enhanced with classical text information consistently outperformed their corresponding baseline models in MRR,Hits@1,Hits@3,and Hits@10.In absolute terms,MRR increased from 0.062~0.089 to 0.257~0.270,and Hits@10 increased from 0.148~0.181 to 0.513~0.547.Ablation experiments on input length further indicated that model performance improved as the BERT input length increasing from 16 to 96 Chinese characters,but improvements became marginal beyond this point while training time increased approximately linearly.[Limitations]The experimental data mainly derive from passages in Shanghan Lun and Jinkui Yaolue,and the scale of the knowledge graph remains relatively limited.Moreover,the proposed method only considers the joint representation of entity descriptions and structural triples,while additional structural enhancement mechanisms such as relation paths and rule-based reasoning are not yet incorporated.[Conclusions]Incorporating classical TCM texts as entity descriptions and integrating them with pre-trained language models can effectively enhance knowledge representation and significantly improve reasoning performance in TCM knowledge graphs.",Traditional Chinese Medicine; Classical Texts; Knowledge Graph Reasoning; Pre-Trained Language Models; Jingfang Knowledge Graph; Representation Learning,G255; TP391.1; R2-03,2026-03-25,2026-05-25,12 (25-36),数据分析与知识发现,2096-3467,"2026,10(3)",研究论文,https://d.wanfangdata.com.cn/periodical/xdtsqbjs202603003,2026-07-19T15:42:21+08:00传统词语共现方法可以只能得到词语之间纯粹的共现关系,从而导致诸如“研究”“性能”等无关词语也具有较高的共现频次,我想利用人工智能方法,通过调用本地Ollama大语言模型,调用 Ollama + 固化 JSON Schema 抽取的Python代码,将每条记录都抽取成几个方面:比如抽取成ID(行号),research_object,core_tech,research_task,app_scenario,publish_date,online_publish_date,year_issue,publish_year等请完成一个Python代码版本,逐条抽取几十万条的论文数据文件(articles_merged.csv)中每条记录,并解析成各个成分字段,存储到papers_extracted.csv,其中考虑到中途可能崩溃,抽取代码可以首先判断papers_extracted.csv最后一条记录的行号,并接着下一条记录继续抽取主要感受:1)这个提示词其实并非一下子写出来,也是将问题抛给大语言模型后结合自己的专业认知,形成了一个初步的思路。其中大语言模型给我的主要建议就是具体给出了可以抽取的几个主要部分,如研究对象、核心技术、研究任务和应用领域。我觉得比较合理。但是我自己也从实际运行中调整补充了两点:一是要求使用本地Ollama,当然为了节省大量的Token费用;二是抽取非常漫长,中间可能会意外中断,我希望能接着继续抽取而不是从头再来。2)目前的大语言模型代码质量出乎我的意料,非常高,大部分情况下都可以直接运行,即使对于这里非常复杂的需求,仍然可以满足。但是需要在提示词中尽可能详细的描述清楚,比如字段名称和内容等,需求也需要先期通过大语言模型和自己运行调整,并非一蹴而就就可以写成。比如后期仍然还是继续调整了要求,要求提高运行速度,并且增加中间处理过程的输出,能看到目前的进展。在维持上下文会话状态时,可以直接继续提问,如果不放心,可以将上一次生成的代码作为附件,继续要求在此基础上修改。3)具体的大语言模型可以使用自己觉得不错的任何模型,我使用的是Gemini和阿里的Qoder,前者比较适合整体输出,后者非常适合对于具体问题实时调整。接着需要对抽取的每个论文成分继续关键词抽取,这是提示词:下面是papers_extracted.csv文件,基本字段列结构为:ID,doi,research_object,core_tech,research_task,app_scenario,publish_date,online_publish_date,year_issue,publish_year请编写Python代码,可以将ID和research_object列信息单独抽取出来,其中research_object列内容再次使用分词方法拆解为一个或者多个关键词,去除常见的无用词语,比如“科学论文的颠覆性与其技术影响的关系”应该得到“科学论文”“颠覆性”技术影响”,最终形成ID和research_object拆解关键词列,每个关键词使用逗号分隔主要感受:1)因为我们在进行这些工作之前,往往并不可能意识到全部的具体技术路线,因此不可能一下子就能写出完整的需求。同时,从理论上看,也不建议这样做,还是小步试错、逐渐求精更为合理。2)这个版本的提示词结合刚才生成的论文抽取成分文件,只对其中一个成分进行关键词抽取。默认情况下,大语言模型会使用诸如jieba等分词工具,效果有限。通过观察,我再次要求改为使用Ollama调用大语言模型来分词。3)为了和原始数据能对应上,我还继续要求在编写Python代码时,在从第二行开始的每条记录前增加一个从1开始的计数列,并在第一行标注列名为ID,以便和原始数据行号对应便于我核实。显然这些要求都是在实际运行时才能知道需要增加的。还是老方法,要么维持在当前会话状态下,要么把已经可以运行并且需要修改的代码附件上去,以确保在原先内容上进行修改。4)年份信息非常重要,考虑到原始数据年份信息可能有误或者部分缺失,因此要求从publish_year抽取,如果该列原始内容为空,则考虑从publish_date、online_publish_date、year_issue等更多列中按照最常出现的年份来获取年份填充进去。利用词语共现是一种常见的分析方法。因此接下来,我准备对刚才拆分好的论文各个成分,先取出研究对象,进行双词共现分析。提示词为:下面有papers_keywords_split.csv文件,其中有research_object_keywords列,该列内容为可能为空,大部分情况下都有值,内容为使用逗号分隔的多个关键词或者一个关键词,如:中医知识问答系统科学论文,颠覆性,技术影响...请编写Python代码,遍历全部该列各行,首先抽取所有的关键词,统计每个关键词出现的行数,并存储到文件中。然后再次所有共现关键词,即同时出现在一行中任意两个关键词,统计所有共现关键词对及其出现的行数,也存储到文件中。在这个地方,即使AI可以帮助我们快速完成代码,但是在思路上还需要自己进行把控。比如我的想法是获得每个关键词的频次和每两个关键词的共现频次,以备后续分析使用。但是做到这一步,问题就逐渐产生了。生成的双词首先会形成冗余互对,即A和B共现必然还有一个B和A共现。另一个关键问题是对于”研究“”问题“等词语常常都是高居大部分词语共现榜首的高频共现词语。科研做到这一步,将会产生明显的分化。既可以通过AI询问,更应该结合自己的专业知识做出合理选择。我的初步想法是,在存储共现关键词对时,保证第一个关键词出现的行数要大于等于第二个关键词。因为我认为上位概念对应的关键词出现频次应该高于下位的概念词语。这显然是一个假设。提示词为:请修改上述代码,确保在存储共现关键词对时,保证第一个关键词出现的行数要大于等于第二个关键词为了进一步观察这种划分的效果,我再次发出提示词:现在有文件keyword_cooccurrences.csv,内容如:source,target,weight图书馆,服务,1052图书馆,网络环境,512高校图书馆,信息服务,485高校图书馆,服务,453图书馆,建设,441服务,参考咨询,392图书馆学,情报学,380档案管理,事业单位,377公共图书馆,服务,324图书馆,管理,311图书馆,读者,296图书馆,阅读推广,280...请根据用户在运行时输入的一个词语,抽取该所有以该词语作为source的行,取weight值最大的前10行,以对应的target关键词作为下级节点,再对每一个下级节点,再次使用同样的方法抽取下一层各自的节点,只需三级即可,最后绘制下树状图。生成的树状图可以拖拽,默认关闭所有节点下级节点,点击某个节点才展示下一级节点,并且可以拖拽调整显示位置。以上是这个科研工作刚起步的感受和过程,我在大约十几年前也做过类似的工作。当时不论是数据处理还是可视化展示都花了很多时间,当然还包含这次做法的一些经验形成。然而,有了AI,对于大部分代码工作都已经不用我来完成,我只需提供思路,引导生成所需的内容。前前后后也就一二个小时,效果惊人。我觉得就像OPC一人公司一样,未来一人科研团队也极有可能。
一直以来都是听别人说,AI怎么怎么厉害,尤其在做科研方面,从实验到论文。虽然也在一些常见任务上经常使用AI,但是系统完整的体验,尤其面向一个具体的较大规模科研任务,AI是否可以提供足够的支撑,我还从未有过经验。今年暑假,我得空尝试了下。一开始,先不说结论,先开始。这是一个比较大的任务。有大约50多万篇文献数据,每篇论文都给出了标题、摘要等基本信息,我想通过一些可视化手段全面展示这些文献相关研究内容的主题变迁。首先需要处理数据。原始数据过于庞杂,而且都是自然语句,不便于分析和展示,我想对其进行关键词抽取。第一个提示词:你是一名研究图书情报学科的专家,掌握较好的深度学习和自然语言处理技能,现在有一份几十万条的论文数据,具体各个字段为:doi,title,authors,organizations,abstract,keywords,english_title,english_abstract,english_keywords,classification_number,publish_date,online_publish_date,pages,journal_title,issn,year_issue,column_name,detail_url,crawled_at比如这是一条对应的记录:10.11925/infotech.2096-3467.2024.0259,融合古籍信息的中医药知识图谱推理研究,韩青; 周晓英,浙江中医药大学医学技术与信息工程学院 杭州 310053; 中国人民大学信息资源管理学院 北京 100872,"[目的]针对中医药知识图谱存在结构稀疏、语义信息利用不足等问题,将中医古籍文本作为实体描述信息引入表示学习模型,以提升知识图谱推理性能.[方法]以《伤寒论》398条条文为语料,通过人工标注与自动抽取相结合的方式构建经方知识图谱,并将《伤寒论》及《金匮要略》中与实体相关的条文作为实体描述语料输入预训练语言模型.在TransE、DistMult、ComplEx、SimplE等基线模型上分别融合静态BERT表示(BERT-Static)和端到端微调BERT表示(BERT-Dynamic)进行知识图谱推理实验.[结果]在经方知识图谱上,融合古籍信息后的推理模型在MRR、Hits@1、Hits@3、Hits@10等指标上的性能均明显优于对应的基线模型.从绝对数值看,MRR 由 0.062~0.089提升至0.257~0.270,Hits@10 由 0.148~0.181 提升至 0.513~0.547.文本长度消融实验表明:当BERT输入长度由16增加至96个中文字符时,模型性能持续提升;但超过96个中文字符后性能提升不再显著,而训练时间近似线性增长.[局限]本研究实验数据主要来源于《伤寒论》及《金匮要略》相关条文,知识图谱规模相对有限;方法上仅考虑实体描述信息与结构三元组的联合表示,未纳入关系路径与规则推理等结构增强信息.[结论]将中医古籍文本作为实体描述信息并与预训练语言模型结合,能够有效增强中医药知识表示能力,显著提升中医药知识图谱推理性能.",中医药; 中医古籍; 知识图谱推理; 预训练语言模型; 经方知识图谱; 表示学习,Knowledge Graph Reasoning for Traditional Chinese Medicine Enhanced by Classical Texts,"[Objective]This study introduces classical traditional Chinese medicine(TCM)texts as entity descriptions into representation learning models to improve knowledge graph reasoning performance,addressing the problems of structural sparsity and insufficient utilization of semantic information in TCM knowledge graphs.[Methods]A classical formula knowledge graph was constructed using 398 clauses from Shanghan Lun as the primary corpus,combining manual annotation and automatic extraction in a hybrid process.Relevant passages from Shanghan Lun and Jinkui Yaolue,associated with the graph's entities,were used as textual descriptions and were encoded using a pre-trained language model.Knowledge graph reasoning experiments were conducted by integrating static BERT representations(BERT-Static)and fine-tuned BERT representations(BERT-Dynamic)with several baseline models,including TransE,DistMult,ComplEx,and SimplE.[Results]On the Jingfang knowledge graph,the reasoning models enhanced with classical text information consistently outperformed their corresponding baseline models in MRR,Hits@1,Hits@3,and Hits@10.In absolute terms,MRR increased from 0.062~0.089 to 0.257~0.270,and Hits@10 increased from 0.148~0.181 to 0.513~0.547.Ablation experiments on input length further indicated that model performance improved as the BERT input length increasing from 16 to 96 Chinese characters,but improvements became marginal beyond this point while training time increased approximately linearly.[Limitations]The experimental data mainly derive from passages in Shanghan Lun and Jinkui Yaolue,and the scale of the knowledge graph remains relatively limited.Moreover,the proposed method only considers the joint representation of entity descriptions and structural triples,while additional structural enhancement mechanisms such as relation paths and rule-based reasoning are not yet incorporated.[Conclusions]Incorporating classical TCM texts as entity descriptions and integrating them with pre-trained language models can effectively enhance knowledge representation and significantly improve reasoning performance in TCM knowledge graphs.",Traditional Chinese Medicine; Classical Texts; Knowledge Graph Reasoning; Pre-Trained Language Models; Jingfang Knowledge Graph; Representation Learning,G255; TP391.1; R2-03,2026-03-25,2026-05-25,12 (25-36),数据分析与知识发现,2096-3467,"2026,10(3)",研究论文,https://d.wanfangdata.com.cn/periodical/xdtsqbjs202603003,2026-07-19T15:42:21+08:00传统词语共现方法可以只能得到词语之间纯粹的共现关系,从而导致诸如“研究”“性能”等无关词语也具有较高的共现频次,我想利用人工智能方法,通过调用本地Ollama大语言模型,调用 Ollama + 固化 JSON Schema 抽取的Python代码,将每条记录都抽取成几个方面:比如抽取成ID(行号),research_object,core_tech,research_task,app_scenario,publish_date,online_publish_date,year_issue,publish_year等请完成一个Python代码版本,逐条抽取几十万条的论文数据文件(articles_merged.csv)中每条记录,并解析成各个成分字段,存储到papers_extracted.csv,其中考虑到中途可能崩溃,抽取代码可以首先判断papers_extracted.csv最后一条记录的行号,并接着下一条记录继续抽取主要感受:1)这个提示词其实并非一下子写出来,也是将问题抛给大语言模型后结合自己的专业认知,形成了一个初步的思路。其中大语言模型给我的主要建议就是具体给出了可以抽取的几个主要部分,如研究对象、核心技术、研究任务和应用领域。我觉得比较合理。但是我自己也从实际运行中调整补充了两点:一是要求使用本地Ollama,当然为了节省大量的Token费用;二是抽取非常漫长,中间可能会意外中断,我希望能接着继续抽取而不是从头再来。2)目前的大语言模型代码质量出乎我的意料,非常高,大部分情况下都可以直接运行,即使对于这里非常复杂的需求,仍然可以满足。但是需要在提示词中尽可能详细的描述清楚,比如字段名称和内容等,需求也需要先期通过大语言模型和自己运行调整,并非一蹴而就就可以写成。比如后期仍然还是继续调整了要求,要求提高运行速度,并且增加中间处理过程的输出,能看到目前的进展。在维持上下文会话状态时,可以直接继续提问,如果不放心,可以将上一次生成的代码作为附件,继续要求在此基础上修改。3)具体的大语言模型可以使用自己觉得不错的任何模型,我使用的是Gemini和阿里的Qoder,前者比较适合整体输出,后者非常适合对于具体问题实时调整。接着需要对抽取的每个论文成分继续关键词抽取,这是提示词:下面是papers_extracted.csv文件,基本字段列结构为:ID,doi,research_object,core_tech,research_task,app_scenario,publish_date,online_publish_date,year_issue,publish_year请编写Python代码,可以将ID和research_object列信息单独抽取出来,其中research_object列内容再次使用分词方法拆解为一个或者多个关键词,去除常见的无用词语,比如“科学论文的颠覆性与其技术影响的关系”应该得到“科学论文”“颠覆性”技术影响”,最终形成ID和research_object拆解关键词列,每个关键词使用逗号分隔主要感受:1)因为我们在进行这些工作之前,往往并不可能意识到全部的具体技术路线,因此不可能一下子就能写出完整的需求。同时,从理论上看,也不建议这样做,还是小步试错、逐渐求精更为合理。2)这个版本的提示词结合刚才生成的论文抽取成分文件,只对其中一个成分进行关键词抽取。默认情况下,大语言模型会使用诸如jieba等分词工具,效果有限。通过观察,我再次要求改为使用Ollama调用大语言模型来分词。3)为了和原始数据能对应上,我还继续要求在编写Python代码时,在从第二行开始的每条记录前增加一个从1开始的计数列,并在第一行标注列名为ID,以便和原始数据行号对应便于我核实。显然这些要求都是在实际运行时才能知道需要增加的。还是老方法,要么维持在当前会话状态下,要么把已经可以运行并且需要修改的代码附件上去,以确保在原先内容上进行修改。4)年份信息非常重要,考虑到原始数据年份信息可能有误或者部分缺失,因此要求从publish_year抽取,如果该列原始内容为空,则考虑从publish_date、online_publish_date、year_issue等更多列中按照最常出现的年份来获取年份填充进去。利用词语共现是一种常见的分析方法。因此接下来,我准备对刚才拆分好的论文各个成分,先取出研究对象,进行双词共现分析。提示词为:下面有papers_keywords_split.csv文件,其中有research_object_keywords列,该列内容为可能为空,大部分情况下都有值,内容为使用逗号分隔的多个关键词或者一个关键词,如:中医知识问答系统科学论文,颠覆性,技术影响...请编写Python代码,遍历全部该列各行,首先抽取所有的关键词,统计每个关键词出现的行数,并存储到文件中。然后再次所有共现关键词,即同时出现在一行中任意两个关键词,统计所有共现关键词对及其出现的行数,也存储到文件中。在这个地方,即使AI可以帮助我们快速完成代码,但是在思路上还需要自己进行把控。比如我的想法是获得每个关键词的频次和每两个关键词的共现频次,以备后续分析使用。但是做到这一步,问题就逐渐产生了。生成的双词首先会形成冗余互对,即A和B共现必然还有一个B和A共现。另一个关键问题是对于”研究“”问题“等词语常常都是高居大部分词语共现榜首的高频共现词语。科研做到这一步,将会产生明显的分化。既可以通过AI询问,更应该结合自己的专业知识做出合理选择。我的初步想法是,在存储共现关键词对时,保证第一个关键词出现的行数要大于等于第二个关键词。因为我认为上位概念对应的关键词出现频次应该高于下位的概念词语。这显然是一个假设。提示词为:请修改上述代码,确保在存储共现关键词对时,保证第一个关键词出现的行数要大于等于第二个关键词为了进一步观察这种划分的效果,我再次发出提示词:现在有文件keyword_cooccurrences.csv,内容如:source,target,weight图书馆,服务,1052图书馆,网络环境,512高校图书馆,信息服务,485高校图书馆,服务,453图书馆,建设,441服务,参考咨询,392图书馆学,情报学,380档案管理,事业单位,377公共图书馆,服务,324图书馆,管理,311图书馆,读者,296图书馆,阅读推广,280...请根据用户在运行时输入的一个词语,抽取该所有以该词语作为source的行,取weight值最大的前10行,以对应的target关键词作为下级节点,再对每一个下级节点,再次使用同样的方法抽取下一层各自的节点,只需三级即可,最后绘制下树状图。生成的树状图可以拖拽,默认关闭所有节点下级节点,点击某个节点才展示下一级节点,并且可以拖拽调整显示位置。以上是这个科研工作刚起步的感受和过程,我在大约十几年前也做过类似的工作。当时不论是数据处理还是可视化展示都花了很多时间,当然还包含这次做法的一些经验形成。然而,有了AI,对于大部分代码工作都已经不用我来完成,我只需提供思路,引导生成所需的内容。前前后后也就一二个小时,效果惊人。我觉得就像OPC一人公司一样,未来一人科研团队也极有可能。