작성
·
397
0
1)
강의 16:01에서
1차원 array인 rm과 diff를 열벡터로 표현하셨는데
1차원 array는 행벡터가 아닌 열벡터로 생각하면 되나요?
이전에 numpy 강의에서 1차원 array는 행벡터처럼 옆으로 늘여지게 그림이 그려져 있었어서 조금 헤깔립니다.
2)
위 사진에서
그냥 일반적인 dictionary에서는 dict.a 로 value 값에 접근할 수 없는 것 같은데
boston.data로 하면 boston dictionary의 key값인 data에 대응하는 value값에 왜 접근할 수 있나요?
3)
keras에서도 사용하는 '전체 학습 데이터의 순차적인 Mini-Batch' 방식은 한 iteration마다 전체 데이터셋을 한번 다 본다는 점에서는 전체 학습 데이터를 기반으로 gradient descent를 계산하는 GD와 동일한 것 같습니다. 차이점이 있다면 Mini-Batch 방식은 학습할 때 mini-batch 를 이용하므로 메모리에 전체 데이터셋을 다 올릴 필요가 없어 메모리에 부담이 적다 정도가 있는 것 같은데 이러한 이유로 mini-batch를 사용하는게 맞나요?
감사합니다.
답변 1
1
안녕하십니까,
1. 1차원 array 경우 행, 열 이란 개념은 없습니다. 편의상 설명을 위해 붙여 주신 그림과 같이 1차원 array로 표시한 것입니다. 굳이 1차원 array를 나타내자면 위에서 아래로 내려가는 방향성으로 array 원소를 가지는 것으로 보시는게 맞습니다.
[10,
20,
30,
40,
...
]
과 같이 보시면 됩니다.
2. dictionary는 dict['a'] 와 같이 접근하셔야 합니다. boston 객체는 dictionary와 유사하지만 dictionary가 아니라 Bunch라는 별도의 클래스 입니다. 따라서 boston객체는 boston.data 와 같이 접근할 수 있습니다.
3. 이건 나중에 제가 다시 따로 설명 드릴 것입니만, keras의 mini batch GD는 GD와 동일하지 않습니다.
이와 비슷한 질문이 있어서 답변한 내용이 있으니 아래 내용을 참조 부탁드립니다.
https://www.inflearn.com/questions/297099
https://www.inflearn.com/questions/216570
감사합니다.