数据转化python面试题(程序员在自学机器学习过程的笔记)(¥30)

有大佬会的,请留下你的代码,谢谢
一, 数据转换:
问题描述:
假设一个程序员在自学机器学习相关的知识和技能,他一边学习一边把已经学习过的概念记录在一 个文本文档中。
经过一段时间他记下了下面这样的笔记:

在这里插入图片描述
第一行的意思是自学了机器学习的重要概念之一线性模型; 第二行逗号之前内容与第一行相同,省略不写,意思是学习了机器学习的神经网络; 第三行第一、二个逗号之前的内容与第二行相同,省略不写,意思是学习了机器学习的神经网络技 术中的神经元模型相关内容; 第四行第一个逗号之前的内容与第三行相同,省略不写,意思是学习了机器学习的强化学习部分内 容。
这个程序员想到,可以用下面的json格式数据保存这部分文档的内容:
在这里插入图片描述

这个程序员继续自学机器学习相关内容,对上面的文档慢慢的编辑、扩展,
得到了下面的结果(即 邮件附件附送的concepts.txt文档)
在这里插入图片描述

这个文档的记录规则和前面相同。比如第六行,三个逗号前面省略的内容和第五行相同,即机器学 习中强化学习部分有模型学习中的策略改进相关知识。

  1. 请实现一个python函数,输入是这个程序员的机器学习概念笔记,输出是json数据,格式、含义 如前所述。 def notes2json(file_path): pass # 你的代码实现

输入:⽂文本文档名称/存储路径
输出:json数据
要求:
虽然附件只提供了一个concepts.txt文档,这个函数应该可以转换前面扩展之前的文档,也可以转换 更进一步扩展的文档。
2. 以上题转换的结果为基础,实现一个key search方法。可以根据一个目标关键字,查出从机器学 习开始到目标词的路径上所有的关键字。具体输入输出参考下面示意:
def find(key): # 你的代码实现 return output
path = find(‘感知机’) print(path) ‘机器学习.神经网络.多层网络.感知机’
path = find(‘贝叶斯模型’) print(path) ‘不存在关键字: 贝叶斯模型’

txt文件内容如下:
机器学习,线性模型,线性回归,最小二乘法
,神经网络,神经元模型,激活函数
,多层网络,感知机
,连接权
,强化学习,有模型学习,策略评估
,策略改进
,免模型学习,蒙特卡洛方法
,时序差分学习
,模仿学习,直接模仿学习
,逆强化学习

猜你喜欢

转载自blog.csdn.net/weixin_43721133/article/details/88755860