반응형

머스크 전기에 등장하는, 그의 ‘알고리즘’ 몇 가지를 소개해 드리려고 합니다. 다 쓰면 출판사에서 싫어할 것 같아서(물론 이 글은 광고가 아닙니다민!) 몇 개만 추려 볼게요. 

머스크의 알고리즘

모든 요구사항에 의문을 제기한다
부품이든 프로세스든 가능한 한 최대한 제거하라
단순화하고 최적화하라


머스크가 게임에서 배운 인생의 법칙

공감은 자산이 아니다
인생을 게임처럼 플레이하라
패배를 두려워하지 마라
상황을 주도하라

반응형
반응형

[한빛미디어] "이것이 취업을 위한 코딩 테스트다 with 파이썬" 전체 소스코드 저장소입니다
https://github.com/ndb796/python-for-coding-test

Types of Algorithm

    Searching
    Sorting
    Recursive
    Backtracking
    Greedy
    Randomized
    Divide & Conquer
    Dynamic Programing


 https://www.instagram.com/p/CxZgarwyv_2/?igshid=MjNiZGVkZTJkZQ%3D%3D 



https://www.geeksforgeeks.org/python-data-structures-and-algorithms/

반응형

'프로그래밍 > Python' 카테고리의 다른 글

[python] sudoku 만들기  (0) 2023.09.27
[python] How to send text messages with Python for Free  (0) 2023.09.26
[python] GUI 비밀번호 자동 생성기  (0) 2023.09.18
[python] pyperclip  (0) 2023.09.18
[Python] kivy  (0) 2023.09.15
반응형

Program made with Python and Pygame module for visualizing sorting algorithms

Support this project by leaving a ⭐

 

  • Run: python3 src/main.py

https://github.com/LucasPilla/Sorting-Algorithms-Visualizer/tree/master

 

GitHub - LucasPilla/Sorting-Algorithms-Visualizer: Program made with Python and Pygame module for visualizing sorting algorithms

Program made with Python and Pygame module for visualizing sorting algorithms - GitHub - LucasPilla/Sorting-Algorithms-Visualizer: Program made with Python and Pygame module for visualizing sorting...

github.com

반응형
반응형

https://www.youtube.com/watch?v=hPxnIix5ExI 

YouTube 검색 시스템의 작동 원리를 설명하는 시리즈에 오신 것을 환영합니다.

첫 번째 동영상에서는 '알고리즘'이 시청자를 따라가는 방법을 설명해드립니다.

다음 동영상 보기: https://youtu.be/gTrLniP5tSQ?list=PLp...

0:00 소개 0:11 알고리즘이란? 0:44 알고리즘 작동 원리

 

1분마다 400시간 분량의 동영상이 업로드되니 모두 살펴보기란 어려운 일입니다.

YouTube의 맞춤 동영상 시스템은 실시간 피드백 루프를 통해 시청자 개인마다의 다양한 관심사에 맞는 동영상을 찾습니다. 매일 800억 비트가 넘는 시청자 피드백으로부터 학습하며, 적절한 동영상을 적절한 시기에 적절한 시청자에게 소개하는 방법을 파악합니다. YouTube의 목표는 사람들이 마음에 드는 동영상을 더 많이 보게 하여 YouTube를 꾸준히 방문하도록 유도하는 것입니다. 크리에이터들은 '알고리즘은 어떤 동영상을 가장 선호하나요?'라고 묻곤 합니다. YouTube의 시스템은 크리에이터가 제작하는 동영상의 유형에 대해 아무런 의견이 없으며 특정 형식을 선호하지도 않습니다. 그보다는 다음과 같은 요소에 주목하여 적합한 시청자를 찾습니다.

• 시청자가 시청하는 콘텐츠

• 시청자가 시청하지 않는 콘텐츠

• 시청한 시간

• 좋아요 및 싫어요 표시

• ‘관심 없음’ 의견

알고리즘이 무엇을 선호하는지 고민하는 대신 시청자가 무엇을 좋아하는지에 관심을 집중하는 것이 좋습니다. 그렇게 해서 사람들이 동영상을 본다면 알고리즘도 결국 따라가기 때문입니다. 그렇다면 시청자는 어떤 동영상을 가장 재미있게 볼까요? 시청자는 내 채널을 얼마나 자주 시청하고 싶어 할까요?

YouTube 분석을 통해 이러한 질문에 답을 찾아 보세요.

 

채널을 취미로 운영하든 비즈니스 목적으로 운영하든 YouTube는 각 동영상이 잠재적인 시청자에게 도달할 기회를 주기 위해 노력합니다. 하지만 YouTube의 기능이 워낙 많다 보니 혼란스러울 수 있다는 것은 알고 있습니다. 시리즈를 계속 시청하면서 동영상이 표시되는 여섯 가지 주요 위치를 파악하고, 성공 확률을 높이는 방법을 알아보세요. 여섯 가지 위치를 순서 없이 나열하자면 검색, 추천 동영상, 홈, 인기, 구독, 알림입니다.

 

- 크리에이터 아카데미 강의를 통해 YouTube 활용법을 배우기: http://goo.gl/E9umlU

- 모든 강의 목록 보기: http://goo.gl/x2h1NG

- 단계별 지침 보기: http://goo.gl/fBzr7

반응형
반응형

https://www.itworld.co.kr/news/242939?page=0,1 

 

"이러려고 데이터 과학자 됐나" 데이터 관리의 11가지 어두운 비밀 - ITWorld Korea

누군가는 데이터를 새로운 석유라 부르고, 누군가는 새로운 금이라고도 부른다. 철학자와 경제학자들은 비유의 적절성 대해 논쟁할 수 있겠지만, 데이터 기반 의사 결정을 도모하는 기업에 데

www.itworld.co.kr

"이러려고 데이터 과학자 됐나" 데이터 관리의 11가지 어두운 비밀

누군가는 데이터를 새로운 석유라 부르고, 누군가는 새로운 금이라고도 부른다. 철학자와 경제학자들은 비유의 적절성 대해 논쟁할 수 있겠지만, 데이터 기반 의사 결정을 도모하는 기업에 데이터 구성 및 분석이 필수적이라는 점은 의심의 여지가 없다.

일단은 견고한 데이터 관리 전략이 핵심이다. 데이터 거버넌스, 데이터 운영, 데이터 웨어하우징, 데이터 엔지니어링, 데이터 분석, 데이터 과학 등을 포괄하는 데이터 관리는 올바르게 수행될 경우 각종 비즈니스에서 경쟁 우위를 가져다줄 수 있다.

좋은 소식은 데이터 관리의 많은 측면이 잘 정립돼 있으며, 수십 년 동안 발전해 온 원칙이 존재한다는 점이다. 예를 들어, 적용하기 어렵거나 이해하기에 간단하지 않을 수 있지만, 많은 과학자와 수학자 덕분에 기업은 이제 데이터를 분석하고 결론을 내리기 위한 다양한 프레임워크를 갖게 됐다. 분석 한계를 나타내는 오차 막대를 그리는 통계 모델도 있다.

그러나 데이터 과학과 이를 뒷받침하는 다양한 학문에 대한 연구에서 얻은 모든 장점에도 불구하고 우리는 머리를 긁적거릴 때가 있다. 현장에서 벽에 부딪히는 경우가 많기 때문이다. 때로는 너무 많은 데이터를 수집하고 구성하는 역설적인 문제도 있다. 일부는 철학적이며 우리의 추상적 역량을 시험한다. 그리고 처음 데이터를 수집하는 데서는 개인 정보 보호 문제가 대두되고 있다.

다음은 수많은 기업에서 데이터 관리를 어려운 과제로 만드는 몇 가지 어두운 비밀들이다.


애물단지 비정형 데이터
기업 아카이브에 저장되어 있는 데이터의 대부분은 구조화되어 있지 않다. 은행의 콜센터 직원이 작성한 문자 메모를 검색하기 위한 인공 지능(AI) 사용을 원하는 경우가 있다. 이 문장에는 은행의 대출 및 서비스를 개선하는 데 도움이 될 수 있는 통찰이 담겨 있을 수 있다. 그러나 메모 데이터는 기록할 내용에 관해 서로 다른 생각을 가진 수백 명의 사람들이 작성한 것이다. 또한, 직원들은 서로 다른 작문 스타일과 능력을 가지고 있고, 일부는 전혀 쓰지 않았다. 또 어떤 사람들은 주어진 전화에 대해 너무 많은 정보를 기록한다. 수십 년 동안 수백 명의 직원이 작성한 텍스트 더미가 있다면, 구조화 수준이 훨씬 더 약해질 수 있다.

정형 데이터라도 비정형인 경우
좋은 데이터 과학자와 데이터베이스 관리자는 각 분야의 유형과 구조를 명료하게 지정해 데이터베이스를 마련한다. 때로는 필드의 값을 특정 범위의 정수 또는 미리 정의된 선택으로 제한한다. 하지만 사람들은 데이터베이스가 주름과 결함을 추가하는 방법을 생각해낸다.

필드가 비어 있는 경우도 있다. 질문이 적용되지 않는다고 생각할 때 ‘n.a.’를 넣기도 하지만, 그저 대시 기호를 넣는 이들도 있다. 사람들은 심지어 이름을 해마다, 날마다 다르게 표시하기도 한다. 

우수한 개발자는 유효성 검사를 통해 이런 문제 중 일부를 파악한다. 훌륭한 데이터 과학자는 정리를 통해 이런 불확실성을 어느 정도 줄일 수도 있다. 그러나 탁월하게 구조화된 표에도 의심스러운 항목이 있고, 이런 의심스러운 항목에 알 수 없는 항목과 분석 오류가 발생할 수 있다. 좌절감을 느끼게 하는 현실이다.

너무 엄격하거나 느슨한 데이터 스키마
데이터팀이 스키마 제약 조건을 아무리 자세히 설명하려 해도 다양한 데이터 필드의 값을 정의하기 위한 스키마는 완벽하기 어렵다. 너무 엄격하거나 너무 느슨하다. 데이터팀에서 엄격한 제약 조건을 추가하면 사용자는 허용 가능한 값의 좁은 목록에서 답을 찾을 수 없다고 불평한다. 스키마가 너무 수용적이면 사용자는 일관성이 거의 없이 이상한 값을 추가할 수 있다. 스키마를 올바르게 조정하는 것은 거의 불가능할 지경이다.

매우 엄격한 데이터 법률
개인정보 보호 및 데이터 보호에 관한 법률은 이미 강력하며, 점점 더 강력해지고 있다. GDPR, HIPPA 및 각종 규제 사이에서 데이터를 수집하는 것은 매우 어려울 수 있으며, 해커의 침입에 대응하기란 훨씬 더 위험할 수 있다. 많은 경우에 프로그래머나 데이터 과학자보다 변호사에게 비용을 지출하는 것이 더 쉬울 수 있다. 이런 골칫거리로 인해 일부 기업은 데이터를 제거할 수 있는 즉시 데이터를 폐기한다.

엄청난 데이터 정리 비용
많은 데이터 과학자가 자신의 작업 중 90%가 데이터를 수집하고, 일관된 형식으로 만들고, 끝없는 구멍이나 실수를 처리하는 것이라고 본다. 데이터를 가지고 있는 사람은 항상 “CSV에 모든 것이 있다”라고 말할 것이다. 그러나 그들은 빈 필드나 잘못된 특성을 언급하지 않는다. 실제로 통계 분석을 수행하기 위해 R 또는 파이썬에서 루틴을 시작하는 것보다 데이터 과학 프로젝트에서 사용할 데이터를 정리하는 데 10배나 더 많은 시간을 소비하기 쉽다.

사용자의 의심 증가
최종 사용자와 고객이 기업의 데이터 관리 관행에 대해 점점 더 의심을 품고 있다. 일부 AI 알고리즘에 대한 불안감과 두려움이 증폭되고 있다. 일거수일투족을 감시하는 듯한 반응을 보이기도 한다. 이런 두려움은 규제를 조장하고 종종 기업과 선의의 데이터 과학자를 괴롭힌다. 사용자가 의도적으로 가짜 값이나 오답으로 데이터 수집을 방해하는 경향을 보이는 것이다. 때로는 작업의 절반이 악의적인 파트너 및 고객을 상대하는 업무가 될 수 있다.

 

외부 데이터와의 통합 위험성
공격적인 기업은 자사의 정보를 서드파티 데이터 및 인터넷에 떠도는 방대한 개인화된 정보와 통합하는 방법을 모색하고 있다. 실제로 일부 도구는 모든 고객에 대한 데이터를 흡수해 각 구매에 대해 개인화된 정보를 작성하겠다고 공개적으로 공언한다. 그렇다, 이들은 사용자의 패스트푸드 구매와 신용 점수를 추적하는 데 첩보기관이 테러리스트를 추적하는 데 사용하는 기술을 사용한다. 사람들이 불안해하는 것이 사실 당연하다.

데이터 사용을 단속하는 규제 당국
데이터 분석이 언제 어떤 선을 넘을지 알기 어렵지만, 일단 선을 넘으면 규제 당국이 나타난다. 캐나다의 최근 사례에서, 정부는 일부 도넛 가게가 어떻게 경쟁업체에서 쇼핑하는 고객들을 추적하고 있는지 조사했다. 

정부는 보도 자료를 통해 “조사 결과, 팀 호튼스가 미국의 서드파티 위치 서비스 업체와 맺은 계약에 너무 모호하고 허용적인 표현이 포함되어 있었다. 이로 인해 회사가 ‘비식별화된’ 위치 데이터를 판매할 소지를 남겼을 것”이라고 밝혔다. 도대체 무엇을 위해? 더 많은 도넛을 팔기 위해서? 규제기관은 개인정보와 관련된 모든 것에 점점 더 주의를 기울이고 있다.

도출한 결과가 무가치함
우리는 뛰어난 알고리즘이 모든 것을 더 효율적이고 수익성 있게 만들 수 있다고 상상한다. 그리고 때로는 그런 알고리즘을 실제로 구현할 수 있다. 그러나 비용이 문제이다.

실제로 소비자는 물론 심지어 기업까지도 정교한 데이터 관리 체계에서 나오는 표적 마케팅의 가치에 점점 더 의문을 제기하고 있다. 이미 구매한 아이템에 대한 광고가 노출되는 것을 자주 경험했을 것이다. 엄격한 데이터 분석을 통해 실적이 낮은 공장을 식별했더니, 회사가 건물에 30년 임대 계약을 체결했을 수도 있다. 기업은 데이터 과학이 비현실적인 답을 산출할 가능성에 대비해야 한다.

결국 인간의 직관에 따라 결정
숫자는 높은 정확도를 제공하지만, 사람이 숫자를 어떻게 해석하는지가 더 중요한 경우도 많다. 모든 데이터 분석과 AI 마법이 끝난 후에 대부분 알고리즘은 일부 값이 임계 값을 초과하는지 또는 미만 인지에 대한 결정을 내려야 한다. 

가령 경찰은 제한 속도의 20%를 초과하는 차량에 속도위반 고지서를 주려고 한다. 이런 임계값은 종종 임의의 값이다. 데이터에 적용할 수 있는 모든 과학 및 수학의 경우, ‘데이터 기반’ 프로세스에는 생각보다 더 많은 회색 지대가 있다. 기업이 데이터 관리 프랙티스에 투입한 방대한 자원에도 불구하고 결국 의사 결정에 영향을 미치는 최대 요인은 인간의 직관인 경우가 많다.

폭발적인 데이터 스토리지 비용
테라바이트당 가격은 계속 떨어지고 있지만 프로그래머는 더 빠르게 데이터 비트를 모으고 있다. 사물 인터넷 디바이스는 계속해서 데이터를 업로드하고, 사용자는 이런 바이트의 풍부한 컬렉션을 영원히 탐색할 것으로 기대한다.  동시에 컴플라이언스 담당자와 규제기관은 감사를 위해 계속해서 더 많은 데이터를 요구한다. 실제로 다시 액세스되는 데이터의 비율은 계속 낮아지고 있다. 그저 데이터가 하염없이 쌓여만 가는 것이다. 

반응형
반응형

길찾기 알고리즘 : Pathfinding.js https://github.com/qiao/PathFinding.js

A comprehensive path-finding library for grid based games.

이 프로젝트의 목적은 웹 게임에 쉽게 통합 될 수있는 경로 찾기 라이브러리를 제공하는 것입니다. Node.js 또는 브라우저에서 실행될 수 있습니다.

온라인 데모와 함께 알고리즘 실행 방법을 보여줍니다. (길 찾기 속도가 데모에서 느려집니다)

이 프로젝트는 2D 공간에 대한 경로 찾기 알고리즘 만 제공합니다. 3D 환경에서 작업해야한다면 @ schteppe의 포크를 사용할 수 있습니다.

PathFinding.js에 대한 새로운 문서가 작성되었습니다. 여기에서 읽을 수 있습니다. 이것은 매우 초기 단계이며 완벽하지 않으므로 실수로 눈을 뜨고 주저하지 말고 풀 요청을 열어 주면됩니다.

예제 : https://qiao.github.io/PathFinding.js/visual/

 

PathFinding.js

 

qiao.github.io

 

반응형
반응형
반응형
반응형

길찾기(Pathfinding) 알고리즘은 이동 경로를 찾는 방법입니다. 다양한 방법이 있는데요.

각 알고리즘들이 어떻게 동작하는지를 시각적으로 보여주는 서비스를 소개합니다. 

https://qiao.github.io/PathFinding.js/visual/

 

PathFinding.js

 

qiao.github.io

출처 : https://opentutorials.org/course/543/20993

반응형

+ Recent posts