算法岗面经总结(华宇元典)

尊敬的读者您好:笔者很高兴自己的文章能被阅读,但原创与编辑均不易,所以转载请必须注明本文出处并附上本文地址超链接以及博主博客地址:https://blog.csdn.net/vensmallzeng。若觉得本文对您有益处还请帮忙点个赞鼓励一下,笔者在此感谢每一位读者,如需联系笔者,请记下邮箱:[email protected],谢谢合作!

一面(2019.9.16)

1、自我介绍;

2、实习项目挨个介绍,并针对细节提问;

项目一:怎么Random Forest进行特征提取?特征如何构建?

项目二:居间度是怎么解释?喜好关键词表怎么建立?为啥要用TF-IDF相乘作为匹配度进行推荐?

项目三:音形码解释一下?词向量怎么表示文本?

科研论文:发了这么多论文,给我讲一篇吧?

3、Bert了解过么?fine tuning后评价过其性能么?

4、关于损失函数有了解么?写下交叉熵的函数并解释下交叉熵函数为什么能用作损失函数?

5、调参时,随机森林有哪些参数可以调?

6、树怎么剪枝?那两种方法?

7、怎么防止过拟合?

8、self-attention讲一下?

9、手撕代码:

1> 给定若干个文档,请找到某个词出现在了多少个文档中?(Python编程)

参考了某些文章后解法大致如下:

第一步:先对若干文档进行预处理,并以“文章id + ‘\t’ + 该文章第一行 + ' ' + 该文章第二行... ”的格式输出。

import os
import sys

#获取存放若干文档的目录
file_path_dir = sys.argv[1]       

#读取每篇文档的内容
def read_file_handler(f):
    fd = open(f, 'r')
    return fd

file_name = 0

#遍历存放若干文档的目录下的所有文档
for fd in os.listdir(file_path_dir):
    #获取每篇文档的路径
    file_path = file_path_dir + '/' + fd     
    #存放每篇文档的内容
    content_list = [] 
    
    #读取每篇文档的内容
    file_fd = read_file_handler(file_path)

    #将每篇文档里的所有行内容去首位空格和换行符后添加进List集合
    for line in file_fd:
        content_list.append(line.strip())    

    print('\t'.join([str(file_name), ' '.join(content_list)])) # 格式:文章id + ‘\t’ + 该文章第一行 + ' ' + 该文章第二行...

    file_name += 1

第二步:对所有文章的单词作map处理,每篇文章的单词需作去重处理,这样再对每个单词后添置1,表示包含该单词的文章数。

import sys

for line in sys.stdin:
    ss = line.strip().split('\t')
    if len(ss) != 2:
        continue
    file_name, file_content = ss
    #将一篇文档的单词放到一个list中
    word_list = file_content.strip().split(' ')
    #对一篇文档中单词去重
    word_set = set(word_list)
    #将一篇文档去重后的单词以‘\t’间隔输出
    for word in word_set:
        print('\t'.join([word, '1']))

第三步:对map输出的结果,合并相同的单词key的value值,统计包含该词的文档总数。

import sys
import math

dic = {}

for line in sys.stdin:
    ss = line.strip().split('\t')
    if len(ss) != 2:
        continue
    word, val = ss
    
    if not dic[word]:
       dic[word] = val
    else:
       dic[word] = dic[word] + val 
#打印所有单词出现的文档总数
for key in dic:
    print(key + ':' + dic[key]) 

参考文献:https://blog.csdn.net/u012369535/article/details/88018178

2> 给定一个字符串,请返回无重复元素子串的最长长度?(Python编程)

建议参考:https://blog.csdn.net/Vensmallzeng/article/details/87597504

日积月累,与君共进,增增小结,未完待续。

发布了152 篇原创文章 · 获赞 147 · 访问量 11万+

猜你喜欢

转载自blog.csdn.net/Vensmallzeng/article/details/100893216
今日推荐