Hacker News 의견
  • 이 기술이 멋져 보이지만, 왜 이미 가속기에 구현되지 않았는지, 단순히 잊혀진 알고리즘인지, 아니면 가속기를 구축하는 데 비용이나 다른 영향을 미치는지 궁금함.
  • 이 논문은 하드웨어에서 행렬 곱셈 파이프라인을 합성하는 것에 대해 이야기하고 있으며, FPGA나 ASIC과 같은 하드웨어에서 유용할 수 있음. CPU나 GPU에서는 곱셈과 덧셈이 일반적으로 같은 시간이 걸리지만, 곱셈 유닛은 더 많은 트랜지스터를 차지하기 때문에 회로 복잡성을 줄이면 속도와 병렬 처리량을 높이고 전력 및 라우팅 복잡성을 줄일 수 있음.
  • 행렬 곱셈에서 곱셈을 제거하는 또 다른 방법은 다양한 세미링(semiring)을 사용하는 것임. 예를 들어, 열대 세미링(Tropical Semiring)은 곱셈 대신 덧셈을, 덧셈 대신 최소값(또는 최대값)을 사용함. 이는 여전히 행렬 곱셈이지만, 이진 연산이 대체됨. 열대 대수(Tropical Algebra) 분야의 연구는 최적화 문제와 신경망 최적화 연구에 사용되며 현재 활발하고 풍부함.
  • 로그 세미링(Log Semiring)을 사용하는 것도 곱셈을 효율적으로 제거하는 방법임. 확률의 연쇄를 곱해야 할 때(예: 마르코프 체인), 숫자가 매우 작아져서 부동 소수점이 정확도를 잃게 됨. 숫자를 로그로 스케일링하면 곱셈이 덧셈이 되고, 덧셈은 x + log1p(exp(y - x))가 됨.
  • 곱셈과 덧셈을 사용할지 결정하는 것이 단순히 곱셈을 사용하는 것보다 느릴 수 있기 때문에, 이 방법이 실제로 작동한다는 것이 놀랍음. 특히 병렬로 대량의 작업이 이루어질 때.
  • 이 프로세스가 1968년에 발명되었고 지금까지 이 목적으로 사용되지 않았다는 사실이 매우 흥미로움.
  • 2018년에 비슷한 개념을 시도했지만, 박사과정 지원이 모두 거절되어 포기했음. 여기서의 개념은 외부 네트워크로 역전파를 복제하려고 시도하며, 이것이 아마도 뇌가 실제로 하는 일일 것이라고 주장함.
  • 행렬 곱셈에 대한 서브큐빅(sub-cubic) 알고리즘의 수학적 이론에 관심이 있다면, 이곳에서 시작할 수 있음. 모든 ( n \times n ) 행렬을 ( O(n^{2+j}) ) 단계로 곱할 수 있는 숫자 ( n )이 존재한다고 추측함 (이제 ( 2+j = w = 2.3728596 ) 또는 ( j > 0.3728596 )에 대해 증명됨).
  • 이 readme는 개선 사항이 무엇인지 또는 곱셈을 절반으로 줄이는 방법을 설명하는 데 있어 매우 부족함. Big O 실행 시간은 어떻게 되는지, 알려진 최적의 경계를 변경하는지 여부도 불분명함. 다이어그램은 혼란스럽고 이 접근 방식이 빠르고 좋은 이유에 대해 설명하지 않음. 결과적으로 PDF를 클릭하기조차 꺼려짐. 프로젝트의 신뢰성을 높이려면 실제로 무슨 일이 일어나고 있는지에 대해 솔직하고 명확한 설명과 일러스트레이션을 제공하는 것을 고려해야 함.