ML week1.1
2025.03.05 Wed PM 7:14 ・ 106Minutes 30seconds
ZHANG YIWEN
ML 第 1 周 2025.03.05 周三 下午 7:14 ・ 106 分钟 30 秒 张义文
Attendees 1 00:05
먹고 나니까 물을 필요도 없이 당연한 것 같은데 오전에 다른 과목 자료 구조 상 우리가 하면서도 배웠어서 시작하는데 학생들 중에 일부가 머신러닝 들으러 왔는데 여기는 학생들이 못해가지고 약간 강의실인 거에 좀 오류가 있었던 여기 있는 사람들은 다 맞죠 컴퓨터 공학 전공의 김준태 교수입니다.
오늘 첫 시간인데 그래서 오늘은 이 과목이 어떤 형태의 과목이고 그리고 한 학기에 어떻게 진행할 건지 그런 거 간략히 좀 이야기하고 그다음에 여기 실습이 있는 과목이죠.
그래서 우리가 실습 시간에 어떻게 진행할 거고 실습 때 우리가 사용할 프로그래밍 언어와 라이브러리 이런 것들에 대해서 전체적으로 조금 살펴보도록 하겠습니다.
到场学生 1 00:05 吃完后似乎理所当然地不需要水,早上在其他课程数据结构中我们已经学习过,开始讲课时,部分学生是来听机器学习的,但这里有一些教室问题。在座的都是对的,计算机科学专业的金俊泰教授。今天是第一堂课,所以今天我们将简要讨论这门课程的性质,以及如何在一个学期内进行课程。这是一门实践课程。因此,我们将讨论实践课程的进行方式,以及我们在实践中将使用的编程语言和库等。
Attendees 1 01:14
네 이 과목은 머신러닝 우리 말로도 머신 러닝 이렇게 돼 있죠 이거는 지금 학부모 이름이 또 계속 구성과 이름이 바뀌어 오고 그랬어요.
컴퓨터 공학 전공 또는 인공지능 전공 멀티미디어 전공 이렇게 돼 있고 이 학부로 하나로 돼서 AI 소프트웨어 형하고 그다음에 컴퓨터 AI 학부 이고 이름도 계속 바뀌고 단과대학의 이름도 계속 바뀌어 가고 있어요.
안정이 되겠지만 그래서 일반적으로 얘기했을 때 어쨌든 컴퓨터 인공지능 그쪽 전공 그다음에 학부에 번덕으로 학부 한 3~4학년 정도의 전공 과목으로 지금 설정돼 있는 과목이죠.
이제 일주일에 두 번 진행하는데 우리가 한 번은 이론 강의를 하고 그다음에 한 번은 실습 하는 걸로 이렇게 구성이 돼 있습니다.
선수 과목들이 있는데 내용적으로 봐서는 여기 지금 있는 이런 것들이 전부 다 좀 선수 그러니까 여러분들이 미리 좀 알고 있어야 되는 그런 내용들이라고 볼 수가 있습니다.
参与者 1 01:14 是的,这门课程是机器学习,用我们的语言也可以这样说机器学习。这是现在系的名称一直在变化。计算机工程专业或人工智能专业、多媒体专业就是这样,并且已经合并为一个系,现在是 AI 软件系,然后是计算机 AI 系,系名也一直在变化,单科大学的名称也在不断变化。尽管会稳定下来,但通常来说,无论如何都是计算机人工智能这个专业,然后是本科 3-4 年级的专业课程。现在每周进行两次课程,我们一次是理论课,然后一次是实践课,就是这样安排的。有一些先修课程,从内容上看,这里的这些都是需要你们预先了解的内容。
Attendees 1 02:36
그래서 우선 미분 적분의 기본 개념 알고 있어야 되고 그다음에 확률 분포라든지 조건부 확률 확률과 통계에 관한 내용 그다음에 행렬 연산이나 행렬의 민본이라든지 선형 대수에 관한 내용 이런 것들을 좀 이제 아무도 우리가 이런 걸 계속 쓸 거기 때문에 알고 있어야 되고 그다음에 실습은 우리가 파이썬 가지고 할 거라서 파이썬을 여러분들이 또 알고 있어야 됩니다.
여기 있는 사람들 혹시 파이썬 나 안 써봤는데 안 배웠는데 하는 사람들 혹시 난 파이썬 몰라 없어요 네 그다음에 인공지능이라는 또 과목이 있죠 그래서 예전에는 우리가 머신러닝이라는 과목이 없을 때에는 인공지능이라는 과목에서 인공지능에 또 다양한 분야들이 있으니까 그런 걸 포함해서 머신러닝을 같이 여기서 다뤄왔습니다.
参与者 1 02:36 所以首先要了解微积分的基本概念,然后是概率分布、条件概率,以及概率与统计相关的内容,接着是矩阵运算或矩阵的基本知识,以及线性代数相关的内容。因为我们将持续使用这些,所以你们需要了解。然后实践课我们将使用 Python,所以你们还需要懂 Python。在场的人中,有没有没有使用过或没有学过 Python 的?没有人吗?另外还有一门人工智能课程。早些时候,当我们还没有机器学习这门课程时,是在人工智能课程中涵盖了人工智能的各个领域,并在那里一起讨论机器学习。
Attendees 1 03:38
그러다가 머신러닝을 조금 어떤 면에서 다뤄야 될 내용도 점점 많아지고 그다음에 실제 프로그래밍을 하는 것을 같이 포함해서 진행을 해야 될 것 같아서 머신러닝이라는 과목을 새로 만든 지 한 몇 년 됐고 그래서 기본적인 구성은 이렇습니다.
인공지능이라는 과목에서 우리가 어떤 개념적인 것들 이론적으로 좀 살펴보고 약간 이거 뭐 인트로덕션 같은 과목이야.
그리고 나서 머신러닝에서는 조금 더 세부적인 것들을 우리가 다루면서 실습 프로그래밍을 실제로 해서 구현하고 이런 식으로 연결이 되는 건데 이게 너무 이거 다 선수로 하자니까 많죠.
그래서 지금 현재는 아마 이 중에 수학 과목 일부만 선수 과목으로 지정이 돼 있고 나머지는 그냥 권장 선수다 이렇게 돼 있습니다.
随着机器学习需要处理的内容逐渐增多,我们需要包含实际编程,因此我创建了这门机器学习课程已有几年。基本构成是这样的:在人工智能课程中,我们先探讨一些概念性和理论性的内容,这基本上是一个介绍性课程。然后在机器学习课程中,我们将处理更详细的内容,并进行实际的编程实践。这些内容如果全部作为先修课程,内容将会非常多。所以目前,只有部分数学课程被指定为先修课程,其余的都是建议性先修课程。
Attendees 1 04:35
그래서 파이썬 프로그래밍은 뭐 당연히 알아야 되고 파이썬을 우리가 여기서 이제 가르칠 수가 없는 거니까 수학에 관한 내용들은 이걸 꼭 선수를 안 해도 들을 수 있는데 혹시 여러분들이 학기 진행하다가 뭐 예를 들면 행렬과 관련해 어떤 내용이 나왔는데 아 좀 잘 모르는 부분이 있다.
그러면 만약 그런 게 있다면 그때그때 좀 별도로 찾아보고 약간 공부를 하면서 같이 하면 될 것 같습니다.
인공지능은 선수를 안 해도 좋은데 여기 있는 사람 중에 인공지능 내지는 인공지능 개론 이런 인공지능을 소개하는 그런 과목을 한 번도 수거한 적이 없다.
정 있다 한 반반 되네요. 네 안 들었어도 괜찮습니다.
괜찮은데 보통 전에 우리가 인공지능 과목에서 아까 얘기한 것처럼 기본 개념을 좀 다루고 머신러닝을 한다고 생각해 왔기 때문에 조금 기본적인 개념은 약간 처음 하는 처음 이런 걸 접하는 사람한테 설명하는 것보다는 조금 빠르게 나갈 수도 있습니다.
显然,你需要了解 Python 编程,因为我们无法在这里教授 Python。关于数学内容,即使没有先修课程也可以学习。如果在学习过程中遇到与矩阵相关的内容,而你感到不太了解,可以随时额外查阅和学习。虽然不需要先修人工智能课程,但在座的人中,可能有一半没有学过人工智能概论课程。这没关系,但由于我们之前通常是在人工智能课程中讲授基本概念,所以对于初次接触的人来说,讲解可能会稍微快一些。
Attendees 1 05:51
그래서 그런 것도 혹시 그런 부분이 있다 그러면 뭐든지 조금 그런 내용에 들어갈 때 미리 약간 봐두거나 추가적으로 좀 살펴보는 게 필요할 수는 있겠습니다.
네 이 과목이 그래서 뭘 하는 과목이냐 우리가 머신러닝 하면은 이제 어떤 건지 여러분들이 대부분 다 알고 있을 것 같긴 한데 인공지능이라고 우리가 얘기하는 큰 범주 중에 이제 주요한 한 주제죠.
그래서 뭐냐 하면 컴퓨터가 혹은 어떤 프로그램 혹은 어떤 로봇이 어떻게 하면 이제 학습을 하게끔 만드느냐 인공지능이 아주 중요한 주제 중에 하나죠.
여기서 특히 우리가 다루는 것은 데이터 또는 어떤 경험으로부터 학습을 하게끔 만드는 방법들을 다루는 겁니다.
그래서 예를 들면 여러분이 여러분들의 프로그램이 내일의 주가를 예측하게 하고 싶다.
내일 주가가 오를 건가 내릴 건가 그걸 잘 맞출 수 있으면 재벌이 되겠죠.
所以如果有这种情况,在进入某些内容时可能需要提前查看或额外了解。是的,这门课是关于什么的呢?当我们谈到机器学习时,我想大家可能都已经知道了,它是人工智能这个大范畴中的一个主要主题。简单来说,就是如何让计算机、程序或机器人进行学习。这是人工智能中非常重要的主题之一。特别是我们要处理的是如何通过数据或经验来实现学习的方法。例如,如果你希望你的程序能预测明天的股价,能准确预测股价是涨是跌,那你就可能成为富翁了。
Attendees 1 06:56
금방 뭘 갖고 예측하냐 하면 그런데 이전에 데이터가 있을 거예요.
예를 들면 금리가 오르고 내리고 어떤 경제 지표가 어떻게 변하고 이랬을 때 주가가 오르더라 내리더라 그런 게 있겠죠.
그런 데이터들을 가지고 있으면 그걸 바탕으로 과거의 데이터들을 보니까 어떤 식으로 예측을 하면 되겠구나라는 것을 어떻게 만들어낼 거냐 그런 것들 자율주행차가 길거리를 다니면서 카메라로 들어오는 인풋을 보고 아 저기 교차로가 있네 저기 차가 앞에 있네 사람이 지나 이런 걸 인식하려고 한다 그러면 2 디맨저널 픽셀 이미지를 보고 이게 자동차지 사람인지 이 인식할 수 있어야 될 거 아니에요 그렇죠 그걸 할 때 학습을 한다는 건 뭐냐 하면 그런 데이터를 주면 이런 게 자동차 이런 건 사람 주면 그거로부터 어떻게든 이미지에서 그런 걸 인식해서 예측할 수 있게끔 하는 방법을 만들어내는 거죠.
그게 학습이라고 볼 수가 있어요.
刚才说要预测什么?那么之前肯定会有一些数据。比如利率的涨跌,经济指标的变化,股价的涨跌等。如果有这些数据,就可以根据过去的数据来思考如何进行预测。就像自动驾驶汽车在街道上行驶,通过摄像头捕捉输入信号,识别十字路口、前方的车辆、行人等。它需要能够从二维像素图像中识别这是汽车还是人。学习的意义就在于,当你提供这些数据时,它能从图像中识别并进行预测。这就是我们所说的学习。
Attendees 1 08:07
또 로봇이 어떤 물건을 집어서 이렇게 옮기게끔 만들려고 하는데 이제 경험을 자꾸 하게 하는 거죠.
이렇게 했더니 집다가 실패를 하고 이렇게 하니까 잘 짚고 그걸 통해서 이런 경우에는 이런 정도의 힘을 어떤 식으로 가하면 성공할 수 있겠구나라는 거를 학습해 가지고 잘할 수 있게 하는 거 그런 것들이 전부 다 이제 머신러닝을 통해서 뭐 하는 거라고 볼 수가 있고 그래서 기본적으로는 그런 걸 어떻게 하면 될지 하는 기본적인 개념이나 원리 이런 것들을 우리가 살펴보는 과목이다 이렇게 생각할 수가 있습니다.
좀 구체적으로는 그래서 다양한 우리가 머신러닝 방법론 알고리즘 이런 것들이 있는데 그런 것들을 이제 하나씩 우리가 드릴 거예요.
与会者 1 08:07 还试图让机器人能够抓取并移动某些物品。现在是通过不断积累经验来实现的。比如尝试抓取时失败了,然后通过调整发现可以成功抓取,通过这种方式学习在不同情况下应该施加多大的力才能成功。这些都可以被视为通过机器学习实现的。所以基本上,这门课程旨在探讨这些基本概念和原理。
Attendees 1 08:55
그래서 여기 수퍼 바이스 바이스 인포스먼트 러닝 이런 얘기들이 있는데 이런 서로 다른 어떤 형식의 머신러닝 방법론 중에서 아주 구체적으로 퍼셉트한 어떤 알고리즘이라든지 리니어 리그레션 디시전 트리 이런 다양한 우리가 딥러닝 모델까지 어떤 모델과 알고리즘들을 이제 구체적으로 살펴보는 것 그다음에 그런 모델들이 학습을 이제 잘 하게 하기 위해서 필요한 여러 가지 또 우리가 개념들이 있습니다.
그래서 데이터로부터 학습을 한다고 그러는데 데이터에 과적합된다는 건 무슨 의미이며 또 그런 걸 안 하기 위해서 어떤 방법을 쓰는지 또는 데이터를 학습을 잘하기 위해서 어떻게 변형을 할 거며 뭐 프리 프로세싱을 하는지 그런 여러 가지 머신러닝에 관련된 주제들이 있어서 그런 것들을 우리가 또 살펴볼 거고 네 그러고 나서 이제 구체적으로 프로그래밍 해서 그걸 구현하는 거를 하는 거죠.
与会者 1 08:55 在这里我们会涉及监督学习、半监督学习、强化学习等不同形式的机器学习方法论。我们将具体研究感知器算法、线性回归、决策树,一直到深度学习模型等各种模型和算法。接下来还会探讨如何让这些模型更好地学习,比如数据过拟合是什么意思,如何避免过拟合,如何对数据进行预处理以便更好地学习,这些与机器学习相关的主题我们都会详细讨论,最后还会通过编程来实现这些内容。
Attendees 1 09:59
그게 이제 실습에서 우리가 하는 건데 그래서 어떤 알고리즘들을 다루고 이런 자라기 위한 방법론들도 살펴보고 그다음에 프로그래밍을 하고 이런 것들을 하는 과목이다 이렇게 생각을 합니다.
프로그래밍은 아까 얘기한 것처럼 파이썬을 가지고 할 텐데 그냥 파이썬 언어만 갖고 하는 게 아니라 파이썬을 기반으로 다양한 라이브러리들이 있어요.
그래서 그런 라이브러리들을 우리가 써서 특정한 테스크를 수행하는 머신러닝 알고리즘을 구현하는 그런 내용들을 한 학기 동안 진행하도록 합니다.
여러분이 생각한 거하고 일치하나요? 혹시 질문 혹시 뭐 이런 건 안 합니까?
这是我们在实践中要做的,所以我们将探讨一些算法,并研究实现这些算法的方法论,然后进行编程等。我是这样想的。正如之前提到的,编程将使用 Python,但不仅仅是使用 Python 语言,还有各种基于 Python 的库。因此,我们将使用这些库来实现特定任务的机器学习算法,这将是我们整个学期的内容。这符合你们的预期吗?有没有什么问题?
Attendees 1 10:54
네 그래서 강의가 진행되는 건 우리가 지금 여기 4개의 강좌가 아마 우리 학부에 열려 있을 거예요.
그렇죠 작년까지는 세 강좌를 우리가 오픈했는데 지금 학생 수도 있고 하면서 아마 네 강좌가 지금 오픈된 것 같고 그중에 02 04 강좌를 내가 맡아서 하고 있습니다.
여러분들이 아마 02 강좌 그죠? 여러분들은 이 시간 수요일 1시 30분 이 자리에서 이제 이론적인 수업을 할 거고 그다음에 내일이죠.
목요일 1시에 내가 처음에 올려놨던 자료에 이게 좀 뒤박혀 있었던 것 같은데 목요일 1시가 맞죠?
여러분들 목요일 1시에 6기를 이용해서 실습을 진행하고 이렇게 진행될 예정이고 이론 수업은 내가 진행합니다.
그래서 내 이름하고 연구실은 여기 10층에 있고 그다음에 전화번호 이메일이 주어져 있죠.
是的,关于课程的开设,我们学部可能会开设 4 个课程。对吧,到去年为止,我们开设了三个课程,但现在考虑到学生人数等情况,可能已经开设了四个课程。其中 02 和 04 课程由我负责。你们应该是 02 课程,对吧?你们这个时间是星期三下午 1 点 30 分在这里上理论课,然后明天,也就是星期四 1 点,我之前上传的资料好像藏得有点深,星期四 1 点用 6 号机进行实践。理论课程由我来讲。我的名字和研究室在 10 楼,电话号码和邮箱也已经提供。
Attendees 1 12:04
그래서 이론 수업은 지금 여기서 이렇게 PPT 띄워놓고 하듯이 우리가 사전에 강의할 내용을 PPT로 이 클래스에 올릴 거고 여러분들이 그거 다운받거나 해서 강의를 들으면서 메모를 하거나 할 수 있게 준비해서 이제 수업을 들으면 됩니다.
실습은 일단 내일은 내가 들어가긴 할 건데 기본적으로는 실습은 조교가 진행을 할 예정입니다.
그래서 우리 교육 조교가 지정돼 있고 지원박 이렇게 써 있죠.
우리 인공지능 연구실에 지금 석사 과정 대학원생인 박지원 연구원이 조교를 담당해서 진행해 줄 예정입니다.
박지원 저기 잠깐 일어나서 얼굴 보여주세요.
与会者 1 12:04 所以理论课程我们将像现在这样打开 PPT,预先将讲课内容上传到这个课程平台,您们可以下载并在听课时做笔记。实践课程基本上将由助教负责进行。我们的教育助教已经指定,写着"支援朴"。我们人工智能研究室目前正在攻读硕士学位的研究生朴志元研究员将担任助教并进行指导。请朴志元稍微起立,露个脸。
Attendees 1 12:58
네 그래서 조교는 무슨 역할을 하느냐 실습을 일단 진행하는 것을 담당해 줄 예정입니다.
실습은 우리가 어떤 형식으로 진행하냐 하면 여러분들한테 코드 템플릿을 줄 겁니다.
마찬가지로 실습 하기 하루 전에 이 클래스를 올릴 거고 그럼 거기 코드가 쭉 설명 부분하고 코드가 같이 들어가 있습니다.
그걸 여러분들이 열어서 그런데 그 안에 빈칸이 잔뜩 있어요.
조교가 우리가 이론 시간에 한 내용과 연관되는 코드들이 있는데 핵심적인 부분을 간단히 설명하면서 프로그램을 작성을 할 거예요.
여러분들 같이 말하자면 빈칸으로 되어 있는 부분을 채워나가면서 설명을 듣고 여러분들이 직접 실행하고 이렇게 하면서 실습을 진행하는 거고 실습 시간 이제 내일 처음 실습 시간이죠.
与会者 1 12:58 是的,所以助教的角色是负责进行实践课程。我们的实践课程将以这种方式进行:我们将为您提供代码模板。同样,我们将在实践课程前一天上传到这个平台,那里将包含代码和说明。您们打开后会发现里面有很多空白部分。助教将简要解释与我们理论课程相关的代码,同时编写程序。简单来说,您们将在助教解释的同时填写这些空白部分,并亲自执行,这就是实践课程的进行方式,明天将是第一次实践课程。
Attendees 1 13:57
그때 조교가 조금 더 자세히 설명을 할 건데 어쨌든 기본적인 그런 방식으로 진행을 하고 그런 게 전체 2시간 중에 한 1시간 조금 넘는 정도 그 정도 시간을 그렇게 진행하고 그다음에 올려주는 그 코드 파일에 보면 뒤쪽에는 그냥 문제만 있는 그 코드와 빈칸이 있는 게 아니라 거의 그냥 빈칸만 있는 그다음 퀴즈라고 돼 있는 것이 어떨 때는 하나 어떨 때는 3개 이렇게 몇 개씩 들어가 있습니다.
나머지 시간에는 여러분들이 이제 앞에서 한 내용과 직접 관련이 있는 그런 내용이니까 거기 써 있는 걸 보고 이제 다 프로그래밍 해서 완성을 잘 돌아가도록 완성을 하는 네 그러고 나서 그걸 여러분들이 이 클래스에다가 업로드를 하는 거죠.
내가 완성한 코드를 그러면 이제 조교가 나중에 한번 확인하고 이제 프로그래밍을 다 잘 완성을 했구나.
그거에 따라서 이제 평가를 해서 반영을 하겠지.
助教将进一步详细解释,无论如何,基本上按照这种方式进行,大约在 2 小时的课程中,将有 1 小时多一点的时间是这样进行的。之后,在上传的代码文件中,后面不仅仅是有问题的代码和空白,而是几乎全是空白,然后标注为"测验",有时是一个,有时是 3 个,这样不等数量的空白。剩余的时间,你们将直接与前面讲解的内容相关,看着上面写的内容,现在编程并完成,使其能够正常运行。然后,你们将这个完成的代码上传到这个课程中。助教稍后会检查,看看编程是否已经很好地完成。根据这个,将进行评估并予以反映。
Attendees 1 15:02
기본적으로는 실습 시간 안에 다 완성해서 업로드를 하는 걸로 하고 그런데 경우에 따라서 좀 양이 많다든지 좀 시간이 부족해서 못했다.
그러면 다음에 지정된 시간까지 여러분 업로드를 하면 되고 그 시간 안에 다 마친 사람과 나중에 업로드한 사람 둘 사이에는 약간의 차등을 둘 예정입니다.
어쨌든 나중에라도 완성해서 제출하면 실습은 다 어쨌든 한 거고 조금의 점수 차이를 둘 거다 이 말이죠.
네 그다음에 여기 안 써 있지만 도우미가 있을 예정입니다.
도우미는 이제 여러분한테 설명하고 같이 코딩을 진행하는 그 과정은 이제 우리 박지원 조교가 같이 할 거고 그러고 나서 이제 1시간 정도 여러분들이 1시간 40분에서 1시간 정도 시간 동안 프로그래밍하는 과정에 여러분들이 문제가 있거나 이런 거 잘 모르겠다 이런 것들을 이제 질문하고 그러면 옆에 가서 답변하고 도와주고 그런 역할을 하는 사람이 같이 또 들어올 겁니다.
그래서 아마 조교 포항 두 사람 혹은 세 사람이 실습을 같이 진행할 거예요.
基本上是在实践时间内完成并上传。但是,如果由于内容较多或时间不足而无法完成,可以在之后指定的时间前上传。对于在规定时间内完成的人和之后上传的人,将会有一些分数上的差异。无论如何,即使稍后完成并提交,实践课程都算是完成了,只是会有一些得分差异。接下来,虽然没有写明,但将会有助手。助手将与你们一起解释并进行编程,这个过程将由朴智源助教一起进行。然后,在 1 小时 40 分到 1 小时的时间里,在你们编程的过程中,如果遇到问题或不知道如何操作,可以提问,助手将会到旁边给予回答和帮助。因此,可能会有两到三名助教一起进行实践课程。
Attendees 1 16:18
그 외에 조교는 보통 우리가 여러분들이 제출한 걸 평가하는 건 이제 호목이 있고 시험이 있는데 대개 시험은 내가 직접 채점을 하고 호목은 이제 조교가 채점을 도와줄 거예요.
여러분들이 실습과 관련해서 혹은 호목과 관련해서 질문이 있거나 그러면 조교한테 연락을 한번.
除了助教之外,通常我们会评估你们提交的作业,有作业和考试。考试我通常会直接批改,而作业将由助教帮忙评分。如果你们对实验或作业有任何问题,请联系助教。
Attendees 1 16:43
네. 그다음에 아까 말한 것처럼 우리 강의 내용의 PPT 그다음에 실습 코드 그다음에 호목 숫자가 나온다 했지 이거는 전부 다 매트 슬라이드 코드 파일 호모 이런 거 이 클래스에 그때그때 올라갈 테니까 여러분들이 확인하고 다운로드 받아서 수행을 하면 될 것 같고 네 평가는 두 번의 시험을 우리가 볼 겁니다.
필기시험을 볼 거고 시험이 전체 한 절반 정도 비중으로 이제 평가에 반영이 될 거고 그다음에 실습 여러분들이 다 잘 수행했는지 그걸 또 평가할 거고 그다음에 호목이 또한 4분의 1 정도 이렇게 해서 전체적인 상도를 구성하고 거기에 따라서 학교에서 지정된 범위 안에서 abcd를 주게 되겠죠.
거기에 맞춰서 전체 평가 점수에 따라 확정을 줄 예정이다.
지난 시간에 누가 출석 점수 따로 안 합니까? 이렇게 질문을 하는 사람이 있었는데 출석은 교수님마다 성향이 다 있을 텐데 나는 출석은 반영하지 않습니다.
对,如我之前提到的,我们课程的 PPT、实验代码和作业分数都将在麦特的幻灯片和代码文件中上传,所以你们可以查看并下载。我们将进行两次考试,笔试大约占总成绩的一半,然后评估你们的实验完成情况,作业约占四分之一,最终成绩将按照学校规定的范围内给出 ABCD 等级。至于出勤,我个人不会将其计入成绩。
Attendees 1 18:08
그래서 그럼 안 와도 되는 거야 이렇게 생각할지도 모르는데 그건 아니고 학칙상 정해져 있는 출석 일수라는 게 있죠.
네 얼마 이상 출석에 참여 안 하면 학점이 부여되지 않는다 이렇게 있어서 그 기준에 맞게 결석을 과하게 했다든지 그렇게 되면 학점이 안 나갈 수 있습니다.
당연히 출석은 우리가 매번 여기서 이름을 다 호명하지 않고 스마트 출석 방식으로 출석을 체크할 수 있게 조교 방 세팅을 해놓을 거고 그래서 거기에 따라서 출석은 이제 해야 된다는 거고 그런데 출석을 반영 안 한다는 건 무슨 얘기냐면 누구는 한 번 결석했고 누구는 두 번 결석했고 이런 거에 대한 점수 계산해가지고 다르게 반영하고 그런 것을 세부적으로 할 계획은 없다.
也许大家会想"那这样不来也可以吗?"但事实并非如此。学校规定有固定的出勤天数。如果出勤低于某个标准,就无法获得学分。出勤过多缺课可能会影响学分。当然,我们不会逐一点名,而是通过智能考勤方式在助教室设置考勤系统。所以必须按要求出勤。但是,我们不打算对不同的缺课次数进行细致的分数计算和区分对待。
Attendees 1 19:05
네 진행하는 거 관련해서 혹시 확인해야 된 질문 있으
关于进行的事项,是否有需要确认的问题?
Attendees 1 19:16
네 교재입니다. 교재에는 머신러닝 관련된 책 굉장히 다양하게 많이 나와 있죠.
머신러닝 책은 여러분들이 가서 보게 되면 똑같이 머신러닝 이렇게 돼 있는데 책을 열어보면 왜 이렇게 전혀 다르게 생겼지 이렇게 느낄 가능성이 많이 있어요.
굉장히 스펙트럼이 넓습니다. 그래서 예를 들면 어떤 책은 여러분들이 보면 아니 순전히 프로그래밍을 다룬 책 또 있고 어떤 책은 보는 이거 무슨 수학책 같은 것도 있어요.
그러니까 완전히 이론적인 체 완전히 프로그래밍 프렉티컬한 책 이런 것들이 있는데 그래서 우리가 지금 레퍼런스로 쓰려는 것은 제일 왼쪽에 있는 그림에 파이썬 머신러닝이라는 책입니다.
세바스찬 레스터라는 사람이 쓴 책이고 그거에 그 바로 옆에 있는 그림은 번역본도 있어서 아무거나 선택해서 준비해서 참고하는 가장 오른쪽에 있는 책은 아까 말한 스펙트럼의 가장 이론적 극단에 있는 책인데 비교적 근래에 나와서 많이 지금 텍스트로 또 활용이 되는 책인 것 같이 보여요.
各位,这是教材。关于机器学习的书籍已经出版了非常多样的版本。当您打开机器学习相关的书籍时,可能会感到非常惊讶,为什么看起来如此不同。书籍的范围非常广泛。例如,有些书籍完全关注编程,有些书籍看起来更像数学教科书。书籍类型从完全理论性到实践性都有。我们现在要参考的是最左边图片中的《Python 机器学习》这本书,是由塞巴斯蒂安·拉斯特(Sebastian Raschka)所著,旁边还有译本可供选择。最右边的书籍位于理论光谱的极端,看起来是最近出版的,并且现在被广泛用作参考文本。
Attendees 1 20:34
이건 케빈 머피라는 사람이 쓴 프라버빌리티 머신러닝이라고 돼 있는 책이고 이거는 여러분들이 보면 완전히 수학적이니 굉장히 이론적인 내용만 다루고 있는 거고 그래서 이건 참고 서적이다 이렇게 생각하면 될 것 같고 책이 너무 비싸죠.
요새 그런데 저기 참고로 여기 가면 기터에 이 책에 초판에 그러니까 드래프트가 PDF로 올라가 있는 게 있어요.
언제 없어질지 모르는데 하여튼 현재는 올라가 있는 것 같고 그래서 이걸 여러분들이 꼭 가지고 있거나 참고할 필요는 없지만 가지고 있으면 나중에 어떤 특정한 주제에 대해서 수학적인 설명을 좀 가 좀 자세히 좀 볼 필요가 있다든지 그러면 이 책을 좀 참고할 수도 있겠습니다.
这是凯文·墨菲(Kevin Murphy)所著的《概率机器学习》一书。如果您查看这本书,它完全是数学和理论性的内容。可以将其视为参考书籍。这本书非常昂贵。顺便提一下,您可以在 GitHub 上找到该书初版的 PDF 草稿,目前仍然可以访问,但不确定何时会被移除。您不必一定拥有或参考此书,但如果您需要对某些特定主题进行更详细的数学解释,可以参考这本书。
Attendees 1 21:26
그런데 기본적으로 어쨌든 이 책을 중심으로 우리가 보는데 이 책에 있는 내용을 그대로 따라가거나 그러는 건 아니기 때문에 여러분들이 하여튼 공부를 할 때는 내가 제공하는 강의 자료를 중심으로 하면 될 것 같고 대체적으로는 이 책에서 다루는 그런 내용들을 커버를 하는데 일부 이 책에 있지만 우리가 다루지 않는 것도 있고 또 거꾸로 이제 이 책에는 없는데 내가 다루는 그런 주제들도 있습니다.
그리고 강의 자료를 구성한 어떤 내용들이 포함되느냐 하는 거는 여러분도 알다시피 이 인공지능 중에서도 머신러닝 분야는 굉장히 빠르게 지금 기술이 발전하고 새로운 것들이 나오고 있죠.
그래서 새로운 게 나올 때마다 우리가 텍스트에 반영하거나 강의 내용에 다 반영하기는 어렵지만 내가 생각하기에 이런 내용 정도는 좀 머신러닝에서 여러분들이 알고 있으면 좋겠다 싶은 것들이 이제 나올 때는 계속 강의색을 좀 업데이트하고 있습니다.
虽然我们以这本书为中心进行学习,但并不是完全按照书中内容逐字逐句地学习。在学习时,您可以以我提供的讲义为中心。总体上,我们会覆盖这本书中讨论的内容,但有些书中的内容我们可能不会涉及,反之亦然,我可能会讲解一些书中没有的主题。关于讲义中包含的内容,正如大家所知,在人工智能领域,尤其是机器学习,技术正在快速发展,不断涌现新的内容。尽管我们很难及时在教材和讲义中反映所有新技术,但是我会尽量在我认为对学习机器学习有帮助的地方不断更新课程内容。
Attendees 1 22:41
그래서 재작년 거 작년 거 금년 거 계속 다룰 거고 큰 틀에서 중심적인 내용은 같지만 새로운 내용이 추가하거나 있는 게 빠지거나 하는 것이 계속 있을 수 있습니다.
어쨌든 우리 파워포인트로 제공되는 강의 자료를 중심으로 하되 이런 책의 주요 내용들이 다 있다는 거 하고 이론적인 건 저 책을 참고할 수 있다 이렇게 소개하는 걸로 하겠습니다.
我们将继续讨论前两年、去年和今年的内容。在大的框架内,核心内容保持一致,但可能会增加新内容或删减一些内容。总之,我们将以 PowerPoint 提供的讲义为中心,同时参考这本书的主要内容,并可以参考这本书获取理论知识。
Attendees 1 23:14
네 마지막으로 한 학기 동안 진행될 대략의 스케줄인데 우리가 2시간의 이론 2시간의 실습으로 구성된다고 그랬죠.
그러니까 오늘 이 시간이 이겁니다. 그래서 3월 5일 그다음 5일 맞나 여기 여기 맞죠?
그리고 3월 6일 이렇게 이제 첫 주가 진행이 되는 거고 첫 주는 우리가 약간 워밍업 같은 주라고 생각하면 될 것 같아요.
그래서 처음 시작할 때 얘기한 것처럼 이 강사가 어떻게 구성되고 진행된다는 걸 간략히 설명 했고 그다음에 우리가 사용할 프로그래밍이 사용하는 라이브러리나 이런 것들 간략히 좀 살펴보고 끝날 거고 이제 내일 실습 마찬가지로 프로그래밍 이제 할 수 있는 인발로먼트 여기 확인하고 앞으로 이런 식으로 진행하겠다 하는 거 같이 해보고 이미 파이선 다 알지만 그래서 간단한 파일선 몇 가지 프로그래밍 하면서 준비하는 시간을 갖는다 이렇게 보면 될 것 같아요.
参与者 1 23:14 是的,这是大致的课程安排,我们将有 2 小时的理论课和 2 小时的实践课。今天就是这个时间。从 3 月 5 日开始,接着是 3 月 6 日,这样第一周就开始了。我们可以把第一周看作是热身周。就像我们之前讨论的,简要介绍了讲师如何组织和进行课程,然后简单地浏览了我们将使用的编程库等。明天的实践课同样会检查编程环境,并确定今后的进行方式。由于大家已经了解 Python,我们将通过简单的 Python 编程来做准备。
Attendees 1 24:26
네 그다음에 이제 다음 주는 우리가 한 학기 동안 할 머신러닝에서 다루는 여러 그런 개념들을 전체적으로 한번 쭉 보는 그런 시간을 가질 거고, 일반적으로 우리가 이론 시간에 다룬 내용에 대한 실습 프로그래밍을 진행하는 건데 그래서 다음 주에 하는 내용은 왜냐하면 전반적인 인트로덕션 같은 거기 때문에 구체적인 이걸 프로그래밍 하는 내용이 있지 않아요.
이때는 우리가 다루 이제 이제 프로그램 할 때 사용할 이런 라이브러리들 중에 일부를 여러분들 실습 시간에 이제 각각에 대해서 조금 연습해 보는 그런 시간을 갖도록 할 예정입니다.
그리고 나서는 이제 쭉 여러 주제들에 대해서 차례차례 살펴볼 건데 대략의 순서는 이런 겁니다.
参与者 1 24:26 接下来,下周我们将全面概览一学期将要学习的机器学习各种概念。通常,我们会对理论课上讲述的内容进行实践编程。因为下周主要是整体介绍,所以没有具体的编程内容。这次我们将在实践课上练习将要使用的一些库。然后,我们将依次探讨各个主题,大致顺序如下。
Attendees 1 25:21
우리가 우선 제일 기본적인 어떤 수치적인 예측을 하는 그런 리니어 리그레션 그다음에 그레디언 디센트에 의해서 리니어 리그레션 모델을 학습하는 그런 것들을 살펴볼 거고 거기에 대한 실습을 제가 또 그다음에 로지스틱 리그레션이라는 클래시피케이션 모델을 방법을 우리가 살펴보고 거기에 대한 실습을 하고 이렇게 진행하는 거죠.
그다음에 차례로 보통 이제 이 전반부에 다루는 건 주로 이제 수치적인 데이터들을 가지고 어떤 예측 모델을 학습한다는 그런 내용들인데 이런 리그레션 로지시티 리그레션 이런 것들이 가장 기본적인 개념을 우리가 이제 이야기하는 모델들이고 그 외에 다양한 모델들이 있어서 그런 걸 또 하나씩 살펴볼 거예요.
그래서 디시전 트리 모델이라든지 니어리스트 네이버라든지 서포트 액터 머신이라든지 이런 게 뭐냐 살펴볼 거고 그다음에 학습하는 알고리즘 말고도 아까 데이터를 어떻게 처리할 거라든지 다양한 주제들이 있다고 그랬죠.
我们首先会观察最基本的数值预测,如线性回归,然后通过梯度下降来学习线性回归模型,并进行相关实践。接下来,我们将探讨逻辑回归这个分类模型,并进行实践。前半部分主要处理的是如何使用数值数据学习预测模型,线性回归和逻辑回归是最基本的概念模型。除此之外,还有各种其他模型,我们将逐一探讨,如决策树模型、最近邻、支持向量机等。除了学习算法,我们还将讨论如何处理数据等各种主题。
Attendees 1 26:27
그래서 데이터의 전처리와 관련된 주제들 고 그다음에 학습 알고리즘의 성능을 평가하는 이런 방법과 관련된 주제들이 굉장이 네 그러고 나면 중간 여기까지의 내용은 중간 시험 볼 거고 이제 후반부에는 전반부에 주로 수치 데이터를 다루는 걸 우리가 했다면 후반부로 가면서는 점점 이제 비정형의 데이터 그러니까 언어 텍스트나 그다음에 이미지 이런 것들을 다루는 그런 내용으로 돼 있는데 그래서 처음에 텍스트에 관련된 몇 가지 사항들을 올려 보고 언스퍼바이 러닝은 데이터를 이렇게 그룹핑하는 그런 알고리즘이 있는데 거기에 대해서 좀 살펴보도록 그다음에는 신경망 모델 신경망을 기반으로 하는 모델들을 주로 우리 얘기를 할 겁니다.
신경망 모델의 기본적인 연구를 먼저 보고 그다음에 요 앞에 것들 수치적인 어떤 데이터로부터 학습을 하는 것들은 이런 어떤 라이브러리 우리는 이제 도구의 역할을 하는 거고 사이클 런이라는 라이브러리를 주로 써가지고 여러 모델들을 학습하고 하는 것이다.
我们将探讨数据预处理相关的主题,以及评估学习算法性能的方法。这部分内容将作为中期考试的范围。在后半部分,如果前半部分主要处理数值数据,那么后半部分将逐渐转向非结构化数据,如语言文本和图像等。我们将首先介绍一些关于文本的内容,探讨非监督学习中数据分组的算法,然后主要讨论基于神经网络的模型。我们将首先研究神经网络模型的基础,然后对于之前处理数值数据的学习,我们主要使用像 scikit-learn 这样的库作为工具来学习和处理各种模型。
Attendees 1 27:39
그런데 이제 후반부에 비정형 데이터를 다룰 때는 우리가 텐서 플로우를 출산하고 텐서 플로우 합 캐라스를 가지고 텍스트를 다루거나 이미지를 다루거나 이런 식으로 볼 거고 그걸 좀 본 다음에는 이제 딥러닝 모델들 CNN RNN n 이런 것들을 이제 살펴보고 실습을 하는 그런 순서로 진행될 예정입니다.
네 제일 마지막에는 리니포스먼트 러닝 강화 학습이라는 것을 좀 개념을 설명을 하면서 마치는 그 순서가 됐다.
네 저기 실습에 그래서 어떤 것들을 실습할 거다 하는 거를 써놨고 옆에 챕터라고 번호를 매긴 거는 이게 우리가 앞서 얘기했던 이 책에 어느 챕터에 이 해당 내용이 매핑이 된다라는 거를 여기 써놨으니까 거기서 참고를 하면 될 것 같아요.
네 그리고 포목이 한 4번 정도 나갈 예정이라서 중간고사 전에 한 두 번 그다음에 중앙선 이후에 한 두 번 대략 한 한 3주 정도 한 내용에 대한 호목이 이렇게 차례차례 있을 예정입니다.
네 끝 질문
不过在后半部分处理非结构化数据时,我们将使用 TensorFlow 和 TensorFlow 合并的 Keras 来处理文本或图像等。之后,我们将查看深度学习模型,如 CNN、RNN 等,并进行实践。最后,我将解释强化学习的概念并结束课程。是的,我在那里列出了实践中将要进行的内容,旁边的章节号表示这些内容与我们之前讨论的书中的哪一章节相对应,可以参考一下。是的,课程预计将进行大约 4 次作业,中期考试前进行两次,中期考试后再进行两次,大约每 3 周一次。好的,结束了。有问题吗?
Attendees 1 29:08
네 시험이 토요일이 네네 좋은 질문이에요. 갑자기 왜 토요일이 써 있냐 그래서 두 강좌가 있죠.
각각 자기 시간에 시험을 보게 되면 내가 두 세트의 시험 문제를 준비해야 되고 또 난이도를 맞춘 정확히 맞출 수가 없겠죠.
그래서 우리는 같은 내용을 공부할 거기 때문에 같이 시험을 보는 걸로 하려고 해요.
그러다 보니까 이건 예정입니다. 이제 다 같이 할 수 있는 토요일에 작년에도 그렇게 했었고 이렇게 볼 예정이고 혹시 두 반 중에 어느 한 쪽에 시험을 봐도 괜찮다 이렇게 시간이 잡히면 그 시간에 할 수도 있어요.
우리가 지금 예를 들면 뭐지 수요일 날 이 시간에 이론 강의 시간인데 이렇게 또 다른 반 또 다른 클래스도 수요일 날 시험을 보는데 아무 문제가 없다 그러면 수요일 날 할 수도 있는 거 그거는 조금 이제 몇 주 지난 다음에 언젠가 한번 확인해서 확정하도록 하겠습니다.
현재로는 예정은 8주 차에 토요일 그다음에 15주 차에 두.
是的,考试在周六。是的,这是个好问题。为什么突然写了周六呢?我们有两个课程,如果每个课程在自己的时间考试,我就需要准备两套试卷,并且很难准确地调整难度。所以我们打算一起考试,因为我们学习的内容是一样的。因此,这是预定的。我们计划在所有人都能参加的周六进行,去年也是这样。如果两个班级中的任何一个班级有合适的时间,也可以在那个时间考试。比如,我们现在是周三的这个时间进行理论课,如果另一个班级也在周三考试没有问题,那么就可以在周三进行。这个具体时间我们将在几周后确认并最终确定。目前预定在第 8 周的周六,然后是第 15 周的第二次。
Attendees 1 30:34
네 이것도 예정이기 때문에 날짜만 지정해 놨는데 특별한 일이 없다면 10시 정도 해 왔습니다.
是的,因为这是预定的,所以只是指定了日期,如果没有特殊情况,大约是 10 点。
Attendees 2 30:56
그럼 기말고사도 주말에 보면 10시에 시행 하나요?
那么期末考试也是在周末 10 点进行吗?
Attendees 1 31:01
네 혹시 언제
是的,可能什么时候
Attendees 2 31:04
일본 겹칠 수도 있을 것 같아서
参会人员 2 31:04 可能会有重叠的日本时间
Attendees 1 31:07
벌써 6월 달인데 네 미리 예정일을 써놓은 거는 가능하면 각자 스케줄을 잡거나 이렇게 피하라는 뜻으로 잡아놓은 거고 그럼에도 불구하고 피치 못해서 도저히 이때 할 수가 없다.
그런 사람이 만약에 있다면 미리 얘기를 하세요. 좀 다른 방법일 것 같아요.
별도로 추가하시는 분들인지
已经是 6 月份了,对吧。提前预定日期是为了尽可能让大家安排自己的日程或避开某些时间。尽管如此,如果有人确实无法在这个时间安排,请提前告诉我。这似乎需要另一种方法。是否有人想额外添加什么?
Attendees 1 31:47
네 오케이 그러면
是的,好的
Attendees 1 32:08
네 아까 얘기한 대로 우리가 이제 쓸 프로그래밍 언어 라이브러리를 간략히 좀 살펴보는 시간을 갖도록 하겠습니다.
참고로 우리가 이론 강의 시간은 2시간이 잡혀 있죠.
그래서 보통 50분 진행하고 중간에 10분 브레이크하고 다시 50분 진행하고 그렇게 하려고 합니다.
好的,正如我之前所说,我们将简要地看一下我们将要使用的编程语言库。顺便提一下,我们的理论课时间是 2 小时,所以通常是进行 50 分钟,中间休息 10 分钟,然后再进行 50 分钟。
Attendees 1 32:36
우선 파이썬 파이썬 여러분들이 다 알고 있기 때문에 자세하게 볼 필요는 없을 것 같고 그냥 빠르게 좀 핵심적인 부분만 그냥 리뷰 생각하고 보도록 하겠습니다.
잘 알다시피 하이레벨 프로그램 레이지고 여기 보면 오브젝트 오리엔티드 다이나믹 타이드 인터렉티브 프로그램 다 이렇게 돼 있죠.
또 밑에 보면 프로시저 오브젝트 오리엔티드 펑셔널 프로그래밍 서포트한다 이렇게 돼 있고 네 가장 큰 특징을 한마디로 얘기하자면 간결하고 쓰기 쉽게 정의돼 있는 언어다 이렇게 얘기할 수 있고 보통 우리가 파이썬의 철학이다.
그래서 다른 프로그래밍 랭귀지와 비교했을 때 이러이러한 걸 추구한다.
이런 이것들이 명시된 분들이 있을 거예요. 대개 보면 한마디로 간결하고 이해하기 쉽게 표현한다 그런 의미들을 다 담고 있어요.
특히 머신러닝과 관련해서 예전에 우리가 머신러닝 데이터 마이닝 이런 걸 주로 수치 데이터를 가지고 다루던 시절에 또 많이 쓰던 통계학 과목에서 많이 쓰던 알이라는 언어도 있죠.
首先,由于大家都已经了解 Python,因此不需要详细介绍,我们将快速回顾一些核心部分。众所周知,这是一种高级编程语言,如你所见,是面向对象的、动态类型的、交互式的。下面还可以看到它支持过程式、面向对象和函数式编程。简单来说,它的最大特点是一种定义简洁、易于使用的语言,这就是 Python 的哲学。与其他编程语言相比,它追求这些特点。大多数情况下,它体现了用简洁明了的方式表达的意义。特别是在机器学习相关领域,在我们过去主要处理数值数据的机器学习和数据挖掘时代,统计学课程中经常使用的 R 语言也是如此。
Attendees 1 33:56
또 컴퓨터 하는 사람들이 주로 사용하는 c나 그런 프로그래머가 들도 있습니다.
그러다 이제 파이썬이 요즘은 머신러닝과 관련해서는 파이썬과 파이썬을 기반으로 하는 여러 라이브러리들이 대세로 사용되고 있습니다.
파이썬 이미 다들 뭐 설치해서 가지고 있겠지만 이 사이트에 가서 여러 정보들 확인하고 이제 다운받아 설치할 수 있고 특히 이제 기본적인 내용들을 전체적으로 한번 보고 싶다거나 아니면 특정한 함수에 대해서 확인하고 싶다거나 그럴 때 여기 다큐멘테이션 들어가면 파이썬 닥스 들어가면 히토리알이 있고 정리가 상당히 잘 돼 있는 것 같아요.
그래서 내가 전체적인 기본적인 내용들을 좀 보고 싶다거나 그럴 때도 이 튜터리어를 한번 보면 도움이 될 수 있을 것 같아요.
네 파이썬을 따로 다운받아 설치할 수도 물론 있고 보통 아나콘다 같은 패키지를 이용해서 설치하죠.
与会者 1 33:56 还有主要使用 C 或其他编程语言的计算机人员。现在,Python 在机器学习方面已经成为主流,基于 Python 的各种库正被广泛使用。大家可能已经安装了 Python,但可以前往该网站确认各种信息并下载安装。特别是,如果想查看基本内容或特定函数,可以进入 Python 文档,里面有很好的整理和说明。这个教程可能对了解整体基本内容很有帮助。当然,可以单独下载安装 Python,通常会使用 Anaconda 等软件包进行安装。
Attendees 1 35:04
여러분들도 아마 다 이걸 사용하지 않았을까 싶은데 오픈 소스 디스트리뷰션인데 파이썬 언어 자체와 그다음에 라이브러리 여러 가지 도구들을 함께 묶어서 여러분들이 다운받을 설치할 수 있게 돼 있는 거고 우리가 사용할 라이브러리들은 기본적인 행렬 연산을 하는 데 쓰는 넌 파이 그다음에 테이블 형태의 데이터들을 조작하기 위해 사용하는 판다스 그다음에 여러 가지 그래프나 이런 것들을 그리기 위해 사용하는 레터럴 라이브러리 그다음에 머신러닝의 여러 알고리즘들이 이제 구현이 돼 있는 사이키 라 이게 이제 대표적으로 우리가 사용하는 라이브러리 중에 하나죠.
이런 것들이 다 아나콘다가 포함돼 있어요. 그래서 여러분들이 아나콘다 사이트 가서 패키지 다운 받아서 설치하면 이걸 포함해서 다양한 도구들이 한꺼번에 PC에 설치할 수 있게 돼 있죠.
与会者 1 35:04 大家可能都使用过这个开源发行版,它将 Python 语言本身以及各种库和工具捆绑在一起,方便下载和安装。我们将使用的库包括:用于基本矩阵运算的 NumPy,用于处理表格数据的 Pandas,用于绘制各种图形的 Matplotlib,以及包含各种机器学习算法的 Scikit-learn,这些都是代表性的库。这些库都包含在 Anaconda 中。所以大家可以访问 Anaconda 网站,下载并安装软件包,一次性在电脑上安装这些工具。
Attendees 1 36:05
우리 실습 시간에 실습실에 PC들이 쭉 있고 여러분들이 개인 노트북을 사용하는 경우들도 많은데 나는 내 노트북으로 쓸 예정이다.
在我们的实践课程中,实验室里有一排 PC,许多人也会使用个人笔记本电脑,我打算使用我自己的笔记本电脑。
Attendees 1 36:18
거의 다 네 네 어쨌든 실습실 PC에도 여러분들이 쓸 수 있게 다 아마 준비는 돼 있을 거고 만약에 여러분들이 여러분들 노트북에서 직접 한다 그러면 아나콘다가 설치됐을 때 주피터 노트북이라는 게 아마 같이 들어 있을 거예요.
내일 실습 시간에 조교가 처음에 약간 설명을 하겠지만 주피터 노트북 웹 브라우저 상에서 여러분들 코드 작성하고 실행시키고 이런 거 할 수 있는 그런 도구고 여기서 아까 말한 것처럼 제공되는 코드 열어가지고 작성 요 각각의 셀이라고 하는데 이 부분에 여러분들이 코드를 작성하고 실행시키면은 이 결과를 이렇게 볼 수 있는 이런 형태로 요 상에서 여러분들이 다 코드 작성 실행 수정 여러 가지를 이제 하면 될 것 같고 혹은 뭐야 구글 콜 앱을 이용해서 할 수도 있습니다.
여러분 노트북에서 접속을 하든 PC에 접속을 하든 구글 콜 앱은 여러분들이 GPU를 쓸 수 있게 돼 있는 프리 클라우드 서비스다.
几乎都是的,实验室的电脑应该都已经准备好让大家使用。如果你们直接在自己的笔记本上操作,当安装了 Anaconda 后,很可能已经包含了 Jupyter Notebook。明天实践课上,助教会先进行简单的说明。Jupyter Notebook 是一个可以在网页浏览器上编写、运行代码的工具,就像之前提到的,你可以打开提供的代码,在每个单元格中编写和运行代码,并查看运行结果。或者,你还可以使用 Google Colab 应用。无论是在你的笔记本还是实验室电脑上,Google Colab 都是一个可以让你使用 GPU 的免费云服务。
Attendees 1 37:39
이렇게 생각 여기서 여러 가지 라이브러리들을 포함해서 코드를 실행시켜볼 수가 있고 구글 드라이브에서 폴더 만들고 제공되는 파일 업로드한 다음에 구글 콜랩을 연결해가지고 그러면 이제 여기 있는 것처럼 이 역시 셀 안에 이렇게 여러 코드를 작성하고 실행시켜서 들어가 볼 수가 어 이걸 기본적으로 쓰면 되는데 나중에 우리가 후반부에 가서 딥러닝 모델들을 이제 학습하는 그런 과정을 진행하다 보면 시간이 많이 걸리는 부분들이 있을 수 있어요.
파라미터 굉장히 많은 큰 모델을 학습한다면 그런 경우에는 시간이 많이 걸리니까 콜레 을 이용해서 여기서 GPU를 활용해가지고 실행시키는 것이 훨씬 더 빠른 경우도 있을 수 있습니다.
참고로 알고 있으면 될 것 같고 나중에 필요에 따라서 조교가 이제 어떤 방식으로 하라 하는 것을 이야기를 할 거예요.
参与者 1 37:39 这样可以包括多个库来执行代码,并在 Google 云盘中创建文件夹,上传提供的文件,然后连接 Google Colab。那么就像这里一样,可以在单元格中编写和执行多种代码。这是基本用法。但是在后半部分学习深度学习模型时,可能会有一些耗时的部分。如果学习参数非常多的大型模型,可能会花费很长时间。在这种情况下,使用 Colab 并利用 GPU 执行可能会更快。记住这一点,以后根据需要,助教会告诉你具体的操作方式。
Attendees 1 38:47
네 여기 뭐 이런 기본적인 사항들을 정리를 쭉 해놨는데 그냥 빠르게 가겠습니다.
파이썬에서 코멘트는 기본적으로 이렇게 하죠. 앞에 샵을 쓰게 되면 이 라인 전체가 이제 코멘트가 되는 거고 혹은 멀티 라인의 코멘트는 이렇게 포테이션 3개를 연달아 쓰게 되면 그 사이에는 이게 코멘트죠.
그래서 보통 이거는 여러 라인에 걸쳐서 요 지금 프로그램이 무슨 일을 하는 프로그램이고 언제 누가 작성한 거고 이런 식의 다큐멘테이션을 하는 용어로 많이 쓰는 거고 두 가지 코멘트를 작성하는 방법이 있어 네 상수는 넘버 넘버는 인티저가 있고 이 소수점으로 표현되는 리얼 넘버가 있고 스트링은 번 싱글 혹은 더블 커테이션으로 이렇게 둘러싸여 있는 부분이 이제 스트링 컨스턴트가 있고요.
스트링 컨스턴트 같은 경우에는 이렇게 숫자들의 연산처럼 플러스 이런 거를 쓸 수 있게 돼 있죠.
参与者 1 38:47 是的,这里总结了一些基本事项,我们快速浏览一下。在 Python 中,注释基本上是这样的。在前面加井号,整行就成为注释。或者对于多行注释,连续写三个引号,在它们之间的就是注释。通常这用于记录程序的功能、创建时间、作者等文档说明。这里有两种注释方式。常量包括数字、整数,还有用小数点表示的实数,字符串则用单引号或双引号括起来。对于字符串常量,可以像数字运算一样使用加号等操作。
Attendees 1 40:01
그래서 플러스 하게 되면 이 두 개가 연결되는 스트링을 만들어주는 거고 네 그 밖에 투로 폴스 같은 로지컬 컨스턴트 그다음에 이제 여러분들이 제공되는 코드에서 숱하게 이제 보게 될 이 난이 있습니다.
이 난은 비어 있는 것을 뜻하는
所以当你使用加号时,会创建连接这两个的字符串。然后是诸如真假(true/false)这样的逻辑常量,接下来你们在提供的代码中会经常看到这个空值,这个空值表示
Attendees 1 40:26
변수들을 여러분들이 이제 정해서 쓰게 될 텐데 c 같은 언어와 달리 파이썬에서는 변수를 사용할 때 미리 선언할 필요가 없죠.
c 같으면 이런 걸 하기 위해서는 인티저 x 이렇게 선언하거나 사용해야 되는데 탄소는 그냥 이렇게 x는 20 이래버리면 자기가 알아서 x는 점수군 이렇게 이제 설정을 하게 됩니다.
미리 선언할 필요 없고 변수의 이름은 문자와 그다음에 숫자 그다음에 언더스코어 이 세 가지를 조합해서 이름을 정해서 쓰면 되고 그런데 넘버로 시작해서는 안 된다.
与 C 语言不同,在 Python 中使用变量时不需要预先声明。在 C 语言中,你需要这样声明一个整数,比如"integer x",而在 Python 中,你只需要写"x = 20",它会自动将 x 设置为数值。变量名可以由字母、数字和下划线组合,但不能以数字开头。
Attendees 1 41:16
그래서 이런 식으로 x는 20 y는 30 g는 x 플러스 y 하면은 g는 이제 계산 결과 50으로 값이 설정될 거고 그럼 자동적으로 점수 형 변수가 되는 거죠.
어떤 변수나 객체를 쓰든지 간에 여러분들이 프로그램 코드 중간에 이게 뭐더라 확인하려면 아니면 이게 뭐가 될지 타입을 쓰면 되죠.
그러면 여기 있는 것처럼 이거는 인티저 타입 혹은 스트링 타입 이런 것들이
所以像这样,x 是 20,y 是 30,g 是 x 加 y,那么 g 的计算结果将被设置为 50,这样它就自动成为一个浮点型变量。无论你使用什么变量或对象,如果你想在程序代码中间确认它是什么,或者想知道它的类型,你只需写出类型即可。就像这里一样,这是整数类型或字符串类型等
Attendees 1 41:53
이제 밑에 스트링 타입도 있듯이
现在,就像下面的字符串类型一样
Attendees 1 41:59
네 어느 프로그래밍 언어나 조건에 따라서 분기하는 거 반복적인 실행을 하는 거 이런 걸 정리하는 문법이 있겠죠.
파이썬에서는 조건 이기는 이프를 쓰고 이프 다음에 조건을 쓰고 콜론을 쓰면 이 조건이 참인 경우에는 다음 스테이트먼트를 진행하고 아니면 진행하지 않고 이런 거죠.
无论在哪种编程语言中,都会有根据条件进行分支和重复执行的语法。在 Python 中,使用 if 来表示条件,在 if 后面写条件,并用冒号结束。如果条件为真,则执行下一个语句;如果不是,则不执行。
Attendees 1 42:30
2개로 분기하는 경우에는 ef 그다음에 그것이 아닌 경우에는 뭘 해라 이런 경우는 LS를 쓰게 돼 있고 3개 그 이상 분기한다면 l3 e2에 해당하는 엘리트를 쓸 수가 있습니다.
여기서는 왜 3개로 분비하겠죠. x 값이 뭐냐에 따라서 10보다 작은 경우에 뭘 하고 그다음에 그게 아니면 또 100보다 작으면 뭘 하고 그것도 아니면 마지막 LS에 해당하는 걸 이제 진행하게 될 네.
x 값은 여기 인티저 인풋 이렇게 설정돼 있는데 인풋은 키보드에서 값을 받는 함수고 앞에 인트는 뭐냐면 받은 값을 정수형으로 변환하는 거죠.
이렇게 한 줄 쓰면 키보드에서 점수 값을 하나 받아서 그다음에 진행한다.
네 이 풋뿐만 아니라 다른 것들이 다 콜론 한 다음에 그다음에 이런 것들을 실행해라고 할 때 이런 블록이 씨 같으면은 이렇게 명시적으로 중괄호로 블록을 설정하게 돼 있는데 파이썬은 여기 인벤트를 주게 돼 있죠.
이만큼 떨어진 부분이 똑같이 이렇게 들어가 있는 게 하나의 볼록을 이루게 돼 있습니다.
对于两种分支情况,使用 elif,对于不是该情况的,使用 else。如果是三个或更多分支,则可以使用多个 elif。这里为什么要分三种情况呢?根据 x 的值,当小于 10 时执行某些操作,如果不是,那么当小于 100 时又执行其他操作,如果都不是,则执行最后的 else 部分。这里的 x 是整数输入,input 是从键盘接收值的函数,前面的 int 是将接收到的值转换为整数类型。这样写一行代码就可以从键盘接收一个分数值,然后继续执行。与 C 语言不同,Python 中不需要用大括号显式设置代码块,而是通过缩进来划分。缩进相同的部分构成一个代码块。
Attendees 1 43:51
그래서 여러분들이 어떤 에디터를 쓰든지 간에 대부분 콜론 뒤에 엔터를 치게 되면 알아서 인벤트 딱 돼서 줄 맞춤 알아서 해주는데 물론 여러분들이 스페이스 바를 쳐서 맞춰서 이렇게 할 수도 있는 거고 밑에 써 있는 참고는 경우에 따라서 이걸 탭으로 맞추는 경우에 문제가 생길 수도 있으니까 그런 거 하지 마라.
无论您使用什么编辑器,大多数情况下,在冒号后按回车键都会自动缩进,自动对齐。当然,您也可以通过按空格键来手动对齐。请注意,在某些情况下,使用制表符对齐可能会导致问题,因此不建议这样做。
Attendees 1 44:20
반복을 하는 건 와일이 있고 4가 있죠. 그래서 와일는 키워드 와일 쓰고 조건 쓰고 콜론 한 다음에 블록이 이렇게 들어가게 되면 이 부분을 계속 반복하라는 거죠.
조건이 맞는 동안 여기 있는 건 n 값이 o인데 n이 0보다 크면 반복해라 하는 거고 뭘 반복하냐 하면 n 값을 출력하고 n을 하나 줄이기 5 4, 4 21까지 프린트가 끝나게 되겠죠.
조건을 우리가 이렇게 쓸 수도 있습니다. 여기 보면 투로 이거는 이제 로지컬 컨스턴트 미리 정의돼 있는 상수죠.
이 조건은 n 값이 뭐냐에 따라서 왼쪽에 있는 경우는 참이냐 거짓이냐가 되는데, 네 이건 아예 3이라는 값을 조건에 줘버렸으니까 이건 무한 반복이죠.
그래서 아래에 있는 걸 무한히 계속 반복하게 되는 거고 대신 이건 안에 어떤 조건일 때 중단하라는 브레이크 스테이트 가 들어가 있습니다.
이런 형태로 반복문을 작성하는 것도 이제 흔히 왼쪽과 똑같은 결과를 얻게 됩니다.
反复执行有 while 和 for 两种方式。使用 while 关键字,然后写条件,加上冒号,接着缩进代码块,这意味着在条件成立期间重复执行这部分代码。例如,当 n 值为 0 时,只要 n 大于 0 就重复执行,打印 n 的值并减小 n,最终会打印 5、4、3、2、1。我们还可以这样写条件。这里的 True 是预定义的逻辑常量。条件的真假取决于 n 的值,但如果直接给出 3 作为条件,这将是无限循环。在这种情况下,代码块将无限重复,但通过使用 break 语句可以在特定条件下中断循环。这种形式的循环通常可以得到与之前相同的结果。
Attendees 1 45:38
여기는 n 값을 받는 부분이 있어요. 여기 뭐가 하나 더 확실
这里有一个接收 n 值的部分。这里还有一些确定的内容。
Attendees 1 45:47
네 제일 흔하게 쓰이는 건 포문을 우리가 많이 쓰죠.
파이썬에서의 포문은 4 변수인 형태로 보통 쓰이고 어떤 식의 반복이냐 하면 주어진 시퀀스의 포함돼 있는 아이템들을 차례차례 가지고 와서 뭔가를 시행하는 그런 담보물이죠.
그래서 여기에 보면 마일리스트라는 이름의 리스트가 이렇게 정의돼 있고 리스트 바로 뒤에 뭐냐 설명이 나와 있는데 여기는 10개의 점수를 멤버로 갖는 순서가 있는 시퀀스 10개의 정수의 묶음이죠.
이걸 우리가 리스트라고 얘기하고 이 포문은 이 리스트에서 하나씩 가져와서 그걸 아라고 하고 거기에 대해서 뭔가를 이제 반복해서 실행한다 그런 뜻이죠.
그래서 여기 토탈이라는 게 처음에 0인데 얘가 반복해서 하는 건 처음 거 가져와서 더하고 두 번째 가져와서 더하고 세 번째 가져서 더 하고 해서 마지막 엘리먼트까지 차례차례 더 하는 그런 방법을 수행하는 거죠.
답이 55고 네 만약에 내가 1부터 천까지 더하고 싶으면 이거를 쭉 다 나열해야 되냐 그럴 필요 없죠.
是的,我们通常最常用的是 for 循环。在 Python 中,for 循环通常以 4 个变量的形式使用,它的重复方式是逐个获取给定序列中的项目并执行某些操作。在这里,我们可以看到一个名为 mylist 的列表被定义,紧接着是对它的描述。这是一个包含 10 个分数的有序序列,即 10 个整数的集合。我们称之为列表,这个 for 循环会从列表中逐个取出元素,赋值给 a,然后对其进行重复执行。所以这里的 total 最初是 0,它的操作是先取第一个元素并加上,然后取第二个元素并加上,以此类推,直到最后一个元素。答案是 55。如果我想从 1 加到 1000,就不需要把所有内容都列出来。
Attendees 1 47:06
그렇죠 연속적인 값의 리스트를 만들어주는 레인지 같은 함수를 쓰면 되는데 레인지는 뒤에 이제 숫자를 주면 0에서부터 그 숫자 마이너스 1까지 n개의 엘리먼트를 갖는 리스트를 만들어주면 되죠.
네 그러면 레인지 텐은 0부터 9까지 됐지 똑같이 반복만 4i 레인 텐 그러면 이걸 하나씩 가져와서 뭔가 스테이트 미트를 실행하는 게 되겠습니다.
对的,使用类似范围这样的函数来创建连续值的列表,范围函数后面跟数字的话,会从 0 开始到该数字减 1,创建一个具有 n 个元素的列表。是的,那么 range(10)就是从 0 到 9,同样的重复 4 次,range(10),然后逐个获取并执行某些状态语句。
Attendees 1 47:45
네 펑션은 데피니션 한다고 해서 데프라는 키워드를 가지고 우리가 펑션을 정의하죠.
데프 하고 펑션에 이름 주고 그다음에 넘겨줄 파라미터 부위를 명시하고 그러고 나면 역시 인벤트 된 다음에 스테이트먼트들이 쭉 나오고 마지막에 리턴 해서 리턴하는 값을 정의하는 이런 형태로 펑션이 정의가 됩니다.
이걸 사용할 때는 펑션의 이름 주고 파라미터 명시하면 되는 거고 요 얘는 킬로미터로 숫자를 주면 그다음에 나누기 1.6을 하면 그게 마일이 되니까 몇 마일이다를 계산하는 그런 함수를 작성하면 돼요.
한 줄짜리 함수.
是的,使用 def 关键字来定义函数。def 后面跟函数名,然后指定要传递的参数,接着定义缩进的语句,最后用 return 定义返回值。使用时只需调用函数名并传入参数。例如,这个函数接收公里数,然后除以 1.6 计算英里数,可以写成一行代码的简单函数。
Attendees 1 48:39
네 이제 파이썬에서 사용하는 소위 컨테이너라고 얘기하는 데이터들을 묶은 것들의 표현들이 있죠.
그래서 네 가지가 나올 텐데 우선 첫 번째는 오더드 시퀀스인 리스트입니다.
리스트는 이런 대괄호 안에 데이터들을 콤마로 쭉 구분해서 넣어줄 거고 예를 들면 옆소 프롯이라는 리스트를 내가 설정을 하는데 그 안에는 스트링들이 차례차례 들어가 있는 물론 정수가 들어갈 수도 있고 여러 가지 데이터 타입에 이게 들어갈 수가 있는데 애플 바나나 오렌지 세 가지가 들어가 있는 리스트 리스트는 이렇게 직접 리스트의 내용과 함께 설정할 수도 있고 혹은 리스트라는 함수를 가지고 mt 리스트를 우선 설정하고 그다음에 필요한 엘리먼트를 채워 넣을 수도 있습니다.
엘리먼트를 채워 넣는 건 어펜드라는 메소드를 쓰죠.
现在,我们来讨论在 Python 中使用的所谓容器,即数据的集合表示方式。总共会有四种,首先是有序序列列表。列表是在方括号内用逗号分隔放置数据,例如,我设置一个名为"水果"的列表,其中可以包含字符串,当然也可以包含整数和其他各种数据类型。比如,这个列表包含苹果、香蕉、橙子三种水果。可以直接设置列表内容,也可以先使用 list()函数创建一个空列表,然后使用 append()方法添加元素。
Attendees 1 49:40
그래서 만약에 프롯이 이렇게 설정돼 있는데 키위라는 걸 어펜드 하게 되면 처음에 리스트는 이렇게 3개가 들어가 있는 거고 여기에 추가로 엘리먼트가 들어가는 그런 리스트를 만들게 리스트 안에 각각의 엘리먼트를 억세스하는 거는 인덱스를 가지고 하는 거예요.
0 1, 2 3 차례대로 0부터 숫자가 구현돼 있듯이 각 엘리먼트의 위치를 나타내는 거고 예를 들어 플로 제로 하게 되면 애플 그럼 뭘 하겠냐면 바나나
因此,如果"水果"列表已经设置好,现在想要追加"猕猴桃",最初的列表有 3 个元素,通过追加,列表将增加一个新的元素。要访问列表中的各个元素,是通过索引来实现的。从 0 开始依次编号,表示每个元素的位置。例如,如果使用 fruit[0],将获得"苹果",那么 fruit[1]就是"香蕉"。
Attendees 1 50:19
네 리스트 안에 연속된 어떤 부분을 우리가 선택하기 위해서 인덱스를 지정할 수도 있는데 콜론을 사용해서 n 콜론 m 그러면 인덱스 n부터 m 하나 전까지의 위치를 의미하는 거고 그래서 예를 들면 이게 이런 인덱스를 갖는 5개의 지금 엘리먼트가 있는 리스트인데 1 콜론 3 이렇게 하게 되면 0에서 1에서 3 직전까지 이만큼을 네 콜론의 왼쪽이 비어 있으면 처음부터 오른쪽이 비어 있으면 끝까지 나타내는 거예요.
그렇죠
对于列表中的连续部分,我们可以使用冒号来指定索引。如果是 n:m,那么表示从索引 n 到 m 之前的位置。例如,对于一个有 5 个元素的列表,使用 1:3 意味着获取从索引 1 到索引 3 之前的部分。如果冒号左侧为空,则表示从开头开始;如果冒号右侧为空,则表示一直到结尾。
Attendees 1 51:06
리스트를 파라미터로 쓰는 여러 함수들이 있어요.
그래서 예를 들면 여기 n 이렇게 하면 랭스 그래서 리스트의 길이 같은 의미죠.
리스트 안에 엘리먼트의 개수 를 카운트하는 거고 함수 맥스 그러면 이 리스트 안에 있는 것 중에 가장 최대값을 찾는 함수고 이런 것들이 있습니다.
또 리스트에 정의돼 있는 여러 메소드들이 있는데 예를 들면 소츠 같은 것들은 리스트 엘리먼트를 크기 순서로 오른 차 순으로 순서를 이렇게 바꾸는 역할을 하는 메소드죠.
역순으로 하려면 어떻게
有许多函数可以使用列表作为参数。例如,使用 len() 可以获取列表的长度,即列表中元素的数量;max() 函数可以找出列表中的最大值。列表还有许多内置方法,比如 sort() 方法,它可以按照升序对列表元素进行排序。如果要降序排序,该如何操作?
Attendees 1 51:54
이 리스트를 50 40 30 이렇게 역순으로 정렬하려면 그때 사용하는 메소드 역시 아니면 인덱스를 어떻게 한다든지 리볼스라는 메소드가 있을 거예요.
그런 식으로 다양한 메소드들이 있어 네 리스트를 만들 때 우리가 리스트 컴프레션이라는 좀 축약된 표현을 사용하는 경우가 있죠.
리스트 컴프레션은 뭐냐 하면 리스트를 만들 때 이미 있는 어떤 리스트를 이용해서 새로운 리스트를 만드는데 이걸 축약된 표현으로 쓸 수가 있는 있다는 건데, 예를 들면 우리가 0에서 100까지의 수들이 쭉 나열된 리스트를 만들고 싶으면 기본적인 건 이런 거죠.
반복문을 써서 0에서 100까지 있는 모든 숫자 중에 2로 나눠서 나머지가 0이 그게 짝수죠.
그런 것들은 특정한 리스트에 이제 어펜드를 해라 이렇게 하면 이런 리스트가 만들어진 거예요.
그죠? 이런 걸 컴프레션 축약된 표현으로 이렇게 표현할 수 있다는 거죠.
이분 넘버라는 리스트를 내가 정의하는데 이건 아이다.
听众 1 51:54 如果要将这个列表反向排序为 50 40 30,那时可能会使用某个方法,或者以某种方式处理索引,比如有一个叫做"reverse"的方法。这样就有了各种各样的方法。当我们创建列表时,我们经常使用一种叫做列表推导式的简化表达方式。列表推导式是什么呢?就是在创建列表时,利用已有的某个列表来创建新的列表,并可以用简化的表达方式来实现。例如,如果我们想创建一个包含 0 到 100 的数字的列表,基本方法是这样的:使用循环遍历 0 到 100 的所有数字,其中可以被 2 整除的数字(即偶数)加入到特定的列表中。这就是通过 append 方法创建这样的列表。对吧?这就是可以用简化表达方式(推导式)来表达的方法。
Attendees 1 53:16
어떤 아이냐 하면 어떤 기존의 리스트 레인지 1001이라는 그럼 이게 0부터 100까지의 정수를 담은 리스트가 될 텐데 거기서 반복적으로 아이를 꺼내와서 만든다.
뒤에 이런 조건문 같은 게 같이 붙을 수도 있고, 그러면 여기에 아예 2분 넘버를 내가 만들 때 리스트 안에 이런 한 줄짜리 표현을 써서 리스트를 정의할 수도 있다는 거죠.
听众 1 53:16 这个方法是什么呢?就是使用现有的列表 range(1001),这样就会得到一个包含 0 到 100 的整数的列表。然后重复地从中提取元素来创建。后面还可以附加类似条件语句的东西。也就是说,在定义二进制数列表时,可以直接在列表中使用这种单行表达式来定义列表。
Attendees 1 53:49
두 번째는 딕셔너리가 있습니다. 딕셔너리는 아까 오더드 시퀀스라고 그랬는데 이 언 오더드 셋인데 키와 밸류 페어로 돼 있는 것들의 집합 그래서 이건 중괄호로 이렇게 표현하고 콤마로 연결된 이런 것들을 명시해서 이런 패러들의 집합이 딕셔널이라는 거죠.
그래서 예를 들면 리스트는 아까 이렇게 한다 그랬고 딕셔너리는 워드 카운트라는 이름의 내가 딕셔너리를 정의하겠다.
중괄호 안에 이렇게 의미하면 요 앞에 있는 걸 키 뒤에 있는 걸 밸류라고 합니다.
그래서 레드라는 것의 값은 30이다. 블루라는 것의 값은 10이다.
옐로우라는 것의 값은 20이다 이런 것을 의미하는 거죠.
네 리스트 mt 리스트를 만드는 리스트라는 함수가 있는 것처럼 mt 딕셔널을 만드는 디트라는 함수가 있고 리스트에는 새로운 걸 어펜드해서 추가할 수 있다고 그랬죠.
딕셔너리는 네 그 전에 이걸 얘기해야 되겠네. 리스트에서는 특정한 엘리먼트를 억세스하기 위해서 인덱스를 썼어요.
出席者 1 53:49 第二个是字典。字典是之前说的有序序列,但这是一个无序集合,由键值对组成。因此,它用大括号表示,并用逗号连接这些对。例如,列表是这样创建的,而字典是这样定义的,比如名为"word_count"的字典。大括号内的前面是键,后面是值。例如,红色的值是 30,蓝色的值是 10,黄色的值是 20。就像有创建列表的 mt 列表函数一样,也有创建字典的 mt dict 函数。在列表中可以通过 append 添加新元素,而在字典中,可以通过指定特定键的值来添加新的键值对。
Attendees 1 55:14
그래서 여기 있는 것처럼 푸르제로 푸른 원 그런 인덱스를 썼고 반면에 딕셔너리는 키 값을 주고 밸류를 억세스하는 형태로 우리가 사용을 하는 거 그래서 워드 카운트 제로 원이 아니라 워드 카운트 레드 레드에 해당하는 값은 뭐냐를 얘가 억세스하는 거고 워드 카운트 블루 그럼 블루에 해당하는 값은 뭐냐 이 억세스하는 거 네 그다음에 리스트는 새로운 걸 추가하기 위해서 어펜드를 사용했는데 딕셔너리에서는 특정 키 값이 밸류가 뭐다라고 지정하면 이게 바로 새로운 페어가 이슈에 추가
出席者 1 55:14 所以,与列表使用索引来访问特定元素不同,字典是通过键值来访问值。例如,在 word_count 中,不是使用索引 0 或 1,而是使用"red"来获取红色对应的值,或使用"blue"来获取蓝色对应的值。与列表使用 append 添加新元素不同,在字典中,只需指定特定键的值,就可以直接向字典中添加新的键值对。
Attendees 1 56:03
그래서 두 개 헷갈리는데 비교를 하자면 리스트는 이렇게 생성하고 딕셔너리는 이렇게 생 리스트는 뭔가를 추가할 때 어펜드 해서 이렇게 추가하고 딕셔너리에 뭔가를 추가할 때 키에 대한 밸류가 뭔지를 지정하면 이렇게 추가되는 억세스 할 때 쟤는 인덱스를 가지고 하고 딕셔너리는 키를 가지고 억세스를 하는 거죠.
所以在这两个容易混淆的对象中,如果进行比较,列表是这样创建的,而字典是这样创建的。列表在添加内容时使用 append 方法进行添加,而字典在添加内容时需要指定键对应的值。访问列表时使用索引,访问字典时使用键。
Attendees 1 56:35
네 이 두 개가 항상 사용되는 형태고 그 외에 두 가지는 우선 튜플이라는 게 있죠.
튜플은 요런 괄호 안에 키와 밸류가 페어로 들어 있는 것을 말하고 이거는 우리가 새로운 자료를 쓰고 지우고 변경하고 이런 게 아니라 바뀌지 않는 그런 이런 페어들을 우리가 저장할 때 사용할 게 대표적으로는 딕셔너리에 있는 각각의 페어들을 가져올 때 아이템이라는 메소드를 쓰게 되면 티플 형태로 데이터를 가져오는 걸로 돼 있습니다.
그래서 예를 들면 여기 딕셔너리를 내가 이렇게 만들었다.
딕셔너리 만들면 이게 이제 우리가 작성한 딕셔너리가 될 거고
是的,这两种是经常使用的形式。除此之外,还有一种是元组。元组是放在括号里的键值对,它主要用于存储不需要添加、删除或修改的数据对。典型的例子是在使用字典的 items 方法时,会以元组的形式返回数据。例如,当我们创建一个字典时,这就是我们编写的字典。
Attendees 1 57:31
그다음에 미션너리의 아이템즈라는 메소드를 쓰게 되면 이런 페어들이 있습니다라는 걸 q 풀들의 리스트로 가져오는 거죠.
그래서 딕셔너리의 키 밸류들을 내가 가져올 때는 흔히 쓰는 형태는 이렇게 포문을 써서 딕셔너리의 아이템즈 메소드로 리스트를 만든 다음에 각각의 튜플들을 차례차례 억세스하는 방식으로 그러면 이 밑에 있는 것처럼 탐의 값은 1 2 3 4 전의 값은 5 6 7 8 이런 식으로 억세스를 할 수가 있는 거.
接下来,当使用 missionaries 的 items 方法时,会出现这样的对,然后可以得到 q 解的列表。所以当我要获取字典的键值对时,常用的方法是使用 for 循环,通过字典的 items 方法创建列表,然后依次访问每个元组。这样,就可以像下面这样访问 Tom 的值是 1 2 3 4,之前的值是 5 6 7 8。
Attendees 1 58:16
네 마지막으로 셋은 이런 중괄호 안에 아이템들이 이렇게 나열된 거고 이 집합을 나타내는 거죠.
마찬가지로 셋 이렇게 해서 이니셜 라이즈 할 수 있고 셋은 집합이라는 거는 이렇게 중복되는 엘리먼트가 없어요.
그래서 만약에 이런 리스트를 우리가 설정한 다음에 이걸 셋으로 변환하게 되면 결과는 이렇게 엘리먼트는 세 가지만 있는 거예요.
1과 2와 3 리스트로부터 셋이라는 함수를 써서 이렇게 집합을 설정할 수가 있고 집합이 설정되면 집합 연산들을 수행할 수가 있는 거죠.
이거는 교집합 이거는 합집합 이런 기호 오퍼레이터나 혹은 메소드를 써서 직감 연산을 수행할 수 있습니다.
最后,集合是用大括号括起来的项目列表。同样,可以这样初始化集合。集合就是指没有重复元素的集合。例如,如果我们设置了这样一个列表,然后将其转换为集合,结果将只有三个元素:1、2 和 3。我们可以使用 list 函数来设置集合,一旦设置了集合,就可以执行集合运算。这可以通过交集、并集等符号运算符或方法来执行集合运算。
Attendees 1 59:16
네 이런 것들을 우리가 컨테이너라고 얘기하고 리스트 딕셔너리 티플 셋 특히 리스트와 딕셔너리를 우리가 이제 계속 사용할 거니까 그 내용들을 알고 있어야 될 것 같고 네 파일을 다루는 경우들도 있는데 파일은 가장 기본적인 방법은 우리가 오픈 함수를 써서 파일을 열고 파일을 열면 이제 파일 핸들이라는 걸 얻게 되는데 이 파일의 핸들이 파일 안에 각각의 라인들의 시퀀스를 의미하게 됩니다.
그래서 파일 핸들을 얻은 다음에 포문을 써서 각각의 라인 을 읽을 때마다 카운트를 이렇게 하나씩 늘려나간다면 최종적으로 이 파일 안에 몇 개의 라인이 있는지 이런 걸 확인할 수가 있을 테고 네 마찬가지로 오픈해서 파일 핸들을 얻은 다음에 위드 같은 메소드를 쓰게 되면 이 안에 내용을 그대로 읽어오는 거죠.
好的,我们称这些为容器,像列表、字典、元组、集合,特别是列表和字典,我们将持续使用,所以需要了解这些内容。在处理文件时,最基本的方法是使用开放函数打开文件,打开文件后会获得一个文件句柄,这个文件句柄代表文件中每一行的序列。因此,获得文件句柄后,如果使用 for 循环在每次读取一行时计数,最终就可以确认文件中有多少行。同样,打开文件获得文件句柄后,使用 with 等方法可以直接读取文件内容。
Attendees 1 1:00:17
m 파일이라는 것이 이 파일의 내용 샘플 점 TXT라는 내용을 담고 있게 되는 스프링으로 그래서 예를 들면 랭스 이런 걸 쓰게 되면 이 파일 안에 내용의 전체 길이가 얼마인지 이렇게 확인할 수가 있겠죠.
假设有一个文件,内容是 sample.txt 字符串。例如,使用 len 这样的方法可以确认文件内容的总长度。
Attendees 1 1:00:38
마지막으로 어떤 객체 객체는 속성 값과 그다음에 그 객체로 가지고 수행할 수 있는 어떤 함수들입니다.
모아놓은 것이 객체라고 볼 수가 있는데 클래스를 이용해서 객체를 우리가 선언하고 그다음에 인스턴스를 생성하고 할 수가 있죠.
여기 보면 새로운 이름의 클래스를 내가 이렇게 정의한 부분이고 df라고 돼 있으니까 함수들을 설정하는 걸 텐데 그 함수들을 각각의 이 클래스의 메소드라고 얘기하고 그중에서 이닛 메소드에는 보면 이 안에 어떤 에티유비트 밸류들이 설정될 수 있는가를 이렇게 나타낼 수가 있어요.
여기 나와 있는 것들을 이 객체 에티유티라고 얘기하죠.
最后,对象是具有属性值和可以对该对象执行的一些函数的集合。这可以被视为一个对象,我们可以使用类来声明对象,然后创建实例。在这里,您可以看到我定义了一个新名称的类,df 似乎是用于设置函数,这些函数被称为该类的方法。在初始化方法中,可以设置一些属性值。这里列出的被称为对象的属性。
Attendees 1 1:01:29
그 중에서 특히 셀프라고 돼 있는 것은 이 클래스로 객체를 만들면 자기 자신을 의미하는 네 그럼 이렇게 새로운 파라는 객체의 형태를 이렇게 정의하고 나면 이 에티리뷰트 그다음에 이 메소드를 써서 내가 어떤 일들을 할 수가 있는데 예를 들면 새로운 오브젝트를 생성하는 것은 카 클래스 네임을 쓰고 거기 속성 값들을 줌으로써 어떤 특정한 카 오브젝트를 내가 생성할 수 있는 거죠.
그리고 나면 각각의 액티비트 값들은 이렇게 점 하고 액티비티 네임에서 우리 억세스 할 수 있고 그리고 나면 메소드를 써서 그 인스턴트의 특정한 함수를 실행하도록 만들 수 있습니다.
네 뒤에 우리가 초반에는 우리가 주로 다루는 라이브러리로 어떤 라이브러리를 써서 프로그래밍을 하는 부분이 이쪽에는 진행이 될 텐데 초반에는 라이브러리 없이 그냥 특정한 알고리즘을 구현하거나 할 때는 이런 클래스 형태로 그 코드를 작성하는 부분들이 있을 거예요.
네 여기까지 해서 우선 파이썬에 대해서 한번 기본적인 내용은
其中,特别是 self,当使用这个类创建对象时,它指的是对象本身。当您以这种方式定义新的对象形式后,可以使用这些属性和方法执行某些操作。例如,通过使用类名并提供属性值,可以创建特定的对象。然后,可以通过点和属性名称访问各个属性值,并通过调用方法来执行该实例的特定函数。在课程的前期,我们主要将处理库和编程,但在初始阶段,当实现特定算法时,可能会使用这种类的形式来编写代码。以上就是关于 Python 的基本内容。
Attendees 2 1:03:00
잠깐 갔다 시다. 시간이 조금 지났는데 한
与会者 2 在 1:03:00 短暂离开。时间已经过去一段时间了
Attendees 1 1:03:03
5분 잠깐 쉬었다가 나머지 라이브러리들을 또 빠르게 한번
与会者 1 在 1:03:03 建议休息 5 分钟,然后快速查看剩余的库
Attendees 2 1:03:07
보도록 하겠습니다.
请让参会者 2 在 1:03:07 继续
Attendees 1 1:03:09
5분 후에 다시 들어갈게요.
参会者 1 将在 5 分钟后返回
Attendees 2 1:04:09
이거 바꿔서 생각하면 거지
与会者 2 1:04:09 如果改变这个想法,那就是乞丐
Attendees 2 1:06:06
같이 있는 사람 중에 뒤에 있는 사진이 그거 들어가지고 만약에 되게 한 명으로 주면 빠져준다 했는데 심지어 그 아는 애 중에 통계학과 이 중에 듣는 애 있거든요.
그래서 내가 걔만 찍히면 되는데 빠져달라고 하니까 제발 너 좀 나가주면 안 되겠니 미치겠네
与会者 2 1:06:06 在一起的人中,后面的照片进去了,如果给一个人的话就会退出。而且我认识的人中,统计学专业的人正在听这个课。所以我只希望拍到他,但是请求他离开,我说:求求你,你能不能出去,快把我逼疯了
Attendees 2 1:07:02
에서 쏙 들어가 아는 게 없으시구나
从参会者 2 的 1:07:02 来看,你似乎对此一无所知
Attendees 2 1:07:44
누구
参会者 2 的 1:07:44 说的是谁
Attendees 2 1:08:11
이거
与会者 2 1:08:11 这个
Attendees 1 1:09:50
자 다시 볼까요?
与会者 1 1:09:50 好的,我们再看一遍?
Attendees 1 1:10:09
우리가 이제 한 학기 동안 쓸 라이브러리 한 세 가지 정도의 아주 기본적인 꼭 머신러닝과 상관 상관이 있다고 보기는 어렵고 일반적으로 우리가 사용하는 세 가지 라이브러리가 있고 그다음에 머신러닝에 관련된 두 가지 라이브러리가 있습니다.
우선 첫째는 넌 파이죠 넌 파이는 네 여기 사이언티피 컴퓨테이션을 위한 라이브러리다 이렇게 써 있는데 어떤 사이언티피 컴퓨테이션을 말하는 거냐 한마디로 행렬 연산을 쉽게 수행하기 위해서 사용하는 라이브러리입니다.
얘네들은 멀티 디맨저널 어레이 이렇게 표현을 하고 예 뭐죠?
벡터 행렬
参与者 1 1:10:09 现在我们将使用三个非常基本的库,与机器学习并没有太大关系,但通常我们会使用这三个库,然后还有两个与机器学习相关的库。首先第一个是 NumPy,NumPy 是用于科学计算的库,具体是什么科学计算呢?简单来说,是为了轻松执行矩阵运算而使用的库。它们用多维数组这样的表达方式,是的,什么来着?向量、矩阵
Attendees 1 1:11:00
행렬의 행렬 그러면 3차원에
参与者 1 1:11:00 矩阵的矩阵,那么在三维中
Attendees 1 1:11:09
1차원, 2차원 3차원 혹은 그 이상 4차원 5차원 정리를 할 수 있어요.
이렇게 정의되어 있는 데이터를 가지고 여러 가지를 할 수 있도록 돼 있는 거 그래서 우리가 선형 대수에서 다루는 여러 가지 프리엔 트랜스포 기타 랜덤 넘버를 가지고 뭘 하는 이런 다양한 함수들을 제공하고 그러니까 기본적인 어레이 자료 구조와 이런 다양한 함수 도구들을 제공하는 라이브 레이다 이렇게 생각하면 됩니다.
네 여기 가면 여러분들이 라이브러리에 대한 모든 정보가 담긴 사이트에 가서 확인할 수가 있고 상세한 내용을 좀 참고하고 싶다.
그러면 여기 있는 것 중에 이 다큐멘테이션 메뉴에 유저 가이드를 가서 보면 이런 여러 가지 어레이를 어떻게 생성하고 오퍼레이션 어떻게 하고 이렇게 쭉 설명된 페이지를 참고할 수가 있습니다.
네 물론 검색 해가지고 특정한 함수 이런 것들의 용도 같은 걸 찾아볼 수도 있겠죠.
与会者 1 1:11:09 我们可以整理一维、二维、三维甚至四维、五维。可以处理这些定义好的数据并进行各种操作。因此,在线性代数中我们可以处理各种平面变换、转置以及使用随机数的其他函数。所以基本上这是一个提供数组数据结构和各种函数工具的库。是的,您可以在网站上查看关于库的所有信息,如果想了解更多详细内容,可以查看文档菜单中的用户指南,了解如何创建数组和进行操作等。当然,也可以通过搜索找到特定函数的用途。
Attendees 1 1:12:21
네 그래서 아주 핵심적인 거 몇 가지만 보면 우선 어레이를 생성하는 건 어떻게 하냐 어레이라는 함수가 있습니다.
그전에 여기 보통 인포트에서 넌 파일 라이브러리를 그러면 인포트에서 사용하면 되는데 네이밍을 보통 이제 흔히 이렇게 합니다.
이렇게 꼭 할 필요는 없는데 대부분 NP라고 쓰죠.
그래서 NP하고 다 하고서 함수의 이름을 줘서 뭔가를 이제 실행을 하는데 어레이를 만드는 건 첫째 이거는 벡터죠.
혹은 원 디멘저한 어레이입니다. 파이썬에 리스트를 주고 어레이를 어레이라는 것으로 생성하면 됩니다.
이렇게 a라는 어레이를 생성한 다음에 a를 프린트해 보면 이런 어레이가 지금 만들어졌다 하는 거고 예.
어레이의 속성 중에 가장 기본적으로 디맨전과 쉐입이 있습니다.
디멘전은 앤 님이라는 키워드를 써서 우리가 요 어레이에 nm 하게 되면 이거는 1 1차원 어레이다 하는 거고 쉐이프 하게 되면 이거는 뭐죠?
이 사이즈를 나타내는 거죠.
与会者 1 1:12:21 是的,让我们看看一些核心内容。首先,如何创建数组?有一个 array 函数。通常在导入时使用 NumPy 库,命名习惯通常是 np。这不是必须的,但大多数情况下都这样写。然后使用 np 执行函数。创建数组的第一种方式是创建一个向量,也就是一维数组。只需将 Python 列表传递给 array 函数即可。创建一个名为 a 的数组,打印它,就会看到已经创建的数组。数组最基本的属性是维度和形状。使用 ndim 关键字可以查看数组的维度,使用 shape 可以查看其大小。
Attendees 1 1:13:36
그래서 1차원인 경우에는 이렇게 괄호 안에 3 콤마 이렇게 써 있으면 이 사이즈가 3인 원 디맨저널 어레이다라는 걸 이제 확인할 수 있는 거죠.
우리가 보통 쓰는 많이 쓰는 행렬 매트릭스는 투 디맨저널 어레이입니다.
그래서 그거는 리스트의 리스트 풀어주는 거죠. 그러면 행들을 차례차례 주는 거라고 보면 돼요.
그러면 이렇게 해서 어레이 생성하면 이런 행렬을 내가 만드는 거고 이 행렬의 ND 디멘전은 2 쉐입은 투 바이 3
因此,在一维情况下,如果括号内写着 3 逗号,就可以确认这是一个大小为 3 的一维数组。我们通常使用的矩阵是二维数组。这就是展开列表的列表。可以理解为依次给出行。这样创建数组,就是创建这个矩阵,这个矩阵的 ND 维度是 2,形状是 2x3。
Attendees 1 1:14:26
그러면 이제 머레이 행렬을 생성했다. 그것 가지고 여러 가지 연산을 하게 되겠죠.
그전에 행렬을 생성하는 또 다른 방법들도 있어요.
어레이가 이제 기본적으로 사용하는 거고 그래서 아까 우리가 리스트에서 한 것처럼 0에서 천까지 엘리먼트가 들어가 있는 무슨 어레이를 하려고 했는데 그걸 다 그러면 이렇게 써줘야 되냐 마찬가지로 기본적인 리스트에서 레인지 같은 걸 쓰듯이 여기서 a 레인지라는 함수를 제공합니다.
그럼 a 레인지 6 그러면 0에서 5까지의 6개의 엘리먼트로 어레이를 만드는 함수죠.
그다음에 이건 기본적으로 1차원 어레이를 만드는 건데 이렇게 만들어놓고 뭐죠?
쉐입을 바꾸겠다. 그럴 때는 리쉐이 이라는 함수를 쓰면 됩니다.
리 쉐입 3 2 그러면 원래 만들어진 것은 0 1 그래서 5까지 들어 있는 건데 이거를 3 바이 2로 이렇게 변환 리테일 하게 되고 그래서 a 레인지와 류쉐 골간이고 이런 엘리먼트이 담긴 어레이를 만들어낼 수가 있습니다.
现在已经创建了矩阵。接下来将进行各种运算。在此之前,还有其他创建矩阵的方法。数组是基本的使用方式。就像我们之前在列表中所做的那样,想要创建一个从 0 到 1000 的元素数组,是否必须这样写?同样,像使用 range 一样,这里提供了一个 a range 函数。如果使用 a range 6,就会创建一个包含 0 到 5 共 6 个元素的数组。这是创建一维数组的基本方法。创建后,如果想改变形状,可以使用 reshape 函数。reshape 3 2 会将原来的 0 1 到 5 的数组转换为 3x2 的形状。因此,a range 和 reshape 是基础,可以创建包含特定元素的数组。
Attendees 1 1:15:37
앤딤 해보면 2차원 배열이구나 쉐입 해보면 3바 2의 사이즈구나 하는 걸 알 수가 있는 또 임의의 차원의 행렬을 우리가 모두 0의 값을 가진 오레로 생성하고 싶다.
그러면 제로스라는 별도의 함수가 있고 1인 거를 만들려면 원스라는 별도의 함수가 뒤에 이제 쉐이블 이렇게
如果查看二维数组的形状,就会知道它的大小是 3 乘 2。如果想要创建所有值为 0 的任意维度矩阵,就会有一个叫做 zeros 的专门函数,而要创建值为 1 的矩阵,则有一个叫做 ones 的函数,然后是 shape 等。
Attendees 1 1:16:04
예를 들어서 두 번째 있는 건 2 3 4 사이즈에 그러니까 3차원 어레이겠죠.
이거는 3 바이 4 사이즈의 어레이가 2개 있는 것이 3차원 어레이가 됩니다.
举个例子,第二个是 2 3 4 大小,也就是三维数组。这是 2 个 3 乘 4 大小的数组,组成了一个三维数组。
Attendees 1 1:16:29
네 이제 만들어진 이거 약간 느껴 있네. 또 다 0으로 초기화된 어레이 이런 거가 아니라 이제는 랜덤 값으로 초기에 대한 어린 이런 걸 만들기 위한 함수도 있습니다.
랜덤 모듈 안에 랜드라는 함수를 쓰게 되면 여기 쉐입을 주고 그러면 3 바 3의 어레이를 얘가 생성하는데 엘리먼트는 랜덤 값으로 들어가는 거죠.
이때 어떤 랜덤 값이냐 하면 0에서 1 사이에 값이 동일한 확률로 등장하는 유니폼 디스트리션을 갖는 랜덤 값들이 들어가게 되고 비슷한 걸로 랜드 n도 있습니다.
랜드 n은 뭐냐 하면 똑같이 3 바이 3 그러면 주어진 사이즈의 어이를 만드는데 랜덤 값으로 초기해야 된다.
반 이때는 n이라고 붙은 함수의 이름을 쓰게 되면 스탠다드 오말 디스티션 뭐죠?
표준 근무 분보의 그러니까 평균 제로 표준 편차 1인 정규 분포 확률을 따르는 랜덤 값들로 이렇게 채워진 그런 LA를 만들어주는 할 수가 있습니다.
现在这个已经创建好了,感觉有点意思。不再是所有元素都初始化为 0,而是现在要创建一个带有随机初始值的数组。如果使用随机模块中的 rand 函数,并给出形状,它会生成一个 3x3 的数组,其中元素是随机值。这些随机值是在 0 到 1 之间以相同概率出现的均匀分布。类似的还有 randn 函数。randn 函数在给定大小(比如 3x3)时,会用服从标准正态分布(平均值为零,标准差为 1)的随机值填充数组。
Attendees 1 1:17:48
이제 그렇게 만들어진 어레이를 가지고 연산할 수 있는 거는 지금 여기 두 개의 매트릭스를 지금 만들었어요.
행렬을 만들고 네 곱하기 한 다음에 스칼라를 하게 되면 모든 엘리먼트에 동일하게 곱셈이 이루어지는 거죠.
어레이 사이에 그냥 덧셈 하게 되면 엘리먼트 와이즈로 덧셈을 합니다.
어레이 사이에 이 스타 표시를 하게 되면 곱셈인데 역시 엘리먼트 사이에 곱셈을 합니다.
现在可以对这样创建的数组进行运算。我们刚才创建了两个矩阵,然后将其与标量相乘,所有元素会同样进行乘法运算。如果在数组之间直接相加,则进行元素 wise 相加。如果使用星号(*)运算符,则进行元素之间的乘法。
Attendees 1 1:18:27
네 이런 것들보다 우리가 가장 흔하게 사용하는 것은 매트릭스의 곱셈 매트릭스 그러니까 프로덕트를 계산하는 거죠.
매트릭스 프로덕트라는 거는 이렇게 두 매트릭스에 곱을 하게 되면 이런 벡터의 인너 프로덕트를 차례차례 계산하죠.
1 곱하기 2 플러스 1 곱하기 3 한 것은 구면 네 고 그다음에 두 번째 엘리먼트는 일행과 2열, 세 번째는 이행과 1열을 다 인너 프런트를 해서 계산하게 되는데 이거는 우리가 더 트라는 메소드를 사용해서 a와 b의 매트릭스 프로덕트를 계산하게 되겠습니다.
혹은 a와 이런 골뱅이 문자를 써서 이런 연산자를 사용해서 표현할 수도 있어요.
매트릭스 트랜스포즈는 t를 붙여서 트랜스 포즈를 만들 수 있어 이런 것들이 매트릭스의 기본 연산들이고 매트릭스의 각각의 엘리먼트를 억세스하는 것은 기본 인덱싱 방법은 네 우선 a라는 걸 여기에 만들었습니다.
听众 1 1:18:27 是的,我们最常用的是矩阵的乘法,即计算矩阵积。矩阵积是这样计算的,当两个矩阵相乘时,我们会逐个计算向量的内积。1 乘以 2 加 1 乘以 3,这是一个球面。然后第二个元素是第一行和第二列,第三个是第二行和第一列,都是通过内积来计算。我们可以使用点乘方法来计算矩阵 A 和 B 的矩阵积,或者使用@运算符来表示。矩阵转置可以通过添加 t 来实现。这些是矩阵的基本运算,访问矩阵的各个元素的基本索引方法是,首先创建了一个矩阵 a。
Attendees 1 1:19:53
a로 인지 이식 했으니까 0에서 19까지의 점수가 들어 있는 리스트를 4바이 5로 리쉐이브를 해서 이런 매트릭스를 만들었죠.
특정한 엘리먼트를 섹스 하려면 우리가 행과 열 두 개의 인덱스가 있으면 되겠죠.
이렇게 그냥 하면 됩니다. a 2 2 하게 되면 이게 0 1 2 3 4라는 인덱스를 가질 테니까 투 투 엘리먼트는 바로 이거가 되겠죠.
네 일부를 우리가 끄집어내기 위해서 리스트에서 했던 것처럼 콜론 표시를 쓸 수가 있습니다.
그럼 이렇게 쓰면은 열은 0에서 2 전까지 그다음에 행은 0에서 또 이 전까지 그러면 0에서 1 0에서 1 이만큼을 가져오는 게
听众 1 1:19:53 因为已经创建了 a,所以包含 0 到 19 的分数列表被重塑为 4x5 的矩阵。如果要访问特定元素,我们需要两个索引:行和列。就这样操作。如果使用 a[2,2],因为索引是 0、1、2、3、4,那么这个元素就是[2,2]。是的,我们可以像处理列表一样使用冒号符号来提取部分内容。这样写的话,列是从 0 到 2(不包括 2),行也是从 0 到 1(不包括 1),这样就可以获取这个范围内的部分。
Attendees 1 1:20:55
네 콜론의 레인지를 이제 지정하지 않으면 전체가 됩니다.
그래서 a에 0에서 2까지 그다음에 행 부분은 콜론만 남겨두면 0 1 행으로 구성된 어레이를 말하는 거고 이렇게 하면은 01열로 구성된 어레이를 말하는 게 되겠죠.
如果现在不指定冒号的范围,则默认为全部。所以从 0 到 2 的 a,然后行部分只保留冒号,就是由 0 和 1 行组成的数组,这样的话就会得到由 0 和 1 列组成的数组。
Attendees 1 1:21:22
네 이렇게 어레이의 일부를 싹 잘라서 가져오는 이런 것을 우리가 슬라이싱을 한다 이렇게 표현하기도 합니다.
是的,像这样将数组的一部分切割出来的操作,我们称之为切片。
Attendees 1 1:21:34
네 또 어레이끼리 합쳐서 새로운 어레이를 만들 수도 있는데 그때는 어레이를 쌓는다고 그래서 스텝에 해당하는 함수들이 있고 v 스텍은 세로로 쌓는 거, h 스택은 퍼라이젠탈 이렇게 수평으로 쌓는 걸 말하는 거죠.
그래서 여기 지금 a라는 어레이와 b라는 어레이를 요게 a 요게 랜덤 값을 측정한 b라는 투 바이트 어레이를 지금 만들었죠.
두 개를 v 스택 하게 되면 이렇게 세로로 삶는다는 거고 h 스텝 하게 되면 이렇게 가로로 쌓는 걸 말합니다.
与会者 1 1:21:34 是的,还可以通过合并数组来创建新的数组,这时称为"堆叠"。有一些对应的函数,垂直堆叠(v stack)是垂直堆叠,水平堆叠(h stack)是水平堆叠。现在我们创建了一个名为 a 的数组和一个名为 b 的二维随机值数组。如果进行垂直堆叠,就是垂直地堆叠;如果进行水平堆叠,就是水平地堆叠。
Attendees 1 1:22:20
네 행렬을 어레이를 다룰 때 우리 액시스라는 개념을 쓰실 때가 있는데 액시즈는 뭐냐 하면 예를 들어서 투 디맨저널 어레이 같으면 행 방향의 축 그다음에 열 방향의 축 이걸 우리가 액시스라고 얘기합니다.
그래서 2 디맨저널 같으면 x 제로와 원이 있고 3 디맨저널 같으면 xc 제로 1 2 이런 식으로 지정이 되는 거죠.
우리가 주로 투 디벤전을 많이 쓰니까 투 디벤전에 보면 예를 들어서 엑시스 제로는 바로 이 방향을 말하는 거고 엑시스원은 이 방향을 말합니다.
네 그래서 이거 어디다 쓰냐 하면 예를 들어서 이런 거죠.
내가 2 바이 3에 이런 브레이 매트릭스를 만들었어요.
이렇게 전체 썸 하게 되면은 6개 엘리먼트의 합을 얘가 계산하는 거고 근데 내가 열 방향 혹은 행방향으로 썸을 하고 싶을 때가 있겠죠.
그러면 여기 액시스를 이렇게 주는 거예요. 썸을 하는데 액시스 제로 이렇게 명시하면 행 방향으로 썸을 해라 이거죠.
이렇게 썸 하면 3 5 실 이름이 있죠.
与会者 1 1:22:20 是的,在处理矩阵和数组时,我们会使用"轴(axis)"的概念。对于二维数组,行方向的轴和列方向的轴我们称之为轴。对于二维数组,有 x0 和 x1 轴;对于三维数组,有 x0、x1、x2 轴。我们通常使用二维数组,轴 0 表示这个方向,轴 1 表示这个方向。例如,我创建了一个 2x3 的矩阵。如果对整个矩阵求和,就会计算 6 个元素的总和。但有时我们想按行或列求和,这时就可以指定轴。如果在求和时指定轴 0,就是按行求和。求和后会得到[3, 5]。
Attendees 1 1:23:32
에스원에 썸을 하라고 그러면 이 방향으로 더해서 3과 12가 될 거고
如果让我在一个方向上增加 3 和 12,就会得到这个方向。
Attendees 1 1:23:44
네 소프트 같은 메소드도 마찬가지입니다. 이런 매트릭스를 내가 만든 다음에 네 정렬을 하는데 처음에 x 제로로 정렬을 하라 그러면 네 이 방향으로 정렬 또 이 방향으로 정렬을 이렇게 하라는 얘기고 그다음에 액시스 1 하게 되면 열 방향으로 정렬을 하는 거죠.
在 soft 等方法中也是如此。在创建这样的矩阵之后,进行排序时,如果先按 x 零轴排序,那么就是沿着这个方向排序,然后沿着另一个方向排序。接下来,如果使用轴 1,就是按列方向进行排序。
Attendees 1 1:24:26
무슨 차이인지 알겠지
听众 1 1:24:26 知道差异是什么
Attendees 1 1:24:31
네 뭐 엄청나게 많은 함수들이 이제 제공이 되는데 이걸 이제 하면서 필요할 때마다 확인을 하면 될 것 같고 예를 들면 이런 기본적인 통계적인 계산을 하는 것들 물론 제공이 됩니다.
최대 최솟값을 구한다든지 평균 분산 계산한다든지 이런 게 다 제공이 되고 당연히 이때도 앞서 말한 액세스 같은 것들을 명시할 수도 있고
听众 1 1:24:31 是的,现在提供了大量的函数,在需要的时候可以进行确认。比如说,提供了一些基本的统计计算。例如求最大值和最小值,计算平均值和方差等。当然,像之前提到的访问权限也可以进行设置
Attendees 1 1:25:05
네 그래서 빠르게 한번 넌 파이가 뭔지 봤으니까 두 번째 판다스를 또 우리가 쓸 건데 판다스는 뭐냐 하면 어
与会者 1 1:25:05 好的,那么让我们快速看看你知道什么是派(Pie),第二个我们要使用的是 Pandas。Pandas 是什么?
Attendees 1 1:25:21
아 여기 보면 보통 이제 릴레이셔널한 그러니까 우리가 테이블 형태로 돼 있는 어떤 데이터를 생각하면 돼요.
혹은 엑셀 파일이다 이렇게 생각하면 되죠. 내가 아까 내일의 주가를 예측한다 그랬는데 그러면 이러이러 할 때는 주가가 상승 하락 이런 게 과거 데이터가 쭉 정리돼 있으면 그게 하나의 엑셀 파일로 있을 수가 있겠죠.
학생들의 데이터가 쭉 있으면 각각의 학생마다 레코드들이 쭉 들어가 있는 테이블이 있을 수 있을 거예요.
그런 데이터를 가지고 여러 가지 이제 데이터를 일부러 선택하거나 수정하거나 이런 조작들을 하는 데 굉장히 빠르게 쉽게 할 수 있도록 하는 그런 기능들을 제공하는 게 판다스.
네 그래서 보통 태블러 데이터 이런 건 SQL 테이블 혹은 엑셀에 시트 뭐 이런 것들을 그렇게 표현돼 있는 데이터를 말하는 거죠.
与会者 1 1:25:21 啊,看这里,通常是关于关系型的,也就是说我们可以想象成表格形式的数据。或者可以想象成 Excel 文件。就像我之前说的,预测明天的股价,那么如果过去的数据被整理好,就可以是一个 Excel 文件。如果有学生的数据,每个学生都会有一系列记录的表格。Pandas 就是提供这些功能,可以非常快速和轻松地选择、修改或操作这些数据。所以通常我们说的表格数据是指 SQL 表或 Excel 表中呈现的数据。
Attendees 1 1:26:22
크게 보면 두 가지 형태의 데이터인데 하나는 원디맨저하나 팩터라고 해서 얘기할 수 있는 시리즈라는 데이터 이제 타입 또는 2 디맨졸의 데이터 프레임이라는 우리는 주로 데이터 프레임을 이제 뉴메리컬한 데이터를 다룰 때는 쓰게 되는 그래서 얘가 해주는 건 굉장히 많이 있는데 예를 들어서 데이터를 내가 이용해서 학습을 하려고 그러는데 미싱 데이터 같은 걸 어떻게 처리할 수 있게 해준다든지 통계적인 계산을 한다든지 데이터를 추가하거나 삭제한다든지 데이터를 재정렬한다든지 멀징한다든지 이런 것들을 다 네 여기 판다스 어디 가면 있냐 이거 네 마찬가지로 여기 가보면 게팅 스타티드 해서 튜토리얼이라는 것이 있어서 여기에 쭉 기본적인 내용들을 여러분들이 살펴볼 수가 있습니다.
从大的方面来看,有两种类型的数据,一种是单维度因子,可以说是时间序列数据,另一种是二维数据框。我们主要在处理数值型数据时使用数据框。它能做很多事情,例如在进行数据学习时,可以处理缺失数据,进行统计计算,添加或删除数据,重新排列数据,合并数据等。这些功能都可以在 pandas 中找到。你可以在这里找到入门教程,可以查看基本内容。
Attendees 1 1:27:22
네 몇 가지 보면 우리가 아까 넌 파이는 NP라고 보통 축약해서 많이 사용한다고 그랬죠.
판다스는 PD 이렇게 표현하는 용어를 말씀을 다 제일 기본적인 이제 함수는 이런 거죠.
데이터 프레임이라는 함수가 마치 어레이라는 함수가 행렬을 만들어주듯이 데이터 프레임이라는 함수가 데이터로부터 데이터 프레임이라고 정의된 내부 자료 구조를 만듭니다.
데이터 프레임은 이렇게 생겼다. 그냥 엑셀의 한 부분을 보는 것 같죠.
이거 어떻게 만드냐 하면 우선 첫째 방법은 파이썬의 딕셔너리를 가지고 이걸 만듭니다.
그래서 여기 보면 데이터가 우선 이렇게 주어졌죠.
是的,正如我们之前说的,NumPy 通常简称为 NP,Pandas 简称为 PD。最基本的函数是这样的:DataFrame 函数就像 Array 函数创建矩阵一样,从数据中创建内部数据结构。数据框看起来就像 Excel 的一部分。怎么创建呢?第一种方法是使用 Python 的字典。首先,数据是这样给出的。
Attendees 1 1:28:06
이거 파이썬 딕셔너리 네 네임이라는 것은 이런 것들이 있고 그런데 이게 그냥 럼을 컬럼에 데이터를 보여주는 역할, 화이트라는 건 이런 게 있고 웨이트라는 건 이런 게 있고 네 이런 걸 주면서 데이터 프레임 생성하게 되면 df라는 이름의 여기 이름은 이제 광고 회에 준 거죠.
df라는 이름의 데이터 프레임이 이렇게 생성되고 프린트해서 이런 식으로 보여줘.
그러니까 내가 표 형태의 데이터를 만드는 거예요.
아까 1차원적인 건 시리즈라고 한다 그랬죠. 시리즈는 이제 리스트를 가지고 시리즈 하게 되면 이런 벡터 형태의 자료 구조를 만들어 네 여기에 이 부분을 우리가 인덱스라고 얘기하고 이 데이터 프레임에 이 부분을 우리가 데이터 프레임의 컬럼으로 얘기를 합니다.
出席者 1 1:28:06 这个 Python 字典的名称就是这些,但这只是展示了列中的数据的作用,白色就是这样的,权重就是这样的,给出这些并创建数据框时,df 这个名称就是给广告公司的。以 df 名称创建这样的数据框,并打印显示。所以我是在创建表格形式的数据。之前说过一维的叫做序列。序列是用列表创建的,形成这种向量形式的数据结构。这里这部分我们称为索引,在这个数据框中,这部分我们称为数据框的列。
Attendees 1 1:29:05
네 이렇게 해서 가져올 만들어낼 수도 있고 우리가 보다 일반적으로 흔히 사용하는 방법은 잘 정리돼 있는 테이블에서 읽어오는 거예요.
그래서 엑셀의 CSV 파일에서 가져올 수 있도록 하는 함수가 제공되는데 리드 CSV라는 함수를 써서 가져오면 됩니다.
여기서는 아이리스라는 이름의 CSV 파일에 엑셀 파일에 이만큼이 들어 있는 거예요.
네 이건 나중에 우리가 다시 볼 데이터인데 이 데이터는 뭐냐 하면 아이리스라는 꽃에 세 가지 품종이 있는데 이 하나의 꽃을 딱 주면 이거 무슨 품종이겠어 예측을 하는 것을 할 수 있게 해주는 이제 머신러닝을 우리가 하기 위해서 흔히 사용하는 이 예제 데이터 파일이에요.
뭘 갖고 우리가 예측을 하냐 하면 네 가지의 값을 가지고 예측합니다.
이거는 꽃잎의 폭과 길이가 얼마나 되느냐 꽃받침의 폭과 길이가 얼마냐 요기에 따라서 품종이 좀 구분이 되는데 이거는 예제들이 총 150개의 예제가 지금 있죠.
出席者 1 1:29:05 是的,可以这样创建,但我们更常用的方法是从已经整理好的表格中读取。所以提供了从 Excel 的 CSV 文件中读取的函数,使用 read_csv 函数就可以了。这里有一个名为鸢尾花的 CSV 文件,Excel 文件中包含这么多内容。这是我们稍后会再看的数据,这个数据是关于鸢尾花的三个品种,当给出一朵花时,可以预测它属于哪个品种。这是我们进行机器学习时常用的示例数据文件。我们用四个值来进行预测。通过花瓣的宽度和长度,花萼的宽度和长度来区分品种,总共有 150 个示例。
Attendees 1 1:30:15
꽃잎과 꽃받침의 폭이나 길이가 이런 것들이 있었는데 그런 꽃은 아이리스 세토사라는 품종이다라는 예제를 쭉 주면 이제 어떤 머신러닝 알고리즘이 있으면 이 데이터를 읽어와서 내가 이 네 가지 값으로부터 품종을 예측하는 어떤 모델을 내가 만들어내는 거 그건 나중에 우리가 알고리즘들을 이제 보면서 구체적으로 가지고 여러 가지 작업들을 해볼 거고 그래서 그 데이터가 들어 있는 게 i CSV라는 이 표에 해당하는 파일이에요.
그거 읽어 오는 위드 CSV라는 함수를 쓰면 여기서 읽어와서 바로 이 데이터 프레임을 얘가 만듭니다.
그리고 이걸 가지고 뭔가 작업을 하는 거죠. 데이터 프레임을 만들면 이 부분은 자동적으로 인덱스가 붙여지게 돼 있고 근데 각각의 컬럼의 이름이 뭔지 이런 게 만약 주어져 있지 않다면 이런 식으로 컬럼의 이름을 내가 설정
出席者 1 1:30:15 花瓣和花萼的宽度或长度,这些特征属于鸢尾花中的山鸢尾品种。之后会展示如何使用机器学习算法读取这些数据,并基于这四个值创建一个预测品种的模型。我们稍后将详细了解各种算法并进行具体操作。这些数据存储在 CSV 表格文件中。使用 read_csv 函数可以直接读取并创建数据框。创建数据框后,索引会自动添加,如果没有指定列名,则可以手动设置列名。
Attendees 1 1:31:14
이런 게 만들어졌다. 그럼 이걸 가지고 우선 만들어진 거의 내용을 내가 보고 싶으면 흔히 사용하는 헤드라는 메소드는 데이터가 천 개가 있더라도 우선 내용을 간단히 보기 위해서 처음에 디폴트로 세팅된 개수만큼 보여주면 돼.
디폴트가 아마 5개인가 그럴 거예요. 난 그것도 많아 3개 하려면 이렇게 파라미터를 주면 되고 안 주면 5개를 또 보여주게 돼 있어요.
그다음에 디스크라이브라는 함수 같은 걸 쓰게 되면 일단 데이터 전체에 대한 기본적인 통계를 한번 보자.
그러면 여기서 데이터 전체 몇 개냐 값의 평균은 얼마냐 이런 것들을 쭉 계산해서 우선 요약해 보여주고
出席者 1 1:31:14 创建数据框后,如果想查看内容,通常使用 head 方法。即使数据有 1000 行,也可以查看默认数量(大概是 5 行)的内容。如果想看 3 行,只需传递相应的参数。不传参数时默认显示 5 行。接下来,使用 describe 函数可以查看整个数据集的基本统计信息,比如数据总数、平均值等,并进行汇总展示。
Attendees 1 1:32:00
네 이건 인덱싱을 어떻게 하냐 하면 기본적으로 컬럼 네임을 가지고 인덱싱을 하게 그럼 데이터 프레임에 s 랭스라는 부분을 보자 그러면 여기에 이 부분을 가지고 하
出席者 1 1:32:00 好的,关于如何进行索引,基本上是使用列名进行索引,那么让我们看看数据框架中的 s 长度部分,然后使用这部分进行操作
Attendees 1 1:32:19
리스트로 줄 수도 있어요. 그러면 에슬랭스 필 랭스라는 부분을 가져오자.
그럼 여기서 이 부분과 이 부분을 따로 떼어가서 그렇게
出席者 1 1:32:19 你也可以用列表。那么让我们获取 s 长度字段。在这里,我们可以将这部分和那部分分开
Attendees 1 1:32:39
또 다른 인덱싱 방법도 있는데 로케이션이라는 다운 록이라는 것과 아엘 록이 있습니다.
록은 라벨 네임을 가지고 특정 위치를 억세스하는 거예요.
그래서 DFL 록 해가지고 이 부분이 인덱스에 해당하는 라벨들 이분이 컬럼에 해당하는 라벨들 이걸 주는 거죠.
그럼 얘는 인덱스의 0번 2번 4번 컬럼에는 이런 이름의 컬럼에 해당되는 부분의 데이터만 가져와서 데이터 프레임을 만드는
与会者 1 1:32:39 还有另一种索引方法,称为位置或者向下锁定(down lock)和 LOC 锁定。锁定是使用标签名称访问特定位置。因此,通过 DFL 锁定,获取对应于此部分索引的标签,对应于列的标签,然后给出这些。然后,它只会从索引的 0、2、4 号和对应特定名称列的部分获取数据,并创建一个数据框
Attendees 1 1:33:15
네 이걸 비슷하게 넌 파이에서 하듯이 어레이 억세스하는 것처럼 하는 함수도 있습니다.
바이 포지션 그러면 아엘록은 뭐냐 하면 이렇게 0번 1번 2번 로우와 0번 1번 2번 컬럼을 가지고 데이터 프레임 그만큼만 따로 데이터 프레임을 가져와라.
与会者 1 1:33:15 是的,类似于在 Python 中访问数组的方式,也有一个函数。通过位置,如果是 LOC,那就是选择 0、1、2 号行和 0、1、2 号列,并从数据框中单独获取那部分数据。
Attendees 1 1:33:41
네 이런 볼리언 인덱션이라고 할 수도 있는데 데이터 프레임에 뭘 가져올 거냐 하는데 이 조건의 투루 폴스에 따라서 2루에 해당하는 것만 가져와라 이렇게 설정할 수도 있어요.
이거는 데이터 프레임에 s랭스라는 부분의 값이 7.5보다 큰 것만 가져와서 새로운 데이터 프레임으로 간다.
그러면 이 값들이 전부 다 7.5보다 큰 것들이죠.
이것들이 이렇게 모여서 데이터 프레임의 서브 셋을 만드는 이건 조금 다른 표현법인데 컬럼 이름을 가지고 에트리비트처럼 이렇게 액세스 할 수도 있다.
是的,这可以称为布尔索引。在数据框中,根据条件的真假,只获取第二列的内容。例如,这是从数据框中获取 s 列值大于 7.5 的数据,创建一个新的数据框。这些值都大于 7.5。这些数据聚集在一起形成了数据框的子集。这是另一种表达方式,可以像属性一样通过列名进行访问。
Attendees 1 1:34:28
이거 가져와서 뭘 하겠다는 거냐 그러니까 이렇게 데이터를 가져온 다음에 여러 가지 우리가 데이터의 전처리를 하거나 일부를 선택하거나 이런 다양한 작업을 여기서 좀 이 라이브러리를 이용하면 편하게 수행할 수 있다는 거고 네 마지막으로 우리가 데이터 프레임을 그래서 만들어 가지고 거기서 판다스가 제공하는 여러 가지 함수를 가지고 편하게 이런 이런저런 작업들을 좀 했어요.
그런 다음에 최종적으로 내가 이제 머신러닝 알고리즘의 인풋으로 들어갈 데이터들이 이제 잘 정제돼서 만들어졌다.
그러면 내가 어떤 알고리 예를 들어서 신경망을 학습하는 알고리즘을 내가 라이브를 해서 이제 돌리려고 그런다.
그러면 그것의 인풋은 보통 매트릭스 어레이 형태로 대부분 사용하게 돼 있어요.
获取这些数据是为了做什么呢?就是在获取数据后,我们可以使用这个库方便地进行数据预处理、选择部分数据等各种操作。最后,我们创建了数据框,并使用 pandas 提供的各种函数轻松地进行了各种操作。然后,最终得到了作为机器学习算法输入的精炼数据。比如,当我想运行神经网络学习算法时,其输入通常是矩阵或数组形式。
Attendees 1 1:35:21
그러니까 그럴 때는 이 테이블을 다 조작한 다음에 마지막으로 그걸 어레이로 변환하기 위해서는 네 밸류스라는 그래서 그걸 쓰면 얘가 요 앞에까지 이렇게 돼 있는 이 데이터 프레임의 값들을 가지고 와서 그걸 넌 파이 어레이로 만들어줘.
네 앞에 이런 건 데이터 프레임. 네 이거는 넌 파이 어레이 넌 파이 어레이로 만든 다음에 x가 이거라면 엑스를 인풋으로 해서 어떤 머신러닝 알고리즘에 딱 집어넣으면 동맥을 맞는 그런 식으로 동작을 이거는 오타인 것 같네.
所以在那种情况下,在操作了这个表格之后,为了最后将其转换为数组,需要使用"值"。这样就可以获取这个数据框到目前为止的值,并将其转换为 NumPy 数组。这是一个数据框,这是一个 NumPy 数组。然后将其作为输入 X 放入某个机器学习算法中,这似乎是个打字错误。
Attendees 1 1:36:20
네 기본적인 거 세 가지 중에 세 번째는 그래프를 그려주는 라이브러리예요.
그래서 데이터 비주얼라이제이션을 해주는 이런 이름의 라이브러리가 있고
是的,在基本的三个中,第三个是绘图库。因此,有一个用于数据可视化的这种名称的库。
Attendees 1 1:36:33
네 보통 넌파이나 판다스나 다른 라이브러리들하고 같이 쓰면서 여러 가지 이제 학습이 진행되는 상태를 보여주는 곡선을 그린다든지 아니면 어떤 데이터의 분포를 보여주는 이런 비주얼라이제이션 한다든지 이런 것들을 다 제공하는 그런 라이브 이름은 이렇게 여기 화면이 있고 네 이것도 마찬가지 필요하면 이거 가서 찾아봐라 이거죠.
튜토리얼 가면은 파이프라 피토리알 킹스타트 가이드 이런 것들이 제공되고 있어서 기본적인 예제나 이런 것들을 참고할 수가 있습니다.
물론 이제 매뉴얼도 있고 여기 검색해서 특정한 함수 특정한 키워드에 대해서 내가 자세한 내용을 좀 확인해야 되겠다 가서 검색해 보면 되겠죠.
네 어떻게 생겼냐 기본적인 거 몇 가지 보면 이것도 마찬가지로 축약된 표현을 이렇게 씁니다.
与会者 1 1:36:33 是的,通常与 NumPy、Pandas 或其他库一起使用,可以绘制显示学习进程的曲线,或者显示某些数据分布的可视化等。这里的屏幕显示了这些功能。如果需要的话,可以去查找。在教程中,会提供 Pipera 教程和入门指南,可以参考基本示例。当然还有手册,如果你想查找特定函数或关键词的详细信息,可以进行搜索。是的,看看它的基本样子,也使用这种缩写表示方式。
Attendees 1 1:37:32
웹 플라 라이브러리에서 파이 플랫 모듈을 우리가 주로 쓰는데 그걸 PLT라는 이름으로 보통 가져와서 쓰고 우리가 넌 파이는 NP 판다스는 PD 뭐 이렇게 쓴다고 그랬죠 이런 겁니다.
x 값들이 이렇게 리스트로 y 값들이 또 리스트로 주어졌다.
x와 y 사이의 관계를 그래프로 좀 그리고 싶다. x가 1일 때 y는 1 x가 2면 y는 8 이렇게 된다는 건데 그때 레플러 라이브러리 파이 플러에 플롯이라는 함수를 써서 XY 하게 되면 얘가 x 가 1일 때 y가 1 x가 2일 때 y가 8 3이면 27, 4면 64, 5면 125 의 값들을 선으로 이어서 이런 그래프로 보여주는 거예요.
플라이라는 거는 네 그러고 나서 실제 디스플레이를 하게 만든 건 쇼우라는 메소드를 쓰면 됩니다.
与会者 1 1:37:32 在 Web Plot 库中,我们主要使用 Pyplot 模块,通常以 PLT 的名称导入使用,就像我们之前说的 NumPy 用 NP,Pandas 用 PD 一样。假设 x 值和 y 值以列表形式给出,想要绘制 x 和 y 之间的关系图。当 x 为 1 时 y 为 1,x 为 2 时 y 为 8。使用 Pyplot 库的 plot 函数可以绘制这样的图表,x 为 1 时 y 为 1,x 为 2 时 y 为 8,x 为 3 时 y 为 27,x 为 4 时 y 为 64,x 为 5 时 y 为 125,将这些点用线连接起来。最后使用 show 方法来实际显示图表。
Attendees 1 1:38:37
어떡하지 여러 가지 이제 어떤 그래프나 이런 거에 이제 부수적으로 우리가 타이틀을 붙인다든지 뭐 다르게 색깔을 한다든지 하고 싶은 게 많이 있을 수 있죠.
그런 것들을 다 설정할 수 있는 함수나 액티비티들이 다 정리돼 있습니다.
여기 나와 있는 것 중에 우선 하나는 x 레이블 y 레이블 이렇게 되면 여기 각 축에 이름을 붙이는 거고
与会者 1 1:38:37 我们可能想要在图表中添加标题或改变颜色等各种附加元素。这里列出了可以设置所有这些内容的函数和活动。首先,这里的一个是 x 轴标签和 y 轴标签,这样就可以为每个轴命名。
Attendees 1 1:39:12
모양이나 색깔을 다르게 하기 위한 에트리미트들을 뭐 이런 걸 설정할 수 있겠지 컬러 마커 레인 블 컬러라는 것은 이런 기호를 써서 구분하게 돼 있는데 레드 그러면 빨간색으로 칠하라는 거죠.
그다음에 마크는 모양을 얘기하는 건데 오 그러면 동그라미로 그리라는 거고 그래서 컬러가 레드 마크가 5 이렇게 해서 플러을 t와 t의 제곱을 플라타 하나 그러면 바로 이런 게 그려지는 두 번째 것은 블루 컬러로 s는 스퀘어겠죠.
네모 점을 찍어서 t와 t의 3승 을 XY로 그래프를 그려라.
이걸 그리는 여기 레이블은 요 각 그래프에 해당하는 데이터들에 이런 라벨을 붙이라 하는 거죠.
네 그리고 나서 이 레전드라는 걸 쓰면 여기에 이런 네모 박스 안에 각각을 표시하는 레전드가 그려지게 됩니다.
이런 식으로 그리는 거예요.
与会者 1 1:39:12 为了改变形状和颜色,可以设置各种属性,如颜色、标记和颜色。颜色是用这些符号来区分的,如果是红色,就表示用红色绘制。然后标记是指形状,如果是"o",就表示画圆形。所以颜色是红色,标记是 5,那么就是绘制 t 和 t 的平方。第二个是蓝色,s 是正方形,即用方形点绘制 t 和 t 的 3 次方的 XY 图。这里的标签是为每个图表中的数据添加相应的标签。然后,使用图例,就会在一个矩形框中绘制各自的图例。就是这样绘制的。
Attendees 1 1:40:33
지금 사용하는 게 가장 간단한 방법이고 원래는 이게 오브젝트 오리엔티드 패러다임으로 디자인 돼 있어서 익스플리션 명시적으로 내가 특정한 그래프들을 이렇게 정의해서 객체로 만들어서 그림을 그리 이렇게 할 수도 있는데 그러기 위해서는 기본적인 형태가 이렇게 정해져 있습니다.
그래프는 각각의 피디어 라는 객체를 구성하게 되고 그 안에 필요하면 여러 개의 액시스들이 있게 돼요.
现在使用的是最简单的方法,原本这是面向对象范式设计的,可以通过显式地定义特定的图形并将其创建为对象来绘制图形。但要这样做,基本形式需要先确定。每个图形都会构成一个 PDF 对象,其中如果需要的话可以包含多个轴。
Attendees 1 1:41:10
네 그래서 원래 익스프레시트한 표현 방법은 PLT의 피겨 그래서 피겨 객체를 생성하고 거기서 또 서브 플라이라는 걸 써서 액시스를 형성하고 그런 다음에 각각에 대해서 플러 이런 것들을 이제 함수를 써서 메소드를 써서 이제 그래프를 그리는 방식인데 그걸 다 생략하고 인플리시 하게 하는 것이 이런 식으로 그냥 쓸 수 있다.
근데 만약에 여기 있는 예처럼 여러분이 여러 개의 그래프가 하나로 뭔가 이렇게 그려지게 되는 그런 걸 하고 싶을 때도 있는데 그럴 때는 이제 이런 익스피리스테 인터페이스를 사용하면 된다는 거죠.
여기 보면 서브 플러스 하는데 12 그렇게 되면 일행 이열 그래서 두 개의 그래프가 한 묶음으로 이렇게 그려지는 그런 그래프를 그리라는 거고 각각의 제로에는 TT의 플라 엑시스 1에는 TT 제곱의 플렛을 해라 그러면 아래와 같이 그래프를 이제 만들어준다.
네 이런 것도 자세한 것들이 혹시 필요하다면 여러분들이 매뉴얼 찾아보면 될 것 같아요.
是的,原本的显式表达方法是使用 PLT 的 Figure,即创建 Figure 对象,然后使用 SubPlot 创建轴,之后使用各种函数或方法绘制图形。现在可以省略这些步骤,以隐式的方式直接绘图。但是,如果像例子中那样希望将多个图形组合在一起,就需要使用这种显式的接口。例如,使用 subplots 创建 1 行 2 列的图形,第 0 个轴绘制 T 的图,第 1 个轴绘制 T 平方的图,就可以得到如下图形。如果需要更详细的信息,可以查阅相关手册。
Attendees 1 1:42:19
플라이 가장 간단한 이 선으로 쭉 표현되는 이런 그래프고 그 외에 어떤 것들이 있냐 하면 네 스케터 스캐터는 XY에 해당하는 포인트들을 이렇게 쭉 정해진 어떤 마크 모양으로 분포를 보여 주상이라는 그래프를 그리고
与会者 1 1:42:19 最简单的飞行是用这条线直线表示的图表,除此之外,还有什么呢?那就是散点图。散点图是用确定的标记形状显示 XY 对应点的分布的图表。
Attendees 1 1:42:46
네 여기 랜드 1002라고 그랬으니까 이거 랜덤 넘버 10행 리얼 이런 어레이를 얘가 만들 거고 이 어레이에 0번 컬럼의 데이터와 1번 컬럼의 데이터를 각각 XY로 해서 이것을 갖다 찍고 여기에다가 갖다 찍고 여기에다가 갖다 찍고 이렇게 x로 마크 이렇게 파란 스케터 플라이 보통 데이터의 분포를 보려면 이런 걸 가지고 이렇게 볼 수가 있겠죠.
그밖에 이런 건 막대 그래프를 그리는 히스토그램을 그리는 함수 그밖에 다양한 함수들이 이제 네 그래서 이런 건 우리가 역시 실습 시간에 가면서 중간에 있는 플롯들을 그리게 되는 것들이 있을 텐데 그때 등장하면 이게 원래 뭐다 하는 것은 이제 우리가 알았으니까 자세한 내용을 확인하는 게 필요하면 아까 그 라이브러리에 매뉴얼 혹은 API 이런 걸 확인하면서 하면 될 것 같아요.
이런 걸 다 자세히 우리가 여기서 다룰 수는 없으니까 오케이 그래서 기본적인 세 가지를 쭉 간단히 우리가 봤고 이제 핵심적인 건 요 사이킬런이라는 것과 텐서플로우죠.
与会者 1 1:42:46 是的,这里有随机数 10 行实数这样的数组,它将创建这个数组,并使用第 0 列和第 1 列的数据作为 XY 坐标来绘制。这里标记为 x,蓝色散点图,通常用于观察数据分布。除此之外,还有绘制柱状图的直方图函数,以及其他各种函数。因此,在我们的实践课程中,我们将绘制中间的一些图表,到时候遇到这些图表时,我们就知道它们是什么了。如果需要了解详细内容,可以查看之前提到的库的手册或 API。我们无法在这里详细讨论所有内容,所以好的,我们已经简单地看了这三个基本内容,现在重点是 scikit-learn 和 TensorFlow。
Attendees 1 1:44:06
사이킬런은 머신러닝 라이브러리인데 여기에 이제 우리가 다룰 다양한 알고리즘들이 구현이 돼 있고 우리는 그걸 갖다가 이제 쓰는 것.
처음에는 우리가 이런 거 없이 일단 코딩을 해서 세부적인 사항을 한번 보고 이제 조금 지나서는 이 라이브러리 함수들을 사용해서 여러 가지 데이터를 가지고 학습을 진행을 해볼 예정이에요.
그다음에 두 가지 또 하나는 여기 텐서플로우가 있죠.
텐서플로우는 딥러닝 모델을 내가 설정하고 학습하고 있는 사람 라이브러리들.
네 그래서 이것들은 이제 우리가 머신러닝에 대한 본론이 진행되면서 이제 소개를 해 나가도록 하겠습니다.
네 오늘 여기까지 하면 될 것 같네요. 혹시 질문 있어?
Scikit-learn 是一个机器学习库,其中已经实现了我们将要处理的各种算法,我们将使用它们。起初,我们将不使用这些库直接编码,以查看细节,然后稍后我们将使用这些库函数,并使用各种数据进行学习。接下来,还有一个是 TensorFlow。TensorFlow 是用于设置和学习深度学习模型的库。因此,随着我们进入机器学习的正题,我们将逐步介绍这些内容。好的,今天就到这里吧。有什么问题吗?
Attendees 1 1:44:59
네 그러면 여러분들이 내일 1시인가 네 내일 1시에 70도에서 보도록 하겠습니다.
好的,那么我们明天 1 点见,对,明天 1 点在 70 度见。
Attendees 1 1:45:25
뭐야 맞아 어쨌든 오늘은 출석 체크 안 하는 걸로 하겠습니다.
신경 쓸 필요 없다.
出席者 1 1:45:25 什么呀 对吧 无论如何今天就不点名了。不用担心。
Attendees 2 1:45:55
그 정도로 빨리 끝나면 안 돼. 끝나면.
出席者 2 1:45:55 不能这么快就结束。结束了的话。
clovanote.naver.com